GENERATOR
1.9
Generator
tras do symulatora pociągu EN57 "Mechanik"
JAK UŻYWAĆ PROGRAMU?
JAK PROWADZIĆ POCIĄG?
JAK PISAĆ MODUŁY?
OBSŁUGA DŹWIĘKU
USUWANIE BŁĘDÓW W MODUŁACH
KONWERTER TRAS
CO NOWEGO W TEJ WERSJI?
KONTAKT Z AUTOREM
Jak używać
programu?
Program ten służy do automatycznego generowania tras do
"Mechanika" korzystając z wcześniej przygotowanych modułów. Umożliwia
prowadzenie pociągu pospiesznego (EN 57 sa również wykorzystywane jako pociągi
pospieszne np. na trasie Warszawa - Kielce), generuje trasę o żądanej długości i
zapisuje ją w pliku o podanej przez użytkownika nazwie. Program możemy uruchomić
na dwa sposoby:
1. Uruchamiamy plik gener_19.exe .
Program zada nam pytanie o długość trasy w kilometrach - podajemy taką jaką
chcemy. Uwaga - w efekcie możemy otrzymać trasę nieznacznie dłuższą (błąd <
maksymalna długość modułu + maksymalna dlugość stacji końcowej). Następnie
program spyta, czy chcemy prowadzić pociąg pospieszny czy osobowy - w zależności
od naszego wyboru wpisujemy "o" lub "p". Następnie musimy podać nazwę pliku, w
którym ma zostać zapisana nasza trasa (podajemy pełną nazwę wraz z rozszerzeniem
".dat"). Jeżeli naciśniemy Enter nie wpisujac żadnej nazwy, to program zapisze
trasę jako "trasa.dat". Potem w miare generowania na ekranie pojawiać się bedą
gwiazdki - każda gwiazdka to jedna linia naszej trasy.
2. Możemy tez uruchomić plik generuj.bat ,
wtedy zostanie uruchomiony generator (patrz 1.), a następnie "Mechanik" na
wygenerowanej trasie. (należy podac nazwę pliku "trasa.dat" lub po prostu
nacisnąć Enter).
Jak prowadzić
pociąg?
Generator pozwala wybrać
prowadzenie pociągu pospiesznego lub osobowego. Prowadząc pociąg osobowy
zatrzymujemy się na wszystkich stacjach, przy pospiesznym zaś prowadzimy
pociąg tak, jak każą semafory, tzn. nie zatrzymujemy się na stacjach nie
oznaczonych semaforem, natomiast na stacjach oznaczonych semaforem
stajemy, jeżeli podaje on sygnał "S1" - światło czerwone. |

Sygnał
"s1" |
Zwracać też należy na prędkość
szlaku podawaną przez wskaźniki "W27". Pojawiają się one przy wyjeździe z
większych stacji i ograniczają prędkość danego odcinka szlaku aż do
napotkania następnej takiej tablicy. Tak więc nawet zielone światło na
semaforze nie upoważnia nas do przekroczenia tej prędkości. Jeżeli
przy wyjeździe ze stacji początkowej nie ma takiej tablicy, to należy
przyjąć, że prędkość szlaku wynosi 110 km/h. |



Wskaźniki
"w27" |
Gdy po wjechaniu na stację zauważymy dotyczący
naszego toru sygnał na tarczy manewrowej zezwalający na jazdę, to znaczy,
że dojechaliśmy do ostatniej stacji naszej trasy. Należy wtedy zamknąc
drzwi (po sygnale odjazdu od kierownika pociągu) i ruszyć. Jazdę
kontunuujemy aż do napotkania sygnału manewrowego zabraniającego dalszej
jazdy lub końca toru postojowego. Tam nie otwierając drzwi kończymy
jazdę. |


Sygnały manewrowe
zezwalające na jazdę. |
O dojechaniu do stacji końcowej mogą świadczyć jeszcze
inne rzeczy. Zależy to od pomysłowości autorów modułow i znajomości przepisów
kolejowych prowadzącego pociąg.
Z przyczyn technicznych na semaforach blokady
odstępowej układ świateł jest trochę inny niż w rzeczywistości:

