Complete open source multiplayer FPS Engine for Java
Designed and Developed by Stephen Carlyle-Smith (stephen.carlylesmith@googlemail.com)
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.
- Client prediction & lag-compensation
- TCP and UDP for networking
- Collision detection & simple physics
- Projectile and hitscan weapons
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:-
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
- 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
- Designed and developed by Stephen Carlyle-Smith (http://twitter.com/stephencsmith, stephen.carlylesmith@googlemail.com)
- 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.
- The SteveTech code is licenced under MIT
- JMonkeyEngine licence: [https://jmonkeyengine.github.io/wiki/bsd_license.html#jme-s-bsd-license]
- Kryonet Licence: [https://github.com/raw/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.