Difference between revisions of "PL:BuildingMaps"
(→Format mapy Wesnoth) |
(→Wykorzystywanie danych mapy) |
||
(15 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | Ostatnia edycja: | + | Ostatnia edycja: 10:51, 15 March 2007 (CET) |
{{tpl}} | {{tpl}} | ||
− | Oto wszystko | + | |
− | :# | + | Oto wszystko co potrzebujesz wiedzieć o mapach: |
− | :# | + | :#Każda z nich to tylko grupa liter ułożonych w prostokąt |
− | A | + | :#Istnieją dwa sposoby, żeby zapisać je w pliku |
+ | A na poważnie, oto szczegóły | ||
== Format mapy Wesnoth == | == Format mapy Wesnoth == | ||
− | + | Dane map są wykorzystywane do reprezentowania plansz Wesnoth. Ich kodowanie ma określony format: | |
− | * Plik | + | * Plik z danymi składa się z dowolnej liczby wierszy o tej samej ilości znaków. |
− | * | + | * Znak musi być albo literą reprezentującą określony teren, wymienioną w kluczu (patrz [[TerrainCodesWML|Spis liter terenu (''en'')]]), albo cyfrą. |
− | * | + | * Podczas przetwarzania pliku, każdy znak zostanie zastąpiony terenem do którego się odnosi. |
− | * Każda | + | * Każda cyfra rózna od zera zostanie zastąpiona przez twierdzę z umieszczonym na niej przywódcą frakcji. |
− | Ponieważ | + | Ponieważ polem w pliku jest kwadrat a w grze heks podczas przetwarzania niektóre pola muszą zostać przesunięte. Pola w kolumnach parzystych są przesuwane o 1/2 w dół w efekcie dając quasiheksagonalną siatkę. Naprzykład aby stworzyć drogę z połaczonych ze sobą heksów ziemi dane mapy powinny wyglądać następująco : |
rrgggggg | rrgggggg | ||
Line 21: | Line 22: | ||
ggggrrgg | ggggrrgg | ||
ggggggrr | ggggggrr | ||
+ | |||
+ | '''''[[(SVN terrain only)|(Tylko wersja 1.3 i nowsze) (''en'')]]''''' | ||
+ | Format mapy w wersji 1.3 uległ zmianie, poniższy opis dotyczy tylko tej wersji i zapewne późniejszych. | ||
+ | |||
+ | Dane mapy są wykorzystywane do reprezenacji plansz w Wesnoth. Kodowanie ma określony format: | ||
+ | |||
+ | * Plik z danymi mapy składa się z dowolnej ilości wierszy z taką samą liczbą łańcuchów. | ||
+ | * Każdy łańcuch musi być jednym z wymienionych w kluczu określającym teren (patrz [[TerrainLettersWML|Spis liter terenu (''en'')]]). | ||
+ | * Łańcuchy mogą być wyrównywane spacjami lub tabulaturą i muszą być oddzielone przecinkiem, za wyjątkiem ostatniego, który przecinka mieć nie może. | ||
+ | * Podczas przetwarzania pliku każdy łańcuch zostanie zastąpiony terenem, do którego się odnosi. | ||
+ | * Puste linie są dozwolone zarówno przed, po jak i pomiędzy wierszami znaków, choć to ostatnie jest odradzane. | ||
+ | * Tereny mogą być poprzedzone liczbą, po której następuje jedna spacja. Określa ona początkową pozycję przywódcy frakcji n ( 1<n<9 większa ilość może działać ale opcja ta jest nieprzetestowana i prawdopodobnie nieobsługiwana przez inne elementy programu ). Pole to nie stanie się automatycznie twierdzą (zmiana w stosunku do poprzedniej wersji). | ||
+ | |||
+ | Doradza się wyrównywanie za pomocą spacji tak by każda kolumna była tej samej szerokości; gra robi to automatycznie zapisując plik mapy. | ||
+ | |||
+ | Ponieważ polem w pliku jest prostokąt a w grze heks, podczas przetwarzania niektóre pola muszą zostać przesunięte. Pola w kolumnach parzystych są przesuwane o 1/2 w dół w efekcie dając quasiheksagonalną siatkę. Naprzykład, aby stworzyć drogę z połaczonych ze sobą heksów ziemi dane mapy powinny wyglądać następująco: | ||
+ | |||
+ | Re, Re, Gg, Gg, Gg, Gg, Gg, Gg | ||
+ | Gg, Gg, Re, Re, Gg, Gg, Gg, Gg | ||
+ | Gg, Gg, Gg, Gg, Re, Re, Gg, Gg | ||
+ | Gg, Gg, Gg, Gg, Gg, Gg, Re, Re | ||
== Tworzenie mapy == | == Tworzenie mapy == | ||
− | To nie Matrix, | + | To nie jest Matrix, nie musisz oglądać zakodowanych map. Kod źródłowy i większoś oficjalnych dystrybucji zawiera edytor z graficznym interfejsem. Kompilując źródła pamiętaj o opcji ''--enable-editor'' przy konfiguracji, w przeciwnym wypadku nie zostanie on dołączony. Jego obsługa, sądząc po opiniach początkujących twórców, jest raczej prosta, ale gdybyś miał jakieś problemy ze znalezieniem lub pracą poproś o pomoc na [http://www.wesnoth.org/forum forum]. |
− | + | Po utworzeniu mapy może ci jednak być łatwiej wprowadzać drobne zmiany bezpośrednio w danych tekstowych. | |
− | Tworzenie | + | Tworzenie dobrych, zbalansowanych, ciekawych map jest zadaniem trudnym i jesli ktoś chciałby się podzielić wskazówkami odnośnie tej sztuki, bardzo prosimy. |
− | == Wykorzystywanie mapy == | + | == Wykorzystywanie danych mapy == |
− | + | Dane mapy wykorzystywane są na dwa sposoby | |
− | # | + | # Jako argument dla klucza ''map_data'' (patrz [[ScenarioWML|WML (Scenariusz) (''en'')]]). |
− | + | #* Pliki w katalogu '''''userdata''/editor/maps/''' zawierajace tylko dane mapy mogą być wykorzystywane w grze wieloosobowej jako mapy użytkownika. | |
− | #* Pliki w | ||
==== Klucz '''map_data''' ==== | ==== Klucz '''map_data''' ==== | ||
− | + | Pierwszym sposobem na wykorzystanie danych jest użycie klucza map_data. Scenarusze kampanii zaczynają się tagiem '''[scenario]''' a te do gry wieloosobowej tagiem '''[multiplayer]''', każdy z nich akceptuje klucz ''map_data'', którego wartością są dane mapy ujęte w cudzysłów. Przykład: | |
map_data="111111111111111111" | map_data="111111111111111111" | ||
− | ==== | + | ==== Samodzielny plik mapy ==== |
Inna metoda użycia mapy, to zapisanie jej w pliku tekstowym, który zawiera '''jedynie''' dane mapy. Zaleta tej metody jest oczywista: jeśli zapiszesz mapę w ten sposób w katalogu '''''userdata''/editor/maps/''', gra sama automatycznie umieści ją na liście map MP. Poza tym taki plik może być argumentem dla klucza ''map_data''. Przykład: | Inna metoda użycia mapy, to zapisanie jej w pliku tekstowym, który zawiera '''jedynie''' dane mapy. Zaleta tej metody jest oczywista: jeśli zapiszesz mapę w ten sposób w katalogu '''''userdata''/editor/maps/''', gra sama automatycznie umieści ją na liście map MP. Poza tym taki plik może być argumentem dla klucza ''map_data''. Przykład: | ||
Line 48: | Line 69: | ||
W takim wypadku mapą do scenariusza będzie mapa ''filename'' w katalogu edytora. | W takim wypadku mapą do scenariusza będzie mapa ''filename'' w katalogu edytora. | ||
− | == | + | == Plik Scenariusza czy Samodzielny Plik Mapy? == |
− | + | Autorzy kampanii nie mogą stworzyć nic bez scenariuszy, więc będą one zawsze korzystały z klucza ''map_data'' z surowymi danymi ujętymi w cudzysłów, albo symbolem preprocesora {} wskazującym na samodzielny plik z mapą. | |
− | + | Jednak autorzy map wieloosobowych '''mają wybór'''. Jeśli chcą umiescić obiekt lub jednostkę na mapie, muszą stworzyć plik scenariusza rozpoczynający się tagiem '''[multiplayer]''' zawierającym klucz ''map_data'', tracąc w ten sposób prostotę samodzielnego pliku z mapą, ale zyskując olbrzymie możliwości. Mogą nie tylko dodawac przedmioty i jednostki, ale także ustawiac sojusze, modyfikatory doświadczenia, opisy mapy i wydarzenia losowe (a także wiele innych). Pytanie "Jak umieści obiekt na mapie za pomocą edytora?" pada bardzo często, narazie nie można, ale można sprawdzić jak zrobiono to w już istniejących scenariuszach. | |
== Zobacz też == | == Zobacz też == | ||
* [[PL:Create|Tworzenie (''pl'')]] | * [[PL:Create|Tworzenie (''pl'')]] | ||
− | * [[ScenarioWML|WML | + | * [[ScenarioWML|WML (Scenariusz) (''en'')]] |
− | * [[ReferenceWML| | + | * [[ReferenceWML|WML (Spis komend) (''en'')]] |
− | + | [[Category:Polish]] |
Latest revision as of 08:15, 20 February 2014
Ostatnia edycja: 10:51, 15 March 2007 (CET)
Oto wszystko co potrzebujesz wiedzieć o mapach:
- Każda z nich to tylko grupa liter ułożonych w prostokąt
- Istnieją dwa sposoby, żeby zapisać je w pliku
A na poważnie, oto szczegóły
Contents
Format mapy Wesnoth
Dane map są wykorzystywane do reprezentowania plansz Wesnoth. Ich kodowanie ma określony format:
- Plik z danymi składa się z dowolnej liczby wierszy o tej samej ilości znaków.
- Znak musi być albo literą reprezentującą określony teren, wymienioną w kluczu (patrz Spis liter terenu (en)), albo cyfrą.
- Podczas przetwarzania pliku, każdy znak zostanie zastąpiony terenem do którego się odnosi.
- Każda cyfra rózna od zera zostanie zastąpiona przez twierdzę z umieszczonym na niej przywódcą frakcji.
Ponieważ polem w pliku jest kwadrat a w grze heks podczas przetwarzania niektóre pola muszą zostać przesunięte. Pola w kolumnach parzystych są przesuwane o 1/2 w dół w efekcie dając quasiheksagonalną siatkę. Naprzykład aby stworzyć drogę z połaczonych ze sobą heksów ziemi dane mapy powinny wyglądać następująco :
rrgggggg ggrrgggg ggggrrgg ggggggrr
(Tylko wersja 1.3 i nowsze) (en) Format mapy w wersji 1.3 uległ zmianie, poniższy opis dotyczy tylko tej wersji i zapewne późniejszych.
Dane mapy są wykorzystywane do reprezenacji plansz w Wesnoth. Kodowanie ma określony format:
- Plik z danymi mapy składa się z dowolnej ilości wierszy z taką samą liczbą łańcuchów.
- Każdy łańcuch musi być jednym z wymienionych w kluczu określającym teren (patrz Spis liter terenu (en)).
- Łańcuchy mogą być wyrównywane spacjami lub tabulaturą i muszą być oddzielone przecinkiem, za wyjątkiem ostatniego, który przecinka mieć nie może.
- Podczas przetwarzania pliku każdy łańcuch zostanie zastąpiony terenem, do którego się odnosi.
- Puste linie są dozwolone zarówno przed, po jak i pomiędzy wierszami znaków, choć to ostatnie jest odradzane.
- Tereny mogą być poprzedzone liczbą, po której następuje jedna spacja. Określa ona początkową pozycję przywódcy frakcji n ( 1<n<9 większa ilość może działać ale opcja ta jest nieprzetestowana i prawdopodobnie nieobsługiwana przez inne elementy programu ). Pole to nie stanie się automatycznie twierdzą (zmiana w stosunku do poprzedniej wersji).
Doradza się wyrównywanie za pomocą spacji tak by każda kolumna była tej samej szerokości; gra robi to automatycznie zapisując plik mapy.
Ponieważ polem w pliku jest prostokąt a w grze heks, podczas przetwarzania niektóre pola muszą zostać przesunięte. Pola w kolumnach parzystych są przesuwane o 1/2 w dół w efekcie dając quasiheksagonalną siatkę. Naprzykład, aby stworzyć drogę z połaczonych ze sobą heksów ziemi dane mapy powinny wyglądać następująco:
Re, Re, Gg, Gg, Gg, Gg, Gg, Gg Gg, Gg, Re, Re, Gg, Gg, Gg, Gg Gg, Gg, Gg, Gg, Re, Re, Gg, Gg Gg, Gg, Gg, Gg, Gg, Gg, Re, Re
Tworzenie mapy
To nie jest Matrix, nie musisz oglądać zakodowanych map. Kod źródłowy i większoś oficjalnych dystrybucji zawiera edytor z graficznym interfejsem. Kompilując źródła pamiętaj o opcji --enable-editor przy konfiguracji, w przeciwnym wypadku nie zostanie on dołączony. Jego obsługa, sądząc po opiniach początkujących twórców, jest raczej prosta, ale gdybyś miał jakieś problemy ze znalezieniem lub pracą poproś o pomoc na forum.
Po utworzeniu mapy może ci jednak być łatwiej wprowadzać drobne zmiany bezpośrednio w danych tekstowych.
Tworzenie dobrych, zbalansowanych, ciekawych map jest zadaniem trudnym i jesli ktoś chciałby się podzielić wskazówkami odnośnie tej sztuki, bardzo prosimy.
Wykorzystywanie danych mapy
Dane mapy wykorzystywane są na dwa sposoby
- Jako argument dla klucza map_data (patrz WML (Scenariusz) (en)).
- Pliki w katalogu userdata/editor/maps/ zawierajace tylko dane mapy mogą być wykorzystywane w grze wieloosobowej jako mapy użytkownika.
Klucz map_data
Pierwszym sposobem na wykorzystanie danych jest użycie klucza map_data. Scenarusze kampanii zaczynają się tagiem [scenario] a te do gry wieloosobowej tagiem [multiplayer], każdy z nich akceptuje klucz map_data, którego wartością są dane mapy ujęte w cudzysłów. Przykład:
map_data="111111111111111111"
Samodzielny plik mapy
Inna metoda użycia mapy, to zapisanie jej w pliku tekstowym, który zawiera jedynie dane mapy. Zaleta tej metody jest oczywista: jeśli zapiszesz mapę w ten sposób w katalogu userdata/editor/maps/, gra sama automatycznie umieści ją na liście map MP. Poza tym taki plik może być argumentem dla klucza map_data. Przykład:
map_data="{@editor/map_filename}"
W takim wypadku mapą do scenariusza będzie mapa filename w katalogu edytora.
Plik Scenariusza czy Samodzielny Plik Mapy?
Autorzy kampanii nie mogą stworzyć nic bez scenariuszy, więc będą one zawsze korzystały z klucza map_data z surowymi danymi ujętymi w cudzysłów, albo symbolem preprocesora {} wskazującym na samodzielny plik z mapą.
Jednak autorzy map wieloosobowych mają wybór. Jeśli chcą umiescić obiekt lub jednostkę na mapie, muszą stworzyć plik scenariusza rozpoczynający się tagiem [multiplayer] zawierającym klucz map_data, tracąc w ten sposób prostotę samodzielnego pliku z mapą, ale zyskując olbrzymie możliwości. Mogą nie tylko dodawac przedmioty i jednostki, ale także ustawiac sojusze, modyfikatory doświadczenia, opisy mapy i wydarzenia losowe (a także wiele innych). Pytanie "Jak umieści obiekt na mapie za pomocą edytora?" pada bardzo często, narazie nie można, ale można sprawdzić jak zrobiono to w już istniejących scenariuszach.