So it’s been almost two months since the last update…I guess that means it’s time for a new one!
I’ve done a huge amount of work on the game in that time…..here’s an overall outline of the new stuff, followed by detailed explanations of each one:
- weapons now have durability
- individual items can now have perks
- the ailment system (hunger, fatigue, bloodloss) was completely redone.
- new shaders on everything allow for more precise damage decals
- item import system re-written
- character controller re-written
- vehicle management system re-written
- navgrid pathfinding replaced with navmesh pathfinding
Click any of the following images for previews of some of these changes, or click ‘Read More’ below to see all of the explanations in the full post.
So, it used to be that when you’d jump in water you’d immediately die. But that’s no fun!! So….
As you can see, you can only climb out of the water if there’s nothing blocking the ledge in front of you.
Also, I’m verrrry close to having all of the refactored city generation code finished. Hopefully after that point, I’ll be able to post more frequent updates!
So I’m getting closer to having the entire city generation engine re-written. It’s been a huge project (since it makes up a huge chunk of the game’s code and had to be completely re-written from scratch)….but the benefits have been awesome (as explained in previous posts).
In the process of re-writing the way that cities are generated, I’ve also changed the way that buildings are generated. Currently there are 15 different types of buildings (hospitals, houses, banks, stores, etc). Each building type had a specific custom interior (so stores have checkout counters, houses have kitchens and TVs, hospitals have beds, etc)…but in the old system the exteriors of the buildings were completely randomized. This means that a hospital might end up with the same roof and brick color as a house, etc.
The problem with that approach is that it becomes very difficult to tell buildings apart, without going inside to see the interior decorations. That also results in a very boring-looking city…where all buildings are essentially ‘the same’, in the sense that their colors and exterior decorations all come from the same set of options.
Since I’m overhauling the whole system, I figured it would be a good time to change how buildings are generated. Now, each building type has a unique set of possible walls and roofs that are specific to that kind of building. So, as you’re walking around the city, you can identify buildings by their exterior color and decor. When you see a steeple, you know you’re near a church. When you see an envelope sign, you know you’re near a post office. When you see a bunch of movie posters, you know you’re near a video store, etc.
Here’s a screencap showing a viewport preview of all the possible walls for each of the 15 building types.
Here’s a screencap showing a viewport preview of the possible roofs for the 15 building types.
As buildings are generated, first the ‘type’ of building is chosen, then its walls are taken from the corresponding group of possible walls, and then a roof is chosen from the corresponding group of roofs.
Here’s a screencap illustrating what a couple of buildings end up looking like, once their geometry is generated from the prefab objects shown above.
Also for those who haven’t yet noticed…comments now require registration/login. It’s super easy to do, and avoids some of the problems that were happening earlier (with people posting under other peoples’ names, pretending to be them). If you have any issues with the registration/login system, or someone else has taken a username you previously posted under….feel free to contact me and let me know and we’ll try to resolve the issue.
So you might be wondering what is happening with regards to Zombox development. I mean, the game has been in development for over two years now! Why isn’t it out yet?
Here’s the short answer:
There’s a lot left to do, and most of my recent developments have been back-end stuff related to the new map generation system.
Here’s the long answer:
Zombox was originally conceived as a micro-game in which you walk around a neighborhood killing zombies and destroying property. It was meant to be a simple test to see whether or not I could make an iOS game on my own.
It quickly exploded into what it is today. It now features a rich character upgrade system, a massive world, a complex system of NPCs, dozens of zombie types, almost a thousand different items to find, buy or craft, etc.
The latest overhaul of features that I’ve been working on is a complete rewrite of the map generation system, to make way for the hundreds of new city elements. This is no trivial task, because the old map system was integrated into many different parts of the Zombox code base, so replacing that code is a complicated process. So far I’ve already re-written several thousand lines of code, and by the time I’m done, I’ll have added several thousand more.
In re-writing those sections of code I’ve also put a lot of work into making the map system much more efficient. As it stands, it’s about 20 times faster and uses 10 times less RAM. That will make a big difference on mobile devices, because it means the game will load very quickly and be less likely to crash (running out of memory will cause games to crash on iOS).
Now, that is all behind the scenes stuff that takes a lot of time, which means that while I am coding those types of things, I won’t have many updates to post here.
So, just because I haven’t posted an update, doesn’t mean the game is not constantly in development!
Now, that said, here are some updates that you have to look forward to, in the future:
- Weapons will have durability, and must eventually be repaired or else they will break
- Players will be able to swim for short periods of time in the water, even though it is toxic.
- The prop-crafting system (for things like walls, chests, doors, etc) is going to be augmented with many new buildable items
- Different types of workstations will be craftable, that will allow you to craft more advanced items. So, for example, you’ll need to build an oven to craft certain foods, or a workbench to craft certain objects, etc.
- A power system is going to be implemented, that will allow you to build generators (which will require fuel) that can be used to provide electricity for more advanced crafting workstations.
- Zone-specific NPC behaviors are going to be implemented. For example, in the military areas you’ll have to face aggressive soldier NPCs who might not be as friendly as the sewer NPCs or the random NPCs you might meet elsewhere.
- Eventually I’d also like to add in things like NPC sub-stories and quests, but I haven’t put too much thought into those things yet.
I have other things on my to-do list as well, but those are the main things for now! I’m not sure how long it’ll be before I have some new content to post, but you can rest assured that lots of development progress is still being made!
In the meantime, I appreciate everyone’s support and patience!
Here’s a fly-through of a city generated with the new procedural generation system. Previous posts showed what maps look like from above…this video gives you a glimpse of what those maps look like once they’re converted into in-game geometry.
All the models and textures you see here come straight from the game, and this is exactly the type of map that you’ll be able to play in. The total area of this map is about 1.25 km square. Keep in mind that every single object you see in the video can be completely destroyed or repaired. Also note that each city you play in will have dozens of different areas each with its own types of zombies….thousands of buildings to explore and loot….a nearly inexhaustible number of places to build a shelter, craft reinforcements, etc. In other words….the maps are huge!
Hey everyone, so I haven’t updated in a while….mainly because I was in France for a bit of a vacation….but things are back on track now and moving forward! Normally I post updates on Friday nights, but I figured I’d post this one a bit early since many of you are waiting very patiently to see some progress.
The procedural city layout system is basically done at this point. Since the last update several things have happened:
- the perimeter of each city is no longer totally square. There are now many islands (which you’ll eventually be able to travel to…hint hint) and bays to create some extra variety in the overall shape of each city
- about 40 new map tiles have been added….everything from dusty streets to backyard swimming pools to graveyards to basketball courts to football fields, to machine gun posts, etc etc….
- the main city ‘zones’ have been better defined. Industrial zones are dusty and dirty, commercial zones are mostly concrete, residential zones are grassy, and destruction zones are charred and full of rubble. This will help the player better orient themselves in the overall scheme of things (ie, if you see that the buildings around you are surrounded by grassy yards, you’ll know you’re in the suburbs, etc)
I think the last thing I’ll be doing to the map layout system is further emphasizing the destruction around the central meteor crater. Right now that area is mostly grassy…I’d like to make it much more charred and desolate. If all goes well I’ll have that done by this Friday…so keep an eye out for that update!
Here is an image showing 4 different maps generated with the new system:
Tweaked the center crater area I mentioned above…now the destruction zone expands further out to the borders of the quarantine fences.
So as many of you have noticed, there haven’t been updates in a while. That’s mostly because the current list of things I’m working on involves a lot of backend work. If you’ve seen my previous posts, I’ve talked about re-working the city generation system to allow for more variations, and so that’s what I’ve been doing.
The old city system had about a dozen different ’tiles’ that were used to create the city….a couple building tiles, a few roads, grassy areas, rivers, etc. The new system now has over 100 tiles (60+ of which were shown in previous posts), and the cities generated with them are much more robust.
Now, I haven’t finished updating the city generator yet, and there’s still more work to be done. In the below image you can see some city layouts generated with the new system, and they’re fairly square and uniform. The next step will be getting more variety in the overall shape of the map, as well as more variety in the placements of the various city zones. Regardless, you can still see how huge and detailed the cities will be.
I was very busy with work the last two weeks, so Zombox work was put on the backburner, but I managed to finish texturing the latest city tiles, as well as create a giant new one that will serve a special purpose.
In the following weeks, I’ll be integrating these tiles into the map generator. The map generator itself is getting refurbished, since I’ve decided to try and make map layouts randomized after all (until now, buildings and props and things were randomized, but the overall map layout was not random, so things like roads and rivers were always in the same place). The new randomized layouts will mean each time you start a new game, you’ll have a whole new city to explore.
In the next couple of weeks I also want to render out a Youtube video showing a fly-through animation of the entire city, so you can see all of its different features and areas, as well as its size. So, keep a look out for that!
This week I finished up modeling the new city tiles I’ll be adding to the game. Each square represents a chunk of the map, and the elements on each square (fences, trees, walls, rocks, etc) will be randomized when the map is generated. For example, if a “farm” zone is being created, it’ll choose one of the farm tiles and then randomly choose whether or not to add the fences, hay bales, ponds and such to that specific tile.
This system has been in place from the beginning, it’s just that now I’m adding a lot more variety to it. Previously, the map consisted of either buildings, roads or grassy areas….now you can see all the new areas that will be added (parks, farms, military bases, quarantine zones, demolished buildings, etc).
Here’s an image of the new models. They haven’t been textured yet so that’s why they’re white.
I also analyzed the visitor traffic this development blog has gotten over the last two years, in response to a thread on reddit where someone asked which marketing avenues they should pursue in order to drum up interest for their game. If you’re a game developer who wants to know which forums or websites it would be best to spread the word about your game on, this information may be useful to you!
To read the post, click here.