Prawdziwy układ
świateł na semaforze blokady odstępowej |

Używany w generatorze
układ świateł na semaforze blokady
odstępowej |
Jeżeli chcesz się dokształcić z przepisów kolejowych,
to zajrzyj tutaj.
Ze względu na przyjęte rozwiązania techniczne przy
wyświetlaniu sygnałów migających na semaforach, semaforach zastępczych i
tarczach ostrzegawczych zdarza się sporadycznie (naprawdę rzadko!), że
"Mechanik" naliczy nam przy mijaniu takiego sygnału punkty karne mimo, że
jedziemy zgodnie z ograniczeniami.
Jak pisać
moduły?
- Co naprawdę robi
program? "Generator" tworzy plik trasy
dopisując kolejne moduły do pliku docelowego modyfikując odpowiednio pole
"kilometr" w liniach plików. Poza tym konsekwentnie ustawia sygnały na
semaforach, tarczach ostrzegawczych i semaforach powtarzających. Koryguje też
aktualną dozwoloną prędkość w zależności od aktualnych ograniczeń stałych lub
czasowych, dozwolonej prędkośći na tym odcinku szlaku i sygnałów na
semaforach. Posiada również ciekawą funkcję pozwalającą przetwarzać pewne
fragmenty z określonym prawdopodobieństwem - bardzo przydatną np. przy
ustawianiu pociągów na stacjach.
- Jak wyglądać powinien
moduł? Moduł powinien być odcinkiem szlaku o
długości 0,5 km lub jej wielokrotności. Na początku każdego modułu powinny
znajdować się dwie linie specjalne następującej postaci:
//*dlugosc
n
//*stac k
gdzie n to długość modułu w kilometrach pomnożona przez
dwa (czyli ilość odcinków półkilometrowych), a k to rodzaj stacji w obrębie
modułu: 0 - brak stacji; 1 - stacja mała; 2 - stacja duża. Na stacji małej
stają tylko pociągi osobowe, na dużej - wszystkie. Pola "kilometr" w liniach
modułu powinny zaczynać się od 0 i (jeżeli moduł jest długi) konsekwentnie
rosnąć.
Należy pamiętać aby moduł zawierał pełną sygnalizację dotyczącą
występujących w nim obiektów - przejazdów kolejowych, ograniczeń prędkości,
stacji, układów tarcza ostrzegawcza - (semafor powtarzający) -
semafor.
- Rodzaje modułów Lista dostępnych modułow znajduje się w pliku moduly.dat.
Podzielone są one na osiem kategorii: stacje początkowe jedno i dwutorowe,
odcinki szlaku jedno i dwutorowego, stacje końcowe jedno i dwutorowe oraz
switche. Switche są to moduły o wlocie jednotorowym a wylocie dwutorowym lub
na odwrót. Stacje i przystanki można umieszczać w każdym rodzaju
modułów.
- Znaczniki specjalne W modułach do generatora można stosować jeszcze pewne
znaczniki specjalne nie obsługiwane przez "Mechanika".
Znacznik |
Opis |
//*lim |
Umieszcza się go bezpośrednio
przed znakiem "w8" zapowiadającym stałe ograniczenie prędkości.
Spowoduje to losowe ustawienie wartości ograniczenia. |
//*rob |
J.w. przed ograniczeniem
czasowym. |
//*spsem V |
Stoi bezpośrednio przed linią
semafora. Umieszczenie tego znacznika przed semaforem wymusi na
następnym semaforze aktualnego modułu ograniczenie
prędkości do 10xV. V=0 tylko przed stacją !!! |
//% P oraz //** |
Fragment pliku pomiędzy tymi
znacznikami zostanie przepisany z prawdopodobieństwem P (w
procentach). |
'os |
Tarcza ostrzegawcza (zamiast 's w
obiekcie skalowalnym) |
'sp |
Semafor powtarzający (zamiast 's w
obiekcie skalowalnym) |
'sz |
Sygnał zastępczy (zamiast 's w
obiekcie skalowalnym) |
'szl |
Tablica "w27" (zamiast 's w
obiekcie skalowalnym) |
//*os |
Umieszcza się bezpośrednio przed
linią tarczy ostrzegawczej. Można używać zamiast 'os. |
//*sp |
J. w. dla semafora
powtarzającego. |
//*sz |
J. w. dla sygnału
zastępczego. |
//*szl |
J. w. dla tablic w27 |
//*sbl |
Umieszcza się bezpośrednio przed
linia semafora blokady odstępowej. Szczegóły - patrz
niżej. |
- Moduły zawierające stacje
Tworząc moduł w obrębie którego znajduje się
stacja należy pamiętać o związku pomiędzy rodzajem stacji a jej oznakowaniem.
Jeżeli stacja nie jest oznaczona semaforem, to musi być oznaczona w drugiej
linii modułu jako stacja mała (//*stac 1). Jeżeli stacja jest oznaczona
semaforem, to należy w obrębie modułu umieścić przed stacją "semafor
wymuszający stop" - poprzedzony znacznikiem //*spsem 0 , lub jeżeli jest to
semafor blokady odstepowej - //*sbl 0.
Wszystkie stacje w obrębie modułu
muszą byc tego samego rodzaju.
- Ustawienia semaforów
Choć nie jest to wymagane przez
program ze względów technicznych, to przy tworzeniu modułów przyjęta została
zasada, że w miarę możliwości przy wyjeździe z modułu zawierającego semafory
podaje się sygnał S2. Aby to zrobić należy przedostatni i
ostatni semafor poprzedzić linią:
//*spsem 11
lub - jeżeli ten
ostatni jest semaforem blokady odstępowej
//*sbl 11
Jeżeli jest to
niemożliwe (np. ze względu na to, że semafor przedostatni jest poprzedzony
linia //*spsem 0 - patrz pkt. poprzedni), należy taką linią poprzedzić tylko
ostatni semafor w module. Jest to jednak bardzo niepożądane - może spowodować
niekonsekwencję w ustawieniu semaforów.
- Semafory blokady
odstępowej Generator począwszy
od wersji 1.7 obsługuje (w dość ograniczonym stopniu) semafory blokady
odstępowej. Na szlaku zawsze spotykamy semafory wskazujące sygnał S2, dopiero
ostani semafor odcinka blokady może zapowiadać ograniczenie na następnym -
zwykłym już - semaforze. Do ustawiania semaforów blokady odstępowej służą
znaczniki //*sbl umieszczane bezpośrednio przed linia takiego semafora.
Znacznik taki może być użyty na dwa sposoby:
//*sbl
spowoduje
ustawienie semafora blokady z sygnałem zapowiadającym losowo wybrane
ograniczenie prędkości na semaforze następnym (i konsekwentne ustawienie
następnego semafora). Ale uwaga! Następny semafor musi już być zwykłym
semaforem, a nie semaforem blokady odstępowej.
//*sbl V - jak wyżej, tylko
prędkość na następnym semaforze nie będzie losowana, a ustawiona na 10*V -
dzialanie podobne do //*spsem
Jeżeli w danym module mamy do czynienia tylko
z jednym semaforem blokady odstępowej, to należy go poprzedzić linia
//*sbl 11
Podobnie należy postąpić, gdy semafor blokady odstępowej jest
ostatnim semaforem w module.
Jeżeli przed semaforem blokady odstępowej
chcemy ustawić tarczę ostrzegawczą, to należy ustawic ją jako obiekt
skalowalny (syg_os2.bmp), bez użycia znaczników //*os, 'os.
- Tarcze ostrzegawcze i semafory
powtarzające
Tarcze
ostrzegawcze i semafory powtarzające, a także sygnał zastępczy ustawia się w
następujący sposób: należy ustawić w odpowiednim miejscu obiekt skalowalny nie
przejmując się specjalnie tym, co on pokazuje. Tzn. stawiamy na przykład
syg_os2.bmp nie przejmując się, co będzie wyświetlane na tej tarczy po
włączeniu modułu da trasy - interesuje nas tylko prawidłowe położenie obiektu.
Następnie ustawiamy właściwy znacznik (najwygodniej typu //*... - obiekt
bedzie wtedy nadal widoczny przy testowaniu).
Podobną technikę stosuje się
przy wstawianiu tablic "w27"
Wyjątkiem są tarcze ostrzegawcze i semafory
powtarzające przed semaforami blokady odstępowej. Stawiamy je jako obiekty
skalowalne (syg_os2.bmp), (syg_sp2.bmp) i nie używamy
znaczników.
Oczywiście wyżej wymienione zasady ustawiania odnoszą się tylko
do sygalizacji dotyczącej naszego toru - pozostałe obiekty stawiamy jako
obiekty skalowalne.
- Ograniczenia
techniczne
a) pomiędzy znakiem
"w8" zapowiadającym ograniczenie prędkości a początkiem odcinka, na którym
obowiązuje ograniczenie nie należy stosować semaforów, tarcz ostrzegawczych
ani znaczników 'szl.
b) znaczniki prędkości stosować
wolno tylko razem ze znakami "w9". Nie należy "ręcznie" korygować nimi
prędkości semafora ani prędkości szlaku;
c) "Generator" dziala tylko z
załączonym plikiem tekstury.dat. Pliku tego ani
tekstur nie należy modyfikować (przynajmniej bez konsultacji z webmasterem
strony, na której program jest opublikowany lub autorem programu). Program
wykorzystuje w tej chwili 195 tekstur na 200 dopuszczalnych także ciężko jest
coś dodać, podmiany tekstur są zaś niemile widziane ze względu na zachowanie
kompatybilności modułów różnych autorów.
d) w pliku moduly.dat nie
można zostawiać pustych linii pomiędzy modułami tej samej kategorii.
Poszczegolne kategorie powinny zas miec przynajmniej jedna linie odstepu i
tylko jedna linie komentarza w naglowku. Tresc naglowka moze byc dowolna, ale
kategorie powinny wystepowac dokladnie w takiej kolejnosci jak sa. Plikow
szlaku jedno i dwutorowego moze byc co najwyżej 1000 a plików pozostalych
kategorii co najwyżej po 50.
e) wszelkie obiekty wpływające na
prędkość jazdy (znaczniki z_p, 'szl, //*lim, semafory, itp.) a także tarcze
ostrzegawcze i semafory powtarzające muszą znajdować się w pliku w takiej
kolejności, w jakiej pojawią się na trasie (tzn. obiekt o mniejszej
współrzędnej z musi pojawić się w pliku wcześniej). Jeżeli występują
one w tym samym miejscu należy jeden z nich nieznacznie przesunąć (np. o
10).
Są to chyba najogólniejsze reguły dotyczące tworzenia
modułów. Starałem się opisać wszystkie zasady ustawiania sygnalizacji. W pewnych
okolicznościach można je złamać - można tu trochę poeksperymentować. Polecam też
postudiowanie istniejących modułów - można tam znaleźć ciekawe rozwiązania,
czasami łamiące powyższe zasady.
Obsługa
dźwięku
Generator począwszy od wersji 1.7 losowo
dobiera zestaw dźwięków do trasy - o ile dysponujemy plikami do obsługi dźwięku.
Poszczególne zestawy zapisane sa w plikach dzw_osob.dat i
dzw_posp.dat odpowiednio dla pociągów osobowych i pospiesznych.
Każdy zestaw składa się z polecenia odjazdu, zapowiedzi odjazdu, zapowiedzi
przyjazdu i maksymalnie trzech wersji zapowiedzi wjazdu na stacje pośrednią.
Struktura ww. plików odpowiada strukturze pliku moduly.dat .
Generator losuje zestaw dzwięków i zapisuje go w pliku dzwieki.dat : polecenie odjazdu na pozycji 11, zapowiedzi odjazdu i
przyjazdu odp. na 15 i 16, a zapowiedzi wjazdu na stację pośrednią na 17, 18 i
19. Pozycje te są więc zarezerwowane i nie należy wstawiać w nie własnych
dźwięków.
W przypadku braku plików dzw_osob.dat i/lub dzw_posp.dat
program nie ustawi zestawu
dźwięków.
Usuwanie błędów
w modułach
Program jest stosunkowo mało odporny na
różnego rodzaju pomyłki w modułach i pliku moduly.dat. Oto kilka
poważniejszych objawów usterek wraz z możliwym wyjaśnieniem:
Objawy |
Możliwa
przyczyna |
Moduł nie został dopisany - w pliku
wyjściowym jest tylko jego nazwa lub/i linia znacznika prędkosci |
Błąd w dwóch pierwszych liniach
modułu kodujacych długość i rodzaj stacji. |
Moduły nakładają się na
siebie |
Błędnie podana długość modułu.
|
Program zawiesza się na module,
przepisuje tylko jego część |
Brak znacznika //** po znaczniku
//% |
Nieprawidłowe ustawienia
semaforów |
W module znajduje się semafor
(najczęściej "S2" ) umieszczony jako obiekt skalowalny - należy przerobić
go na semafor. |
Nieprawidlowe ustawienia prędkości
szlaku lub innego ograniczenia |
Znacznik prędkości szlaku i któryś
semafor występują w innej kolejności w pliku a w innej w
rzeczywistości. |
Runtime error ... |
Brak któregoś pliku wymaganego do
pracy programu lub próba otwarcia nieistniejącego
modułu. |
Konwerter
tras
Załącznikiem do programu jest konwerter
tras - program dostosowujący różne pliki tras do naszego pliku tekstur. Znajduje
się on w katalogu Konwert. Aby
przekonwertować trasę należy skopiować do tego katalogu plik trasy i
wykorzystywany przez nią plik tekstur - ten ostatni pod zmienioną nazwą. W
katalogu musi się też znajdować aktualna kopia naszego pliku tekstur. Po
uruchomieniu (konv11.exe)
musimy podać nazwę naszego i cudzego
pliku tekstur oraz nazwe pliku, który chcemy przetworzyć.
W trakcie przetwarzania program może
stwierdzić, że w cudzym pliku tekstur znajduje się plik nieużywany przez nas.
Mamy wtedy dwie możliwości:
- Użyć innego piku zamiast (program
spyta o nazwę).
- Dodać ten plik do naszego pliku
tekstur (niezalecane przy pracy z plikiem tekstur Generatora).
Jeżeli wybierzemy opcję pierwszą, to
nazwa przez nas podana zostanie zapamiętana w pliku Log.dat i program
będzie automatycznie dokonywał analogicznej zamiany przy następnych konwersjach.
Plik ten można również modyfikować "ręcznie".
Co nowego w tej
wersji?
Wersja 1.1
- Inny sposób pomijania linii znacznika
stacyjnego przy generowaniu tras dla pociągów pospiesznych.
- Dopuszczalne stawianie semaforów i
tablic "w27" pomiędzy znacznikami "w9".
- Opcjonalne, a nie obligatoryjne
stosowanie znaczników //*lim i //*rob
Wersja 1.2
- Dopuszczalne stosowanie znacznika
//*spsem przy kolejnych semaforach
Wersja 1.3
- Nowe znaczniki predkosci szlaku,
tarczy ostrzegawczej, semafora powtarzającego i sygnału zastępczego. Stare
nadal działają.
Wersja 1.4
- Obsługa znaczników semafora blokady
odstępowej.
Wersje 1.5 - 1.6 - wersje testowe niepublikowane.
Wersja 1.7
- Losowe dobieranie zestawu
dźwięków.
- Pełny zestaw sygnałów na
semaforach
- Wzbogacona obsługa semaforów blokady
odstępowej
- Poprawione błedy przy korekcji
prędkości.
Wersja 1.8
- Poprawiony błąd przy korekcji
prędkości semafora w obrębie ograniczenia stałego.
- Nie przepisywanie do pliku docelowego
znaczników generatora.
Wersja 1.9
- Opcjonalna obsługa dźwięku.
Ostatnia
aktualizacja: 06.09.99