brianjvarley / g00290342_grail_quest_3 Goto Github PK
View Code? Open in Web Editor NEWAI Project @ GMIT, Utilizing fuzzy logic and search algorithms to create a text based adventure game.
AI Project @ GMIT, Utilizing fuzzy logic and search algorithms to create a text based adventure game.
Grail Quest - Brian Varley / G00290342 CONTENTS --------------------- Grail Quest console application: (https://www.youtube.com/watch?v=C4RPPNqqVZE) * Introduction -------------- Grail Quest is an interactive text adventure game, based on period following the battle of Hattin. As a Templar knight, having survived the battle,you have been entrusted with going to Jerusalem, taking the Holy Grail from the Temple Mount and brining it safely to Cyprus, via the port of Antioch. * Requirements -------------- This module requires the following components: * Java 1.5 or greater. To check your Java version * execute the following command in your command prompt * "java -version" *Available for download from here: http://goo.gl/JkgLEW * Installation -------------- * Open Command Prompt * Execute the following commands: * cd desktop (if located on desktop) otherwise cd "jar file location path.." * java βjar fuzzy.jar * Game Controls -------------- * move (moves to the next location in the map) * get (Used in conjunction with items, eg get) * use (Used in conjunction with items, eg use sword) * attack(Used in conjunction with Character type, eg Kill Saracen) * search (Searches the game map based on your current location) * look (Gets description of current location) * inventory (Displays inventory contents) * Troubleshooting -------------- * Error: "Could not find or load main class.." # Solution: Double check that you have entered the correct jar file name, "fuzzy.jar" * Error: "Jar file doesn't run after executing command." # Solution: Check that the jar file has been extracted from its .zip archive. **For any further queries, please refer to the game's GitHub: https://github.com/BrianJVarley/G00290342_Grail_Quest_3 * Design Critiques & Notes -------------- *I had originally planned to create the graph on the fly from the parsed in Game file in resources. But the file path specified to the resource didn't work when the application was exported to a Jar file. The parsing does work at the moment if you uncomment the call to parse() in main and run from Eclispe. *Threading of players in the game wasn't inplemented due to time constraints from working on the parsing aspect of the project. * Game Character / Observers should be using a mix of search algorithms based on their character type rather than just one. * Map could have involved more variables such as plateaus, to demonstrate the effectiveness of the search algorithms and more route options, instead of a hierarchial map. * A greater variance of objects and inventory could be added to improve game play variables and experience. * Code References -------------- http://www.mkyong.com/java/how-to-convert-java-object-to-from-json-jackson/ https://github.com/Progether/JAdventure https://github.com/FasterXML/jackson-docs http://www.javacoffeebreak.com/text-adventure/ http://en.wikibooks.org/wiki/Artificial_Intelligence/Search/Heuristic_search/Beam_search http://jfuzzylogic.sourceforge.net/html/example_fcl.html https://github.com/jgrapht/jgrapht http://stackoverflow.com/questions/20242961/getting-weighted-graphs-to-work-in-jgrapht
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.