Didn't have a meeting with my supervisor this week due to public sector strikes, which is fine because I've mainly been focusing on writing this report and other assignments only partially related to this project.
Thursday, November 26, 2009
Interim report
Focusing mainly on writing my interim report and finishing it up before the due date, at which point I can focus on finishing off assignments. The Background, Literature review along with formating is almost fully complete and I shall be focusing on the design and writing about the methodology I will use over the next week before finishing it up completely for submission.
Monday, November 23, 2009
Recent activity.
Ioquake3 is set up with visual studio and is ready for development work. I haven't really done much in the last week beyond reading a bit about more about the C programming language from a book called "The C Programming Language" written by Dennis Ritchie himself. Other than that, I've written a bit more of the background chapter of my interim report.
All of the lecturers are on strike tomorrow (later on today strictly speaking), so that gives me two days off where I can focus more on getting more of my interim report done.
Wednesday, November 18, 2009
Machine Learning.
Definition - "Any change in a system that allows it to perform better the second time on repetition of the same task or on another task drawn from the same population. " - Machine Learning, Game Play, and Go by David Stoutamire.
Tuesday, November 17, 2009
Investigation of Planning, Multi-Agent Planning and Task Hierarchial Networks designs
Looking at the above and their application to this project.
The rough design of how the rocket jumping solution for routing to otherwise unreachable areas is as follows.
Monday, November 16, 2009
Neural Networks and Genetic Algorithms
Some helpful white papers about Neural Networks and Genetic Algorithms for Quake III.
Good starting points for learning about the above:
Saturday, November 7, 2009
LCC, the Quake 3 arena compiler.
My understanding is that the quake client runs on a virtual machine and the source code needs it's own compiler.
The source code directory structure is as follows.
- Code: Contains all of the source code for the client, server and game.
- lcc: Contains the compiler for the code for compiling quake 3 for the virtual machine it runs on.
- q3asm: The assembler for the virtual machine.
- ui: This seems to be definition files for menus and user interface configuration files.
Tuesday, November 3, 2009
More short term goals.
Look at which data should be store in the knowledge base for new cluster portals linking unconnected area clusters for routing.
Monday, November 2, 2009
Short term goals.
Short term goal right now is to get the visual studio solution for the Quake III arena set up to compile and debug.
Existing Quake AI
While playing Quake, I noticed a couple more flaws in the existing behavior of the bots.
- When ever the bots want to talk, they don't seem to take in to account the surrounding environment. For example, there have been numerous times when one of the bots stopped to chat in the middle of combat or when he was in the line of sight of another bot.
- The bots need to take upgrades and power ups as priority in their routing strategy while chasing another bot. As it is, when a bot is chasing a different bot, its routing strategy may bypass an upgrade that was essential to its survival. If there is an power up with in range of some dynamic threshold, the bot should use that as a node to traverse in its route.
- Bots seem to spawn instantly right after death provided that they're not chatting. This is not always the case in real life. A human player might take time to reflect upon his death in a game if he was killed in an impressive way, or if a player is frustrated then he might quit the game all together.
- The chat system is an obvious give away that avatars are controlled by machine.
Subscribe to:
Posts (Atom)