Nieśmiertelne Gry Szukaj
Zeus Pan Olimpu

Autor Wątek: Mała porada przy robieniu świątyń  (Przeczytany 22726 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

MaciekZ

  • Gracz
  • *****
  • Wiadomości: 71
  • Płeć: Mężczyzna
  • None of thy empty gods shall ever stand above me!
    • Zobacz profil
Mała porada przy robieniu świątyń
« dnia: 19.06.2009, 16:01:41 »
Jeśli tworząc świątynię zapisujesz jej elementy kolumnami (tzn najpierw obiekty od góry do dołu znajdujące się w pierwszej kolumnie od lewej strony, potem druga kolumna itd.), a świątynia jest symetryczna wzdłuż linii pn-pd, można skrócić czas pracy niemal o połowę. Mianowicie robimy lewe pół świątyni, po czym kopiujemy je i wklejamy. Następnie zmieniamy numery kolumn we wklejonych kolumnach na odpowiednie numery. Przykład: jeśli mamy świątynie o szerokości 8, to tworzymy pierwsze 4 kolumny, następnie je duplikujemy, a we wklejonych kolumnach zmieniamy numer 4 na 5, 3 na 6, 2 na 7 i 1 na 8, ponieważ świątynia jest symetryczna i przykładowa kolumna 3 będzie identyczna jak kolumna 6. Oczywiście trzeba jeszcze potem dokonać pewnych zmian, jak np, usunięcie lub dodanie współrzędnych budynków, posągów i ołtarzy. Bądź zmiana rzeźb skierowanych na wschód, na rzeźby skierowane w stronę zachodnią. Wydaje się to może trochę zagmatwane, ale tak jest naprawdę szybciej. Szybciej zmienia się w kolumnie jej numer niż mozolnie patrzy na zmianę to na plan, to na ekran i wpisuje numerki obiektów, które powinny się w danym miejscu znajdować.

Na przykład:

Najpierw robimy lewą połowę świątyni czyli kolumny od 0 do 3 (pierwsze 4 kolumny). Robiąc to metodą "Punkt (0,0) jest zawsze w lewym górnym rogu" otrzymujemy taki  fragment kodu:

{0,0,1000,0,},
{0,1,1000,0,},
{0,2,1000,0,},
{0,3,1000,0,},
{0,4,1000,0,},
{0,5,1000,0,},
{0,6,1000,0,},
{0,7,1000,0,},
{0,8,1000,0,},
{0,9,1000,0,},
{0,10,58,0,},
{0,11,58,0,},

{1,0,1000,0,},
{1,1,38,1,},
{1,2,55,1,},
{1,3,55,1,},
{1,4,38,1,},
{1,5,111,1,},
{1,6,111,1,},
{1,7,111,1,},
{1,8,111,1,},
{1,9,1000,0,},
{1,10,109,0,},
{1,11,58,0,},

{2,0,1000,0,},
{2,1,110,1,},
{2,5,60,1,},
{2,6,60,1,},
{2,7,60,1,},
{2,8,60,1,},
{2,9,1000,0,},
{2,10,1000,0,},
{2,11,1000,0,},

{3,0,1000,0,},
{3,5,60,1,},
{3,6,91,1,},
{3,8,60,1,},
{3,9,2,1,},
{3,11,1000,0,},

Następnie kopiujemy i wklejamy niniejszy kod, po czym kasujemy numery kolumn w świeżo wklejonym fragmencie. Otrzymujemy:

{,0,1000,0,},
{,1,1000,0,},
{,2,1000,0,},
{,3,1000,0,},
{,4,1000,0,},
{,5,1000,0,},
{,6,1000,0,},
{,7,1000,0,},
{,8,1000,0,},
{,9,1000,0,},
{,10,58,0,},
{,11,58,0,},

{,0,1000,0,},
{,1,38,1,},
{,2,55,1,},
{,3,55,1,},
{,4,38,1,},
{,5,111,1,},
{,6,111,1,},
{,7,111,1,},
{,8,111,1,},
{,9,1000,0,},
{,10,109,0,},
{,11,58,0,},

{,0,1000,0,},
{,1,110,1,},
{,5,60,1,},
{,6,60,1,},
{,7,60,1,},
{,8,60,1,},
{,9,1000,0,},
{,10,1000,0,},
{,11,1000,0,},

{,0,1000,0,},
{,5,60,1,},
{,6,91,1,},
{,8,60,1,},
{,9,2,1,},
{,11,1000,0,},

Wyłączając drobne szczegóły, które poprawimy na końcu kolumna nr 3 będzie taka sama jak 4, 2 jak 5, 1 jak 6, a 0 jak 7. Zatem uzupełniamy kolejne kolumny licząc od doły. (Jeśli ostatnia ręcznie wpisana była "3" to najniżej położna będzie "4" kolejna od dołu - "5" itd). W efekcie cały kod będzie wyglądał tak:

{0,0,1000,0,},
{0,1,1000,0,},
{0,2,1000,0,},
{0,3,1000,0,},
{0,4,1000,0,},
{0,5,1000,0,},
{0,6,1000,0,},
{0,7,1000,0,},
{0,8,1000,0,},
{0,9,1000,0,},
{0,10,58,0,},
{0,11,58,0,},

{1,0,1000,0,},
{1,1,38,1,},
{1,2,55,1,},
{1,3,55,1,},
{1,4,38,1,},
{1,5,111,1,},
{1,6,111,1,},
{1,7,111,1,},
{1,8,111,1,},
{1,9,1000,0,},
{1,10,109,0,},
{1,11,58,0,},

{2,0,1000,0,},
{2,1,110,1,},
{2,5,60,1,},
{2,6,60,1,},
{2,7,60,1,},
{2,8,60,1,},
{2,9,1000,0,},
{2,10,1000,0,},
{2,11,1000,0,},

{3,0,1000,0,},
{3,5,60,1,},
{3,6,91,1,},
{3,8,60,1,},
{3,9,2,1,},
{3,11,1000,0,},

{7,0,1000,0,},
{7,1,1000,0,},
{7,2,1000,0,},
{7,3,1000,0,},
{7,4,1000,0,},
{7,5,1000,0,},
{7,6,1000,0,},
{7,7,1000,0,},
{7,8,1000,0,},
{7,9,1000,0,},
{7,10,58,0,},
{7,11,58,0,},

{6,0,1000,0,},
{6,1,38,1,},
{6,2,55,1,},
{6,3,55,1,},
{6,4,38,1,},
{6,5,111,1,},
{6,6,111,1,},
{6,7,111,1,},
{6,8,111,1,},
{6,9,1000,0,},
{6,10,109,0,},
{6,11,58,0,},

{5,0,1000,0,},
{5,1,110,1,},
{5,5,60,1,},
{5,6,60,1,},
{5,7,60,1,},
{5,8,60,1,},
{5,9,1000,0,},
{5,10,1000,0,},
{5,11,1000,0,},

{4,0,1000,0,},
{4,5,60,1,},
{4,6,91,1,},
{4,8,60,1,},
{4,9,2,1,},
{4,11,1000,0,},

Pozostaje jeszcze korekta różnic pomiędzy symetrycznymi kolumnami:
Usunięcie kodu posągu i ołtarza w kolumnie "4", usunięcie kodu budynku z kolumny "5", oraz zmiana rzeźb "38" na rzeźby "36" (ponieważ są skierowane w różne strony, gdyby były to rzeźby "37", nie trzeba by było ich zmieniać)
Pełny kod będzie zatem miał postać:

{0,0,1000,0,},
{0,1,1000,0,},
{0,2,1000,0,},
{0,3,1000,0,},
{0,4,1000,0,},
{0,5,1000,0,},
{0,6,1000,0,},
{0,7,1000,0,},
{0,8,1000,0,},
{0,9,1000,0,},
{0,10,58,0,},
{0,11,58,0,},

{1,0,1000,0,},
{1,1,38,1,},
{1,2,55,1,},
{1,3,55,1,},
{1,4,38,,},
{1,5,111,1,},
{1,6,111,1,},
{1,7,111,1,},
{1,8,111,1,},
{1,9,1000,0,},
{1,10,109,0,},
{1,11,58,0,},

{2,0,1000,0,},
{2,1,110,1,},
{2,5,60,1,},
{2,6,60,1,},
{2,7,60,1,},
{2,8,60,1,},
{2,9,1000,0,},
{2,10,1000,0,},
{2,11,1000,0,},

{3,0,1000,0,},
{3,5,60,1,},
{3,6,91,1,},
{3,8,60,1,},
{3,9,2,1,},
{3,11,1000,0,},

{7,0,1000,0,},
{7,1,1000,0,},
{7,2,1000,0,},
{7,3,1000,0,},
{7,4,1000,0,},
{7,5,1000,0,},
{7,6,1000,0,},
{7,7,1000,0,},
{7,8,1000,0,},
{7,9,1000,0,},
{7,10,58,0,},
{7,11,58,0,},

{6,0,1000,0,},
{6,1,36,1,},
{6,2,55,1,},
{6,3,55,1,},
{6,4,36,1,},
{6,5,111,1,},
{6,6,111,1,},
{6,7,111,1,},
{6,8,111,1,},
{6,9,1000,0,},
{6,10,109,0,},
{6,11,58,0,},

{5,0,1000,0,},
{5,5,60,1,},
{5,6,60,1,},
{5,7,60,1,},
{5,8,60,1,},
{5,9,1000,0,},
{5,10,1000,0,},
{5,11,1000,0,},

{4,0,1000,0,},
{4,5,60,1,},
{4,8,60,1,},
{4,11,1000,0,},

Proste? Jasne, że tak! :)

Oczywiście metoda ta jest tym efektywniejsza im większa jest świątynia. Dla świątyni o wymiarach 6x10 pewnie by mi się nie chciało tego robić, ale jak ktoś robi monstrum o wymiarach 20x30, to taka strategia pisania kodu jest bardzo przydatna. Przy okazji zamieszczam tu też plik tekstowy, w którym znajdziecie współrzędne kodu dla świątyni o rozmiarach 40x40. Jeśli ktoś chce zrobić świątynię to może skopiować z niego tyle kolumn ile potrzebuje, a następnie każdą z nich "przyciąć" do potrzebnej mu liczby wierszy. Tak jest dużo szybciej niż mozolne wpisywanie współrzędnych.

Knight in fire

  • Gracz
  • *****
  • Wiadomości: 52
  • Płeć: Mężczyzna
    • Zobacz profil
Odp: Mała porada przy robieniu świątyń
« Odpowiedź #1 dnia: 22.01.2016, 22:19:08 »
A jak to wygląda dla drzewek, od oliwnych po pomarańczowe?

Haspen

  • Gracz
  • *****
  • Wiadomości: 1288
  • Płeć: Mężczyzna
  • Panie Peasley, gdzie jest mój Earl Grey?
    • Zobacz profil
Odp: Mała porada przy robieniu świątyń
« Odpowiedź #2 dnia: 22.01.2016, 22:21:55 »
Tak, prawie wszystkie płytki/surowce mają swoje ID w kodzie świątyń.

