Plik scenerii: Różnice pomiędzy wersjami

Z MaSzyna
Skocz do: nawigacja, szukaj
(Składnia)
(Wprowadzono wpis o dyrektywach dla starterów symulatora (oczekiwanie na odpowiedź @szczawik))
Linia 2: Linia 2:
 
Plik scenerii jest plikiem tekstowym, zawierającym definicje obiektów, zdarzeń, pojazdów znajdujących się w scenerii. Aby plik scenerii mógł zostać uruchomiony przez symulator, należy umieścić go bezpośrednio w folderze ''scenery''. Scenerię można uruchomić za pomocą startera, wiersza poleceń lub bezpośrednio przez plik wykonywalny symulatora.
 
Plik scenerii jest plikiem tekstowym, zawierającym definicje obiektów, zdarzeń, pojazdów znajdujących się w scenerii. Aby plik scenerii mógł zostać uruchomiony przez symulator, należy umieścić go bezpośrednio w folderze ''scenery''. Scenerię można uruchomić za pomocą startera, wiersza poleceń lub bezpośrednio przez plik wykonywalny symulatora.
  
 +
== Przygotowanie ==
 
* Komenda wiersza poleceń, uruchamiająca scenerię scene.scn:
 
* Komenda wiersza poleceń, uruchamiająca scenerię scene.scn:
 
     eu07.exe –s scenery/scene.scn
 
     eu07.exe –s scenery/scene.scn
Linia 20: Linia 21:
  
 
== Składnia ==
 
== Składnia ==
Scenerię konfiguruje się za pomocą dyrektyw:
+
Scenerię konfiguruje się za pomocą dyrektyw i wpisów przedstawionych w poniższym rozdziale:
 +
 
 +
=== Dyrektywy scenariusza ===
 
* [[Dyrektywa_atmo|atmo]] - ustawienia mgły.
 
* [[Dyrektywa_atmo|atmo]] - ustawienia mgły.
 +
* [[Dyrektywa_sky|sky]] - ustawienie modelu nieba.
 +
* [[Dyrektywa_time|time]] - ustawienie czasu symulacji.
 +
* [[Dyrektywa_FirstInit|FirstInit]] - polecenie inicjalizacji wczytanych obiektów.
 +
* [[Dyrektywa_trainset|trainset]] - definicja składu.
 +
* [[Obiekt_event|event]] - zdarzenie, np. polecenie zmiany sygnału na semaforze.
 +
* [[Dyrektywa_include|include]] - dołączanie zawartości innych plików do pliku scenerii.
 
* [[Dyrektywa_camera|camera]] - ustawienia predefiniowanych pozycji kamer w trybie ''freefly''.
 
* [[Dyrektywa_camera|camera]] - ustawienia predefiniowanych pozycji kamer w trybie ''freefly''.
 
* [[Dyrektywa_config|config]] - ustawienia aplikacji specyficzne dla scenerii.
 
* [[Dyrektywa_config|config]] - ustawienia aplikacji specyficzne dla scenerii.
* <s>[[Dyrektywa_description|description]] - opis scenerii na potrzeby starterów.</s>
 
* [[Obiekt_event|event]] - zdarzenie, np. polecenie zmiany sygnału na semaforze.
 
* [[Dyrektywa_FirstInit|FirstInit]] - polecenie inicjalizacji wczytanych obiektów.
 
* [[Dyrektywa_include|include]] - dołączanie zawartości innych plików do pliku scenerii.
 
* <s>[[Dyrektywa_light|light]] - ustawienie źródła oświetlenia scenerii.</s>
 
 
* [[Dyrektywa_lua|lua]] - dołączenie skryptu sterującego scenariuszem w języku LUA.
 
* [[Dyrektywa_lua|lua]] - dołączenie skryptu sterującego scenariuszem w języku LUA.
 
* [[Obiekt_node|node]] - definicja obiektów widocznych: tory, rzeki, modele.
 
