Welcome to my introductory post for my submission, Artmouth Zombies
- Enemy Inventories
- Persistant Maps
- Entity Objects for doors and windows
- Tracking of noise and Agro
- Breakable Area Paths where Logical
- Perishable food
- Ability to prepare food, quality levels.
- Global, Local Map and Building energy tracking(If a building has power or not)
- different tiers of enemies.
- Opertunistic Humans
- Randomized below-ground tunnels, caves and sewers
- World, Street and Local map views(Or just Street and Local views)
- Vehicles, collisions and the ability to drive on the Local Map
- Advanced HtH Combat – Limb Damage, Throws, etc.
- More advanced medical system then just using a first aid kit.
- Money, vending machines and general commerce
- Story to go with all the above
Day 0 – Planning
Well, it’s technically day 0, but today can be used for research. As long as I don’t actually start programming, I should be good.
Research – Engine
I’ve done a little bit of research on the subject, and I’ve settled doing the project in C++ with LibtCod – 1.5.1. It offers most of the drawing features that I’d like, and while I’m not too familiar with the library, it seems pretty self explanatory. There’s quite a few features that I’m kind of on the fence about – I’m considering using boost for persistence and saving.
Most of the features I’d like I’m going to have to develop myself, and as much as it would be reinventing the wheel, it gives me more finite control over what I can do.
My C++ knowledge is quite a few years rusty, so I’ve been doing small projects all morning to try and refresh my knowledge of most of the basic header files. This should be a learning experience, at least.
I’ve been thinking quite a bit about different possible stories for this game, and the overall world. I’ve narrowed it down to one of three different methods:
- Virus(The Romero): People get sick and die, then rise up. One bite, and you’re infected – No one is safe. Infection has a incubation period of 12-14 hours. Enemies start appearing after 16 in-game hours.
- Mutation(TMNT Green Goop): A industrial accident causes people to turn into zombies. While death may not cause reanimation, contact with the green goop(or mist clouds, etc) will cause humans to turn and corpses to reanimate. This causes some neat mechanics where the player must treat the enviroment in a Haz-mat manner, and the zombies are just a side effect.
- Mind Control(Alien Effect): Aliens are intermixed with the zombies, and are actually controlling them. Any time a alien is near, all corpses reanimate nearby until the alien is killed. Any killed zombie is only killed for a number of turns, and then reanimated. This would lead to some neat tactics with pulping or disposing of bodies.
Each of these methods have their own drawbacks and benefits, and I’m a bit stuck at the moment. I’ll think it over some more tonight, and post the results tomorrow.
Mechanics – Food
I plan on having two different types of food in the game – preserved and perishable. Perishable foods can be categorized into different categories like meat and vegetables, with different amounts of time that it can be out of storage. Preserved foods can be classified as regular canned goods, preserves and jerkified or dried meats and vegetables.
Each perishable item will have a in-game “timer” which will decrements slower if they are in storage. Perserved foods will not be tacked with the same timer.
Mechanics – Structure
I’ve been playing around with several ideas in this vein, and there are several different things that need to be in. One of the biggest is the actual destruction of things like stairs and glass windows. My preliminary research suggests that if I just add a passable flag to each of the objects, I can easily toggle the states for each and make a item passive and impassible with a few lines of code. The trick will be to make a object only targitable in the advanced attack menu. I can then just link a “use” command to the forward movement instead of an attack on the actor. That’s the theory anyway.
I’m trying to figure out a way to easily make walls destructible without having to track every block as an entity, but at the same time make it manipulable. There will be two different types of construction, “concrete” and “wood”. Wood construction will be breakable by the hordes, but concrete will be much more resource intensive and only breakable by the player.
I’m planning on different internal buildings, and several buildings that can only be built outside or on the rooftop, but that all depends on how I’m going to finally run time.