Poszukaj tematu generatora świątyń który miał być a nie wyszedł. Gdzieś tam jest lista wszystkich ID.
World of Horror - a reszta gier może się schować :P
Czym się mogę pochwalić na N-Gry.pl - Misje i gry otwarte (2010-2019)

 

W szybkiej odpowiedzi możesz użyć kodów BBC i uśmieszków tak jak przy normalnej odpowiedzi.

Nazwa: Email:
Weryfikacja:
Wpisz litery widoczne na obrazku
Posłuchaj liter / Prośba o inny obrazek
Wpisz litery widoczne na obrazku:
Napisz malymi literami ile to jest dziesiec odjac dziesiec (na koncu (bez spacji) dopisz cyfre dwa):
Napisz malymi literami ile to jest trzy dodac piec (na koncu (bez spacji) dopisz cyfre siedem):
Napisz malymi literami ile to jest piec odjac jeden (na koncu (bez spacji) dopisz cyfre piec):

Witamy!

Dostęp dla gości
Niezarejestrowani goście mają pełny dostęp do zasobów wortalu, muszą jednak podawać odpowiedzi na antyspamowe pytania kontrolne. Zachęcamy do rejestracji, aby wygodniej korzystać z wortalu, móc identyfikować się w naszej społeczności oraz móc modyfikować ustawienia wortalu pod swoje gusta.

Pliki Cookie
Używamy plików Cookie, aby ułatwiać korzystanie z naszego serwisu oraz do celów statystycznych i reklamowych. Jeśli nie blokujesz tych plików, to zgadzasz się na ich użycie oraz zapisanie w pamięci urządzenia. Pamiętaj, że możesz samodzielnie zarządzać cookies, zmieniając ustawienia przeglądarki. Rozumiem