Witaj na Forum! Zapraszamy do rejestracji lub zalogowania. Stwórz konto  


Błąd: wartość zmienno przecinkowa

#1

Witam.
Chciałem przerzucić sobie model z Omsi 1 do 2, ale mam problem:    

W pliku log nic niema, jedynie odniesienie do pliku const: command 1.
Przeszukałem wszystkie pliki const i nie znalazłem żadnego błędu, ponowne przekopiowanie modelu nic nie daje, jakieś wskazówki?
Odpowiedz

#2

Błąd potencjalnie bardzo trudny do znalezienia, bo na komunikacie jest tylko apostrof, a to może np. oznaczać jakąś literówkę, ale skoro działało wszystko w OMSI1 to pewnie są tam jakieś funkcje nie zrozumiałe dla OMSI2
~~Jeśli pomogłem klknij rep+ ~~
[Obrazek: psiuk450x60.png]
Odpowiedz

#3

Sprawę ułatwiłoby jakieś odniesienie do pliku o konkretnej nazwie, bo szukam rozwiązania już dwa tygodnie.
Może na oficjalnym forum ktoś coś będzie wiedział.
Odpowiedz

#4
(Ten post był ostatnio modyfikowany: 16.03.2014, 16:52 przez mattez.)

Mam pewien pomysł. Często projektanci modeli zmieniając domyślne skrypty zostawiają stare poprzedzając je znakiem ' przy każdym nowym wersie. Dzięki takiemu zabiegowi zawartość skryptu pozostaje "do wglądu", ale OMSI jej nie wykonuje.
Może to trochę czasochłonne, ale spróbuj pousuwać wszystkie te wpisy (całe skrypty poprzedzone znakiem '), może to właśnie ten znak nie pasuje nowej wersji OMSI.
!NIE POMAGAM NA PW - OD POMOCY JEST FORUM!

PCB: Gigabyte GA-970A-DS3
CPU: AMD FX-8350 @ 8x4.4GHz + Raijintek EreBoss
RAM: 8GB RAM DDR3
GPU: Sapphire Radeon RX480 Nitro+ 8GB
PSU: Corsair TX850M
OS: Windows 10 Pro x64

Zanim cokolwiek napiszesz, przeczytaj koniecznie REGULAMIN
Jeśli masz problem techniczny, zapoznaj się z ZASADAMI DZIAŁÓW TECHNICZNYCH
Jeśli chcesz podzielić się dodatkiem, zapoznaj się z REGULAMINEM DZIAŁU POBIERALNIA



Find me on: fb.me/mattezpl
Odpowiedz

#5

Pousuwałem znaki ' ale gra ewidentnie gryzie się z plikiem odpowiedzialnym za drzwi, w komunikacie błędu jest zawsze ostanie słowo z początku pliku !door_manual.osc w tym przypadku to słowo Wizard.
Manual door script by Wizard (based on stock script by Rüdiger Hülsmann and Marcel Kuhnt | 28.10.2009)
Coded by Wizard

Changelog:
3.06.2012 - First release
3.06.2012 - Added PAX triggers for entrypoints (by Wizard)
4.06.2012 - Added physics for first door, sweet =) (by Wizard)
5.06.2012 - Added sound triggers for open and close (by Wizard)
5.06.2012 - Fix PAX passenger exit and entry points (by Wizard)

{macro:door_manual_frame}
(M.L.door_m_1_physics)
{end}

{trigger:door_m_1_drag}

1 (S.L.door_m_1_dragged)
(L.L.door_m_1_pos) (S.L.door_m_1_lastpos)

(L.S.mouse_x) 150 / (L.L.door_m_1_pos) + (S.L.door_m_1_pos) s0
l0 0 <
{if}
0 (S.L.door_m_1_pos)
{endif}
l0 1 >
{if}
1 (S.L.door_m_1_pos)
{endif}

(L.L.door_m_1_pos) (L.L.door_m_1_lastpos) - (L.S.Timegap) / (S.L.door_m_1_speed)

{end}

{trigger:door_m_1_off}
0 (S.L.door_m_1_dragged)
{end}

{macro:door_m_1_physics}

(L.L.door_m_1_dragged) !
{if}
(L.L.door_m_1_pos) (L.S.Timegap) (L.L.door_m_1_speed) * + (S.L.door_m_1_pos)

(L.L.door_m_1_pos) 1 >
{if}
1 (S.L.door_m_1_pos)
(L.L.door_m_1_speed) /-/ 0.7 * (S.L.door_m_1_speed)
{endif}
(L.L.door_m_1_pos) 0 <
{if}
0 (S.L.door_m_1_speed) (S.L.door_m_1_pos)
{endif}

(L.L.door_m_1_pos) 0 >
{if}
(L.L.door_m_1_speed) (L.S.Timegap) (L.L.A_Trans_Y) (C.L.door_m_1_pet) * (L.L.A_Trans_X) /-/ + 0.7 * (L.L.door_m_1_globalangle) * * + (S.L.door_m_1_speed)
{endif}

(L.L.door_m_1_speed) s0 (S.L.door_m_1_lastspeed)
l0 0 >
{if}
l0 (L.S.Timegap) 0.2 * - (S.L.door_m_1_speed)
{endif}
l0 0 <
{if}
l0 (L.S.Timegap) 0.2 * + (S.L.door_m_1_speed)
{endif}


(L.L.door_m_1_speed) 0 > (L.L.door_m_1_lastspeed) 0 < &&
(L.L.door_m_1_speed) 0 < (L.L.door_m_1_lastspeed) 0 > && ||
{if}
0 (S.L.door_m_1_speed)
{endif}

{endif}

(L.L.door_m_1_pos) 0.83 >=
{if}
(S.L.PAX_Entry1_Open) (S.L.PAX_Exit0_Open)
{else}
0 (S.L.PAX_Entry1_Open) (S.L.PAX_Exit0_Open)
{endif}

(L.L.door_m_1_pos) 0 > (L.L.door_m_1_open) ! &&
{if}
(T.L.door_m_1_auf)
1 (S.L.door_m_1_open)
{endif}

(L.L.door_m_1_pos) 0 = (L.L.door_m_1_open) &&
{if}
(T.L.door_m_1_zu)
0 (S.L.door_m_1_open)
{endif}

(L.L.door_m_1_pos) 140 * 27 + 3.14 * 180 / sin (S.L.door_m_1_globalangle)

(L.L.velocity) (L.L.cp_velocity_last) - (S.L.cp_acceleration)
(L.L.velocity) (S.L.cp_velocity_last)


{end}

Odpowiedz

#6
(Ten post był ostatnio modyfikowany: 16.03.2014, 17:39 przez mattez.)

Hmmm... A wywal to
Kod:
Manual door script by Wizard (based on stock script by Rüdiger Hülsmann and Marcel Kuhnt | 28.10.2009)
Coded by Wizard

Changelog:
3.06.2012 - First release
3.06.2012 - Added PAX triggers for entrypoints (by Wizard)
4.06.2012 - Added physics for first door, sweet =) (by Wizard)
5.06.2012 - Added sound triggers for open and close (by Wizard)
5.06.2012 - Fix PAX passenger exit and entry points (by Wizard)
I zostaw goły skrypt.

Co do usuwania znaków, to się źle zrozumieliśmy. Jeżeli przez całym wersem jest ' to OMSI nie czyta całego wersu, ale jak usuniesz sam znak ' to OMSI zacznie wykonywać te skrypty. Chodziło mi o to, byś usunął każdy wers, który ma na początku znak '.
!NIE POMAGAM NA PW - OD POMOCY JEST FORUM!

PCB: Gigabyte GA-970A-DS3
CPU: AMD FX-8350 @ 8x4.4GHz + Raijintek EreBoss
RAM: 8GB RAM DDR3
GPU: Sapphire Radeon RX480 Nitro+ 8GB
PSU: Corsair TX850M
OS: Windows 10 Pro x64

Zanim cokolwiek napiszesz, przeczytaj koniecznie REGULAMIN
Jeśli masz problem techniczny, zapoznaj się z ZASADAMI DZIAŁÓW TECHNICZNYCH
Jeśli chcesz podzielić się dodatkiem, zapoznaj się z REGULAMINEM DZIAŁU POBIERALNIA



Find me on: fb.me/mattezpl
Odpowiedz

#7

To nie ma nic do rzeczy i szkoda plik rujnować. Teraz przy modyfikacji 9900 tak samo robię, wstawiam < ' > i linię wolną i wartość wpisuję swoją i działa, ani razu jeszcze nei wywaliło. Jak już, to wydaje mi się, że gdzieś w środku skryptu ktoś wstawił niechcący < ' >, albo po prostu zła zmienna jest wpisana gdzieś i stąd wyrzuca. OMSI 1 miało jednak większą tolerancję na błędy. Wywaliło 10 Zugriff'ów ale można było dalej grać po uprzednim zamknięciu komunikatów.
Odpowiedz

#8
(Ten post był ostatnio modyfikowany: 16.03.2014, 20:22 przez SanJose.)

Przywróciłem skrypty z przed edycji i przeskanowałem je pod kątem wystąpienia znaku ' w skrypcie, nie linijce którą ten znak poprzedza. Było kilka wpisów w plikach cockpit.osc i matrix.osc.
Niestety nadal problem występuje, tyle że w pliku .log nie ma żadnych błędów odnośnie modelu, po prostu nic.
Ktoś może sprawdzić poprawność tego skryptu?
'Manual door script by Wizard (based on stock script by Rüdiger Hülsmann and Marcel Kuhnt | 28.10.2009)
'Coded by Wizard (vbusblog.ru)
'######## From Russia With Love =) ########
'Changelog:
'3.06.2012 - First release
'3.06.2012 - Added PAX triggers for entrypoints (by Wizard)
'4.06.2012 - Added physics for first door, sweet =) (by Wizard)
'5.06.2012 - Added sound triggers for open and close (by Wizard)
'5.06.2012 - Fix PAX passenger exit and entry points (by Wizard)

{macro:door_manual_frame}
(M.L.door_m_1_physics)
{end}


'Add main trigger (animation and mouseevent)

{trigger:door_m_1_drag}

1 (S.L.door_m_1_dragged)
(L.L.door_m_1_pos) (S.L.door_m_1_lastpos)

(L.S.mouse_x) 150 / (L.L.door_m_1_pos) + (S.L.door_m_1_pos) s0
l0 0 <
{if}
0 (S.L.door_m_1_pos)
{endif}
l0 1 >
{if}
1 (S.L.door_m_1_pos)
{endif}

(L.L.door_m_1_pos) (L.L.door_m_1_lastpos) - (L.S.Timegap) / (S.L.door_m_1_speed)

{end}

{trigger:door_m_1_off}
0 (S.L.door_m_1_dragged)
{end}

'Physics for door_m_1 here ^_^

{macro:door_m_1_physics}

(L.L.door_m_1_dragged) !
{if}
(L.L.door_m_1_pos) (L.S.Timegap) (L.L.door_m_1_speed) * + (S.L.door_m_1_pos)

(L.L.door_m_1_pos) 1 >
{if}
1 (S.L.door_m_1_pos)
(L.L.door_m_1_speed) /-/ 0.7 * (S.L.door_m_1_speed)
{endif}
(L.L.door_m_1_pos) 0 <
{if}
0 (S.L.door_m_1_speed) (S.L.door_m_1_pos)
{endif}

(L.L.door_m_1_pos) 0 >
{if}
(L.L.door_m_1_speed) (L.S.Timegap) (L.L.A_Trans_Y) (C.L.door_m_1_pet) * (L.L.A_Trans_X) /-/ + 0.7 * (L.L.door_m_1_globalangle) * * + (S.L.door_m_1_speed)
{endif}

(L.L.door_m_1_speed) s0 (S.L.door_m_1_lastspeed)
l0 0 >
{if}
l0 (L.S.Timegap) 0.2 * - (S.L.door_m_1_speed)
{endif}
l0 0 <
{if}
l0 (L.S.Timegap) 0.2 * + (S.L.door_m_1_speed)
{endif}


(L.L.door_m_1_speed) 0 > (L.L.door_m_1_lastspeed) 0 < &&
(L.L.door_m_1_speed) 0 < (L.L.door_m_1_lastspeed) 0 > && ||
{if}
0 (S.L.door_m_1_speed)
{endif}

{endif}

(L.L.door_m_1_pos) 0.83 >=
{if}
(S.L.PAX_Entry1_Open) (S.L.PAX_Exit0_Open)
{else}
0 (S.L.PAX_Entry1_Open) (S.L.PAX_Exit0_Open)
{endif}

(L.L.door_m_1_pos) 0 > (L.L.door_m_1_open) ! &&
{if}
(T.L.door_m_1_auf)
1 (S.L.door_m_1_open)
{endif}

(L.L.door_m_1_pos) 0 = (L.L.door_m_1_open) &&
{if}
(T.L.door_m_1_zu)
0 (S.L.door_m_1_open)
{endif}

(L.L.door_m_1_pos) 140 * 27 + 3.14 * 180 / sin (S.L.door_m_1_globalangle)

(L.L.velocity) (L.L.cp_velocity_last) - (S.L.cp_acceleration)
(L.L.velocity) (S.L.cp_velocity_last)


{end}
Odpowiedz




Użytkownicy przeglądający ten wątek: