GithubHelp home page GithubHelp logo

tonysparks / seventh Goto Github PK

View Code? Open in Web Editor NEW
52.0 9.0 30.0 25.85 MB

A top down 2D Shooter game

License: GNU General Public License v2.0

Java 100.00%
game java multiplayer shooter top-down world-war2 libgdx

seventh's Introduction

seventh

A top down 2D Shooter game I've been working on in my spare time. This repository only includes the source.

Download

You can download the BETA version of the game here

Videos/Screenshots

Seventh Gameplay Video alt text alt text alt text

Features

  • Three game modes (Team Death Match, Objective Based, Capture the Flag)
  • 10 different weapons
  • Melee
  • Grenades
  • Bots
  • Tanks
  • Destructable terrain
  • Multiplayer and Single player (Single player vs. Bots)
  • Server side and client side scripting

TODO

  • Update all graphics to WWII
  • Replace temporary sounds
  • Create more maps
  • New game types (custom)
  • More Vehicles
  • Update HUD
  • Tweak game design
  • Add more intelligence to Bots

Technical Stuff

  • Custom built reliable messaging protocol over UDP
    • Handles out of order packets
    • Can flag messages as 'reliable' which will guarantee delivery
    • Very fast, was able to play with 8 players with the server hosted in NYC and players from Seattle, Milwaukee, Pittsburg and San Diego all with <100ms ping
  • Client/Server model. The client is fairly dumb, it just sends player input to the server and does some minor interpolation. The server is authorative and handles all of the game logic.
  • Can host a dedicated server (either a command line only option, or GUI option)
  • Can issue remote commands from client to server to administer server (similar to Quake rcon)
  • Libgdx is used for client rendering and input handling
  • SoundSystem is used for 3d sound
  • Tiled is used for the map editor
  • Leola for scripting

Build from Source

  • Download the source code from github:
  • Download the game assets from here
  • Open the seventh.zip file and copy the seventh/assets folder into your project folder
    • folder structure should look like this:
    seventh/
      assets/
      lib/
      src/
    
  • Compile the project by (TODO: convert to Maven project to make this easier):
  • Eclipse:
    • Convert to Java project
    • Add jars in lib folder to classpath

Run from Source

  • Run the game by:
  • Windows:
java -cp ./lib/*;./lib/libgdx/*;./bin/ -Djava.library.path="./lib/natives" -Xmx1g seventh.ClientMain
  • Mac/Linux/Unix:
java -cp ./lib/*:./lib/libgdx/*:./bin/ -Djava.library.path="./lib/natives" -Xmx1g seventh.ClientMain

More to come!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.