GENERATOR
1.92
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 gen_191.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 (V) |
Umieszcza
się bezpośrednio przed linią tarczy
ostrzegawczej. Podanie wartości V jest
opcjonalne - spowoduje podanie na nastepnym
semaforze ograniczenia do 10*V. (Dzialanie
podobne do //*spsem.) |
//*sp (V) |
J. w. dla
semafora powtarzającego. |
//*sz |
Umieszcze
sie bezposrednio przed linia semafora zastępczego.
Można używać zamiast 'sz |
//*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.
Znaczników typu //*os V i //*sp V - z podaną wartością
V - można używać tylko na początku modułu, tj. przed
piewrszym semaforem. W przeciwnym wypadku wystąpi
niekonsekwencja podawancyh sygnałów na semaforach.
- 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.
Wersja 1.91
- Możliwość "wymuszania"
ograniczenia przy pomocy tarcz ostrzegawczych i semaforów
powtarzających.
Wersja 1.92
- Unikanie
powtarzania się modułów.
Ostatnia
aktualizacja: 02.10.99