January 2013

                                   Thadoss/Dune

                                 proudly presents
 
                                  Beats of Rage
                                  Final release

                                Falcon030 version

                     #1 at Sillyventure 2012 in Gdansk/Poland


About
-----

Beats of Rage is a game for the Atari Falcon030 computer.

This is a free adaptation of the game Paintown available 
at the following address: http://paintown.sourceforge.net/

This is my first big production for my beloved computer and I'm happy
and proud to share it with all the Falcon people who still make the
dream a reality.


Requirements
------------

To run this game you need:

- An Atari Falcon030 with at least 4MB of RAM
- At least 20MB of hard disk space
- One or more of the following input devices:
  - A joystick plugged into any joystick port
  - A joypad plugged into any joypad port
  - The Falcon keyboard
- The game runs on both RGB and VGA screens

Falcon accelerator Centurbo CT2 have not been tested.
Falcon accelerator CT60 works correctly.

If you have a 4MB machine, try to free up as much memory as possible,
and remove all the accesories on the GEM desktop.

The game needs a lot of memory due to the backgrounds and characters.

Caution: You won't be able to play Beats of Rage with the player 
Maxima on a 4 MB computer.


You can also play Beats of Rage under Hatari emulator.
It works with version 1.6.2 and upper.
You may use hatari.exe in falcon mode emulation and not hatari_falcon.exe.
(The timers of the 2 emulators are different and Beats of Rage works better
with the timings of hatari.exe).


Installation
------------

Just uncompress the zip file in a folder of your harddrive and lauch the
game.

I've included 2 programs:

- B_O_RAGE.PRG: the game

- 2VBL_BUG.PRG: launch this one instead of the previous one is you run in
                VGA and you encounter a flickering problem in the
                main menu of the game.


Gameplay
--------

You're the last member of your family recently annihilated by a gang.
In order to avenge, you've decided to search and kill all the members of
the gang.
 
Your trip will drive you into many parts of the town, from the dark 
alley to the factory.


Controls
--------

The game can be played with either a joystick, a joypad or the keyboard.

   (keyboard keys)
UP          : up arrow
DOWN        : down arrow
LEFT        : left arrow
RIGHT       : right arrow
FIRE BUTTON : left shift
PAUSE       : p key
EXIT        : esc key

Joystick and Joypad controls are the common directions + fire button.
You can pause the game with the joypad PAUSE button.


Initial specifications
----------------------

My aim was to fit the game in the following specifications :
- the game must run on a standard 4 meg Falcon,
- it must run on both RGB and VGA screens,
- it must run in 320*240 to have a nice aspect, 
- it must integrate the parallax transparent scrollings,
- the sprites must keep their original size.


Background informations
-----------------------

I've written all the code in pure 68030 assembler. 
It took me 14 months to complete it.

The characters graphics are from the games paintown and Beats of Rage.
Some level backgrounds pictures are from me (level 6, 7 and 8).
The others are from the game paintown.

All the level splash screens are from me.
It's a snapshot of the beginning of the level without the characters
that is reworked under 'the gimp'.

The modules are issued from different atari/amiga demos and games.
Thanks a lot to their authors.
If someone doesn't want his module to be in my game, just write me,
and I'll remove it.

- All the sprites are hard coded in assembler.
  (I use an external program of mine to hard code them).
- 100% pure 68030 code
- All developped under Linux/Hatari

I've spent most of the development time trying to optimize the rendering
and fit the game in 4 megs.

The game contains 14 different enemies, 3 different players and 9
different levels. Each level has a specific music and splashscreen.

The animation engine uses floating point emulation code to render nice 
movements.

The game includes an internal clocktick to avoid slowness if the rendering 
uses one more VBL.

All the scene is rendered from a camera view, which allows nice movements of 
the background. I don't use it a lot in the game, but it would be possible 
to move the camera while the game runs.


Credits
-------

Falcon code and design:    Laurent Sallafranque / Thadoss
Init routs:                Dead Hackers Society Falcon Demosystem v15
Joystick/keyboard routine: Nyh/Hans Wessels
DspMod player:             Bitmaster / TCE
video save/restore:        Aura & Mugwumps
Double VBL bug in VGA:     Zerkman / Sector One
Joypad routine:            Simon Sunnyboy


Thanks:
-------

I want to thank all the Atari communauty for all the fabulous piece of
software I saw during the last 20 years.

This game is my little contribution to the Falcon game scene.

Special thanks to goes to:
- Chuck and MIC from Dune
- All the members of the Hatari development team
- Special thanks to Jon (writer of paintown) for his help on the physical 
  engine and the internal ticks clock.
- Big hello to Grey and all the people who organized the Sillyventure 2k12.
  It was a really nice party.


Future enhancements
-------------------

This is the final release.
I won't add anything more on the game.


If you find a bug
-----------------

If you find a bug while playing, just send me a mail with the following
informations:
- the level number
- the X position of your player (beginning of the level, middle, end)
- the Z position of your player (in front or in back of the level)
- how many opponents were there on the screen ? (1, more)
- a precise description of the problem 
  (was there something special (a jump, a falling, ...))

The more precise you are, the best I can reproduce and fix the problem.
If you can do a photo or a snapshot of the problem, it's better.


Version history
---------------

V0.1 - 13-Nov-11 : Initial release
V0.2 - mars 2012 : first graphical and characters
V0.3 - july 2012 : first players movements, music
V0.5 - oct. 2012 : first opponents movements
V0.6 - nov. 2012 : hall of fame added + 9 levels + some improvement
                   to the game.
V1.0 - dec. 2012 : game presented at Sillyventure 2012 (Gdansk/Poland).
                   and finished #1 :)

V1.1:

Bug fixed:
 - 2 enemies had one attack that didn't generate hit points
 - the joystick is now working
 - the jump movement is not taken into account when the player
   respawn (he was leaving the screen, and the game freezed)

New features:
 - the border should be black instead of white (not verified)
 - Better IA for the enemies: enemies walk to the player if they're too far
 - inner game timer accelerated to have a more nervous game
 - flash animation when the player hit an opponent (it looks more arcade
   like this)


V1.2: Final release

Bug fixed:
 - bad dead character flickering animation had wrong timers
 - better falling synchronisation. The character must reach the ground
   before allowing a new animation
 - the LOOP order is now correctly handled in the engine for some walking
   animations and for the new enemy
 - the throw direction is now correct
 - the VGA double VBL bug should be fixed (not tested).
 - reworked AI of the opponents for better playability
 - height of the player clipped while an opponent attacks many time the
   player while he was falling (this generated a bug in level 7)
 - many little bugs here and there

New features:
 - JOYPAG implementation. 
 - a new opponent added in levels 1, 2, 7, 8 (I let you discover him)
 - some more items to get
 - 1 life added every 25 000 points


Contact
-------

laurent.sallafranque@free.fr

Stay (H)atari forever ;-)


Private Joke
------------

Hey Chuck, you need a passport to play the game ;)

Trivia - Beats of Rage
Origins
Based on an opensource game PainTown by Jon Rafkind/Miguel Gavidia for Windows and Mac OSX.

Additional Credits
Init routs: 
Dead Hackers Society Falcon Demosystem v15

Joystick/keyboard routine: 
Nyh/Hans Wessels

DspMod player: 
Bitmaster / TCE

Video save/restore: 
Aura & Mugwumps

Double VBL bug in VGA: 
Zerkman / Sector One

Joypad routine: 
Simon Sunnyboy