ScriptCraft - Tutorial

29.03.2010

Witam w grze ScriptCraft!

Przejdź do gry, Dokumentacja

Na wszelkie pytania odpowiadam na forum. Można też pisać do mnie PW.

Jest to gra strategiczna gra on-line przeznaczona dla wielu graczy (MMO). Rzeczą która wyróżnia ją od wszystkich innych gier, jest możliwość oprogramowania jednostek własnymi programami.

Gra toczy się w czasie rzeczywistym 24h na dobę. Zadaniem stawianym przez grę jest utworzenie systemu sztucznej inteligencji sterującej jednostkami, tak by pokonać innych graczy i zdominować świat.

ScriptCraft

Rozpoczęcie

Celem gry jest pokonanie innych graczy i wyprodukowanie jak największej liczby jednostek. Gra toczy się w niezależnych rundach, w każdej następuje reset mapy i gra rozpoczynana jest od początku, by nowi gracze mieli szansę osiągnąć dobry wynik. Przyłączyć do gry można się w dowolnym momencie, ale koniec rundy następuje dla wszystkich w tym samym czasie. Wtedy aktualizowany jest ranking i rozpoczynana jest nowa runda na nowej mapie.

ScriptCraft

Gra toczy się na mapie podzielonej na pola. Mamy do dyspozycji jednostki: Bazę, Zbieracze i Czołgi. W Bazie możemy produkować jednostki, potrzebne są do tego minerały, przynoszone do bazy przez Zbieracze. Droższe zaś Czołgi są podstawowym argumentem militarnym.

Na mapie może znajdować się wielu graczy, jest tam także stale obecny zawodowy gracz komputerowy.

Rozpoczęcie gry następuje w momencie wciśnięcia przycisku "Wejdź do gry" w zakładce "Ogólne". Otrzymujemy wówczas pierwsze jednostki w losowym miejscu, ale w pobliżu zasobów.

Opuścić grę można w podobny sposób. Wówczas utracimy kontrolę nad jednostkami, które przestaną wykonywać polecenia, ale będziemy mogli dołączyć do gry ponownie zaczynając od początku. Dołączyć do gry w jednej rundzie można maksymalnie 3 razy.

Wydawanie poleceń

Jednostki znajdujące na mapie wykonują w każdej turze polecenia. Przykładowo polecenie MOVE x y przemieszcza jednostkę w stronę wybranego pola [x,y]. Polecenia można wydawać na 3 sposoby:

  • Przy użyciu przycisków obok zakładek, które odpowiadają poleceniom STOP, MOVE, GATHER, ATTACK, FIRE
    ScriptCraft
    Należy wcisnąć przycisk a następnie kliknąć w docelowe pole na mapie.
  • Wpisując ręcznie polecenie przy wybranym języku [Output]. Polecenia można podawać też skrótowo - pierwszą literę słowa. Przykład: MOVE 10 22 albo M 10 22.
  • Wpisując program w wybranym języku programowania, który wczyta wejście - opis stanu jednostki i wypisze na wyjście polecenie. Przykład najprostrzego programu w C++, który robi to samo co polecenie wyżej:
    1
    2
    3
    4
    5
    
    #include <cstdio>
    int main(void) {
      printf("MOVE 10 22");
      return 0;
    }

Zbieranie zasobów

ScriptCraft

Aby rozpocząć własny rozwój należy zacząć od zbierania zasobów. W pobliżu Bazy znajdują się minerały, które można eksploatować.

Zbierać zasoby mogą Zbieracze - jeżdzące wagoniki. W tym celu należy wydać im polecenie GATHER {x} {y}, gdzie {x} {y} są to współrzędne pola z minerałami. Zbieracz wówczas podjedzie do złoża, zbierze jedną porcję zasobów, po czym wróci do bazy i ją odda. Proces ten będzie powtarzać cyklicznie.

Złoża mają ograniczoną ilość minerałów, jednak odtwarzają się powoli w czasie.

Im więcej pracujących Zbieraczy tym więcej zasobów może być dostarczanych do Bazy, jednak należy uważać - zbyt duża ich ilość, bez żadnej dodatkowej kontroli ruchu może powodować zakorkowanie.

Produkcja

Produkcja jednostek odbywa się w Bazie. Służy do tego polecenie BUILD {typ}, gdzie {typ} jest liczbą oznaczającą typ (w dokumentacji). Zbieracz ma typ 5, zatem aby go wyprodukować wystarczy wydać polecenie BUILD 5. Wyprodukowana jednostka pojawi się na sąsiednim wolnym polu obok Bazy.

Domyślnie jednostki mają ustawiane polecenie STOP, jednak bezpośrednio przy produkcji można ustawić im inne, dowolne polecenie lub cały program. Przykład:

BUILD 5

GATHER 10 22

Polecenie to produkuje Zbieracza i ustawia mu od razu polecenie zbierania zasobów na polu [10,22]. Składa się z 3-ech wierszy. Pierwszy to polecenie budowy z typem jednostki. Jeśli chcielibyśmy ustawić mu od razu program, to drugi wiersz który tu jest pusty powinien zawierać nazwę języka. Trzeci wiersz i kolejne to sama treść polecenia lub programu.

Militaryzacja

ScriptCraft

Gdy już uporamy się ze zbieraniem zasobów, nadchodzi czas by wykorzystać je w celach militarnych. Podstawową jednostką służącą do walki jest Czołg. Aby go zbudować wystarczy wydać polecenie BUILD 6.

Czołg może strzelać na odległość 3-ech pól (w sensie metryki miejskiej). Polecenie ATTACK {x} {y} powoduje, że Czołg podąża do pola [x,y] strzelając po drodze do napotkanych wrogich jednostek.

Trzeba pamiętać, że Czołg nie atakuje z poleceniami STOP i MOVE - działają one tak samo jak dla Zbieraczy. Polecenie FIRE {x} {y} każe Czołgowi strzelać do wybranego pola (tylko jeśli jest w zasięgu), można go użyć także np. do karczowania lasów.

Na następnych stronach opiszemy strategie programowania, zwiększające sukces w grze.

Copyright © 2008-2010 Wrocławski Portal Informatyczny

design: rafalpolito.com