Welcome to battle-rage’s documentation!

Contents:

battle-rage notice

Author:Brüggemann Eddie <mrcyberfighter@gmail.com>
Language:C++
Release:October 15, 2016
Copyright:Brüggemann Eddie 2016 (C) GPLv3.

battle-rage: the battle rages on !

_images/battle-rage_presentation_screen.png

battle-rage is a fighting game providing 16 different fighters,

with all having different properties and sort of kicks:

playable with joystick(s),

and you can play: against the computer like another player and let the computer fight against the computer.

Warning

You must have a joystick to control battle-rage.

And the keyboard is a little bit used: per example for pausing the game you must press the Space Bar.

battle-rage different fighters properties

battle-rage provide a choice of 16 different fighters which all have some different values

for the following listed properties:

Some of the fighters are equipped with weapons from different kind: a baton, a bag, a hand fan,...

and some others does fight entirely with the feets and the hands.

battle-rage: the game

The presentation screen

battle-rage starts with the presentation screen after checking a joystick is right plugged.

Note

The first time you launch battle-rage or every time you plug a new joystick model,

you must configure the joystick.

A joystick configuration screen will appear to do so.


Pressing ESCAPE in the presentation window is the only way to quit the game.

Else if you press ESCAPE you will return to the presentation screen.


You can navigate through the items using the directional pad from your joystick,

and confirm by pressing a joystick button or ENTER into the menus and to quit the interludes.

The joystick configuration screen

_images/joystick_battle-rage.png

At first you will have to press the button corresponding to the blinking button on the screen.

  • A
  • B
  • X
  • Y

And then the same with the directional pad in every directions:

  • Right.
  • Left.
  • Up.
  • Down.

The main menu

The main menu is composed from following items:

  • Play
    • Player vs Computer.
    • Player vs Player.
    • Computer vs Computer.
  • Configure game.
  • Reconfigure joystick.
  • Read Notice.
note:Selecting directly Play or Player vs Computer is the same.

Configure game

The configure game menu is composed from following settable items:

  • Game difficulty: EASY / NORMAL / HARD / MISC.
  • Game speed: SLOW / NORMAL / FAST.
  • Game sounds: ON / OFF.
  • Game music: ON / OFF.
  • Save and Exit.
  • Exit without saving.
difficulty:The MISC mode set all properties from all Fighters to the same value.

Reconfigure joystick

Will permit you to reconfigure a joystick if you have made an error during the primary configuration.

Read notice

Will launch this notice into your web browser.

The choose fighter screen

Here you can select a fighter as:

  • Player.
  • Adversary.
  • Computer player.

With the arrows of the directional pad of your joystick.

Pressing RETURN (Enter) will activate the random fighter selection.

Fighting

All joystick combinations are explain here and you can pause the game by pressing the SPACE bar.

battle-rage fighters

All fighters have some properties:

  • Speed
  • Aggressiveness
  • Force
  • Resistance

Speed

The speed indicate the speed the fighter moves forward or backward.

And how much (speed / 3.75) the fighter advance in direction to the adversary when he give a kick.

note:The speed values are comprise between: [10-15].

Aggressiveness

This property is only take into account when the fighter is the computer.

And indicate how aggresive the fighter is.

note:The aggressiveness value is a percent.

Force

The force indicate how much damage the fighter inflict to his adversary minus the adversary resistance.

note:The fighter force is comprise between [0.80-1.30].

Resistance

The fighter resistance indicate how much life points the fighter he will lose when he receive a kick.

note:The resistance value is comprise between: [0.75-1.25].

Note

When the fighter kick the ass of his adversary and this one is not protected

The life points from the adversary are reduce in this manner:

([Value of the kick] × [force]) - ([Resistance common value] × [resistance]) ;

battle-rage fighting

Introduction:

All fighters have a common set of kicks in relationship

to the joystick button with or without a direction button, on the directional pad from your joystick:

_images/joystick_battle-rage.png
  • The back hand from your fighter is activate by pressing the A button from the joystick.
  • The front hand from your fighter is activate by pressing the X button from the joystick.
  • The front leg from your fighter is activate by pressing the B button from the joystick.
  • The back leg from your fighter is activate by pressing the Y button from the joystick.
note:

So you get the following differents combinations:

Simple combinations:

  • Only A: a back hand kick.
  • Only X: a front hand kick.
  • Only B: a front leg kick.
  • Only Y: a front leg kick.
  • Only : the fighter moves in direction right.
  • Only : the fighter moves in direction left.
  • Only : the fighter goes down: on his knees.
note:The is not used for jumping: some combination makes the fighter jumping.

Direction + Button combinations:

back hand kicks:

  • + A: a big back hand kick.
  • + A: protected in standing.
  • + A: a back hand uppercut.
  • + A: protected on knees.

front hand kicks:

  • + X: a big front hand kick.
  • + X: a returned front hand kick.
  • + X: a front hand uppercut.
  • + X: a front hand kick to knees.

front foot kicks:

  • + B: a front foot kick to body.
  • + B: a returned front foot kick.
  • + B: a front foot kick to head.
  • + B: a front foot kick to knees.

back foot kicks:

  • + Y: a back foot kick to body.
  • + Y: a returned back foot kick.
  • + Y: a back foot kick to head.
  • + Y: a back foot kick to knees.

Warning

because nothing is perfect it can happen that a combination don’t really

represent what it should like explain above.

But I guarantee that it really doesn’t happen often and that the replacement is near from your expecting.

And some kicks have fallbacks: this mean that 2 differents combination can give the same kick: not often.

All according the fighter.

Joystick(s) logic of battle-rage

The joystick plan:


_images/joystick_battle-rage.png

battle-rage joystick usage

