Releases: DCurrent/openbor
OpenBOR v3.0 Build 4626
fix nodropen bug with enemies with weapnloss 3 added normalize_anim_models() func for future (commented for now into set_model_ex())
OpenBOR v3.0 Build 4624
v4624 fix uninitialized vars
OpenBOR v3.0 Build 4596
v4596 fix damageonlanding/fall animation
OpenBOR v3.0 Build 4583
Fixed the spawn bug(I hope becouse I just tested few times...) Checked all NULL ptr and used calloc instead malloc to prevent some invalid NULL check.
OpenBOR v3.0 Build 4580
v4580 fix DC spawn malloc issue
OpenBOR v3.0 Build 4574
v4574 fix totally ParseArgs bugs
Legacy Builds
Archive of OpenBOR releases 3769 - 4153 previously available at ChronoCrash.
3769
Android (debug version):
Add a hidden screenshot button in the center of the screen.
The build is currently armv7 only, so some devices may not install it.
Easter egg feature, sort of: Hold start button (one pak only) or start the pak using start button instead of A1 to force using 32bit mode for 16bit mods.
3773
Fix game mode menu paging issue.
Android:
Rework button picture.
Move screen to upper border if it's small enough.
3780
New:
Plombo's new #import feature available, check it here: http://www.chronocrash.com/forum/index.php?topic=274.0
Android touch button layout can be customized now using touch.txt, which can be placed in 3 different locations:
-
/mnt/sdcard/OpenBOR/Saves/pakname/touch.txt
-
data/touch.txt
-
/mnt/sdcard/OpenBOR/Saves/touch.txt
-
overrides 2), 2) overrides 3), so 3) can be used as a global setting if you don't want the default layout. The commands:
button {name} {x} {y} {radius} {corner}
{name} is same as its counterpart in menu.txt.
{x} {y} {radius}, coordinations and radius. They should be decimal values, and the actual size is sizexwidthx0.6, see below.
{corner} defines one of the 4 corners your coordinations start from.
0 1
3 2
An example:
button attack 0.6 0.25 0.08 2
Assume your screen resolution is 800x480, the button (center of it) is at (0.6x800x0.6, 0.25x800x0.6)=(288, 120), radius is 38. Because corner is 2(see above), actual position is at (800-288, 480-120)=(512, 360). There is no direct way to center a button though.
To hide a button, just move it out of the screen.
Usually you don't need to change the picture, if you really want to, use texture command:
texture {path}
Only 32 bit png is supported. An example can be found here: http://sourceforge.net/p/openbor/engine/3780/tree/engine/android/button_png_800x480.h.png
Fix:
Better screen fade under 32/16bit SDL mode (the old logic fades too fast and shows a bit reddish).
Work around:
Entity header command icon now has a second parameter, 0 means the icon doesn't use remap (default), 1 means it uses remap from the entity. This should fix some old mods which were made when icon remap feature is absent.
3783
- New level command scrollx (changed from the old scrollx command). It limits your move area within the range. Usually you need to use that with direction both, but that is your business.
Example:
scrollx 150 250
at 180
- Update video command in video.txt
Example:
video 480x480
Usually this only works on PC in window mode. But anyway it is your business again.
3789
Warn missing remap file instead of shutting down. (old mod compatible)
Use respawn animation if spawn is not present for enemies. (old mod compatible)
New command screendocking in anroid touch.txt, parameters can be 0 (means center), left, top, right and bottom.
For example:
screendocking left top
Will make the screen stay in the upper left corner if it is not stretched.
3793
-
16bit sound samples are now supported.
-
New entity script onmodelcopyscript, executed after a model change.
Local variables:
self - current entity
old - old entity before the change, it is just a shallow copy, so don't do anything to it except get some old values.
3797
Remap android joystick keys to keyboard keys because SDL doesn't support them (xperia, for instance).
Add spawnhealth and spawnmp to script player property list for better weapon model handling.
3814
New feature: switch statements
3822
If you check script log, you will see @cmd are parsed differently.
For example:
@cmd f1
@cmd f2
@cmd f3
frame data/chars/ffff/1.gif
Before:
if(frame==3)
{
f1();
}
if(frame==3)
{
f2();
}
if(frame==3)
{
f3();
}
Now
if(frame==3)
{
f1();
f2();
f3();
return;
}
However, I just find some old mod, for example, Night Slashers X relies on an animation change bug ( if f1 changes current animation or frame, f2 and f3 could be skipped). So I consider to make a switch for this change next time.
3824
Fix sleep timer.
Add nocmdcompatible switch in script.txt, when nocmdcompatible 1 is set, @cmd within the same frame will be wrapped in a single if statement instead of individual ones.
3831
Fix bugs from 3829.
Optimize script engine speed.
3837
holdblock 2 now works correctly with blockpain.
New script function exit() to exit current script. That can be used in @cmd functions, in which return only quit currect function.
If you are using nocmdcompatible in script.txt to optimize your animationscript, you'll want this sometimes.
3389
New sound sample functions:
playsample(sampleid); //play sample
playid = openborvariant("sample_play_id"); // get latest playid,so call right after playsample
.....
channel = querychannel(playid);
// find channel that is playing that sample
if(channel>=0)
{
stopchannel(channel); //stop
}
3854
Sometime in the last 2 weeks, I added support for the >>, <<, &, |, and ^ operators to the script engine. They work the same way that they do in C. All shifts are unsigned, not arithmetic.
A non-script feature that I committed a few minutes ago is support for alpha masks for fonts. The naming convention is data/scripts/fontmask, data/scripts/fontmask2, etc. for font, font2, etc. The masks themselves work the same way as they do for frames of entity animations.
Bug fix: attack with dot hitting biker crashes game.
OpenBOR
Added "game_time" to script accessible engine variants.
int game_time = Openborvariant(“game_time”);
changeopenborvariant(“game_time”, game_time);
Acceptable range is 0-99. Any value exceeding range in either direction will be overwritten to nearest acceptable value on the next engine cycle.
OpenBOR
Simplified Color Table System
No more confusion about color depth for incoming authors. The legacy 8bit global color table mode has been dropped completely. 32bit is now the only mode, and as such all models default to the far more powerful and easy to use individual palette system.
Note: This means many older modules will not play - along with any newer modules still attempting to use the remap model attribute.
Discontinued Ports
Dreamcast, GP2X, and Wiz platforms are officially discontinued. We have not actually compiled a new release for the DC in almost two years. It's time to move on.
Note - Android port is NOT discontinued, but this release does not include an android port as I am still setting up a development environment on my new equipment. I will be releasing an Android port as well in the near future, assuming another dev does not do so first. :)
Damon Caskey