AI in FPS
I did some work on implementing a hierarchical finite state machine for my FPS AI, similar to the system described here. I’m not entirely happy with the way I designed the hierarchy, so I’m holding off for a bit as I re-plan.
I did some work on implementing a hierarchical finite state machine for my FPS AI, similar to the system described here. I’m not entirely happy with the way I designed the hierarchy, so I’m holding off for a bit as I re-plan.
This website has a great generic C++ implementation of the A* algorithm. It’s easy to learn from the examples, and the code seems well-written.
I prototyped an object view class to implement the multiplayer system defined in this gamasutra article. Here it is (it’s a C++ file, but I had to rename it to .c to get wordpress to link it): Object View Prototype
Why it’s cool: it’s a generic class that can attach to an object, track some parameters, and then serialize data (currently only a text “serializer” is implemented, but it would be trivial to write a binary one). If the object changes, and you re-serialize, only the parameters that changed are serialized. Code for de-serializing isn’t written yet.
I added a generic resource manager template class to the VFramework. It’s pretty handy, less than 200 lines, and I used it for managing textures, which allowed me to delete a lot of complex junk from the textures class. Here it is: Resource Manager Class
Here’s some example code (based on the prototype resource manager): Resource Manager Example Code
I’ve been thinking a lot of about creating AI for an FPS game. This post I made on the gamedev forums has provided a lot of great feedback. My initial approach of using A* as a method for state space search may be slower than I’d hoped unless I can come up with a good heuristic.
I’ve been experimenting with how to do client/server code while maximizing code reuse. Generic serialization and deserialization seems difficult, so I’ve been prototyping to try to shake out an architecture. I made a post on gamedev asking for some advice. The C++ FAQ has some good ideas as well.
Welcome to venzon.org. I like to develop games in my spare time, and decided to journal about it. I would have used gamedev.net, but that site seems to be ridiculously slow… so I figured hey, why not put up my own site?