Difference between revisions of "PL:BuildingMaps"
(→Wykorzystywanie danych mapy) |
|||
(5 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
Ostatnia edycja: 10:51, 15 March 2007 (CET) | Ostatnia edycja: 10:51, 15 March 2007 (CET) | ||
{{tpl}} | {{tpl}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Oto wszystko co potrzebujesz wiedzieć o mapach: | Oto wszystko co potrzebujesz wiedzieć o mapach: | ||
:#Każda z nich to tylko grupa liter ułożonych w prostokąt | :#Każda z nich to tylko grupa liter ułożonych w prostokąt | ||
:#Istnieją dwa sposoby, żeby zapisać je w pliku | :#Istnieją dwa sposoby, żeby zapisać je w pliku | ||
− | A na poważnie, oto szczegóły | + | 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 z danymi składa się z dowolnej liczby wierszy o tej samej ilości znaków. | * 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 [[ | + | * 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. | * 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. | * Każda cyfra rózna od zera zostanie zastąpiona przez twierdzę z umieszczonym na niej przywódcą frakcji. | ||
Line 66: | Line 43: | ||
Gg, Gg, Gg, Gg, Re, Re, Gg, Gg | Gg, Gg, Gg, Gg, Re, Re, Gg, Gg | ||
Gg, Gg, Gg, Gg, Gg, Gg, Re, Re | Gg, Gg, Gg, Gg, Gg, Gg, Re, Re | ||
− | |||
− | |||
== Tworzenie mapy == | == 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 [http://www.wesnoth.org/forum forum]. | 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]. | ||
Line 83: | Line 51: | ||
Tworzenie dobrych, zbalansowanych, ciekawych map jest zadaniem trudnym i jesli ktoś chciałby się podzielić wskazówkami odnośnie tej sztuki, bardzo prosimy. | 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 == | == Wykorzystywanie danych mapy == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Dane mapy wykorzystywane są na dwa sposoby | Dane mapy wykorzystywane są na dwa sposoby | ||
# Jako argument dla klucza ''map_data'' (patrz [[ScenarioWML|WML (Scenariusz) (''en'')]]). | # 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 katalogu '''''userdata''/editor/maps/''' zawierajace tylko dane mapy mogą być wykorzystywane w grze wieloosobowej jako mapy użytkownika. | ||
− | |||
==== 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: | 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 ==== | ==== Samodzielny plik mapy ==== | ||
Line 114: | Line 68: | ||
map_data="{@editor/''map_filename''}" | map_data="{@editor/''map_filename''}" | ||
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? == | == 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ą. | 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. | 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 (Scenariusz) (''en'')]] | * [[ScenarioWML|WML (Scenariusz) (''en'')]] | ||
* [[ReferenceWML|WML (Spis komend) (''en'')]] | * [[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.