A simple networked dungeon crawler
Switch branches/tags
Nothing to show
Clone or download


ROG - A simple networked dungeon crawler

ROG is currently in a pre-alpha stage, and isn't ready for real
players yet, only developers.


(ROG may work with different or older versions, but these are what it
is being developed and tested on)

Ruby 1.9.1 (http://ruby-lang.org/ )
Rubygame 2.6.4 (http://rubygame.org/ )
HTTParty 0.5.2 (http://httparty.rubyforge.org/ )
Sinatra 1.0 (http://sinatrarb.com/ )
Thin 1.2.7 (http://code.macournoyer.com/thin/ )


### Starting the Server ###

    ruby server.rb

### Running the Game ###

    ruby game.rb

The server might not always be running locally, so use the --ip flag
to change the address of the server that's being used:
   ruby game.rb --ip

Replace "" with the ip address and "1234" with the port number
the server is listening on.

If you're a developer, and want to skip the player creation screen,
run the game with this command:
    ruby game.rb --skip

### Controls ###

W - Moves player towards the cursor
M - Opens/Closes the Map

### This game sucks! There's nothing to do! ###

Of course it sucks! This game is "pre-alpha", meaning it's nowhere
near complete yet. We're trying hard to get this to a truely playable
state, but it takes time. Impatient? You can jump in and help speed
things along! See the "Contributing" section below.

Developer Documentation

### Files ###

Everything *should* be pretty obviously named, but here's the current
file listing for clarification:

     game.rb - The game client is here (it loads most of its pieces
     	       from lib/)
     server.rb - This is where the server code lives     
     lib/engine.rb - The game engine, very home made, mostly solid but it
     	       	 still has some rough edges
     lib/dungeon.rb - Contains the dungeon generation code
     lib/map.rb - Contains the minimap drawing code
     lib/setup.rb - Code for the Setup game state is here, you see
     		    this code running when you launch the game and
		    configure your player.
     lib/ingame.rb - The code for the InGame state is here, this code 
     		     is what's running most of the time
     media/FreeSans.ttf - Our font file, this may change later
     scratch - This file is for code that we may want to keep for
     	       later, but it didn't get commited, or was removed at
     	       some point.

### Game Design ###

Keep it simple! We want this to be simple and fun for both players
and developers.

It's designed to be run on a local network, so no dedicated servers,
and no playing with people accross the world.

Some actual design documents *may* be going online soon, but as this
is still pre-alpha, we don't want to get too carried away with design
before we get some more of the base implementation done.

### Contributing ###

We're on github (http://github.com/tylerc/rog ) so please just fork us
and get hacking. Get hacking on what, you ask? Many things!:

    * Fix bugs in the issue tracker
      (http://github.com/tylerc/rog/issues )
    * File bugs in the issue tracker
    * Write documentation
    * Implement the design docs (when they're finally put up)
    * Scratch your own itch!

When you want us to integrate your changes, just send
us a pull request via github.


Tyler Church
Nicholas Fernando
Michael Jerrick


Copyright © 2010 Tyler Church

This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.

Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must
not claim that you wrote the original software. If you use this
software in a product, an acknowledgement in the product documentation
would be appreciated but is not required.

2. Altered source versions must be plainly marked as such, and must
not be misrepresented as being the original software.

3. This notice may not be removed or altered from any source