SteveTech1 icon indicating copy to clipboard operation
SteveTech1 copied to clipboard

Multiplayer FPS Engine in Java

SteveTech1

Complete open source multiplayer FPS Engine for Java

Designed and Developed by Stephen Carlyle-Smith ([email protected])

SteveTech1 is a 3D multiplayer FPS framework and engine, designed to help you create games such as Team Fortress 2, Overwatch, PUBG etc.. in Java. It includes almost all the code you'll need to create your own multiplayer FPS, and uses JMonkeyEngine for the 3D. It is designed to be easily modifiable and extendable (as the example games will show). It is intended to be the Java equivalent of something like the Source engine. You will need to provide your own assets of course.

FEATURES:

  • Client prediction & lag-compensation
  • TCP and UDP for networking
  • Collision detection & simple physics
  • Projectile and hitscan weapons

GAMES MADE WITH STEVETECH1

This project comes with a fully working exampke game "Undercover Agent". I'm currently working on two others games (as of the time of writing):

  • Moonbase Assault ( https://github.com/SteveSmith16384/MoonbaseAssault )
  • Two Weeks in the Pub (Fortnite clone) ( https://github.com/SteveSmith16384/TwoWeeksInThePub )

Here's a video of Moonbase Assault:-

Moonbase Assault Gameplay

Or check out this channel of other vidoes of stuff I've done with this engine: https://www.youtube.com/watch?v=NVcFt4ehz4o&list=PLbGkfhhJ5G3_pH9tp2lH1zeAJ9Y35rQnm

GETTING STARTED

  • You are advised to look at the example game in the Tutorial project to see how to create your own simple multiplayer FPS game using SteveTech1. There is also the game Undercover Agent included, which contains more advanced features.
  • See the SteveTech1 Tutorial at https://multiplayerfpstutorial.blogspot.com/ for an actual tutorial
  • If you've never used JMonkeyEngine before, the excellent documentation can be found here: https://jmonkeyengine.github.io/wiki/jme3.html#tutorials-for-beginners

CREDITS

  • Designed and developed by Stephen Carlyle-Smith (http://twitter.com/stephencsmith, [email protected])
  • Uses JMonkeyEngine for the 3D
  • Uses Kryonet for networking.
  • TTF font loader by Adam T. Ryder ( https://1337atr.weebly.com/jttf.html )
  • For asset credits, see the relevant folder containing the asset.

LICENCES

  • The SteveTech code is licenced under MIT
  • JMonkeyEngine licence: [https://jmonkeyengine.github.io/wiki/bsd_license.html#jme-s-bsd-license]
  • Kryonet Licence: [https://raw.githubusercontent.com/EsotericSoftware/kryonet/master/license.txt]
  • Simple Physics for JME [https://bitbucket.org/SteveSmith16384/simplephysicsforjme]
  • For the asset licences, see any file in the relevant assets folder.