About the Arcade Cabinet

The RPI Game Development Club runs an arcade cabinet in the Union Games Room.  The arcade cabinet features a variety of games, many of which were created by our members.

Developing for the Arcade Cabinet

It’s easy to develop your own game to run on the GDC Arcade Cabinet.  You can develop your game using whatever tools you would like, provided that the end result can run on Windows XP, uses keyboard controls, and isn’t overly resource-intensive.  When it’s playable, just bring it to a weekly GDC meeting and demo it.  If it’s approved, a club officer will install the game on the arcade cabinet.

Keyboard Control Mappings

Player 1 Player 2
Up W I
Down S K
Left A J
Right D L
Start 5 6
Bumper F G
Upper-Left 1 7
Upper-Middle 2 8
Upper-Right 3 9
Bottom-Left Z B
Bottom-Middle X N
Bottom-Right C M

The control sticks are 8-directional; diagonals are reported as simultaneous presses of two directions. For example, pushing up and left on the 1P control stick will cause both W and A to be pressed simultaneously.

Game Requirements

In order to be accepted and installed on the arcade machine, a game must fit some standard technical and usability requirements before approval.  This ensures a consistent user experience across all games for users of the arcade machine.

Technical Requirements

  • Resolution must not exceed 1024 x 768. Full-screen required.
  • Compatible game files currently include .exe and .py files. We can work on different file types; talk with us at a meeting about any suggestions.

Main Menu

The game must have a visible exit method.  If assigning arbitrary buttons, the bumper buttons should be designated for quitting.  Start should start the game.

Pause

During gameplay, the start key must pause the game. From the pause menu, there must be a way to exit out of the game.

XML File

An XML file is required for the cabinet to load your game.  The .xml file should be named similarly to the title of your game.  For example, if your game is named “Egypt vs. Greece: Battle of the Gods”, then your .xml file should be named egypt.xml.

Required Tags

  • <title> – Title of the game.
  • <author> – Contributor to the game. One per person.
  • <contact> – Email address to developer.
  • <location> – Path to game-starting file.
  • <background> – Path to splash screen for game-selection menu.
  • <minPlayers> – Minimum players to a game.
  • <maxPlayers> – Maximum players to a game.

Sample

<?xml version="1.1" encoding="UTF-8"?>
<!DOCTYPE Game SYSTEM "GDCGame.dtd">
<game>
  <title>Egypt vs. Greece: Battle of the Gods</title>
  <author>Chris Czyzewski</author>
  <author>Randy Sabella</author>
  <author>Rob Morris</author>
  <author>Eric Collins</author>
  <contact>czyzec@rpi.edu</contact>
  <location>Egypt/main.py</location>
  <background>Egypt/splash.png</background>
  <minPlayers>1</minPlayers>
  <maxPlayers>2</maxPlayers>
</game>