Skip to content

bsummer4/cuffs

Repository files navigation

/**
@mainpage Fistacuffs
@author Chris Craig, John Hoare, Daniel Loftis, Ben Summers

@section Introduction

Hello, and welcome to the Doxygen page for the Fistacuffs project. 

First off, for a high-level understand of the project's design, take a look at
the appropriate module. 
  - @ref Switchbox Explains the usage of the switchbox program.
  - @ref Game explains the high-level running of our game. 

Our game has a set of namespaces, the best way to navigate through
is to probably look at each namespace.

The Noteable namespaces that our game uses in no particular order is:
  -# @ref game - @copybrief game
  -# @ref physics - @copybrief physics
  -# @ref vectors - @copybrief vectors
  -# @ref sdl - @copybrief sdl
  -# @ref cmb - @copybrief cmb

The code is very modular, so to understand the ordering of how everything
goes together, look at @ref Pipeline

@section Media

Here we have a set of screen captures and videos from our game

@subsection Launcher
@image html launcher.png

@subsection overLobby Overworld Game Lobby
@image html lobby.png

@subsection game_battle Game Battle
@image html game1.png
@image html game2.png

Video of gameplay: http://www.youtube.com/watch?v=D9gdwJg_pa0

@section Building
You only need to run the first command if you've checked out this code
from a repository.  Tarball releases will have had that done for you
already.

@verbatim
    $ ./Bootstrap  # Setup the autotools build
    $ ./configure  # Generate the makefiles
    $ make         # Perform the build
    $ make install # Install the binarys to your system (this currently does not work 100% correctly)
@endverbatim

@section dirs Files and Directories
- /Bootstrap -- Shell script for generating the autotools build.
- /doc -- All Documentation
- /switchbox -- A tool for group communication over the network. @see Switchbox
- /game -- The game itself uses switchbox for networking. @see Game

@section Prerequisites

Here are the Ubuntu packages we are using:

- libsdl1.2debian
- libsdl1.2-dev
- libsdl-image1.2
- libsdl-image1.2-dev
- libsdl-mixer1.2
- libsdl-mixer1.2-dev
- libsdl-gfx1.2-4
- libsdl-gfx1.2-dev
- libboost-dev
- libboost-thread1.37.0
- python-wxgtk2.8
- swig

@subsection Building Doxygen Documentation
The output is generated in ./doc/doxygen, and the docs are available
online at http://www.cs.utk.edu/~jhoare/cs594ng/doxygen

@verbatim
    $ make doxygen-doc
@endverbatim

@section Coding Style
C source files are .c and .h, c++ source files are .c++ and .h++.
Style rules for c++ and c are codified by using code beautifiers.
Here are the options we use:

@verbatim
    astyle -Uas4 # for c++ code
    indent -npsl -i4 -npcs -bli0 -brs -brf -br -nut # for pure c code
@endverbatim

We've actually drifted away from this a bit.  We've been using this
coding style (Horrors!):

@verbatim
    int main(int num_args, char **args) {
       FORII (num_args) {
         cerr << args[ii];
         if (string(args[ii]) == "omgomgomg")
           throw runtime_error("omgomgomg"); }}
@endverbatim
**/

About

A simple 2D game; think real-time worms.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published