For playing battle-rage you only need the the 4 buttons A, B, Y and Y and a directional pad (stick).

The button at the top of the joystick (RF, RB, LF, LB) aren’t used.

You can use the digital stick (directional pad), which is recommended, as well as the analogical stick.

warning:I can’t guarantee you that you can use twice stick at the same time once your joystick configured.

battle-rage and his joystick rules

battle-rage has some rules for playing with the joystick.

According to the fact that you have 2 hands and 2 foots (exclude for the physic handicap).

battle-rage follow the same logic for the joystick buttons logic:

  • The back hand from your fighter is activate by pressing the A button from the joystick.
  • The front hand from your fighter is activate by pressing the X button from the joystick.
  • The front foot from your fighter is activate by pressing the B button from the joystick.
  • The back foot from your fighter is activate by pressing the Y button from the joystick.
note:You can sea that like a cross which X axis is are the foots and the Y axis the hands.

You can use combinations by adding a direction from the directional keypad to the used button.

This will generate different kicks for every combination.

Finally all combination make sens, per example:

Pressing the Up arrow and an hand button will produce an uppercut,

and pressing the :Back arrow and a foot kick will produce a return foot kick.

Warning

because nothing is perfect it can happen that a combination don’t really

represent what it should like explain above.

But I guarantee that it really doesn’t happen often and that the replacement is near from your expecting.

And some kicks have fallbacks: this mean that 2 differents combination can give the same kick: not often.

All according the fighter.

note:Because it’s easier to press a button instead of using a combination the combinations inflict more damage.

Note

This logic is follow for every joystick model since you have to configure your joystick first.

But you can reconfigure your joystick if you make a mistake during the configuration phase.

The different joysticks models handling

battle-rage doesn’t claim to take in charge every different joystick model of the world but:

Note

battle-rage does the best for taking in charge the most of different joystick models.

And you must pass through a joystick configuration phase, which is oblige,

every time you plug a new joystick model.

Not every time you plug your(s) joystick to play the game !

warning:To know that every time you plug a new joystick model you will have to configure it.

That’s better for all: the game logic, you, conversation about battle rage,...

Because it permit to set a precise combination set, not in according differents joysticks models mess, but according to the game.

Advice:

You must better plug the joystick before starting the game.

Else you will be notify about the problem and be invited to plug a joystick before really starting the game.

And if you plan to play with 2 users plug 2 joystick before gaming.

But you if you don’t have plug 2 joysticks you will be invited to do so...

Sorry but my joystick handler doesn’t handle the plug-in plug-off of joysticks,

so the free hot plug of joystick(s) is not permit with battle-rage.

If the joystick configuration fail.

If you have bad luck and your joystick model is really not compatible with battle rage, havoc.

Else, if you made an error, you can try to reconfigure your joystick again by using the configure joystick menu item.

note:Sea the technical note for further informations.

Technical notes about joystick handle.

Internally battle-rage highly suppose that the buttons A, B, X and Y have all a value comprise between included [0-3] like the most joysticks does.

Internally battle-rage suppose that directional pad is implemented as 2 axis (B and Y for the X axis and A and X for the Y axis).

But you can predict nor the SDL2: if an axis number will be the X or the Y but most common joystick use 0 for X and 1 for Y...

But the sticks: analogical and digital are taking in charge, because with battle-rage you must configure you joystick the first time you plug it.

And the big problem is that some joystick doesn’t respect at all this rules.

I can only test this values which are right for my test joysticks (2 joysticks which works differently).

So if your joystick work otherwise than with this values for this set of buttons or axis it won’t work at all !

This fact is coming from that I use an Input_Handler written by Shaun Mitchell, for his book SDL Game Development (june 2013) [Packt Publishing].

I enhance this Input_Handler to take in charge the most of joystick possible: The most common.

Even if the base joystick for Shaun Mitchell (an X Box 360 joystick) won’t work with battle rage because of the fail of one axe.

But you can play battle-rage with an X Box 360 joystick but the Y axis won’t work !

note:Great thanks to Shaun Mitchell for his book and code writing and his code.

Images of the fighters from battle-rage

Fuuma

_images/Fuuma.png

Geese Howard

_images/Geese_Howard.png

Hanzo

_images/Hanzo.png

Hotaru Futaba

_images/Hotaru_Futaba.png

Iori Yagami

_images/Iori_Yagami.png

Kim Kaphwan

_images/Kim_Kaphwan.png

Kisarah Westfield

_images/Kisarah_Westfield.png

K

_images/K.png

Kyo Kusanagi

_images/Kyo_Kusanagi.png

Lee Pai Long

_images/Lee_Pai_Long.png

Mai Shiranui

_images/Mai_Shiranui.png

Mr Big

_images/Mr_Big.png

Mr Karate

_images/Mr_Karate.png

Robert Garcia

_images/Robert_Garcia.png

Rock Howard

_images/Rock_Howard.png

Terry Bogard

_images/Terry_Bogard.png

battle-rage credits

Resources

Images

The fighters images are issue from the game:

  • NeoGeo Battle Coliseum.
note:All original fighters are available in the index from my website <http://open-source-projects.net>

The bridge backgroud image is issue from the

shun-li stage of the game street fighter.

For the landscapes backgrounds:

_images/by_cyrus_annihilator.png

Sounds

For the voices thanks to:

Male voice:

Jeffrey M. Smith

<http://fiverr.com/jeffreymsmith>

Female voice:

Giselle

<http://fiverr.com/easymedia>

Others

For the others resources their all under free licenses found on severals sprites websites.

Credits

Thanks to my mother, my family and to the doctors.

Stay away from drugs !

Drugs destroy your brain and your life.

Indices and tables