![]() ![]() This is all done during the packing process and “baked” out into data that can be read by the server and client. So a method was devised to split the world up into grids, and then raycast at a precise interval and generate chunks of navmesh. ARMA 2 DAYZ LAUNCHER HOW TOThe serious problem it presented, though, was how to generate these meshes, with nearly 2 million objects on the map doing it by hand would not be an option. ![]() The team devoted to solving this decided to use navigation meshes. Our problem was not unique, but our situation was: our world is very big yet it requires the same precision as a small one. There are many exciting solutions available for pathfinding, it’s fairly standard fare in the video gaming industry. In the end we decided it would be easier to develop a new approach from scratch. We attempted to refactor these solutions to accommodate our changes but, as can be seen by playing the current build, they fell short of our expectations. We were getting the engine to do things that it was never designed to do, especially regarding interiors of buildings. In addition to behavior problems we also experienced problems with pathfinding and collision for the AI. ![]() ARMA 2 DAYZ LAUNCHER MODThis meant that zombies in the mod were simply pawns, activated by players moving around. In the mod, this was dropped in favor of calculating visibility and target info on a “per player” approach. In the engine, AI is calculated on a “per agent” basis, with some caching for things like targets (shared target info, etc…). When we were developing the game we realized that in the time we had, we would need to work within the parameters of the AI already in the engine. Zombies have proven to be one of the most difficult to develop components of the game. While not a big change for users, possibly allows some more advanced systems to be implemented and better performance and less bugs.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |