Skip to content
Alright, let's try this again. A game, a simple game written in Java with Swing.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Lock Out Protocol

CodeFactor GitHub commit activity GitHub repo size GitHub contributors

Lock Out Protocol is a 2D-zombie survival game, played from a top-down perspective. Lock Out Protocol is a joint effort of programming, designing, and planning between Ronald Abrams, Rinty Chowdhury, and Joshua Crotts for CSC - 340: Software Engineering at the University of North Carolina at Greensboro. The underlying engine stems from one of Joshua's earlier projects (in conjunction with Andrew Matzureff) known as the Standards library. For this project, Standards is used as an abstract concept and tool, since the predominant goal of this project is to develop an application, not an engine for said application. More specifically, there are a plethra of concepts, optimizations, and miscellaneous ideas that go into crafting a game engine. As such, one semester is not nearly enough time to make a proper game, along with its complex engine.


The following .jar files are required for building the project. These should be placed in a folder in the root of your development project called libraries/.

  1. Apache Commons Math 3.6.1
  2. JBCrypt-0.4
  3. JSON 2014-01-07
  4. MySQL Connector Bin
  5. MySQL Socket Factory Connector
  6. Standards

Rebuilding Lock Out Protocol

To rebuild the code in NetBeans 8.2, Java 8 is required (either Oracle, Amazon Corretto, or OpenJDK). Any arbitrary flavor of Java 8 is most likely acceptable.

Create a new project in any IDE, then clone the repository inside of the src/ folder of the aforesaid project. At this point, all files should be present and available to compile and run. For any of the above dependencies, make a folder called libraries/ in the root of the project, download those .jars, and place them in there. You may have to modify your IDE's project to account for compile-time libraries, so be sure to do that, so the IDE knows they exist.

Reporting Bugs

See the Issues Tab.

Version History

The master branch encompasses significant development changes in the project, whereas the three other branches house various experimentation and states of progression. These branch are constantly evolving. Rarely (whenever it is best), the master branch is updated to mimic one of these three branches.

You can’t perform that action at this time.