* [[Obiekt_node|node]] - definicja obiektów widocznych: tory, rzeki, modele.
 
* [[Dyrektywa_origin|origin]] - polecenie przesunięcia obiektów o wektor.
 
* [[Dyrektywa_origin|origin]] - polecenie przesunięcia obiektów o wektor.
 
* [[Dyrektywa_rotate|rotate]] - polecenie obrotu obiektów o kąty.
 
* [[Dyrektywa_rotate|rotate]] - polecenie obrotu obiektów o kąty.
* [[Dyrektywa_sky|sky]] - ustawienie modelu nieba.
+
 
* <s>[[Dyrektywa_test|test]] - testowanie poprawności dyrektyw.</s>
+
Wycofane:
* [[Dyrektywa_time|time]] - ustawienie czasu symulacji.
+
* <s>[[Dyrektywa_description|description]] - opis scenerii na potrzeby starterów.</s>
* [[Dyrektywa_trainset|trainset]] - definicja składu.        
+
* <s>[[Dyrektywa_light|light]] - ustawienie źródła oświetlenia scenerii.</s>
 +
* <s>[[Dyrektywa_test|test]] - testowanie poprawności dyrektyw.</s>       
  
 
Parametry obiektów w scenerii mogą być oddzielane  
 
Parametry obiektów w scenerii mogą być oddzielane  
Linia 46: Linia 51:
 
Jednak dla lepszej czytelności dla człowieka zaleca się oddzielanie ich wyłącznie spacją.
 
Jednak dla lepszej czytelności dla człowieka zaleca się oddzielanie ich wyłącznie spacją.
  
 +
=== Dyrektywy startera ===
 +
 +
Dyrektywy startera to zestaw parametrów (według składni komentarzy) pełniących rolę wprowadzenia do danego startera symulatora MaSzyna dodatkowych informacji oraz konfiguracji.
 +
Nie mają wpływu na działanie symulacji!
 +
 +
:'''//$n''' – nazwa scenerii:
 +
::*Rainsted.exe wyświetlana w głównym oknie wyboru scenerii w polu z żółtym tłem;
 +
::*Starter.exe wyświetlana w głównym oknie wyboru scenerii w zakładce ''Opis służby'';
 +
:::''Rozpoznawana przez: Starter.exe, Rainsted.exe''
 +
 +
:'''//$d''' – opis scenerii:
 +
::*Rainsted.exe wyświetlany w głównym oknie wyboru scenerii obok wybranego składu/scenariusza;
 +
::*Starter.exe wyświetlany w głównym oknie wyboru scenerii w zakładce ''Opis służby'';
 +
:::''Rozpoznawana przez: Starter.exe, Rainsted.exe''
 +
 +
:'''//$f''' – link do zewnętrznego pliku lub strony internetowej dotyczący scenerii albo pojedynczego scenariusza, możliwy do otwarcia z poziomu startera (wyświetlany jako dedykowany przycisk):
 +
::*Rainsted.exe wyświetla do trzech przycisków tego typu w głównym oknie wyboru scenerii;
 +
::*Starter.exe wyświetla przyciski tego typu w głównym oknie wyboru scenerii w zakładce ''Załączniki'';
 +
:::''Rozpoznawana przez: Starter.exe, Rainsted.exe''
 +
 +
:'''//$o''' – opis składu, pokazywany przez dany starter. Jeśli skład ma być ukryty, przed pierwszym znakiem opisu powinien znaleźć się znak minus '''-'''. Dyrektywa ta musi zostać wprowadzona do pliku po dyrektywie scenariusza '''FirstInit'''.
 +
:::''Rozpoznawana przez: Starter.exe, Rainsted.exe''
 +
 +
:'''//$i''' – nazwa obrazka wyświetlanego przez dany starter w głównym oknie (miniaturka scenerii)
 +
:::''Rozpoznawana przez: Starter.exe, Rainsted.exe''
 +
 +
