OpenBOR Manual
From Beats Of Rage
2JAimu Thanks a lot for the article post.Really looking forward to read more. Much obliged.
Thanks for sharing, this is a fantastic blog post.Really looking forward to read more. Cool.
ajiZhb Really appreciate you sharing this blog article.Much thanks again. Cool.
WSEkGs Great blog.Thanks Again. Will read on...
nNZDBP Wow, great article.Really thank you! Want more.
7rm7XH Thanks so much for the blog post.Really thank you!
czuegV I loved your article.Thanks Again. Keep writing.
JII8p4 Great post.Much thanks again. Cool.
1dQbI1 I value the blog article.Really looking forward to read more. Really Great.
9zrMIi Thanks so much for the blog.Thanks Again. Keep writing.
sCFtQ3 Awesome post.Really thank you! Want more.
tcEzkD Major thankies for the blog post. Much obliged.
hz60lS Really informative post.Really looking forward to read more. Want more.
cJYg5v I loved your post.Really looking forward to read more.
i4ESyt Thanks so much for the blog.Much thanks again. Much obliged.
yGemQf This is one awesome blog. Really Cool.
NhT7sB I loved your post.Thanks Again. Awesome.
xS5CUE wow, awesome article.Much thanks again. Want more.
JGbt9K Very informative blog. Keep writing.
Other Stuff
Outside the Box:
- OpenBoR adds a lot to an already powerful, simple engine. But you can take things even further with a little thought.
- Just because they're called SHOCK, FREEZE and BURN doesn't mean they need to be bolts, icicles and flares. They could be other elements, or not even elements at all- ever noticed that most fighting games have separate graphics for low, mid, and high-level attacks? Or ever wanted a character to just sit still for a second or two? Among other things...
- Related to above, various attackboxes, SHOCK and BURN can be used to make custom slams and custom throws. There are many commands that also helps making them.
- Text objects pause the game and can play an animation. You can use it for cutscenes which don't end the level. - Use them wisely as they have to be stored in RAM, while cutscenes are streamed in real-time.
- Enemies can drop other enemies. That means you can create enemies with second forms.
- An entity's offset, bbox, attack box, platform box, etc. don't need to overlap. Or even be close to one another.
Cutscenes:
- There is a difference in the format for animated .gif files and not-animated .gif files. In other words, if you have a single-frame animated .gif, it would be read by OpenBoR differently than an identical non-animated .gif.
- These scenes must have animated .gifs:
--> data/scenes/logo.txt
--> data/scenes/gameover.txt
- These scenes must have non-animated .gifs:
--> data/scenes/title.txt
--> data/scenes/titleb.txt
Score:
- When you hit an enemy, you get 5x the attack's damage in points.
- THROWing an enemy will earn you the attack's damage in points (you don't get any multipliers).
- You get 5x the attack's power in the player's .txt file, not the damage dealt. So an attack with 1000 power would always give 5000 points.
- You get a one-up every 50,000 points.
Time:
- Try to keep in mind how long it might take a player to beat a group of enemies or a boss. It feels kind of disappointing to last 99 seconds against a high-health boss or endless stream of enemies, only to die from time over.
- To create an item which recovers a player's time, name it Time in it's .txt file and in MODELS.txt and give it a 'health' and 'score' value of 0.
Projectiles:
- Knives fly straight forward. They can fly over pits unless they are on the ground.
- Stars can only be thrown during jumps. Three fly out at downward angles.
- Bombs fly in an arc. They can be thrown over pits.
Player Swapping:
- 'load'ing a player character in a level's .txt file will cause the player's character to become the loaded character. You can't bring the character select screen back up, though.
- You can allow players to "unlock" characters in-game by only "know"ing the player in MODELS.txt, but putting an item which "load"s the entity in it's header. If a player grabs the item, they will be able to select the new character whenever they run out of lives or go to the select screen. This isn't saved when you close the game, though.
Other notes:
- Both OpenBoR.exe and WAV2BOR.exe only work with short file names. If you put them in directories with a file or folder name longer than 8 characters, they won't work.
Fun:
- Try to keep your mod interesting. The original BoR engine had a lot of neat tricks and fun potential which was never realized, and OpenBoR increases those possibilities exponentially. Think carefully about what you do with them.
- The little things make a difference. The secret enemy in the original BoR's elevator, the wacky names, the entire hidden stage...
- There are more fighting styles than just the standard Hadoken fireball/uppercut/spin kick. Try different attacks out. There are some interesting styles and attacks out there. Variety is the spice of life, right?
Limits (as of 2.0691):
- Maximum number of:
sprite frames: NA**
animations: 1000
models: 200
entities: 150
panels per level: 52*
frames per animation: NA**
weapons per player: 10
remaps: 14
name length: 40
level spawns: 600
panel order length: 2000
hole spawns per level: 40
levels: 100
difficulty levels: 10
sound effects: 128
freespecials: 8
- Although the source code has been changed to allow up to 52 panels per stage, a way of using panels past 26 has not yet been decided upon. There are only 26 letters in the alphabet, after all. So you can only use 26.
- NA means this particular caveat is no longer limited by source code. In other words, if you want to create an animation with 500,000 frames, that's your business. Keep in mind however that with great power comes great responsibility; it is up to you to properly manage hardware resources (in particular memory), especially if you intend for your module to play on consoles.
FAQ
What do you mean by "entity?"
- It's anything you load in Models.txt. It's basically a .txt file which tells the game how to display and use a player, an enemy, a barrel, an apple, etc...
What's a "hud?"
- HUD: Heads-Up Display. It's what shows you life, your score, your player, etc. It's a display which gives you a heads-up as to what's going on.
Can I enter my initials on the high score screen?
- Nope, sorry.
Help! My settings are all wrong/My controls have randomly changed/My high scores were replaced by gibberish!
- The settings file format may have changed. Try deleting or moving your settings.sav file in the same directory as OpenBoR and reopening OpenBoR.
My settings won't save on the Dreamcast version!
- This is a known issue. It seems the Dreamcast VMU (which is the only way to save on the DC) doesn't get along very well with OpenBoR, and getting them to work together would require too many major changes to be possible.
Where is the DC/PS2/PSP/Windows/X-Box/Linux/GP32/GP2X/NDS version of OpenBoR?
- Windows, DOS, Dreamcast, PSP, GP2X and X-Box binaries/executables are available in in the recent releases by SumolX. The PS2 and GP32 ports of the original BoR were all done by separate coders, none of whom have expressed interest in porting OpenBoR. Without skilled coders for those platforms, those ports will not be possible. As of this time, I don't think the NDS version by GPF is done yet.
What is this BoR/OpenBoR/DarkBoR/BoRHed/HoR/AotB thing I keep hearing about?
- BoR is the original Beats of Rage. It is a free game made by Senile Team. It doesn't have most of the features found in OpenBoR, but it is the original.
- OpenBoR was an upgraded version of BoR which has been worked on by many coders. DarkBoR was an alternate version of BoR which has several unique features such as an MP bar and enhanced weapons support. It was developed by Tails, but it is now merged with OpenBoR to make a single engine.
- BoRHed is an edit of BoR with new features similar to OpenBoR. It is developed by Lord_Ball and hopefully will be merged soon with OpenBoR.
- HoR is an edit of BoR designed to create shooting games. It is developed by Lord_Ball.
- Age of the Beast (AotB) is a "sequel" of sorts to the original BoR. The storyline, characters and music are original work made from scratch, but some basic gameplay elements will be similar to the original BoR. It's being developed by Senile Team, creators of the original BoR.
Which version of BoR should I use?
- OpenBoR is by far the best choice as of this moment. Each version has its advantage though:
- The original BoR is the only version with certain ports (such as PS2 or GP32) so it has the greatest compatibility.
- OpenBoR has many new features and backwards compatibility to the original BoR or DarkBoR. It also is the most optimized version.
- BoRHed also adds new features, but an entirely different set.
- HoR was designed for overhead/sideview shooters, so that's something of a different situation.
- AotB isn't out yet. So, um, it's not really a choice at the moment.
You may be able to create multiple versions compatible with the different versions of BoR, like how game companies release cross-platform games. That's extra work, though.
I'm amazed to see 10 different attackboxes. Why would someone need that many?
- You should be amazed on the effects you could make with them. With many attackboxes, modders can make an attack that push an opponent backwards, pull him/her, launchers and other cool effects.
When is AotB going to be released?
- When it's done. Coding games is actually a difficult and annoying not-tons-of-fun task. Especially when you don't get paid. And even more so if people ask for demo versions or release dates. It's being worked on. It'll come when it's ready. Asking will at best do nothing and more often just slow things down.
I found an error in this guide.
- Then please report it at LavaLit.com.
I found an error in OpenBoR.
- Report bugs at the OpenBoR Sourceforge site to allow to track them easier.
http://sourceforge.net/projects/openbor/ (Select Tracker->Bugs)
- Use the system in the following manner:
9 - Highest = System Crash / Fatal bug
5 - Medium = Something is just not working correctly and effects the engine in a strange way.
1 - Lowest = cosmetics, small things.
- Lastly, Always upload a log file and enter each bug with your username and website (borgeneration/senileteam) and a where/how to be contacted if I don't know you personally.
I want something added to OpenBoR.
- If you do want to ask for new features, think first. How many people besides you would use the feature? Would it be possible to program? Would it make problems with older versions? Has someone else asked for something similar? If you still want to ask, be sure to do so nicely. The people in the BoR scene are nice, and they are not getting paid for this, so they deserve some little thanks, right?
I want to HELP add something to OpenBoR.
- Awesome! Head to LavaLit forums and let SamuraiX know. As a warning, even if your addition is really good, it may not be added. Backwards compatibility, speed, memory, and Dreamcast/PSP compatibility are all important factors in what gets added or not.
Can I make my own version of BoR/OpenBoR/DarkBoR?
- Of course. If you're only making small, mod-specific changes (like changing the design of system menus), go ahead. If you're making larger changes (like new features or options), it would be nice if you mentioned it on the OpenBoR forums, but that's still not enforced or anything.
How do I make my own version of BoR/OpenBoR/DarkBoR?
- Information on how to compile the code for PC, PSP, Dreamcast, GP2X and other platforms can be found at LavaLit.com.
Links
Credits
Beats of Rage:
Senile Team:
Original Beats of Rage game.
Roel (Opla):
Original BoR source code and engine, major improvements in OpenBoR code, some original BoR graphics.
Neill Corlett:
Dreamcast and PS2 Port.
OpenBoR:
L@Cible:
His BoR-DC-Toolchain made OpenBoR possible.
Kirby2000:
OpenBoR Maintainer 2004-2005, 4 player support.
CGRemakes:
OpenBoR Maintainer 2005-2006.
SumolX/SX:
OpenBoR Maintainer 2006-2007, PSP port.
uTunnels:
OpenBoR Coder
Tails:
DarkBoR, 4 player support.
Lord_Ball:
BoRHed, HoR.
Drikobruschi:
Contributed hi-score table code.
Kbandressen:
OpenBoR Coder
Fugue:
Contributed many features, original author of this manual.
Bloodbane:
Manual updater.
OpenBoR Manual contributions:
bWWd, Zamuel, Christuserloeser, Damon Caskey
Sega:
Original Streets of Rage design, concept, etc.
SNK:
Original BoR graphics.
Sega, Capcom, SNK, Konami, Tecmo, Treasure, Sammy, etc.:
For all the brawler games!
The entire BoR and OpenBoR community:
Keep making those games!