1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-24 22:14:36 +02:00
vcmi/h3m.txt
Michał W. Urbańczyk bbbfce798c * reading 8. byte of player description from map header
* disabled loading creatures battle animations 
* fixed memory leaks (a few of many)
* creating default start options
* minor bugfix in main menu (slider wasn't removed)
* added txt file with portrait list
* reading heroes portraits
2007-07-19 23:38:11 +00:00

1695 lines
108 KiB
Plaintext

h3m:
(wszystko na mapie wogowej rozmiaru S o trzyznakowej nazwie, chyba, że zaznaczono inaczej)
Spis bajtów
Z lewej - numer bajtu. Wszystko wykonywane na mapie rozmiaru S o
trzyznakowej nazwie (przesuwają). Format mapy WoGowy, chyba, że zaznaczono.
0000 - wersja mapy, zależy od formatu - WoG (33), AB (15), RoE (0e), SoD (1c). Ją też sprawdza edytor map H3
0004 - na niektórych mapach wskazuje, czy na mapie są gracze; w przypadku map WoG z ERMami nie działa
0005 - 0008 - długość/szerokość boku mapy
0009 - czy mapa ma podziemia (01), czy też nie (00) - uwaga - jeżeli mapa ma podziemia, to po bajtach opisujących teren na powierzchni następuje drugie tyle z opisem podziemia
000a - 000d - długość nazwy mapy (edytor pozwala na do 30 znaków)
000e - pierwszy znak nazwy mapy
-uwaga - odtąd zakładamy nazwę mapy o długości 3 znaków!-
0011 - 0014 - długość opisu mapy (wynosi |0012| * 256 + |0011|)
-uwaga - odtąd zakładamy, że mapa ma opis o długości 0 znaków!-
0015 - poziom trudnosci mapy easy (00); normal (01); hard (02); expert (03); impossible (04)
0016 - ograniczenie poziomu bohatera
0017 - początek opisu graczy; jeśli dany graczem nie można grać jego opis zaczyna się od dwu bajtów zerowych; jeśli graczem nie można grać, lub nie ma żadnych bohaterów, to jego opis zajmuje 15 bajtów; jeśli ma jednego bohatera, to 25 bajtów, jeśli więcej, to 5 bajtów na każdego dodatkowego + ewentualne imiona (dokładniej jest to opisane niżej) (domostwa bohaterów nie wchodzą do liczby bohaterów gracza)
-uwaga - gdy dany gracz na mapie nie występuje to część opisujących go bajtów może przybierac przypadkowe wartości
008E - ostatni bajt opisów graczy (jeśli ich nie ma)
008f - warunek wygranej (FF - standardowe, 00 - zn. artefakt, 01 - zbierz oddział, 02 - zdobądź zasób, 03 - rozbuduj miasto, 04 - zbuduj graala, 05 - pokonanie konkretnego bohatera, 06 - zdobycie miasta, 07 - pokonanie konkretnego potwora, 08 - oflaguj siedliska, 09 - oflaguj kopalnie, 0a - przetransportowanie artefaktu); jeśli niestandardowe, to następują dodatkowe bajty (patrz opis niżej)
0090 - warunek przegranej (FF - standardowe, 00 - utrata konkretnego miasta, 01 - utrata konkretnego bohatera, 02 - limit czasowy); jeśli niestandardowe, to następują dodatkowe bajty (patrz opis niżej)
0091 - ilość drużyn; jeśli niezerowa, to 8 dodatkowych bajtów opsiujących numery drużyn kolejnych graczy (numery drużyn zaczynają się od 0)
0092 do 00a5 - informacje o tym, którzy bohaterowie są dostepni do gry
00ca do 00db - informacje o tym, które artefakty są dostepne
00dc do 00e4 - informacje o tym, które czary są dostepne
00e5 do 00e8 - informacje o tym, które umiejetnosci bohaterów są dostepne
00e9 do 00ec - ilość pogłosek (maksymalnie 30) (jeśli różna od zera, do dodatkowe bajty (opis niżej) (bajty 00ea do 00ec zawsze równe zero - czy nie są wykorzstywane na coś innego (?) (raczej nie))
48e5 - 48e8 (zaraz po spisie obiektów na mapie) - ilość wydarzeń zapisana w formacie normalnym (na mapie standardowej) (następują dodatkowe bajty, opisane niżej)
----
zmienne i zależne nie wiadomo od czego prawdopodobnie są tylko dla zmyłki
----
0189 - początek pól terenu (jeśli nazwa mapy ma trzy znaki!)
opisy kolejnych pól terenu
po ostatnim polu jest bajt okreolaj1cy chyba ilość defów
osiem bajtów po nim zaczyna sie nazwa pierwszego defa. Czy te osiem
bajtów to limit liczby defów na mape??? por. Nazwy defów poprzedza (04 00 00 00)
defy rzeczy użytych na mapie
na def sie składa długość nazwy + nazwa + 42 bajty opisu
po spisie defów nastepuje spis obiektów
Najpierw jest liczba obiektów (włącznie z potworami), potem 3 puste
bajty (może są pod wieksza ilość obiektów??)
nastepuja obiekty
na kazdy obiekt uzyty obiekt 12 bajtów
1 bajt - wsp. X
2 bajt - wsp. y
3 bajt - poziom - (00) naziemne, (01) podziemne
4 bajt - identyfikator obiektu (chyba nr w kolei defa, ktory go okresla)
5 - 12 ??
(FF) i 3 bajty puste - czemu tu??
nastepują potwory i obiekty
Każdy potwór jest określony przez 24 bajty (lub 36?????)
obiekty zajmują z reguły 10 bajtów (jak artefakty i zasoby)
1 bajt - wsp. X
2 bajt - wsp. y
3 bajt - poziom - (00) naziemne, (01) podziemne
4 bajt - identyfikator obiektu (chyba nr w kolei defa, ktory go okresla)
------
Uwagi o terenie:
Kod terenu to opisy kolejnych pól, w pasach od lewej do prawej, a
nastepnie z góry w dół. Na każde pole składa sie 7 bajtów.
1 bajt - rodzaj terenu - dirt (00), pustynia (01), grassland (02), snow
(03), swamp (04), rough (05), subterranean (06), lava (07) woda (08)
2 bajt - wygl1d terenu - dla wody zwykły od (15) do (20)
dla reszty rozmaite wartooci - sprawdzia!
3 bajt - obecność rzeki - wodna (01), oblodzona (02), błotna (03), lawy
(04); żadna - (00)
4 bajt - kierunek/wygl1d rzeki - numer obrazka w defie
(pion (09), (0a); poziom (0b), (0c); zakret (01); skrzyżowanie (04);
odnoga pion _|_ (05); odnoga poziom (07); żaden - (00);;; czasem (00)
także gdy jest rzeka (czemu?) - zakret DP )
5,6 bajt - drogi (sprawdzić potem), najpewniej analogiczne do rzek
7 bajt - czy dany bajt jest wybrzeżem oraz czy (i ew. jak) nalezy odbić bitmapę z polem
wybrzeże powoduje dodanie 40 do tego pola bitowego
zmiana pola mapy powodowana tym bajtem:
patrzymy na 2 najmniej znaczące bity (bierzemy liczbę modulo 4)
jeśli mamy 00 (jak na przykład przy 00 lub 40), to zostawiamy grafikę w spokoju
jeśli mamy 01 (jak na przykład przy 01 lub 41), to odbijamy obrazek symetrycznie względem osi pionowej:
|
|
-----------------
| | |
| | |
| | |
| | |
| | |
| | |
-----------------
|
|<-oś, względem której odbijamy
|
jeśli mamy 02 (jak na przykład przy 02 lub 42), to odbijamy obrazek symetryczne względem osi poziomej
jeśli mamy 03 (jak na przykład przy 03 lub 43), to obracamy w dowolną stronę o 180 stopni
------
Uwagi o deklaracjach defów
{na początek, tak naprawdę, to mamy ilość defów w formacie normalnym}
Początkiem każdego segmentu z defem są 4 bajty określające długośc nazwy, i potem nazwa (z rozszerzeniem),
a następnie 42 bajty.
Oto tabelka z wartościami.
Kolumny oddzielone tabami.
Ukośniki '/' oddzielają wartości w hexach od wartości dziesietnych (wartości podaję i w tym i w tym).
Numeracja bajtów dziesiętna.
Listy i uwagi do których się odnoszę zamieszczone są na końcu pliku.
Bajt Potwory Obiekty
długość nazwy defa (4 bajty, zapis normalny)
nazwa defa
1 blockmapa blockmapa (patrz niżej)
2 blockmapa blockmapa (patrz niżej)
3 blockmapa blockmapa (patrz niżej)
4 blockmapa blockmapa (patrz niżej)
5 blockmapa blockmapa (patrz niżej)
6 blockmapa blockmapa (patrz niżej)
----------------------
7 visitmapa visitmapa (patrz niżej)
8 visitmapa visitmapa (patrz niżej)
9 visitmapa visitmapa (patrz niżej)
10 visitmapa visitmapa (patrz niżej)
11 visitmapa visitmapa (patrz niżej)
12 visitmapa visitmapa (patrz niżej)
----------------------
bajty 7 - 12 są 'visitmapą' - określają miejsca, w których można odwiedzić dany obiekt (są zorganizowane tak samo jak blobkmapa, z ta tylko różnicą, że miejsca odwiedzalne są oznaczone bitową jedynką, zaś nieodwiedzlane bitowym zerem)
----------------------
13 FF / 255 FF / 255 {być może określa, czy obiekt jest lądowy (FF), czy morski (00), choć nie wiem, po co w ogóle to miałoby być - jak mapa jest zła, to Heroes i tak nic nie naprawi}
14 01 / 01 01 / 01
15 Uwaga 2 Lista C
16 0 0
17 typ obiektu typ obiektu (lista B)
18 0 0
19 0 0
20 0 0
21 podtyp - lista A podtyp - lista E | 0 //jeżeli nie ma podtypu, to jest (00)
22 0 0
23 0 0
24 0 0
25 2 0
26 0 Lista D
27 0 0
28 0 0
29 0 0
30 0 0
31 0 0
32 0 0
33 0 0
34 0 0
35 0 0
36 0 0
37 0 0
38 0 0
39 0 0
40 0 0
41 0 0
42 0 0
Pierwsze sześć bajtów określa pola blokowane przez budynek (pola 'do odwiedzania' też się tu liczą jako blokujące).
Każdy z tych bajtów określa pas 8 (może tylko 7?) poziomych, leżących koło siebie pól. Górne bajty określają górne pasy. Jeśli obiekt zajmuje mniej niż 6 pól w pionie, to górne pozostają niewykorzystane, blockamapa jest w dolnych.
Aby ustalić które pola w danym pasie są zablokowane należy zapisać wartośc bajtu w systemie binarnym, (w razie potrzeby) uzupełnić nieznaczącymi zerami do 8 znaków, odwrócić kolejność. Kolejne cyfry tak uzyskanej liczby będą określać które pola są zablokowane, a które nie. 1 oznacza wolne pole, a 0 zajęte.
Przykładowo, jeśli obiekt zajmuje kształt ('X' to zajęte pole, a '.' to wolne pole):
XX.
XXX
.XX
To będzie zakodowany bajtami:
(FF) -> bin 11111111 -> (odwracamy) 11111111 -> ........
(FF) -> bin 11111111 -> (odwracamy) 11111111 -> ........
(FF) -> bin 11111111 -> (odwracamy) 11111111 -> ........
(9F) -> bin 10011111 -> (odwracamy) 11111001 -> .....XX.
(1F) -> bin 00011111 -> (odwracamy) 11111000 -> .....XXX
(3F) -> bin 00111111 -> (odwracamy) 11111100 -> ......XX
------
Uwagi o bohaterach:
bohater standardowo zajmuje 46 bajtów (przy niezmienianiu garnizonu, imienia, artefaktów itp.)
0001 - pozycja po współrzędnej x
0002 - pozycja po współrzędnej y
0003 - poziom (??)
0004 - zawsze 02 (?)
000d - numer (?) ---------------------
000e - zawsze 0d (?) |te bajty określają |
000f - zawsze cb (?) |który to bahater |
0010 - zawsze 12 (?) --------------------- {wykorzystywane np. przy misjach}
0011 - numer gracza (gracz 1 - 0, 2 - 1 itd)
0012 - typ bohatera (np. Solmyr)
0013 - czy imię jest standardowe (00) czy niestandardowe (01); jeśli 01; to dodatkowe bajty: długość: maksymalnie 12 (dziesiątkowo), trzy bajty zerowe i imię; {UWAGA! zmiana imienia zmienia nagwek w sposb istotny (wraz z jego długością)}
0014 - czy doświadczenie jest niezerowe; jeśli tak, to cztery dodatkowe bajty - [0003] * 100^3 + [0002] * 100^2 + [0002] * 100 + [0000] = doświadczenie
0016 - czy umiejętności standardowe (00), czy nie(01)
jeśli nie, to 4 bajty na ich ilość i dalej ich opisy
0017 - garnizon; 00 - standardowy, 01 - niestandardowy -> 28 dodatkowych bajtów, 4 bajty na pozycję, jeden lub dwa pierwsze na rodzaj potwora, dwa ostatnie na ilość - zapis ilości jak w innych przypadkach zapisu liczb
0018 - formacja: luźna - 00, ścisła - 01
0019 - czy artefakty standardowo (00), czy niestandardowo (01); jeśli niestandardowo, to po tym bajcie następuje 40 dodatkowych bajtów opisuących artefakty
{dwa ostatnie bajty to ilość artefaktów w sakwie; jeśli niezerowa, to dwa dodatkowe bajty na każdy artefakt w sakwie}
001a - patrol: FF - brak, wpp. promień patrolu
001b - biografia bohatera: 00 - brak, 01 - jest, [dodatowe bajty!]: 4 bajty na długość (format jak przy doświadczeniu) + treść
001c - plec (?) - FF - standardowa, 00 - przeciwna
001d - czy czary standardowo (00) czy niestandardowo (9 dodatkowych bajtów zaraz po tym bajcie)
001e - 00 lub 01; po 01 nastpuj 4 dodatkowe bajty (długość opsiu bohatera rosnie do 50 znaków) oznaczaące kolejno atak, obronę, moc i wiedzę; 00 oznacza standardowe umiejętnści podstawowe
dalej same zera
------
Uwagi o potworach
Z reguły potwór zajmuje 24 bajty
pierwsze cztery jak każdy obiekt (pos+def)
dalej 8 zer
cztery bajty na typ (chyba na typ, ale do niczego innego nie pasuje) {wykorzystywane np. przy misjach}
dwa bajty dla ilosci jednostek pod otwartym niebem, 00 jeśli jest losowa
jeden by okrelić charakter, 00 - najprzyjaźniejszy, 04 na najbardziej wrogi
jeden by okrelić, czy jest skarb/opis
a jeśli jest, to dodatkowe cztery bajty na dugość wiadomoci, trochę na treść wiadomoci, 7 po 4 na ilości surowców i dwa na artefakt
jeden by okrelić, czy jednostka nigdy nie ucieka (01) czy jest normalnie (00)
jeden by okrelić, czy ilość jednostek zwiększa się z czasem (00) czy nie (01) i w ciemności związać
dwa zawsze zerowe
[PS: kiedy potwór zajmuje 36 bajtów???]
------
Zamki:
z reguły 48 bajtów
00 - 02 - pozycja
03 - def
04 - 0b - zera
0c - ? ---------------------
0d - ? |te bajty określają |
0e - ? |który to zamek |
0f - ? --------------------- {wykorzystywane przy misjach (?)}
10 - gracz (FF - brak)
11 - czy ma niestandardow nazwę (wtedy 01 zamiast 00); jeśli tak, to 4 bajty na długość i nazwa (dodatkowo, zwiększa długość pliku)
12 - garnizon standardowy (00) czy niestandardowy (01)
jeśli niestandardowy, to 28 dodatkowych bajtów
siedem razy po dwa bajty na id stwora i dwa na ilość w zapisie normalnym, kolejność stworów jak zawsze
13 - formacja luźna (00) lub ścisła (01)
14 - czy standardowe ustawienia budynków (00) czy nie (01); jeśli nie to dodatkowe 12 bajtów (uwaga! do poniżeszej listy można również dodać tą ze zdarzeń dla miasta; jest pełniejsza od tej i wydaje się być kompatybilna)
00 - 00; +1, jeśli ma radę miasta, +2, jeśli ma ratusz, +4, jeśli ma kapitol, +8, jeśli ma fort, +16, jeśli ma cytadelę, +32, jeśli zamek, +64, jeśli ma tawernę, +128, jeśli ma kuźnię
01 - +1, jeśli ma targ, +2, jeśli ma magazyn zasobów, +8, jeśli ma pierwszy poziom gildii magów, +16, jeśli ma drugi poziom gildii magów, +32, jeśli ma trzeci poziom gildii, +64, jeśli ma czwarty pozoim gildii, +128, jeśli ma piąty poziom gildii (wyższe nie testowane)
02 - +1, jeśli ma stocznię, +2, jeśli ma kolosa (graal), +4, jeśli ma latarnię morsk, +8, jeśli ma bractwo miecza, +16, jeśli ma stajnie, +64, jeśli ma strażnicę (gen1), +128, jeśli ma upg strażnicę (gen1+)
03 - +2, jeśli ma łuczników (gen2), +4, jeśli ma kuszników (gen2+), +16, jeśli ma gryfy (gen3), +32, jeśli ma ul gryfy (gen3+), +64, jeśli ma bastion gryfów (gen3 upg), +128, jeśli ma mieczników (gen4)
04 - +1, jeśli ma krzyżowców (gen4+), +4, jeśli ma mnichów (gen5), +8, jeśli ma kapłanów (gen5+), +32, jeśli ma kawalerzystów (gen6), +64, jeśli ma czempionów (gen6+), +128, jeśli ma anioły (gen7)
05 - +1, jeśli ma archanioły (gen7+)
06 - +1, jeśli rada miasta jest niedostępna, +2, jeśli ratusz jest niedostępny, +4, jeśli kapitol jest niedostępny, +8, jeśli fort jest niedostępny, +16, jeśli cytadela jest niedostępna, +32, jeśli zamek jest niedostępny, +64, jeśli tawerna jest niedostępna,
07 // prawdopodobnie analogicznie jak w 01, tyle że ustala niedostępność budynków
08 // prawdopodobnie analogicznie jak w 02 (sprawdzono dla bractwa miecza), tyle że ustala niedostępność budynków
09 // prawdopodobnie analogicznie jak w 03, tyle że ustala niedostępność budynków
0a // prawdopodobnie analogicznie jak w 04, tyle że ustala niedostępność budynków
0b - +1, jeśli archanioy nie są dostpne (gen7+)
{wygląda na symetryczne, więc może lepiej zająć się czymś innym}
15 - czy ma fort (jeśli 014 ma warto 00); jeśli 014 jest 01, ten bajt traktowa jako 0b opisu budynków
16 - 1e - które czary muszą wystąpić w gildii
1f - 27 - które czary mogą wystąpić w gildii
28 - 2b - ilość wydarzeń związanych z tym zamkiem w zapisie normalnym
2c - FF
2d - 2f - zera
-------
standardowy opis gracza:
bajty:
00 - czy gracz - człowiek może grać jako ten gracz (01 - tak; 00 - nie)
01 - czy komputer może grać tym graczem (01 - tak; 00 - nie)
02 - zachowanie komputera (00 - losowe, 01 - wojownicze, 02 - budownicze, 03 - odkrywcze)
03 - czy dozwolone frakcje są zdefiniowane przez map makera (ale nawet jak 00 to kolejne bajty są poprawnie ustawione)
04 i 05 - dozwolone frakcje (01 - zamek; 02 - leśny; 04 - zimowy; 08 - ognisty; 16 - nekro; 32 - dungeon; 64 - barbarzyński; 128 - cytadela; 01 bajtu 0005 - elemental); jest to zrobione na polach bitowych
06 - czy frakcja jest losowa (00) czy nie (01)
07 - czy wybrano dla gracza główny zamek (01 - tak; 00 - nie) - jeśli tak dodatkowe 5 bajtów:
- 07+1 - czy w głównym mieście wygenerować bohatera (01 - tak; 00 - nie)
- 07+2 - nie wiadomo co - zawsze (00)???
- 07+3 - 07+5 - współrzędne (standardowo - x,y,poziom)
08 - czy wygenerować bohatera losowego (do wyboru na starcie) ? (sprawdzićejszcze)
09 - nie wiadomo co. Testowałem troszkę (ale niewiele - warto by potwierdzić) i gdy nie ma bohaterów 0009 przyjmuje (FF), a gdy są (06). Czy (FF) mówi nam, że bajtów dla tego gracza będzie tylko 15?
Specyfikacja GrayFace'a podaje, że jest to numer bohatera (jakiego? głównego? tego do wygenerowania?), przyjmujący FF gdy bohatera nie ma, lub jest losowy
0a - portret bohatera głównego (FF jeśli standardowy)
0b - 0e - długość imienia bohatera głównego w zapisie normlanym (+imię bohatera, jeśli jest - przesuwa bajty)
-- uwaga - jeżeli gracz nie posiada bohaterów, to opis się w tym miejscu kończy --
0f - ilość domostw bohaterów gracza
10 - 13 - ilość bohaterów gracza
teraz tyle razy, ilu gracz ma bohaterów powtarza się:
jeden bajt na typ bohatera, cztery bajty na długość imienia +imię, jeśli jest niestandardowe
------------------------------------
bajty w warunkach zwycięstwa:
(dla znalezienia artefaktu 4:
00 - czy można zwyciężyć też w normalny sposób (01 - tak, 00 - nie);
01 - czy warunek zwycięstwa dotyczy też komputera (00 - nie, 01 - tak);
02 - id artefaktu do zdobycia;
04 - 00)
(dla zebrania oddziału 8:
00 - czy można zwyciężyć też w normalny sposób (01 - tak, 00 - nie);
01 - czy warunek zwycięstwa dotyczy też komputera (00 - nie, 01 - tak);
02 i 03 - id potwora (por lista A);
04 do 07 - ilość (maksimum 99999?) - zapis normalny)
(dla zebrania zasobów 7:
00 - czy można zwyciężyć też w normalny sposób (01 - tak, 00 - nie);
01 - czy warunek zwycięstwa dotyczy też komputera (00 - nie, 01 - tak);
02 - id zasobu (drewno - 00, rtęć - 01, ruda - 02, siarka - 03, kryształ - 04, klejnoty - 05, złoto - 06 (prawie na pewno))
03 - 06 - ilość zasobu w zapisie normalnym)
(dla rozbudowania miasta 7:
00 - czy można zwyciężyć też w normalny sposób (01 - tak, 00 - nie);
01 - czy warunek zwycięstwa dotyczy też komputera (00 - nie, 01 - tak); (nie da się wyłączyć)
trzy bajty na położenie miasta (jak położenie bohatera)
05 - oczekiwany stopień rozwoju budynku rady (00 - miasteczko, 01 - miast, 02 - kapitol)
06 - oczekiwany poziom rozwoju zamku (00 - fort, 01 - cytadela, 02 - zamek))
(dla rozbudowania miasta 5:
00 i 01 zawsze równe 01 (w edytorze nie da się ustawiać odpowadających opcji)
kolejne trzy bajty - położenie miasta (lub trzy razy FF, jeśli dowolne miasto))
(dla pokonania konkretnego bohatera 5:
00 i 01 zawsze równe 00 (w edytorze nie da się ustawiać odpowadających opcji)
dalej mamy położenie bohatera na mapie, którego należy pokonać (x, y, poziom; indeksowane od 0))
(dla zdobycia konkretnego miasta 5:
00 - czy można zwyciężyć też w normalny sposób (01 - tak, 00 - nie);
01 - czy warunek zwycięstwa dotyczy też komputera (00 - nie, 01 - tak);
kolejne trzy na położenie miasta)
(dla pokonania potwora 5:
00 - czy można zwyciężyć też w normalny sposób (01 - tak, 00 - nie);
01 - czy warunek zwycięstwa dotyczy też komputera (00 - nie, 01 - tak) (nie można wyłączyć)
pozycja potwora na mapie (jak pozycja bohatera))
(dla oflagowania kopalń / siedlisk 2:
00 - czy można zwyciężyć też w normalny sposób (01 - tak, 00 - nie);
01 - czy warunek zwycięstwa dotyczy też komputera (00 - nie, 01 - tak); )
(dla przetransportowania artefaktu 6:
00 - czy można zwyciężyć też w normalny sposób (01 - tak, 00 - nie); (zawsze 01)
01 - czy warunek zwycięstwa dotyczy też komputera (00 - nie, 01 - tak);
02 - id artefaktu
03 - 05 - pozycja miasta docelowego (jak zawsze))
--------------------------------
bajty w warunkach porażki
(dla utraty zamku 3:
pozycja zamku w zapisie normalnym)
(dla utraty konkretnego bohatera 3:
pozycja bohatera w zapise normalnym)
(dla limitu czasowego 2:
dwa bajty na ilość dni w zapisie normalnym (drugi bajt razy 256 + pierwszy bajt))
----------------------------------
pogłoski i dodatkowe bajty z nimi zwiazane
trzy bajty zerowe
cztery bajty na zapis długości nazwy pogłoski (maksymalnie 30 000, zapis normalny)
treść nazwy pogłoski
cztery bajty na zapis długości treści pogłoski (maksymalnie 300, zapis normalny)
treść pogłoski
----------------------------------
bajty wydarzeń (59 + |teksty|)
4 bajty na długość nazwy zdarzenia
nazwa zdarzenia (bajty dodatkowe)
4 bajty na długość wiadomości
wiadomość (bajty dodatkowe)
4 bajty na zwiększenie się ilosci drewna (zapis normalny) lub ff,ff,ff,ff - ilość drewna do odebrania (maksymalna ilość drewna, którą można dać/odebrać to 32767)
4 bajty na zwiększenie się ilosci rtęci (zapis normalny) lub ff,ff,ff,ff - ilość rtęci do odebrania (maksymalna ilość rtęci, którą można dać/odebrać to 32767)
4 bajty na zwiększenie się ilosci rudy (zapis normalny) lub ff,ff,ff,ff - ilość rudy do odebrania (maksymalna ilość rudy, którą można dać/odebrać to 32767)
4 bajty na zwiększenie się ilosci siarki (zapis normalny) lub ff,ff,ff,ff - ilość siarki do odebrania (maksymalna ilość siarki, którą można dać/odebrać to 32767)
4 bajty na zwiększenie się ilosci kryształu (zapis normalny) lub ff,ff,ff,ff - ilość kryształu do odebrania (maksymalna ilość kryształu, którą można dać/odebrać to 32767)
4 bajty na zwiększenie się ilosci klejnotów (zapis normalny) lub ff,ff,ff,ff - ilość klejnotów do odebrania (maksymalna ilość klejnotów, którą można dać/odebrać to 32767)
4 bajty na zwiększenie się ilosci złota (zapis normalny) lub ff,ff,ff,ff - ilość złota do odebrania (maksymalna ilość złota, którą można dać/odebrać to 32767)
1 bajt - których graczy dotyczy zdarzenie (pole bitowe, +1 - pierwszy, +2 - drugi, +4 - trzeci, +8 - czwarty, +16 - piąty, +32 - szósty, +64 - siódmy, +128 - ósmy)
1 bajt - czy zdarzenie odnosi się do graczy - ludzi (00 - nie, 01 - tak)
1 bajt - czy zdarzenie odnosi się do graczy komputerowych (00 - nie, 01 - tak)
2 bajty - opóźnienie pierwszego wystąpienia (w dniach, zapis normalny, maks 671)
1 bajt - co ile dni występuje zdarzenie (maks 28, 00 oznacza zdarzenie jednorazowe)
18 bajtów zerowych
----------------------------
obiekt - zdarzenie (74 bajty)
trzy bajty na pozycję (jak zawsze)
bajt na numer defa
8 bajtów zerowych
1 bajt określający, czy jest wiadomość lub strażnicy (01), czy nie (00)
jeśli jest wiadomość, ale nie ma strażników, to
4 bajty na długość wiadomości (max 30 000)
wiadomość
5 bajtów zerowych (po co?)
jeśli są strażnicy, ale nie ma wiadomości, to
4 bajty zerowe
bajt 01
spis potworów (jak zwykle, chyba)
4 bajty zerowe
jeśli są strażnicy i wiadomość, to
4 bajty długości wiadomości (zapis normalny)
wiadomość
1 bajt 01
bajty na stowory
4 bajty zerowe
4 bajty na ilość doświadczenia przyznawaną przy wywołaniu zdarzenia
4 bajty na zdobywane / tracone punkty magii (max 999) (daj - zapis normalny, odbierz - cztery bajty ff - ile do odebrania, też zapis normalny)
1 bajt na modyfikator morale (dodaj - ile do dodania; odejmij - (ff - ile odjąć))
1 bajt na modyfikator szczęścia (dodaj - ile do dodania; odejmij - (ff - ile odjąć))
28 bajtów na dodawane / odbierane surowce (prawdopodobnie analogicznie do surowców w wydarzeniach)
1 bajt na zwiększenie ilosci ataku
1 bajt na zwiększenie ilosci obrony
1 bajt na zwiększenie ilosci mocy
1 bajt na zwiększenie ilosci wiedzy
1 bajt na ilość dawanych umiejętności drugorzędnych (max 8)
ilość drugorzędnych dostawanych umiejętności razy następujące bajty:
jeden bajt na rodzaj dawanej umiejętności (chyba już gdzieś opisywałem id)
jeden na poziom zaawnasowania (01 - pierwszy, 02 - drugi, 03 - trzeci)
1 bajt na ilość otrzymywanych artefaktów
dwa bajty określające id na każdy artefakt (zgodnie z listą G)
1 bajt na ilość otrzymywanych czarów
jeden bajt na każdy czar określający jego id (użyj listy z części z informacjami o niedostępnych czarach)
1 bajt określający ilość stworzeń (chyba dostawanych przez bohatera)
na każde stworzenie 4 bajty:
2 na id potwora (zapis normalny)
2 na ilość (zapis normalny, max 9999)
--
8 bajtów zerowych
--
1 bajt, żeby określić którzy gracze mogą wywołac zdarzenie (pole bitowe; +2^(nr gracza-1); FF - wszyscy)
1 bajt, czy gracz komputerowy może uaktywnić zdarzenie (01 - tak, 00 - nie)
1 bajt, czy usunąć zdarzenie po pierwszej wizycie (01 - tak, 00 - nie)
4 bajty zerowe
-----------------------------
wydarzenia związane z zamkiem (83 bajty+)
4 bajty na długość nazwy
nazwa
4 bajty na długość wiadomości
wiadomość
28 bajtów, aby określić przyrost / ubytek surowców (jak zawsze - chyba)
1 bajt, aby określić, do których graczy stosuje się dane zdarzenie (pole bitowe, jak wyżej)
1 bajt, czy zdarzenie należy odnosić do graczy ludzkich (01) czy nie (00)
1 bajt, czy zdarzenie należy odnosić do graczy komputerowych (01) czy nie (00)
2 bajty na opóźnienie pierwszego wystąpienia w dniach (max 671)
1 bajt na określenie, co ile dni pojawia się to zdarzenie (00 - zdarzenie jednorazowe; max 28)
17 bajtów zerowych
//poniżesz pola bitowe, z uwagi na podobieństwo, częściowo zostały przekopiowane z opisu zamku
1 bajt - pole bitowe;
+1 - buduj radę miasta
+2 - buduj radę miasta
+4 - buduj kapitol
+8 - buduj fort
+16 - buduj cytadelę
+32 - buduj zamek
+64 - buduj karczmę
+128 - buduj kuźnię
1 bajt - pole bitowe
+1 - buduj targowisko
+2 - buduj magazyn zasobów
+4 - buduj sprzedawcę artefaktów
+8 - buduj 1. poziom gildii magów
+16 - buduj 2. pozoim gildii magów
+32 - buduj 3. poziom gildii magów
+64 - buduj 4. poziom gildii magów
+128 - buduj 5. poziom gildii magów
1 bajt - pole bitowe
+1 - buduj stocznię
+2 - buduj graal
+4 - buduj latarnia morska / magiczny staw / biblioteka / chmury siarki / całun ciemności / podziemny tunel / obelisk krwi / magiczna uczelnia
+8 - buduj bractwo miecza / fontanna szczęścia / ściana wiedzy / wrota wymiarów / nektomatron / portal przyzywania / gildia najemników / wilcze doły
+16 - buduj stajnie / skarbiec / bractwo ognia / szkieletornia / akademia wojny / duży warsztat / sanktuarium
+32 - buduj sale Walhalli
+64 - buduj gen1
+128 - buduj gen1+
1 bajt - pole bitowe
+1 - buduj narodzisko / rozkopane groby / czarci krąg / chata / kwatery oficerskie / ogród życia
+2 - buduj gen2
+4 - buduj gen2+
+8 - buduj gildię górniczą / skrzydła stwórcy
+16 - buduj gen3
+32 - buduj gen3+
+64 - buduj bastion gryfów / klatki
+128 - buduj gen4
1 bajt - pole bitowe
+1 - buduj gen4+
+4 - buduj gen5
+8 - buduj gen5+
+18 - buduj zagajnik
+32 - buduj gen6
+64 - buduj gen6+
+128 - buduj gen7
1 bajt - pole bitowe
+1 - buduj gen7+
2 bajty na dodatkowy przyrost stworzeń w generatorze 1
2 bajty na dodatkowy przyrost stworzeń w generatorze 2
2 bajty na dodatkowy przyrost stworzeń w generatorze 3
2 bajty na dodatkowy przyrost stworzeń w generatorze 4
2 bajty na dodatkowy przyrost stworzeń w generatorze 5
2 bajty na dodatkowy przyrost stworzeń w generatorze 6
2 bajty na dodatkowy przyrost stworzeń w generatorze 7
--------------
bajty o dostępności umiejętności: (e5-e8 z nagłówka)
(zrobione na polach bitowych)
00 (e5)
+1, jeśli znajdowanie drogi niedostępne
+2, jeśli łucznictwo niedostępne
+4, jeśli logistyka niedostępna
+8, jeśli odkrywanie niedostępne
+16, jeśli dyplomacja jest niedostępna
+32, jeśli nawigacja niedostępna
+64, jeśli dowodzenie jest niedostępne
+128, jeśli mądrość niedostępna
01 (e6)
+1, jeśli mistycyzm niedostępny
+2, jeśli szczęście niedostępne
+4, jeśli balistyka jest niedostępna
+8, jeśli sokoli wzrok niedostępny
+16, jeśli nekromancja niedostępna
+32, jeśli finanse są niedostępne
+64, jeśli magia ognia niedostępna
+128, jeśli magia powietrza niedostępna
02 (e7)
+1, jeśli magia wody niedostępna
+2, jeśli magia ziemi niedostępna
+4, jeśli nauka czarów niedostępna
+8, jeśli taktyka niedostępna
+16, jeśli artyleria jest niedostępna
+32, jeśli nauka niedostępna
+64, jeśli atak jest niedostępny
+128, jeśli płatnerstwo niedostępne
03 (e8)
+1, jeśli inteligencja niedostępna
+2, jeśli talent magiczny niedostępny
+4, jeśli odporność niedostępna
+8, jeśli pierwsza pomoc niedostępna
--------------------------------
informacje o dostępnosci czarów (bajty dc do e4)
(na polach bitowych)
{oznaczając czary kolejnymi liczbami od 0, dostaniemy całkiem sensowną listę}
00 (dc)
+1, jeśli przyzwanie okrętu niedostępne
+2, jeśli zniszczenie okrętu niedostępne
+4, jeśli wizja niedostępna
+8, jeśli zasoby ziemi niedostępne
+16, jeśli ukrycie niedostępne
+32, jeśli aura artefaktów niedostępna
+64, jeśli lot niedostępny
+128, jeśli spacer po wodzie niedostępny
01 (dd)
+1, jeśli wrota wymiarów niedostępne
+2, jeśli miejski portal niedostępny
+4, jeśli ruchome piaski niedostępne
+8, jeśli pole minowe niedostępne
+16, jeśli pole siłowe niedostępne
+32, jeśli ściana ognia niedostępna
+64, jeśli trzęsienie ziemi niedostępne
+128, jeśli magiczna strzała niedostępna
02 (de)
+1, jeśli lodowy pocisk niedostępny
+2, jeśli błyskawica niedostępna
+4, jeśli implozja niedostępna
+8, jeśli łańcuch piorunów niedostępny
+16, jeśli krąg zimna niedostępny
+32, jeśli kula ognia niedostępna
+64, jeśli inforno niedostępne
+128, jeśli deszcz meteorytów niedostępny
03 (df)
+1, jeśli fala śmierci niedostępna
+2, jeśli zniszczenie nieumarłych niesotępne
+4, jeśli armagedon niedostępny
+8, jeśli tarcza niedostępna
+16, jeśli tarcza powietrza niedostępna
+32, jeśli tarcza ognia niedostępna
+64, jeśli ochrona przed powietrzem nidostępna
+128, jeśli ochrona przed ogniem niedostępna
04 (e0)
+1, jeśli ochrona przed wodą niedostępna
+2, jeśli ochrona przed ziemią niedostępna
+4, jeśli antymagia niedostępna
+8, jeśli rozproszenie niedostępne
+16, jeśli magiczne zwierciadło niedostępne
+32, jeśli uleczenie niedostępne
+64, jeśli wskrzeszenie niedostępne
+128, jeśli ożywienie niedostępne
05 (e1)
+1, jeśli ofiara niedostępna
+2, jeśli błogosławieństwo niedostępne
+4, jeśli klątwa niedostępna
+8, jeśli żądza krwi niedostępna
+16, jeśli precyzja niedostępna
+32, jeśli osłabienie niedostępne
+64, jeśli kamienna skóra niedostępna
+128, jeśli promień osłabienia niedostępny
06 (e2)
+1, jeśli modlitwa niedostępna
+2, jeśli radość niedostępna
+4, jeśli przygnębienie niedostępne
+8, jeśli fortuna niedostępna
+16, jeśli pech niedostępny
+32, jeśli przyśpieszenie niedostępne
+64, jeśli spowolnienie niedostępne
+128, jeśli pogromca niedostępny
07 (e3)
+1, jeśli szał niedostępny
+4, jeśli kontratak niedostępny
+8, jeśli berserk niedostępny
+16, jeśli hipnoza niedostępna
+32, jeśli zapomnienie niedostępne
+64, jeśli oślepienie niedostępne
+128, jeśli teleportacja niedostępna
08 (e4)
+1, jeśli usunuięcie przeszkody niedostępne
+2, jeśli klonowanie niedostępne
+4, jeśli żywiołak ognia niedostępny
+8, jeśli żywiołak ziemi niedostępny
+16, jeśli żywiołak wody niedostępny
+32, jeśli żywiołak powietrza niedostępny
---------------------------------------------
informacje o niedostępności artefaktów (00ca do 00db)
niech x będzie podtypem arteftaktu (lista G)
wtedy x-ty z kolei bit zakresu jest ustawiany ma 1
--------------------------------------
informacje o dostępności bohaterów (0092 do 00a5)
{Uwaga! bohaterowie zrobieni są na polach bitowych, ale tu 1 oznacza, że bohater jest dostępny, a 0, że nie, w przeciwieńśtwie do artefaktów i takich tam}
sytuacja podobna do niedostępności artefaktów; numery podtypów bohaterów odczytujemy z listy H i obliczmy pozycję odpowieniego bitu
-----------------------------------------
format zapisu tabliczki z napsiem i butelki z wiadomością:
3 bajty na położenie
1 bajt na numer defa określającego tabliczkę / butelkę
8 bajtów zerowych
4 bajty na długość napisu w zapisie normalnym
wiadomość
4 bajty zerowe
------------------------------------------
informacje o chatkach z misjami (podobnie jest dla strażnika granicznego z misją, tylko on nie ma bajtów na nagrody i 2 ostatnich zerowych)
{uwaga! jesli nie ma misji (bajt 13 jest zerowy), to informacje o chatce mają tylko 16 bajtów}
3 bajty na położenie
1 bajt na numer defa
8 bajtów zerowych
1 na typ misji (0 - brak misji, 1 - osiągnij poziom, 2 - zdobądź określone statystyki, 3 - pokonaj konkretnego bohatera, 4 - pokonaj konkretnego potwora, 5 - zdobądź określone artefakty, 6 - przyłącz do armii określone stworzenia, 7 - przyniesienie odpowiednich surowców, 8 - przybycie do chatki konkretnego bohatera, 9 - przybycie bohatera konkretnego gracza)
bajty:
dla misji 01:
1 bajt na poziom do zdobycia
3 bajty zerowe
4 bajty na termin zakończenia (numer w zapisie normalnym, pierwszy dzień gry oznaczony numerem 00, brak terminu zakończenia sygnalizują 4 bajty FF)
dla misji 02:
1 bajt na atak do zdobycia
1 bajt na obronę do zdobycia
1 bajt na moc do zdobycia
1 bajt na wiedzę do zdobycia
4 bajty FF (jak przy 01)
dla misji 03:
4 bajty opisujace typ bohatera (te następujące po ośmiu zerach w opisie bohatera, niezależne od miejsca)
4 bajty FF (jak przy 01)
dla misji 04:
4 bajty na typ potwora (4 bajty w opisie potworów następujące po 8 zerach - niezależne od położenia potwora)
4 bajty FF (jak przy 01)
dla misji 05:
1 bajt na ilosć artefaktów
2 bajty na każdy artefakt, określają jego id w zapisie normalnym (lista G)
4 bajty FF (jak przy 01)
dla misji 06:
1 bajt na ilość rodzajó stowrzeń
na każdego stwora:
2 bajty na podtyp (lista A)
2 bajty na ilość (w zapisie normalnym)
4 bajty FF (jak przy 01)
dla misji 07:
4 bajty na ilość drewna
4 bajty na ilość rudy
4 bajty na ilość rtęci
4 bajty na ilość siarki
4 bajty na ilość kryształów
4 bajty na ilość klejnotów
4 bajty na ilość złota (wszystko w zapisie normalnym)
4 bajty FF (jak przy 01)
dla misji 08:
1 bajt na typ bohatera (lista H)
4 bajty FF (jak przy 01)
dla misji 09:
1 bajt na numer gracza (od 0 do 7)
4 bajty FF (jak przy 01)
4 bajty na długość wiadomośic wyświetlanej przy przyjściu do chatki po raz pierwszy (propozycja) (długość zerowa - wiadomość generowana automatycznie) (zapis normalny)
wiadomość
4 bajty na długość wiadomości wyświetlanej przy kolejnym przyjściu do chatki przed wypełnieniem misji (postępy)
wiadomość
4 bajty na długość wiadomości wyświetlanej w przypadku, gdy misja się powiedzie (powodzenie)
wiadomość
1 bajt określający rodzaj nagrody (00 - brak, 01 - dośwaidczenie, 02 - punkty many, 03 - morale, 04 - szczęście, 05 - surowce, 06 - premia do umiejętności podstawowej, 07 - umiejętność drugorzędna, 08 - artefakt, 09 - czar, 0a - stworzenie)
dodatkowe bajty na nagrody
dla nagrody 00:
brak
dla nagrody 01:
4 bajty określające ilość doświadczenia (zapis normalny)
dla nagordy 02:
4 bajty określające ilość many (zapis normalny, max 999?)
dla nagrody 03:
1 bajt określający premię do morale (+1 - 01, +2 - 02, +3 - 03)
dla nagrody 04:
1 bajt określający premię do szczęścia (+1 - 01, +2 - 02, +3 - 03)
dla nagrody 05:
1 bajt określający rodzaj surowca (00 - drewno, 01 - rtęć, 02 - ruda, 03 - siarka, 04 - kryształ, 05 - klejnoty, 06 - złoto)
3 bajty określające ilość (zapis normalny, max 99999)
dla nagrody 06:
1 bajt określający rodzaj premii (00 - atak, 01 - obrona, 02 - moc, 03 - wiedza)
1 bajt na wartość premii (maksymalnie 99)
dla nagordy 07:
1 bajt na określenie rodzaju umiejętności (patrz lista bajtów o dostępności, numeruj od 00)
1 bajt na określenie poziomu umiejętności (01 - basic, 02 - advanced, 03 - expert)
dla nagrody 08:
2 bajty na id artefaktu (patrz lista G)
dla nagordy 09:
1 bajt określający id czaru (patrz informacje o dostępności czarów, numerowanie bitów od 00)
dla nagrody 0a:
2 bajty określające id potwora (patrz lista A)
2 bajty określające ilość potworów (zapis normalny, max 9999)
2 bajty zerowe
--------------------------------------
informacje o chatkach czarownicy (16 bajtów)
4 bajty jak zawsze (poł+def)
8 bajtów zerowych
4 bajty na dostępne umiejętności (jak bajty o dostępności umiejętności)
--------------------------------------
informacje o Uczonym (20 bajtów)
4 bajty jak zawsze (poł+def)
8 bajtów zerowych
1 bajt określający losowość premii (FF - losowa, 00 - umiejętność podstawowa, 01 - umiejętność drugorzędna, 02 - czar)
FF: 1 bajt 00
00: 1 bajt określający rodzaj premii podstawowej (00 - atak, 01 - obrona, 02 - moc, 03 - wiedza)
01: 1 bajt określający rodzaj umiejętności (patrz lista umiejętności, numerowanie od 0)
02: 1 bajt określający id czaru (jak wcześniej)
6 bajtów zerowych
------------------------------------------
Informacje o garnizonie (53 bajty)
4 bajty jak zawsze (poł+def)
8 bajtów zerowych
1 bajt określający przynależność do gracza (FF - niczyje, wpp. numer gracza taki jak w edytorze - 1)
3 bajty 00
28 bajtów na jednostki (chyba tak samo jak przy bohaterach)
1 bajt określający, czy jednostki mogą być przenoszone (01), czy nie (00)
8 bajtów zerowych
_________________________________
UWAGA - WARTOŚCI W SYSTEMIE DZIESIĘTNYM!
---
LISTY
Lista A (zaczerpnięta ze spisu podtypów jednostek z helpa ERM - wydaje się pasować)
0 Pikeman
1 Halberdier
2 Archer
3 Marksman
4 Griffin
5 Royal Griffin
6 Swordsman
7 Crusader
8 Monk
9 Zealot
10 Cavalier
11 Champion
12 Angel
13 Archangel
14 Centaur
15 Centaur Captain
16 Dwarf
17 Battle Dwarf
18 Wood Elf
19 Grand Elf
20 Pegasus
21 Silver Pegasus
22 Dendroid Guard
23 Dendroid Soldier
24 Unicorn
25 War Unicorn
26 Green Dragon
27 Gold Dragon
28 Gremlin
29 Master Gremlin
30 Stone Gargoyle
31 Obsidian Gargoyle
32 Stone Golem
33 Iron Golem
34 Mage
35 Arch Mage
36 Genie
37 Master Genie
38 Naga
39 Naga Queen
40 Giant
41 Titan
42 Imp
43 Familiar
44 Gog
45 Magog
46 Hell Hound
47 Cerberus
48 Demon
49 Horned Demon
50 Pit Fiend
51 Pit Lord
52 Efreeti
53 Efreet Sultan
54 Devil
55 Arch Devil
56 Skeleton
57 Skeleton Warrior
58 Walking Dead
59 Zombie
60 Wight
61 Wraith
62 Vampire
63 Vampire Lord
64 Lich
65 Power Lich
66 Black Knight
67 Dread Knight
68 Bone Dragon
69 Ghost Dragon
70 Troglodyte
71 Infernal Troglodyte
72 Harpy
73 Harpy Hag
74 Beholder
75 Evil Eye
76 Medusa
77 Medusa Queen
78 Minotaur
79 Minotaur King
80 Manticore
81 Scorpicore
82 Red Dragon
83 Black Dragon
84 Goblin
85 Hobgoblin
86 Wolf Rider
87 Wolf Raider
88 Orc
89 Orc Chieftain
90 Ogre
91 Ogre Mage
92 Roc
93 Thunderbird
94 Cyclops
95 Cyclops King
96 Behemoth
97 Ancient Behemoth
98 Gnoll
99 Gnoll Marauder
100 Lizardman
101 Lizard Warrior
102 Gorgon
103 Mighty Gorgon
104 Serpent Fly
105 Dragon Fly
106 Basilisk
107 Greater Basilisk
108 Wyvern
109 Wyvern Monarch
110 Hydra
111 Chaos Hydra
112 Air Elemental
113 Earth Elemental
114 Fire Elemental
115 Water Elemental
116 Gold Golem
117 Diamond Golem
118 Pixie
119 Sprite
120 Psychic Elemental
121 Magic Elemental
122 NOT USED (attacker)
123 Ice Elemental
124 NOT USED (defender)
125 Magma Elemental
126 NOT USED (3)
127 Storm Elemental
128 NOT USED (4)
129 Energy Elemental
130 Firebird
131 Phoenix
132 Azure Dragon
133 Crystal Dragon
134 Faerie Dragon
135 Rust Dragon
136 Enchanter
137 Sharpshooter
138 Halfling
139 Peasant
140 Boar
141 Mummy
142 Nomad
143 Rogue
144 Troll
145 Catapult (specialty X1)
146 Ballista (specialty X1)
147 First Aid Tent (specialty X1)
148 Ammo Cart (specialty X1)
149 Arrow Towers (specialty X1)
150 Supreme Archangel
151 Diamond Dragon
152 Lord of Thunder
153 Antichrist
154 Blood Dragon
155 Darkness Dragon
156 Ghost Behemoth
157 Hell Hydra
158 Sacred Phoenix
159 Ghost
160 Emissary of War
161 Emissary of Peace
162 Emissary of Mana
163 Emissary of Lore
164 Fire Messenger
165 Earth Messenger
166 Air Messenger
167 Water Messenger
168 Gorynych
169 War zealot
170 Arctic Sharpshooter
171 Lava Sharpshooter
172 Nightmare
173 Santa Gremlin
174 Paladin (attacker)
175 Hierophant (attacker)
176 Temple Guardian (attacker)
177 Succubus (attacker)
178 Soul Eater (attacker)
179 Brute (attacker)
180 Ogre Leader (attacker)
181 Shaman (attacker)
182 Astral Spirit (attacker)
183 Paladin (defender)
184 Hierophant (defender)
185 Temple Guardian (defender)
186 Succubus (defender)
187 Soul Eater (defender)
188 Brute (defender)
189 Ogre Leader (defender)
190 Shaman (defender)
191 Astral Spirit (defender)
192 Sylvan Centaur
193 Sorceress
194 Werewolf
195 Hell Steed
196 Dracolich
Lista B (17. bajt opisu defa dla przeszkody terenowej - TYP OBIEKTU)
(zaczerpnięta z helpa ERM)
0 <none>
1 <none>
2 Altar of Sacrifice
3 Anchor Point
4 Arena
5 Artifact [0-143 - Format A1]
6 Pandora's Box
7 Black Market
8 Boat
9 Borderguard [0-7 - Format BG]
10 Keymaster's Tent
[0-7 - Format BG]
11 Buoy
12 Campfire
13 Cartographer
14 Swan Pond
15 Cover of Darkness
16 Creature Bank
[0-20 - Format CB]
17 Creature Generator 1
[0-95 - Format CG]
18 Creature Generator 2
19 Creature Generator 3
20 Creature Generator 4
[0-1 - Format CG]
21 Cursed Ground
22 Corpse
23 Marletto Tower
24 Derelict Ship
25 Dragon Utopia
26 Event
27 Eye of the Magi
28 Faerie Ring
29 Flotsam
30 Fountain of Fortune
31 Fountain of Youth
32 Garden of Revelation
33 Garrison
[0 = ordinary, 1 = antimagic]
34 Hero [0-155 - Format H]
35 Hill Fort
36 Grail
37 Hut of the Magi
38 Idol of Fortune
39 Lean To
40 <blank>
41 Library of Enlightenment
42 Lighthouse
43 Monolith One Way Entrance
[0 - 7 - Format M1 ]
44 Monolith One Way Exit
[0 - 7 - Format M1 ]
45 Monolith Two Way
[0 - 7 - Format M2 ]
46 Magic Plains
47 School of Magic
48 Magic Spring
49 Magic Well
50 <blank>
51 Mercenary Camp
52 Mermaid
53 Mine [0 - 7 - Format MI ]
54 Monster [0 - 196 - Format C]
55 Mystical Garden
56 Oasis
57 Obelisk
58 Redwood Observatory
59 Ocean Bottle
60 Pillar of Fire
61 Star Axis
62 Prison
63 Pyramid
[0 - 74 - Castle Editor Objects]
64 Rally Flag
65 Random Artifact
66 Random Treasure Artifact
67 Random Minor Artifact
68 Random Major Artifact
69 Random Relic
70 Random Hero
71 Random Monster
72 Random Monster 1
73 Random Monster 2
74 Random Monster 3
75 Random Monster 4
76 Random Resource
77 Random Town
78 Refugee Camp
79 Resource [0 - 7 - Format R]
80 Sanctuary
81 Scholar
82 Sea Chest
83 Seer's Hut
84 Crypt
85 Shipwreck
86 Shipwreck Survivor
87 Shipyard
88 Shrine of Magic Incantation
89 Shrine of Magic Gesture
90 Shrine of Magic Thought
91 Sign
92 Sirens
93 Spell Scroll [0 - 69 - Format SP]
94 Stables
95 Tavern
96 Temple
97 Den of Thieves
98 Town [0 - 8 -Format T]
99 Trading Post
100 Learning Stone
101 Treasure Chest [UN:B]
102 Tree of Knowledge
103 Subterranean Gate
104 University
105 Wagon
106 War Machine Factory
107 School of War
108 Warrior's Tomb
109 Water Wheel
110 Watering Hole
111 Whirlpool
112 Windmill
113 Witch Hut [0 - 27 - Format SS]
114 Brush
115 Bush
116 Cactus
117 Canyon
118 Crater
119 Dead Vegetation
120 Flowers
121 Frozen Lake
122 Hedge
123 Hill
124 Hole
125 Kelp
126 Lake
127 Lava Flow
128 Lava Lake
129 Mushrooms
130 Log
131 Mandrake
132 Moss
133 Mound
134 Mountain
135 Oak Trees
136 Outcropping
137 Pine Trees
138 Plant
143 River Delta
147 Rock
148 Sand Dune
149 Sand Pit
150 Shrub
151 Skull
152 Stalagmite
153 Stump
154 Tar Pit
155 Trees
156 Vine
157 Volcanic Vent
158 Volcano
159 Willow Trees
160 Yucca Trees
161 Reef
162 Random Monster 5
163 Random Monster 6
164 Random Monster 7
165 Brush
166 Bush
167 Cactus
168 Canyon
169 Crater
170 Dead Vegetation
171 Flowers
172 Frozen Lake
173 Hedge
174 Hill
175 Hole
176 Kelp
177 Lake
178 Lava Flow
179 Lava Lake
180 Mushrooms
181 Log
182 Mandrake
183 Moss
184 Mound
185 Mountain
186 Oak Trees
187 Outcropping
188 Pine Trees
189 Plant
190 River Delta
191 Rock
192 Sand Dune
193 Sand Pit
194 Shrub
195 Skull
196 Stalagmite
197 Stump
198 Tar Pit
199 Trees
200 Vine
201 Volcanic Vent
202 Volcano
203 Willow Trees
204 Yucca Trees
205 Reef
206 Desert Hills
207 Dirt Hills
208 Grass Hills
209 Rough Hills
210 Subterranean Rocks
211 Swamp Foliage
212 Border Gate [0-7 - Format BG]
213 Freelancer's Guild
214 Hero Placeholder
215 Quest Guard
216 Random Dwelling
217 <none> {te zielone generatory stworzeń z ustalonym poziomem lecz nieustalonym typem zamku}
218 <none> {te zielone generatory z ustalonym typem zamku ale niczym poza tym}
219 Garrison
220 Mine
221 Trading Post
222 Clover Field
223 Cursed Ground
224 Evil Fog
225 Favourable Winds
226 Fiery Fields
227 Holy Ground
228 Lucid Pools
229 Magic Clouds
230 Magic Plains
231 Rocklands
Lista C (15. bajt opisu defa dla przeszkody terenowej) - czy powiązane z animacją??? na poczatku tak mi się wydawało,
ale wygląda na to, że jednak nie jest.
Dla dirtu (wartości dec)
1 - krater, kwiaty, dziura, odkrywka, kopiec i inne
5 - dęby, sosny
7 - ujście rzeki, lab.alchemika
21 - drzewa, młyn wodny
37 - pniak
85 - Garden of Revelation
255 - wiatrak, arena, Learning Stone, Idol of Fortune, Library of Enlightenment, Marletto Tower
Lista D (26. bajt opisu defa dla przeszkody terenowej) - podejrzenie - obecność cienia? - pasuje wszędzie, poza kopalniami --- chyba jednak dobrze, bo cienie tych kopalni nie są wyświetlane! - ale jeszcze się kiedyś temu trzeba
by przyjrzeć
0 - dęby, kwiaty, kopiec, sosny, głaz
1 - krater, dziura, jezioro, odkrywka, ujście rzeki, kopalnia klejnotów (!)
Lista E: Lista podtypów obiektów typu 53 (kopalnie; 21. bajt deklaracji defa):
0 - Sawmill
1 - Alchemist's Lab
2 - Ore Pit
3 - Sulfur Dune
4 - Crystal Cavern
5 - Gem Pond
6 - Gold Mine
7 - Abandoned Mine
Lista F (12. bajt deklaracji defa dla obiektów)
0 - wszystkie nieinteraktywne przeszkody terenowe
64 - kopalnie, windmill, arena, Library of Enlightenment
128 - water mill, star axis, Garden of Revelation, Idol of Fortune, Learning Stone, Marletto Tower,
Lista G (podtypy artefaktów)
0 Spell book
1 Spell Scroll
2 Grail
3 Catapult
4 Ballista
5 Ammo Cart
6 First Aid Tent
7 Centaur Axe
8 Blackshard of the Dead Knight
9 Greater Gnoll's Flail
10 Ogre's Club of Havoc
11 Sword of Hellfire
12 Titan's Gladius
13 Shield of the Dwarven Lords
14 Shield of the Yawning Dead
15 Buckler of the Gnoll King
16 Targ of the Rampaging Ogre
17 Shield of the Damned
18 Sentinel's Shield
19 Helm of the Alabaster Unicorn
20 Skull Helmet
21 Helm of Chaos
22 Crown of the Supreme Magi
23 Hellstorm Helmet
24 Thunder Helmet
25 Breastplate of Petrified Wood
26 Rib Cage
27 Scales of the Greater Basilisk
28 Tunic of the Cyclops King
29 Breastplate of Brimstone
30 Titan's Cuirass
31 Armor of Wonder
32 Sandals of the Saint
33 Celestial Necklace of Bliss
34 Lion's Shield of Courage
35 Sword of Judgement
36 Helm of Heavenly Enlightenment
37 Quiet Eye of the Dragon
38 Red Dragon Flame Tongue
39 Dragon Scale Shield
40 Dragon Scale Armor
41 Dragonbone Greaves
42 Dragon Wing Tabard
43 Necklace of Dragonteeth
44 Crown of Dragontooth
45 Still Eye of the Dragon
46 Clover of Fortune
47 Cards of Prophecy
48 Ladybird of Luck
49 Badge of Courage
50 Crest of Valor
51 Glyph of Gallantry
52 Speculum
53 Spyglass
54 Amulet of the Undertaker
55 Vampire's Cowl
56 Dead Man's Boots
57 Garniture of Interference
58 Surcoat of Counterpoise
59 Boots of Polarity
60 Bow of Elven Cherrywood
61 Bowstring of the Unicorn's Mane
62 Angel Feather Arrows
63 Bird of Perception
64 Stoic Watchman
65 Emblem of Cognizance
66 Statesman's Medal
67 Diplomat's Ring
68 Ambassador's Sash
69 Ring of the Wayfarer
70 Equestrian's Gloves
71 Necklace of Ocean Guidance
72 Angel Wings
73 Charm of Mana
74 Talisman of Mana
75 Mystic Orb of Mana
76 Collar of Conjuring
77 Ring of Conjuring
78 Cape of Conjuring
79 Orb of the Firmament
80 Orb of Silt
81 Orb of Tempestuous Fire
82 Orb of Driving Rain
83 Recanter's Cloak
84 Spirit of Oppression
85 Hourglass of the Evil Hour
86 Tome of Fire Magic
87 Tome of Air Magic
88 Tome of Water Magic
89 Tome of Earth Magic
90 Boots of Levitation
91 Golden Bow
92 Sphere of Permanence
93 Orb of Vulnerability
94 Ring of Vitality
95 Ring of Life
96 Vial of Lifeblood
97 Necklace of Swiftness
98 Boots of Speed
99 Cape of Velocity
100 Pendant of Dispassion
101 Pendant of Second Sight
102 Pendant of Holiness
103 Pendant of Life
104 Pendant of Death
105 Pendant of Free Will
106 Pendant of Negativity
107 Pendant of Total Recall
108 Pendant of Courage
109 Everflowing Crystal Cloak
110 Ring of Infinite Gems
111 Everpouring Vial of Mercury
112 Inexhaustible Cart of Ore
113 Eversmoking Ring of Sulfur
114 Inexhaustible Cart of Lumber
115 Endless Sack of Gold
116 Endless Bag of Gold
117 Endless Purse of Gold
118 Legs of Legion
119 Loins of Legion
120 Torso of Legion
121 Arms of Legion
122 Head of Legion
123 Sea Captain's Hat
124 Spellbinder's Hat
125 Shackles of War
126 Orb of Inhibition
127 Vial of Dragon Blood
128 Armageddon's Blade
129 Angelic Alliance
130 Cloak of the Undead King
131 Elixir of Life
132 Armor of the Damned
133 Statue of Legion
134 Power of the Dragon Father
135 Titan's Thunder
136 Admiral's Hat
137 Bow of the Sharpshooter
138 Wizard's Well
139 Ring of the Magi
140 Cornucopia
141 Magic Wand *
142 Gold Tower Arrow *
143 Monster's Power *
144 Highlighted Slot **
145 Artifact Lock **
146 Axe of Smashing ***
147 Mithril Mail ***
148 Sword of Sharpness ***
149 Helm of Immortality ***
150 Pendant of Sorcery ***
151 Boots of Haste ***
152 Bow of Seeking ***
153 Dragon Eye Ring ***
154 Hardened Shield ***
155 Slava's Ring of Power ***
156 Warlord's banner *
157 Crimson Shield of Retribution *
158 Barbarian Lord's Axe of Ferocity *
159 Dragonheart *
160 Gate Key *
161 Blank Helmet ****
162 Blank Sword ****
163 Blank Shield ****
164 Blank Horned Ring ****
165 Blank Gemmed Ring ****
166 Blank Neck Broach ****
167 Blank Armor ****
168 Blank Surcoat ****
169 Blank Boots ****
170 Blank Horn ****
* WoG artifacts
** Not artifacts (internal use only)
*** Commander Artifacts
**** Blank Artifacts
Lista H (podtypy bohaterów)
Knights
0 Orrin
1 Valeska
2 Edric
3 Sylvia
4 Lord Haart
5 Sorsha
6 Christian
7 Tyris
Clerics
8 Rion
9 Adela
10 Cuthbert
11 Adelaide
12 Ingham
13 Sanya
14 Loynis
15 Caitlin
Rangers
16 Mephala
17 Ufretin
18 Jenova
19 Ryland
20 Thorgrim
21 Ivor
22 Clancy
23 Kyrre
Druids
24 Coronius
25 Uland
26 Elleshar
27 Gem
28 Malcom
29 Melodia
30 Alagar
31 Aeris
Alchemists
32 Piquedram
33 Thane
34 Josephine
35 Neela
36 Torosar
37 Fafner
38 Rissa
39 Iona
Wizards
40 Astral
41 Halon
42 Serena
43 Daremyth
44 Theodorus
45 Solmyr
46 Cyra
47 Aine
Demoniacs
48 Fiona
49 Rashka
50 Marius
51 Ignatius
52 Octavia
53 Calh
54 Pyre
55 Nymus
Heretics
56 Ayden
57 Xyron
58 Axsis
59 Olema
60 Calid
61 Ash
62 Zydar
63 Xarfax
Death Knights
64 Straker
65 Vokial
66 Moandor
67 Charna
68 Tamika
69 Isra
70 Clavius
71 Galthran
Necromancers
72 Septienna
73 Aislinn
74 Sandro
75 Nimbus
76 Thant
77 Xsi
78 Vidomina
79 Nagash
Overlords
80 Lorelei
81 Arlach
82 Dace
83 Ajit
84 Damacon
85 Gunnar
86 Synca
87 Shakti
Warlocks
88 Alamar
89 Jaegar
90 Malekith
91 Jeddite
92 Geon
93 Deemer
94 Sephinroth
95 Darkstorn
Barbarians
96 Yog
97 Gurnisson
98 Jabarkas
99 Shiva
100 Gretchin
101 Krellion
102 Crag Hack
103 Tyraxor
Battle Mages
104 Gird
105 Vey
106 Dessa
107 Terek
108 Zubin
109 Gundula
110 Oris
111 Saurug
Beastmasters
112 Bron
113 Drakon
114 Wystan
115 Tazar
116 Alkin
117 Korbac
118 Gerwulf
119 Broghild
Witches
120 Mirlanda
121 Rosic
122 Voy
123 Verdish
124 Merist
125 Styg
126 Andra
127 Tiva
Planeswalkers
128 Pasis
129 Thunar
130 Ignissa
131 Lacus
132 Monere
133 Erdamon
134 Fiur
135 Kalt
Elementalists
136 Luna
137 Brissa
138 Ciele
139 Labetha
140 Inteus
141 Aenain
142 Gelare
143 Grindan
Extension Heroes
144 Sir Mullich
145 Adrienne
146 Catherine
147 Dracon
148 Gelu
149 Kilgor
150 Lord Haart
151 Mutare
152 Roland
153 Mutare Drake
154 Boragus
155 Xeron
_______________________________________________________
UWAGI:
Uwaga 1 (o 43. bajcie w deklaracji defa)
dla pojedynczych obiektów na mapie najczęściej 12, rzadziej 11, czasem zupełnie inne wartości (np 5||6), ale zmienia
sie niezależnie od jakichkolwiek przewidywań. Ogólnie im więcej czegos na mapie tym wiekszy numer, choć zmiany ilości
innych obiektów też wpływają... kopnięte. Przykładowe wartości tego bajtu (i innego) w Uwadze 2.
___________
Uwaga 2 (o bajtach 43. i 15. w deklaracjach defów potworów)
Wartości specyficznych bajtów dla różnych jednostek (na razie tylko część):
Jednostki z Rampartu różnią się tylko podtypem.
Ich 2b to (0C), a 0f to 1.
Jednostki z Tower:
wszystko: 2b to (0C), a 0f to 1 - za wyjątkiem tytana: 2b = (0E)
Jednostki z Castle
Wszystko ma 2b równe (0B) i 0f równe (01), chyba, że zaznaczono inaczej
0f = (4)
pikinier, łucznik, gryf, mnich, anioł
2b = (0A)
halabardier, kawalerzysta, anioł
2b = (0C)
kusznik, miecznik, krzyżowiec, mnich
2b = (10)
archanioł
Jednostki z Inferno
Ich 2b to zwykle (0C), a 0f to 1, ale:
2b = (0B)
u.imp
2b = (0E)
u.diabeł
Jednostki z Necropolis
Ich 2b to zwykle (0C), a 0f to 1, ale:
2b = (0B)
zombie
2b = (0E)
bone dragon
0f = (FF)
wight (!!! - przyjrzeć się jeszcze)
Jednostki z Dungeon
Ich 2b to zwykle (0C), a 0f to 1, ale:
2b = (0B)
troglodyta, u.beholder, u.meduza, u.mantikora, czer.smok
0f = (4)
u. troglodyta, meduza, minotaur, czer.smok
2b = (0B)
czar.smok
Jednostki z Stronghold
Ich 2b to zwykle (0C), a 0f to 1, ale:
2b = (0B)
u.ork, u.ogr
2b = (0E)
u.behemot
Jednostki z Fortress
Ich 2b to zwykle (0C), a 0f to 1, ale:
2b = (0B)
u.gnoll, u.lizardman, ważka, u.ważka, bazyliszek, u.bazyliszek, u.gorgona, u.bazyliszek
0f = (4)
lizardman, wiwerna, hydra
2b = (0E)
u.hydra
Jednostki z Conflux
Ich 2b to zwykle (0C), a 0f to (FF) (!), ale:
0f = (1)
air elemental, water elemental, fire elemental, earth elemental
2b = (0B)
fire elemental
2b = (0A)
psychic elemental, firebird
2b = (0E)
psychic elemental, feniks
Neutralne:
Ich 2b to zwykle (0B), a 0f to (FF), ale:
0f = (01)
złoty/kryszt. golem, centaur sylw.
2b = (0C)
złoty/kryszt. golem
2b = (0A)
nomad
2b = (15)!
drakolicz