:'''//$l''' – kategoria scenerii pozwalająca zwinąć wszystkie scenariusze do jednej grupie.
 +
:::''Rozpoznawana przez: Starter.exe''
 +
 +
:'''//$e''' – opis błędu
 +
:::''Rozpoznawana przez: Rainsted.exe''
 +
 +
:'''//$g''' – odnośnik do mapy
 +
:::''Rozpoznawana przez: Rainsted.exe''
 +
 +
:'''//$r''' – plik odniesienia
 +
:::''Rozpoznawana przez: Rainsted.exe''
 +
 +
:'''//$t''' – regeneracja plików terenu
 +
:::''Rozpoznawana przez: Rainsted.exe''
 +
 +
:'''//$w''' – parametry składu
 +
:::'''type''' - Rodzaj pociągu: p - pasażerski, t - towarowy, m - towarowo-osobowy;
 +
:::'''lmax''' - Maksymalna długość składu;
 +
:::'''vmin''' - Minimalna prędkość pojazdów w składzie;
 +
:::'''vmax''' - Maksymalna prędkość, jaką można rozwinąć na trasie przejazdu;
 +
:::'''d''' - Rozstaw toru. Domyślnie normalny (1435m).
 +
:::''Rozpoznawana przez: Rainsted.exe''
 +
 +
:'''//$x''' – wymagana wersja pliku eu07.exe
 +
:::''Rozpoznawana przez: Rainsted.exe''
 +
 +
=== Komentarze ===
 
Można używać komentarzy liniowych:
 
Można używać komentarzy liniowych:
 
     <span style="color:gray">// komentarz liniowy</span>
 
     <span style="color:gray">// komentarz liniowy</span>

Wersja z 18:08, 1 maj 2021

Plik scenerii jest plikiem tekstowym, zawierającym definicje obiektów, zdarzeń, pojazdów znajdujących się w scenerii. Aby plik scenerii mógł zostać uruchomiony przez symulator, należy umieścić go bezpośrednio w folderze scenery. Scenerię można uruchomić za pomocą startera, wiersza poleceń lub bezpośrednio przez plik wykonywalny symulatora.

Przygotowanie

  • Komenda wiersza poleceń, uruchamiająca scenerię scene.scn:
   eu07.exe –s scenery/scene.scn
  • Wpis w eu07.ini, powodujący uruchomienie scene.scn przez plik wykonywalny
   sceneryfile scene.scn 

Uwaga: Układ osi w symulatorze jest następujący:

Swspol.png

Rodzaje plików składowych scenerii

Poniższe rodzaje plików nie różnią się składnią, a jedynie pomagają zachować ład w plikach wchodzących w skład scenerii.

  • SCN - główny plik scenerii, zawiera zazwyczaj definicje składów i polecenia include, dołączające obiekty z innego pliku do scenerii.
  • SCM - plik z elementami składowymi scenerii. Zazwyczaj używa się tych plików do podziału obiektów scenerii na tory, drogi, drzewa, wskaźniki...
  • CTR - plik ze zdarzeniami tworzącymi scenariusz
  • INC - plik pozwalający na wstawienie parametryzowanego obiektu (tekstura wymienna, rotacja w 3 osiach)

Składnia

Scenerię konfiguruje się za pomocą dyrektyw i wpisów przedstawionych w poniższym rozdziale:

Dyrektywy scenariusza

  • atmo - ustawienia mgły.
  • sky - ustawienie modelu nieba.
  • time - ustawienie czasu symulacji.
  • FirstInit - polecenie inicjalizacji wczytanych obiektów.
  • trainset - definicja składu.
  • event - zdarzenie, np. polecenie zmiany sygnału na semaforze.
  • include - dołączanie zawartości innych plików do pliku scenerii.
  • camera - ustawienia predefiniowanych pozycji kamer w trybie freefly.
  • config - ustawienia aplikacji specyficzne dla scenerii.
  • lua - dołączenie skryptu sterującego scenariuszem w języku LUA.
  • node - definicja obiektów widocznych: tory, rzeki, modele.
  • origin - polecenie przesunięcia obiektów o wektor.
  • rotate - polecenie obrotu obiektów o kąty.

