First Recon - Multiplayer FPS

It’s been nearly a year since I last released First Recon. Although this game has the same name, it is much different. I wanted to restart the game because the older premise I felt did not stand out enough from other titles; It turned into a more generic COD styled shooter.

First Recon is an attacker/defender style FPS where the defender’s room is randomly generated. It is quite basic at the moment, but I plan to add more content as time goes on!

Download: WEBSITE

Controls:
WSAD - Movement
Left click - Shoot
Right click - Aim
Space - Jump
G - Drop Item
E - Pick Up Item
M - Map

Theme:
The Defenders (Terrorists) control a randomly generated room. The room has 2 entrances that the Attackers (Counter-Terrorists) must use them to eliminate their target. The Attackers start off in an arsenal where they can pick their weapons and grenades. The Defenders start with pistols, but have to explore their map to see if there are any short-range guns laying around.

Screen Shots:

Future:
I plan to rewrite the generation system to allow for much more complex maps. This is mostly a proof-of-concept at the moment. There will be more guns, and eventually game-modes. The first game-mode I plan to create is a bomb-defusal where the terrorists can plant the bomb anywhere inside their building.

Closing information:
You need a graphics card capable of OpenGL 3.2 and you need Java 8. You should have a decently strong CPU 2.6 Ghz and above seems to work nicely. I’ve tested this on both Windows and Mac (not linux) and runs reasonably well. Windows has better performance (with the same hardware).

The game has a few crash bugs that I am working on fixing. Though, it never seems to crash for me; always other people. They’ll get tracked down eventually!

Also, I am aware of the jittering physics. I am not sure how to fix it at this time though!

Great concept! I just downloaded it. I can’t wait until this game is completed!!

----------------------------------------------EDIT-------------------------------------
The menus look great. One thing that should be added is when you are in-game you should be able to press the esc key and a menu should pop up allowing the player to leave the game. I had to exit the game with the task manager hahaha

I will add this, don’t worry :slight_smile: Though for the time being, you can open the console (~) and type disconnect.

Thanks for playing the game!

Released a little update.

I rewrote the animation system such that the legs and torso animations are desynced. This will allow me to easily animate the player when crouching or walking. And on that note I’ve also added a walking animation into the game.

When a player aims his weapon he now slows down. While you are slowed down, you have a walking animation.

I programmed some things to try to make the physics twitching less apparant.

I also added a disconnect menu when you press escape.

Another update tonight.

Added in crouching. Will also affect your hitbox (client and serverside). I changed the desk model to have a cubby underneath. The desks will also spawn a magnum (at random). The magnum should 1 shot headshot.

Also a bunch of crash fixes and bug fixes.

Does crouching under an area that you can only access by crouching and then standing up cause you to clip through?

nice work! I’d like to find some other players to play with it!

one feedback: I don’t like the dead corridors, because in this kind of game are game over if you found someone inside :stuck_out_tongue:

There are also grenades ?

Yah the gen definitely needs some work :stuck_out_tongue:
Though in the future I plan to have some ways the terrorists can barricade some parts of the map to change the flow of how the CT’s will breach.

Yes there are grenades. The CT’s spawn with a big wall of grenades to choose from.

Nice prototype, I can’t get a ping under 180 though, the server is too far away…
The framerate seems to be good, but it still feels kinda jittery and wrong when walking and looking around.

Are you planning on adding latency-hiding mechanisms comparable to what source does?

Are any other break in methods planned? Like walls that can be bombed away? Or getting roof access and going through windows in the ceiling?

There already is a lag compensation when shooting. It’s pretty simple. The server records a list of the last 60 positions (recorded at 60 tps). Then when someone shoots you it uses their ping and looks up the position closest to: (server time - their ping).

The ping is a little on the high side, but I believe this is due to I calculate ping as time spent sending packets from the server to the client back to the server. I think most games just use the time from server-to-client.

I do plan to add other entrance methods :slight_smile:

Awesome, I couldn’t test lag-comp, because nobody was online.
Then what i should have really asked about was physics prediction, will this be a thing?

At the moment all of the physics are entirely server-sided (with the exception of your player). The client runs the simulation just to smooth things out. At the moment I don’t see a need for the client to predict things.

Released an update.

  • Added in the riot shield
  • Added player collisions
  • Attacking side now also starts with a pistol
  • Added a new gun for the Attacking side (g36c)
  • Fixed a few client crash bugs
  • Fixed a bug on the server that would require a restart after a day
  • Fixed a bug on the server where it would stop updating the player when he has no gun in his inventory
  • Balanced some of the guns. Attacking side guns are worse at “running and gunning”.
  • Fixed getting (sometimes) disconnected on your first load into the server.

The g36c model is a temporary model. It is not owned by me.

