Code Monkey home page Code Monkey logo

overblowngame's Introduction

OVERBLOWN

This is a split-screen multiplayer FPS with physics. Originally this was an Overwatch spoof I created as an attempt to get my kids to play one of my games, so I copied ideas from their favourite games, including Overwatch and Piggy (/Roblox). However, I've slowly added more and more game modes to it, so there's a bit of everything.

A release can be downloaded from https://stephensmith.itch.io/overblown

Gameplay video: https://www.youtube.com/watch?v=3LQdwPbTgmQ

For further instructions, see the download page at https://stephensmith.itch.io/overblown

Features

  • Multiple heroes with different abilities and ultimates.
  • Multiple game modes
  • Multiple maps

Controls

Mouse/keyboard

  • W, A, S, D - Forwards, backwards, strafe left, strafe right
  • LMB - Shoot
  • RMB - Secondary ability
  • Space - Jump
  • R - Reload
  • U - Ultimate
  • F1 - Toggle full-screen
  • F2 - Toggle windowed full-screen (useful for recording video).
  • Esc - Exit

Tested with PS4 controllers

  • R1 - Shoot
  • L1 - Secondary Ability
  • X - Jump
  • Square - Reload
  • Triangle - Ultimate

Modifying the Game

You can modify a few game settings by editing the file "game.cfg".

Map Editor

The map editor is still in development, and will only work properly by running the game from source (so the data files can be written back).

To edit the available texures, manually edit the map json file.

Map Editor Controls

  • 1 - Save map
  • 2 - "Settle" position of selected entity
  • 3 - Show our position
  • 4 - Select All Blocks mode
  • 5 - Show physics debug
  • 8 - Add dynamic model - You need to edit the code to specify the filename
  • 9 - Add static model - You need to edit the code to specify the filename
  • 0 - Reset rotation
  • B - Size mode
  • C - Clone current block
  • G - Enable physics/gravity
  • M - Mass mode - Use arrow keys to change mass
  • N - New block - then bress B, C or E for Box, Cylinder or Sphere.
  • P - Position Mode
  • R - Rotation Mode
  • T - Texture mode
  • U - Undo move
  • X - Remove block - press shift to confirm!
  • Arrows & Pg Up/Pg Dn: Adjust model size/position/rotation/mass/texture depending on mode
  • Shift - only adjust one side of object
  • Ctrl - Move in very small increments

Notes for other Developers

  • Development branch is the cutting edge but possibly buggy/broken. Master is the most stable but out of date.
  • Gradle is a real pain to work with. However, if you have trouble loading this project, I used Gradle v4.10.3.
  • The file Settings.java contains various settings that determine what game mode the game starts in.

Become a Patron!

Well, it's worth a try: https://www.patreon.com/bePatron?u=3406199

Licence

This project uses the MIT licence. See LICENCE.txt.

Credits

Assets Credits

overblowngame's People

Contributors

stevesmith16384 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

2gud4u

overblowngame's Issues

Game crashes after "Choose your heros!"

Steps to reproduce the error:

  1. Open jaroverblown-1.1.jar from itch.io
  2. Press space
  3. Click anywhere with the mouse
  4. Press space three times

Console log:

Exception in thread "LWJGL Application" java.lang.IllegalArgumentException: couldn't compile shader: Fragment shader:
0:15(2): error: initializer of type int cannot be assigned to variable of type float
	at com.scs.splitscreenfps.game.decals.ShadedGroupStrategy.createDefaultShader(ShadedGroupStrategy.java:201)
	at com.scs.splitscreenfps.game.decals.ShadedGroupStrategy.<init>(ShadedGroupStrategy.java:118)
	at com.scs.splitscreenfps.game.decals.ShadedGroupStrategy.<init>(ShadedGroupStrategy.java:105)
	at com.scs.splitscreenfps.game.ViewportData.<init>(ViewportData.java:33)
	at com.scs.splitscreenfps.game.Game.<init>(Game.java:168)
	at com.scs.splitscreenfps.pregame.SelectHeroModule.startGame(SelectHeroModule.java:260)
	at com.scs.splitscreenfps.pregame.SelectHeroModule.render(SelectHeroModule.java:161)
	at com.scs.splitscreenfps.BillBoardFPS_Main.render(BillBoardFPS_Main.java:69)
	at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:233)
	at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:128)

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.