January 2019 Week #3

End of yet another wave of exams, and in return a lot of work on NPCs plus some big decisions that are gonna affect the game a lot in the long run. We made some models for city-building.


ADITYA CHANDRA (Lead Developer)

I started out by dividing the equipment into categories... so now you can like no longer 'equip' a heal-item or 'use' an equipment, so now it takes it all into account. That marks the equipment system basically almost done.

Then I got right to the NPCs.

For now I made friendlies blue and enemies orange (the player is a different shade of blue). Textures coming soon. I incorporated almost all the animations!

Firstly they have many 'states' like default, following, attacking, fleeing, driving, etc.. The default state is where they do what they've been specified to do in a different 'deafult state' enum: idle, patrol (around given waypoints) and wander (aimlessly). For patrol, you can specify the position of the waypoints and the agent's speed.


Then I gave them some eyesight. Their field-of-view is determined by calculating dot products (a bit of algebra here). They get angry when they see their enemies and switch to 'attacking'. I gave them guns (VFX and SFX pending) so that they can aim and fire. At this stage NPCs could fight each other as well as the player.

I also added the element where NPCs would flee from their enemies if their 'personality' is not set to 'badass'.


Then I had the most wonderful idea: the player should be able to tell his ally NPCs where to go, and also attack specific enemies! I made a 'Commander' script for the player, and now if you have any number of friendlies following you (you look at them and press [F] to get them to follow you), and if you press [G] looking at some point of the ground, all your follower NPCs will navigate to that position (so you could use this to get them to stand on a dynamite). Also if you look at an enemy and press [G], all your follower NPCs will set that enemy NPC as their target, and go on to kill him. The even more awesome thing here is the targeted NPC is not required to be an enemy... it could also be a civilian or a police guy or basically anything except a friendly.


And then I wanted the NPCs to drive cars... imagine them driving an armoured jeep while we stand at the back pointing a huge MG at every square-inch of the enemy outposts, or vice-versa. So first I went ahead and made it possible for the player to enter the car as passenger.


I then made a CarComputerController for the car which uses a nav-mesh agent as well, and after a lot of refactoring with the car scripts, I finally had the NPCs driving cars. This one still has a lot of bugs to fix and a lot of additional work to do (for instance the NPCs can't exit the car or enter it as passengers right now).



The playtest recording below sums it up:


DIWANGSHU KAKOTY (3D Artist)

I have been continuing my work on making more and more models so that we're ready when we get to the stage of making the prototype city, which isn't that far from now, it looks like.

I made a variety of fences, barricades and boundaries; here are some of 'em:





I also made a mailbox. This one was fun to make, and I thought if placed here and there it'll add more detail to our city and make everything look nicer.


Right now I'm making a low-poly bolt-action single-shot rifle and some blood decals.

(Weapon Blueprint)

(Preview)

That's it for these weeks.

DECISIONS

The development team made some decisions for the game and we'd like to share them with you right now to keep you informed.

MULTIPLAYER DROPPED
We can't afford multiplayer with the instability of the current environment and our limited skills and resources when it comes to networking. On top of that uNet is being deprecated and the stable new solutions won't be here until April or May (Unity 2019.1 release). The game will now be developed as a single-player video game.

FIRST-PERSON MODE
We don't like third-person mode. We think first-person is ways better and provides a completely different and more exciting experience. Aditya will be developing a first-person controller soon but we will keep the third-person model for things like death, ragdoll states, etc..


That was it for the last weeks! This week we'll work some more on the NPCs, make them more intelligent, and teach them to drive cars more properly... until next week, cheers!

Comments