Are you going to release the server binaries once the game ist in alpha or beta state?
I would really like to drop this on my VPS, it’s just running ts3 right now ;D

Released an update:
- Added: New Throwable item, Flares
- Added: Added walking key (Shift)
- Added: Name marker for your character in map view
- Added: Particles when shooting objects
- Added: Sounds when shooting objects
- Added: Banner Messages when game state changes (winning/losing)
- Added: Spectating on death
- Added: Proper round system. Teams scramble on start. After 3 rounds teams switch sides. After 3 rounds game restarts.
- Fixed: Jittering physics
- Fixed: Velocity f**ked on spawn
- Fixed: Aim down sights stuck when weapon dropped
- Fixed: (hopefully) Packet Loss issues
- Change: Walking sound is quieter for everyone
- Change: Moving while aiming now severly decreases accuracy
- Change: Keep your inventory at the end of the round
- Change: Teams no longer scramble between rounds

@VaTTeRGeR
Yes I’ll release the server as well :slight_smile:


Had a nice 4v4 earlier today. Was a lot of fun :slight_smile:

Another update today:

- Added:	Preperation Phase (40 seconds).
- Added:	New room-item: Couch.
- Added:	Free-Camera option while spectating.
- Added:	New console command g_uienable (toggles rendering the games UI).
- Fixed:	(hopefully) Client running out of memory due to sounds.
- Fixed:	Some more crash bugs.
- Fixed:	Players spawning in as invisible when their team changes.
- Fixed:	Teams properly scramble on the first round.
- Fixed:	Players going temporarily invisible after throwing an item.
- Change:	Extended round timer to 2:30.
- Change:	If the game failes to load properly, it will let you know.

Starting to feel more and more game-like :slight_smile:

Had some fun 2v2’s and 3v3’s today! :slight_smile:

Updates:
- Added: Customizable Controls.
- Added: Proper crash window when game fails to load.
- Added: Ambient sounds when you are inside/outside
- Added: A lot of new textures for the building.
- Added: Ability to use mousewheel to navigate inventory.
- Added: Grenade shortcut key (default: Middle Mouse).
- Added: Explosive propane tank (Can be picked up with E).
- Added: Explosion particles
- Change: Gun will automatically reload when you are out of ammo.
- Change: Slightly slowed the walking animation.
- Change: Explosions now do less indirect damage and more direct damage

Decided to make a new titlescreen :slight_smile:

Update log:
- Added: New titlescreen
- Change: Magnum takeout animation
- Change: Glock reload animation
- Change: Glock takeout animation
- Change: G36c reload animation
- Change: Walls less reflective (specular)
- Fixed: Can no longer aim when taking out a weapon
- Fixed: Ambient sounds will now turn off after disconnecting

Update:
- Added: Shadow-mapped Point lights on guns and explosions.
- Added: Blood decals stick to the walls after being shot.
- Added: Crashlog is written to file.
- Added: Simple culling for shadow-casting lights.
- Change: Changed lighting in titlescreen.
- Change: Animations now reflect what type of weapon you are holding.
- Fixed: Barrel (Propane Tank) no longer breaks when holding it and disconnecting.
- Fixed: Decals can now stack ontop of eachother.
- Fixed: Various crash fixes.

Updates for today (July 15):
- Added: Gun wobble
- Added: Simple anti-hack on server side
- Change: Glock shooting animation
- Change: Muzzle flash
- Change: Shield world animation
- Change: Decreased walking speed
- Fixed: “High Voltage” sign on door
- Fixed: Shield orientation on floor
- Fixed: Player now correctly shows walking animation while aiming and moving

Update July 16th:
- Added: New shadow-filtering technique. Only available in RenderSettings.cfg
- Fixed: Bug where double entities (or no entities) would spawn on map load
- Fixed: Networking bug. Some packets were ignored from the server. Leading to many bugs with spawning entities
- Fixed: Decreased memory usage
- Fixed: Crash bug with Alt-Enter
- Change: Rewrote shadowmapping shader. Slightly faster
- Change: Rewrote decal shader. Now supports specularity mapping

July 21st, 2017
- Added: Doors now display a message when you try to open them during the preparation phase.
- Added: Multiple rooms with doors connecting them.
- Change: Rewrote map generation system. Now supports room types.
- Change: Lights are now brighter in the building.
- Change: Made player movement tighter.
- Fixed: Double lights spawning for every light on the map.
- Fixed: Some bugs while spectating and typing.
- Fixed: Decal renderer breaking after resizing window.

July 22nd, 2017
- Added: View disorientation when colliding with the ground/jumping.
- Fixed: Packets too large not being fully read.
- Fixed: Map could spawn rooms with no doors.
- Fixed: Map could spawn doors to the outside but in non accessible areas.
- Fixed: Kick message doesn’t always pop up

Did you create all assets by yourself? What did you use? Blender? :slight_smile: