Skip to content

ololx/plain-old-retro-shooter

Repository files navigation

plain old retro shooter

The Plain Old Retro Shooter is a 2.5D FPS game engine based on the raycasting technology.

codeql_analysis maven_deploy

status version oss lifecycle latest release date last commit

license Contributor Covenant


πŸ“‡ Table of Contents

πŸ“– About

The Plain Old Retro Shooter is a 2.5D FPS game engine based on the raycasting technology.

Motivation

Game engines are far ahead. However, the good old tube shooters in pseudo-3D are very interesting to this day.

πŸ“Έ Demo

- This GIF demonstraits the Damage feature.

- This GIF demonstraits the fog effect and NPC movement features.

- This GIF demonstraits the one small scene with enemies, shooting and player moving in 1024x600 render resolution on a 5k resolution of monitor (58-76 fps).

- This GIF demonstraits the multiplayer scene with 2 players.

🎚 Features

  • The MVP of a simple 2.5D fps engine based on raycasting algorithm;

To Do

  • For more information on an upcoming development, please read the todo list.

Changelog

  • For more information on a releases, a features and a changes, please read the changelog notes.

🚦 Getting Started

These instructions allow to get a copy of this project and run it on a local machine.

Prerequisites

Before using it, make sure that follows software are installed on the local machine:

If any of the listed software is not installed, then it can be installed by instruction as described below.

  1. Oracle JDK 9+

    • Install Oracle JDK 9+ according to instructions from an official instruction.

Installing

In order to install it is quite simple to clone or download this repository.

Cloning

For the cloning this repository to a local machine, just use the follows link:

https://github.com/ololx/plain-old-retro-shooter.git

Using

To use it is necessary to:

  1. Build the project.

  2. Launch the instance .jar without args (for single mode) or with the follows args:

    For the service instance running

"ip address" port

For the client instance running

port

πŸ›  Built With

Oracle JDK - java development kit;

πŸŽ‰ Contributing

If you want to contribute this project - you are welcome and have fun. Please visit the contributing section for details on this code of conduct, and the process for submitting pull requests.

πŸ“ Code of Conduct

In order to ensure that all is welcoming, please review and abide by the code of conduct.

πŸ—’ Versioning

For the versioning is used Semantic Versioning. For the versions available, see the changelog or the tags on this repository.

©️ Authors

  • Alexander A. Kropotin - Initial work - ololx.

πŸ” Licensing

This project is licensed under the MIT license - see the lisence document for details.