Skip to content

szymonlyszkowski/AIProjectWorkspace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

###Odpalane z cmd: Gra pozwala na uruchomienie w dwóch trybach (z poziomu AIProjectWorkspace\DiceWarsGame\out\production\DiceWarsGame). Pierwszy służy jedynie do tworzenia grafów i zapisania ich do pliku. Drugi do faktycznego uruchomienia gry na wczytanym grafie.

###Tryb 1. Tworzenie grafu

java -cp "<ścieżka gdzie jest jFuzzyLogic.jar i json-simple-1.1.1.jar>*"; com.example.main.MainWindow 1 nrOfVertices maxNrOfEdges ścieżkaDoWynikowegoPlikuZGrafem

np.

cd C:\Moje Dokumenty\AIProjectWorkspace\DiceWarsGame\out\production\DiceWarsGame
java -cp "../../../*"; com.Example.main.MainWindow 1 10 5 outputGraph.txt

#####P.S Jeżeli używacie linuxa to zamiast średnika jest dwukropek!

java -cp "/home/szymonidas/repos/AIProject/DiceWarsGame/*": com.example.main.MainWindow 1 10 5 outputGraph.txt

###Tryb 2. Uruchamianie gry

java -cp "<ścieżka gdzie jest jFuzzyLogic.jar i json-simple-1.1.1.jar>*"; com.example.main.MainWindow 2 ścieżkaDoGrafuWygenerowanewgoWyżej

np.

cd C:\Moje Dokumenty\AIProjectWorkspace\DiceWarsGame\out\production\DiceWarsGame
java -cp "../../../*"; com.Example.main.MainWindow 2 outputGraph.txt

###Tryb 3. Agenci

java -cp "<ścieżka gdzie jest jFuzzyLogic.jar i json-simple-1.1.1.jar>*"; com.example.main.MainWindow 3 ścieżkaDoGrafuWygenerowanewgoWyżej agent1Directory.jar namespaceAgenta agent2Directory.jar namespaceAgenta

Program przyjmuje 2 jarki. Klasa z agentem, którą wrzucamy do jara musi nazywać się MyAgent (niezależnie od typu agenta) i implementować interfejs Agent. Klasa z agentem musi implementować interfejs ai.dicewars.commin.Agent. Jeżeli dany agent ma w strukturze jakieś klasy lokalne, to je też musimy dołączyć do jara. Najprowdopodobniej klasy powinny znajdować się w jarze uwzględniając podfoldery (np. com/example/main).

Dodatkowo klasa agenta musi posiadać bezparametrowy default constructor. W przypadku FuzzyAgent, plik .fcl może znajdować się poza jarem (tylko trzeba w klasie podać właściwą ścieżkę do pliku; jak damy samą nazwę pliku, to ów plik powinien sie znajdować w out/production/DiceWarsGame)

W przypadku agentów fuzzy i clips, w klasach (które znajdą się w jarze) powinien być kontruktor bez parametrów, który ma zakodowaną ścieżkę do pliku .fcl lub .clp.

Komenda to stworzenia jar:

jar cvf result.jar /source/to/.class/file(s)

np.

cd ~repos/AIProject/DiceWarsGame/out/production/DiceWarsGame/
jar cvf result.jar /ai/dicewars/common/Agent.class

###Tryb 4. Bez GUI Jeżeli w swoich agentach nie ma żadnego wyświetlania rzeczy, to po odpaleniu komendy konsola wyświetli tylko zwycięzcę.

java -cp "<ścieżka gdzie jest jFuzzyLogic.jar i json-simple-1.1.1.jar>*"; com.example.main.MainWindow 4 ścieżkaDoGrafuWygenerowanewgoWyżej agent1Directory.jar agent2Directory.jar

###Odpalanie z agentem w CLIPSie

java -cp "<ścieżka gdzie jest jFuzzyLogic.jar i json-simple-1.1.1.jar>*"; -Djava.library.path=../../.. com.example.main.MainWindow [OPCJE JAK WCZEŚNIEJ]

Żeby odpalić bibliotekę CLIPSową poza wczytaniem JARa do projektu trzeba jeszcze ręcznie wskazać mu ścieżkę do pliku dll. np.

java -cp "../../../*"; -Djava.library.path=../../.. com.example.main.MainWindow 2 map1.txt

About

Artificial Intelligence Project repository

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors