Friday, 16 January 2015

Development Blog #0008 - Base Inventory Management and Loadouts

This week I completed Base Inventory and Loadouts for Wool's WLNewmanBrainBasic AI.


So what's base inventory management?
Newmans now consider the weapons, armor, tools, wood, stone, metal, and food that they have inside their bases as well as on their person.  They use this information to see if they can afford whatever they want to craft, like more weapons, armor, or upgrade a base.

Okay and what's a Loadout?
If you've ever played Call of Duty, or Team Fortress 2, you'll recognize a loadout -- it's the stuff you carry into combat.  I coded the Wool loadout system.  This means that a newman will only carry enough stuff to survive for a while, and store the rest back in his base.  It's a really important feature because newmans' can now equip their stored weapons and armor when they respawn (previously, they carried everything they owned).   A newman has a different loadout depending on what he's up to.  If he's gathering, he'll carry enough weapons and armor to kill 10 people, and enough tools to mine 100 resources.  He'll return to base when he's gathered about 1/8th of the resources he needs for the next base upgrade.  If he's raiding, he'll carry enough weapons, armor, and of course, tools to breach the walls.  Newmans will leave their raw resources at home during the raid.  The real beauty of this system is that newmans both store excess resources in their base, and equip only what they need.



I spent a lot of time debugging this week because every part of AI code had to be reconfigured for the loadout system.  It was a bit tedious, but I'm confident the worst is over.  I had been hoping to even start on the logg on / off system, but it must be delayed until next week.  When that's in, the model is complete (save for some AI tweaks), and I can begin doing an analysis. That means printing out lots of data, and processing it in a language that's better suited for this sort of work (Matlab).  I'll make some pretty graphs and stats, then tweak the game, and then this project will be finished!

Woot! I got featured on playrust.com!









3 comments:

  1. What if you gave each newman a personality? Like... a tendency to act one way or another. Cowardly, brave, reckless, cautious, kind, etc. I feel that would create a more realistic experience.

    ReplyDelete
    Replies
    1. Hey that sounds good! Right now they're super basic -- so there's not much differentiation between them, but soon I'll be able to make them interesting like that.

      Delete
  2. Very nice and helpful information has been given in this article. I like the way you explain the things. Keep posting. Thanks..
    corporate wear and uniforms

    ReplyDelete