Wycofane:

  • description - opis scenerii na potrzeby starterów.
  • light - ustawienie źródła oświetlenia scenerii.
  • test - testowanie poprawności dyrektyw.

Parametry obiektów w scenerii mogą być oddzielane

  • spacjami,
  • przecinkami,
  • średnikami,
  • tabulatorami
  • końcami linii.

Jednak dla lepszej czytelności dla człowieka zaleca się oddzielanie ich wyłącznie spacją.

Dyrektywy startera

Dyrektywy startera to zestaw parametrów (według składni komentarzy) pełniących rolę wprowadzenia do danego startera symulatora MaSzyna dodatkowych informacji oraz konfiguracji. Nie mają wpływu na działanie symulacji!

//$n – nazwa scenerii:
  • Rainsted.exe wyświetlana w głównym oknie wyboru scenerii w polu z żółtym tłem;
  • Starter.exe wyświetlana w głównym oknie wyboru scenerii w zakładce Opis służby;
Rozpoznawana przez: Starter.exe, Rainsted.exe
//$d – opis scenerii:
  • Rainsted.exe wyświetlany w głównym oknie wyboru scenerii obok wybranego składu/scenariusza;
  • Starter.exe wyświetlany w głównym oknie wyboru scenerii w zakładce Opis służby;
Rozpoznawana przez: Starter.exe, Rainsted.exe
//$f – link do zewnętrznego pliku lub strony internetowej dotyczący scenerii albo pojedynczego scenariusza, możliwy do otwarcia z poziomu startera (wyświetlany jako dedykowany przycisk):
  • Rainsted.exe wyświetla do trzech przycisków tego typu w głównym oknie wyboru scenerii;
  • Starter.exe wyświetla przyciski tego typu w głównym oknie wyboru scenerii w zakładce Załączniki;
Rozpoznawana przez: Starter.exe, Rainsted.exe
//$o – opis składu, pokazywany przez dany starter. Jeśli skład ma być ukryty, przed pierwszym znakiem opisu powinien znaleźć się znak minus -. Dyrektywa ta musi zostać wprowadzona do pliku po dyrektywie scenariusza FirstInit.
Rozpoznawana przez: Starter.exe, Rainsted.exe
//$i – nazwa obrazka wyświetlanego przez dany starter w głównym oknie (miniaturka scenerii)
Rozpoznawana przez: Starter.exe, Rainsted.exe
//$l – kategoria scenerii pozwalająca zwinąć wszystkie scenariusze do jednej grupie.
Rozpoznawana przez: Starter.exe
//$e – opis błędu
Rozpoznawana przez: Rainsted.exe
//$g – odnośnik do mapy
Rozpoznawana przez: Rainsted.exe
//$r – plik odniesienia
Rozpoznawana przez: Rainsted.exe
//$t – regeneracja plików terenu
Rozpoznawana przez: Rainsted.exe
//$w – parametry składu
type - Rodzaj pociągu: p - pasażerski, t - towarowy, m - towarowo-osobowy;
lmax - Maksymalna długość składu;
vmin - Minimalna prędkość pojazdów w składzie;
vmax - Maksymalna prędkość, jaką można rozwinąć na trasie przejazdu;
d - Rozstaw toru. Domyślnie normalny (1435m).
Rozpoznawana przez: Rainsted.exe
//$x – wymagana wersja pliku eu07.exe
Rozpoznawana przez: Rainsted.exe

Komentarze

Można używać komentarzy liniowych:

    // komentarz liniowy

a także komentarzy blokowych:

    
    /* to jest
    komentarz który
    zajmuje dużo
    linii */