Ambush -- Guerilla Warfare

This is the development log for a personal project I’m working on with several other people (open for recruitment). Ambush is a third person shooter that puts players into the roles of humble peasants from a remote jungle village, and pits them against an overpowering, professional army that has encroached upon their land and threatens their survival.

Key gameplay concepts are a high degree of realism applied to gun play, player movement, enemy senses and behavior, with the goal of creating seemingly impossible situations that will force the player to develop cunning guerilla strategies like hit-and-run attacks, ambushes, and nighttime raids in order to survive and drive the invaders from your territory completely.

Players will be able to hot swap between any allied fighter to have full control of multi-pronged attacks, and will be able to coordinate their strikes with up to three friends. That’s right, multiplayer coop – and over a dedicated server!

In the jungle, there is little that can stop a bullet. For this reason, players will need to move in a unique way that will be an exciting departure from the typical cover based shooter. Sprint, dive, roll, and shoot – sit still too long and your a goner, and you can bet that the last place the enemy saw you is about to become swiss cheese.

Your enemies aren’t only more numerous than you, but they have superior firepower and resources. To make matters worse, they know that they have the advantage and will aggressively seek to utterly crush the players meager forces. This ain’t Duck Hunt!

The game world will be as large as we can make it, and consist of many Zones of Control which will initially be held by the enemy army. The players task is to wipe the map clean of the enemy presence, and this will be no small task. The enemy army will persistently pursue the player, react to player aggression in one zone by sending reinforcements from another, and attack any player held Zones of Control. To cope with all of this, the player will have to learn to ambush enemy supply convoys and small roving patrols, as well as use the cover of night and thunderstorms to sneak into enemy territory to steal supplies/free captive guerillas.


I am the 3d artist and primary designer behind the game mechanics. I will regularly update this thread with art assets as I complete them. The programmer will be joining in to update this thread with his progress as well.

Programmers Twitch stream (he got his sleeping done for this year already so this stream runs almost 24/7): Twitch

Artist Twitch stream (he has poor bastard internet so doesn’t stream as much): Twitch

Programs and 3rd party assets we use are:

Game Engine:
Unity 2017

Art:

Maya LT
Zbrush 4R8
Substance Painter 2
Substance Designer
UVlayout
xNormal
Marvelous Designer
Gaia
Complete Terrain Shader
Vegetation Studio
EnviroSkyandWeather
SpeedTree
Tropical Forest Pack

Turbosquid.com

Organization:
Slack
Trello
GitHub
GoogleDrive

2 Likes

Machine gun in development. I started texturing the other day, but was not getting the proper amount of resolution and had some ugly seams and other anomalies. I’ve had these same issues before, and because of the same problem. I suck at UV’s. I have no confidence in doing them, and tend to rush through them. So I decided to take a step back, and for this model I am going to take the time necessary to get the UV’s absolutely perfect so I can 1. have some confidence for UV mapping in the future, and 2. get this model looking as crisp and nice as possible.

2 Likes

Can you explain the reasoning behind the third-person perspective choice as opposed to first?

Will there be AI for the other playable characters, or will it be co-op only?

How systemic will enemy attacks/movements be? From your description it sounds like pretty much all enemies will be starting from perhaps a single, impenetrable location (something like an airport with extremely heavy defenses, that a player can’t defeat, and they’ll be moving to these locations in the game world where they set up camp/attack the player-held zone of control. Is that the case, or are they popping into existence near the zone of control?

Does anyone else in the village want to fight? Will there be allies that attempt to hold the zones of control? Or is the player (the 4 player team (not sure why I thought it was 4)) expected to do everything?

Edit: how many allied characters can the player “control” or lead at once? How large is their team? I assumed it was 4 up there, but what will it actually be?

What kind of machine gun?

@EternalAmbiguity :

  1. We have been back and forth on this quite a bit, but finally put down in stone that it will be a very close third person over the shoulder camera that goes into an ADS for aiming mode. Reason is because of a handfull of factors, not all of them strictly because of gameplay. Part of the reason is because of many of the time-saver assets we have right now are geared towards third person, and some gameplay reasons include giving the player a better understanding of core systems that might be hard to understand from a first person perspective. I don’t really want to be exhaustive with this explanation because it would require 50k words probably, but also some of the mechanics, especially pertaining to how our AI will behave, we don’t want to fully disclose because that might spoil the game for anybody who ends up playing it.

  2. Friendly NPC AI will not be implemented until Prototype 2 at the earliest, but yes the game is meant to be a SP experience first and foremost. The methods for friendly AI control is planned to be as unobtrusive as possible. Our main source of inspiration regarding this aspect is the Brothers In Arms series.

  3. The enemies will populate bases/outpost. One base/outpost per zone of control (think of these as territories). Each zone of control has a maximum cap of enemies allotted to it, and will respawn enemies to keep the cap every so often. So if the player wants to whittle down a zone to weaken it’s base for an attempt to overrun and capture it, they will have a limited window to do so before the zone is “resupplied” with fresh troops.

But the enemies do not strictly stay in the bases. The will be very active during the daytime with convoys and search-and-destroy patrols. This is not a fully modernized army with night vision or thermal scopes, so at nighttime or during thunderstorms they will be less active, and thus this will be a time for the player to consider using stealth tactics that might otherwise be impossible to pull off.

Furthermore, zones communicate with each other and send reinforcements when necessary – which could be a double-edged sword if the player learns to exploiit this.

  1. The player will be joined by friendly AI guerillas. In the beginning of the game, this will be a small number. We have not decided how many total friendly AI the player will be able to control/have follow them.

The player will be able to acquire more friendly fighters by capturing zones of control where these fighters are being held captive. Alternatively, if the player can sneak into the base and free them undetected, they can do so that way as well. There is a finite number of allied fighters in the world, so when they die, they are gone forever.

  1. We aren’t sure how many AI NPC’s the player will have control of yet. It may be dependent on the zone or many other factors. Performance will of course be a factor, as we don’t want to detract from environment budget to have, say 30 npc’s versus 15. Most likely, my hunch right now is that the players guerilla groups would be limited to squads of 10 or less, and each squad can be commanded as a single unit. So, in the late game when the player has many resources, they could stage a raid on a large enemy base with multiple squads attacking from different angles.

  2. The machine gun is based on an FN Minimi, but is not an exact replica, just a close approximation. Most of the games weapons will be either familiar NATO or Russian military weapons, but all of these military weapons must be acquired from the enemy. In the beginning, the villagers will only have a default WW1 era bolt action rifle.

1 Like
  1. Understood. I was simply curious because third-person can be easier in some ways than first-person. I actually vastly prefer third-person myself.

  2. How do they respawn? Do they simply respawn at the base, or is it through some realistic mechanism like a plane or train bringing troops?

  3. Along similar lines to this - can the player interact at all with the village they’re supposed to be protecting?

1 Like
  1. That is something I will have to discuss with the programmer in depth when it is time, and much will depend on the performance measures we’ve already implemented. The idea now is to only spawn gameobjects per zone and per camera visibility, so off the top of my head I imagine a set of rules that must be met to respawn enemies in a base. For instance, if x amount of time has passed and if the player is absent from the zone, the base will be resupplied to max cap.
    Having actual trucks come in from outside the map with troops to resupply a base would be awesome, but that would be an icing on the cake type of thing we aren’t focusing at this point.

  2. If there even is a physical village… the story in this game will be condensed to a brief text introduction, most likely. Unless we come up with a lot of money or some serious talent joins us, I doubt we will have time for any kind of cinematic or dialogue. Of course I have beautiful, heart tearing introduction cinematics all choreographed in my head, but this is way beyond the scope of the project right now.

However, we have discussed having one default zone of control that would persistently supply a bare minimum of resources for the player, and this could be modeled as “the village”.

Good to know. Thanks for the info.

1 Like

This is probably my most favorite point of view when playing a game. This allows the character ‘art’ to be seen, all the hard work put into making a compelling, visually appealing character, and is a great perspective to give for the player to ‘play as’ the character rather than ‘being’ the character.
One of the very best (imo) games to deliver this perspective is Gears of War. For a very specific type of game I want to create in about 5-10 years from now - Gears of War(s) are the definitive references that do this point of view exceptionally well. Unfortunately I have never played a gears game but I have researched this character perspective extensively and Gears has a great set of up close and camera/character control to deliver both melee and ranged weapon combat in a smooth/controlled/cinematic method.
Off the top of my head at the moment here are some other notable games that are great references (that I’ve played);
Shadow of Mordor
The Last of Us
God of War 3
Horizon Zero Dawn
Uncharted
Witcher 2

One element of design to strongly pay attention to is animation - for 3rd person perspective. The more frames in an animation the less responsive the control (might) feel, but the more believable/accurate/smooth the animations will be. The less frames in the animation the more responsive the controls will feel, but accuracy will suffer especially in transitions. If melee is part of the game (which at this point doesn’t sound like it is) moving from shooting to hand to hand combat takes careful and iterative attention to make the final delivery look good, control well, and be believable and enjoyable for the player.

3 Likes

As far as this part is concerned a valid example to look at would be Ghost Recon Wildlands, which is a “military themed” third person shooter so it does a decent job with balancing animation and player responsiveness.

2 Likes

GR: Wildlands is one of those games that inspired me with this game idea. Not because I liked Wildlands, but because I liked a few parts of it but was overall sorely disappointed.

I agree, Wildlands looked amazing and the controller/animator was on point, but the shooting and aiming was, IMO, just god awful. That was the main reason I dropped it at the beta and never looked back.

But, @theANMATOR2b , thanks for the advice about animation. I am just getting together my first rig for the player character – should be done in a couple days after some experimentation with how I want to handle the modular equipment – and then I’ll be delving into animation. For this games purposes, and considering that I am learning the entire art side (modeling characters and environment, rigging, animating) from the beginning, I doubt it’s realistic for me to expect super smooth, super cool looking animations, and that is also kind of beyond the scope and point of the game. I want the controller to feel really fluid and responsive, and the animations should help convey the guerilla’s character – not necessarily be a showcase of experience and modern techniques like Horizon Zero Dawn for example.

1 Like

Woo hoo!

I haven’t done any manual fix ups to the skin weighting yet, but… he’s alive!

Once the deformations are cleaned up, I’ll be starting to learn animation because these guerilla’s are going to have a very distinctive way of moving – after all, they aren’t trained soldiers like their enemies.

1 Like

Quick render of our machine gun model with Iray.

In Ambush, the machine gun is an absolute game changer. Firefights revolve around the “gun” – if it is used well, it can multiply the killing power of a small team of fighters exponentially. But, for the players to get their hands on a machine gun, first they’ll have to defeat a machine gun team.

Note that this will not be the final model, but rather a “good enough” model for the first prototype iteration. Assets like this and our first character model work as placeholders for now, but the reason for building them from scratch rather than just using cubes is for my own learning by trial and error.

The next step for this model is to composite the multiple texture maps produced in Substance Painter into one file for optimization purposes, and then get it set up and looking good in engine.

1 Like

Some fancy rendered images of the new machine gun with a single material…

This model was made low-poly only, without a high resolution version used for normal map creation. I did it this way for speed, mostly, and also because I think given the typical distance from the camera we will have in game, most of the details wouldn’t even read.




But more importantly, here she is in engine.

Note: not a first person game, but I don’t have the character rigged to carry a gun yet.

1 Like

A revised version of the first player character. Here is a poor farmer. He don’t even got shoes.

Texturing is just beginning. The goal for this revised character was to make a simpler model so that I could focus on improving my UV layout and texture map baking skills. Well, I learned a lot of new mistakes that I can make and sprouted a few new gray hairs, but overall the UV mapping and normal/AO maps are much cleaner for this guy than for the original.

One thing I’ve learned through lots of trial and error with map baking process is this: You can’t just click buttons and eventually get things right. Because each iteration takes time to bake, you need to spend a lot of time reading and trying to understand exactly what is going on and what all the options available actually do. Don’t expect to understand normal map baking and cages and ray cast with one model, or two or three. Do expect the process to be frustrating, but just keep trying and eventually you’ll start to figure things out, even if its only enough to kind of get things to work for you even if you don’t fully understand what you are doing.

Finished game model soon to come.


Emmanuel, a farmer:
"When the soldiers first came to our village, they stole from us, and said insulting things. I was angry, but my father insisted I not say a word. For three days I was so angry that I could hardly work. Then, the soldiers returned… and they did evil things.

Anger filled me completely. I forgot everything. I only wanted to kill those men. If not for my father restraining me, I would not be alive today.

My anger – now I have learned to save it. When I am weak, it gives me new strength.

Every day, I say a prayer: let every drop of anger in my blood allow me to drive those murderous dogs from my people’s land, forever.



Next character is getting blocked out now.

The first thing I do is take the base model, which comes from the previous character, and clothe him in Marvelous Designer. So these clothes are hi-poly, while the rest is still low poly. So it’s a bit of a mixed workflow – typically I like to go low-to-high as that saves me the tedium of retopologizing, which I’m not very good at because I don’t have the patience to make sure its all perfect, but I have to get the clothes on first as everything else fits on top of them.

This will be the standard enemy Team Leader, which is, as the name suggest, the leader of our base enemy element, the fire team. The team leader will be one of the more dangerous enemies, as he carries a radio that can be used to call for reinforcements. Additionally, he uses smoke grenades that can disorient the player, allowing the enemy fire team to get close and throw frag grenades.

This guy is much slower to blockout than my farmer with overalls and nothing else. His gear will include a vietnam style US radio (right now the square on his back), an entrenching tool, a canteen and pouch, accessory pouch with smoke grenades, compass pouch, medical kit bag, a load bearing vest with magazine and accessory pouches, and I’ll probably put something on the left side to so he isn’t lopsided. Not sure what yet though.


I bought the boots, which already are textured. I hate doing shoelaces, so I let somebody else do that for me.

1 Like

Further blocking out. Once the pack frames shoulder straps are finished, it will be time to start sculpting in Zbrush.

1 Like

Now the fun part of character creation – Zbrush.

Though this part can also become a serious time sink. I find it easy to get carried away with detailing, much more than what would even be necessary for our perspective or scope of game.

What helps me is the fact that I have completed a couple characters before, so now I have an idea of what level of details read in engine, which details can be accomplished more easily during the texturing process, and what kind of details need to be accentuated in order to be noticed from the typical camera distance.


I’ve deviated from my reference images quite a bit and made this guy look almost like a caricature for a career military hardass, but he’s the team leader and I want each of the enemy types to be distinctive in order to let the player know that they aren’t just separate skins for varieties sake, but that each enemy fills a certain role and holds strategic importance.

Because I am making realistic and complex characters, which takes a good amount of time, there will only be one model for each type of enemy – for awhile but ideally I would eventually have a handful of different faces so that the player isn’t fighting the same six guys over and over, of course.


Most clothing and equipment that the soldiers carry will be available to the player to equip to their character for practical and visual purposes.

1 Like

between the other thread and my own thoughts, I was thinking about how you’re going to implement damage.

Standard hitpoints for the whole enemy? Specific locations?