Framework pro implementaci botů pro hru NetHack
NetHack Bot Framework
diploma thesis (DEFENDED)

View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/61979Identifiers
Study Information System: 151037
CU Caralogue: 990020066330106986
Collections
- Kvalifikační práce [11338]
Author
Advisor
Referee
Mráz, František
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Software Systems
Department
Department of Software and Computer Science Education
Date of defense
15. 6. 2015
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Excellent
Keywords (Czech)
bot, NetHack, frameworkKeywords (English)
agent, framework, NetHackDosavadní pokusy o implementaci botů pro klasickou roguelike hru NetHack narážely na mnohá úskalí spojená s její rozsáhlostí, obtížností a konzolovým rozhraním. Framework implementovaný v této práci řeší problémy s napojením ke hře a zprostředkovává k ní programátorsky přivětivé rozhraní v jazycích Java a Clojure. Poskytuje možnost programovat pokročilé NetHack boty s využitím komplexního modelu herního světa, knihovny možných akcí a mnoha pomocných funkcí. Framework používá prvků funkcionálního a logického programování a nevyžaduje modifikace vlastního kódu hry. Popsána je také implementace ukázkového bota, který jako první bot vůbec dokáže hru dokončit. Powered by TCPDF (www.tcpdf.org)
Previous attempts at implementing bots for the classic roguelike game NetHack have been hindered by many problems related to its complexity and console-based interface. The framework implemented as part of this work solves the problem of interfacing with the game and provides a programmer-friendly API for the Java and Clojure programming languages. It enables programming sophisticated bots using the provided model of the game world, a library of possible actions and utilities for various aspects of the game. The framework uses elements of functional and logic programming and doesn't require modifications of the game. Also described is an implementation of the first NetHack bot capable of winning the game. Powered by TCPDF (www.tcpdf.org)