In this game I was trying to duplicate some features from “Commandos” game. I have implemented basic movements, such as walking, running crouching and prone. Firing also can be done with these postures. Both pistol and refiles are available. Knife attack and punching attack also implemented. Punch will not kill the enemy, but enemy will be unconscious when hit by punch. Placing mins, remote control bombs, timing bombs also implemented. Throwing grenade, throwing stones to distract enemies also implemented here. Player can carried dead enemies and drop their bodies where he wants. Player ladder climbing also implemented (both ways up and down).

NPC can detect player when player in certain distance, if player in prone posture NPC need to come closer than player stand posture to detect player. When detect the player NPC will fire until the player dead. Once player is able to escape from the NPC’s view, NPC will run to last sight position of the player and do a search. If NPC does not find anything it will return to his station or continue the patrol. Once NPC detect the dead body of a soldier it will run to the nearest alarm on the area. When alarm triggered all solders will change their view angles and switch to running mode. NPC’s can also detect foot prints. Once they sees enough footprints of the player it will search for the intruder. More and more foot prints will leads NPC to run to the alarm. If one NPC fires the gun, gun sound can be here to near by other NPCs.

Player and enemy
NPC field of view
NPC field of view

Light green area will detect players when standing up, but prone. Dark green area will detect either player stands or prone. Red circle area detects player foot steps when player running inside this red circle.

Player stand, crouch and prone postures

Multiple players characters can be controlled. Only one at a time in this stage. Each character can have different types of inventory. In this image the 2nd player character was selected. He can not place bombs but player 1 can do all actions.

By OneZero