• All, Gmail is currently rejecting messages from my host. I have a ticket in process, but it may take some time to resolve. Until further notice, do NOT use Gmail for your accounts. You will be unable to receive confirmations and two factor messages to login.
OpenBOR

OpenBOR 4.0 7556

No permission to download
DCurrent updated OpenBOR with a new update entry:

OpenBOR 4.0 First Release

This is the first release of OpenBOR 4.0, representing over five years and 1,000+ updates to the source code. In order to avoid yet more delays and keep the promise I made to release before year end, there are still elements in progress that I will be finishing up in the coming weeks.

However, you will find a wealth of long awaited new goodies to play with, along with documentation, and an internal codebase and development strategy that enables fast updates as we move forward. So much I had...

Read the rest of this update entry...

Massive thanks to @Kratus, @O Ilusionista, @Plombo, @msmalik681, @danno, @Piccolo, and all of the community at large. Again, this update is not quite as complete as I wanted due to a lot of computer issues and real life stuff, but it is stable (and already in use for SORX), with incrmental updates and polishing that I'll be working on starting... right now. Expect much more in the next few weeks!

DC
 
Last edited:
Happy new year!
Happy new year!! Congratulations my friend, I saw how hard you worked during all these years and now the engine it's fully working, it's a dream turning into reality :)

You read my mind, I was about to launch another SORX beta release but I decided to hold off in case you launch v4.0 and then I will use the latest build.
In this case I can remove all the engine locks and make the executable work with the data folder normally instead of only SORX paks.
 
🥳 🥳 🥳 🥳 🥳

Just want to test it

C:
debug:nativeWidth, nativeHeight, bpp, Hz  1920, 1080, 24, 60
OpenBoR v3.0 Build 7530 (commit hash: 9695908), Compile Date: Dec 31 2023

C:
Can't find openbor constant 'PLAYER_MIN_Z'

Script compile error in 'data/scripts/drago.c': openborconstant line 727, column 16
Script error: failed to import 'data/scripts/drago.c': failed to compile

********** An Error Occurred **********
*            Shutting Down            *

This going to be problem for me 😝
 
🥳 🥳 🥳 🥳 🥳

Just want to test it

C:
debug:nativeWidth, nativeHeight, bpp, Hz  1920, 1080, 24, 60
OpenBoR v3.0 Build 7530 (commit hash: 9695908), Compile Date: Dec 31 2023

C:
Can't find openbor constant 'PLAYER_MIN_Z'

Script compile error in 'data/scripts/drago.c': openborconstant line 727, column 16
Script error: failed to import 'data/scripts/drago.c': failed to compile

********** An Error Occurred **********
*            Shutting Down            *

This going to be problem for me 😝

Ugh, the first growing pain (and I'm sure just one of many). That's actually a bugfix. There are about 10 or so "constants" I discovered someone added (not sure who.. could have been me) that aren't actually constants at all. PLAYER_MIN_Z is one of them. They are really system variables that can and do change at runtime. I've moved them accordingly and where possible given write access.

@machok, to get player min Z, use openborvariant("player_min_z"). I documented the system variables too: system variables.

DC
 
Happy New Year, DC. 🤝 +🫂 Congratulations on the release of 4.0. It's been quite a while since there was a discussion about it after the 3.0 release some time. I didn't expect it to be out on this new year. ☺️ That was a lot of hard work and effort to put in. It's been years you've worked hard to make it workable.
 
@DCurrent
Yay it's working, so it's called panel_z now
Thank you 😇 I'll test it now

View attachment 6448
btw screenshot with Space not responding in the game, menu is fine
Cool. How do you get that to work? Do you use it like player_min_z? I'm used to player_min_z more than panel_z. panel_z is new to me.

I tried this out, but I got this.
Code:
Total Ram:  4171603968 Bytes (  3978 MB )
 Free Ram:   943714304 Bytes (   899 MB )
 Used Ram:     6615040 Bytes (     6 MB )

debug:nativeWidth, nativeHeight, bpp, Hz  1366, 768, 24, 60
OpenBoR v3.0 Build 7530 (commit hash: 9695908), Compile Date: Dec 31 2023

Game Selected: ./Paks/My Mod.pak

FileCaching System Init.......    Disabled
Initializing video............
Reading video settings from 'data/video.txt'.

Colordepth is depreciated. All modules are displayed with a 32bit color screen.

Initialized video............    320x240 (Mode: 0)

Timer init...................    Done!
Initialize Sound.............    
Loading sprites..............    Done!
Loading level order..........    
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Done!
Loading model constants......    Done!
Loading script settings......    Done!
Loading scripts..............    Can't find openbor constant 'SAMPLE_BEEP2' 

Script compile error in 'update': openborconstant line 95, column 31

********** An Error Occurred **********
*            Shutting Down            *

Can't compile script 'update' 
Total Ram:  4171603968 Bytes (  3978 MB )
 Free Ram:   976789504 Bytes (   931 MB )
 Used Ram:    34488320 Bytes (    32 MB )

Release level data...........
Done!

Release graphics data........    Done!
Release game data............


Release game data............    Done!
Release timer................    Done!
Release input hardware.......    Done!
Release sound system.........    Done!
Release FileCaching System...    Done!

**************** Done *****************

Can't compile script 'update'
 
How do you get that to work? Do you use it like player_min_z?
Mine is in this script that is causing the error
int isBlockedUp(int edge) {

void self = getlocalvar("self");
int x = getentityproperty(self, "x");
int z = getentityproperty(self, "z");
float Hu = 0;
int minZ = openborvariant("PLAYER_MIN_Z");


// check Z walls
Hu = checkwall(x,z+edge);

// check Z platforms
if(Hu <= 0) { Hu = isPlatform(x,z+edge,1001); }

// check Z corners
if(Hu <= 0) { Hu = (minZ+edge > z); }

return (Hu > 0);
}

I read the description and I just change every minZ to panel_z

panel_zIntegerXBase layer position of main panel. Internally, it is a calculated offset from player_min_z.

int isBlockedUp(int edge) {

void self = getlocalvar("self");
int x = getentityproperty(self, "x");
int z = getentityproperty(self, "z");
float Hu = 0;
int panel_z = openborvariant("panel_z");


// check Z walls
Hu = checkwall(x,z+edge);

// check Z platforms
if(Hu <= 0) { Hu = isPlatform(x,z+edge,1001); }

// check Z corners
if(Hu <= 0) { Hu = (panel_z+edge > z); }

return (Hu > 0);
}

I have no idea what you mean, sorry.
Save screenshot rarely responding
 
I read the description and I just change every minZ to panel_z

But earlier you said it was PLAYER_MIN_Z that was missing, so I want to be sure you understand what you're doing. Panel_z is NOT the same as player_min_z. If you are aware of the difference and want to use panel_z anyway, no problem.

I tried this out, but I got this.

C:
int sample_beep_id = openborvariant("global_sample_beat");
 
Last edited:
Cool. How do you get that to work? Do you use it like player_min_z? I'm used to player_min_z more than panel_z. panel_z is new to me.

I tried this out, but I got this.
Code:
Total Ram:  4171603968 Bytes (  3978 MB )
 Free Ram:   943714304 Bytes (   899 MB )
 Used Ram:     6615040 Bytes (     6 MB )

debug:nativeWidth, nativeHeight, bpp, Hz  1366, 768, 24, 60
OpenBoR v3.0 Build 7530 (commit hash: 9695908), Compile Date: Dec 31 2023

Game Selected: ./Paks/My Mod.pak

FileCaching System Init.......    Disabled
Initializing video............
Reading video settings from 'data/video.txt'.

Colordepth is depreciated. All modules are displayed with a 32bit color screen.

Initialized video............    320x240 (Mode: 0)

Timer init...................    Done!
Initialize Sound.............   
Loading sprites..............    Done!
Loading level order..........   
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Command 'versusdamage' not understood in level order!
Done!
Loading model constants......    Done!
Loading script settings......    Done!
Loading scripts..............    Can't find openbor constant 'SAMPLE_BEEP2'

Script compile error in 'update': openborconstant line 95, column 31

********** An Error Occurred **********
*            Shutting Down            *

Can't compile script 'update'
Total Ram:  4171603968 Bytes (  3978 MB )
 Free Ram:   976789504 Bytes (   931 MB )
 Used Ram:    34488320 Bytes (    32 MB )

Release level data...........
Done!

Release graphics data........    Done!
Release game data............


Release game data............    Done!
Release timer................    Done!
Release input hardware.......    Done!
Release sound system.........    Done!
Release FileCaching System...    Done!

**************** Done *****************

Can't compile script 'update'
The native sound effects now work this way, here's an example:

C:
playsample(openborvariant("global_sample_beep_2"), 0, 100, 100, 100, 0);

Here's the new list:
C:
    global_sample_beat
    global_sample_beep
    global_sample_beep_2
    global_sample_bike
    global_sample_block
    global_sample_fall
    global_sample_get
    global_sample_get_2
    global_sample_go
    global_sample_indirect
    global_sample_jump
    global_sample_one_up
    global_sample_pause
    global_sample_punch
    global_sample_time_over
 
Can you consider making scripts compatible with older versions of the past, so that the older coders can seamlessly and smoothly transition to the new version?
 
@Ianyer The way the engine is assigned is different now, think of it as a much better and new way to create instead of an updated version, what you create with Unreal engine 4 is not going to be compatible with Unreal engine 5, so choose what version of the engine you want to use and stick with that.

I'm not going to look at OpenBor engine 4 until all my projects with OpenBor engine 3 are finished and if I do decide to create with OpenBor engine 4 I'll be starting from a bare bones new project.

Going forward try to consider that OpenBor engine 4 has nothing to do with OpenBor engine 3.
 
Ugh, the first growing pain (and I'm sure just one of many). That's actually a bugfix. There are about 10 or so "constants" I discovered someone added (not sure who.. could have been me) that aren't actually constants at all. PLAYER_MIN_Z is one of them. They are really system variables that can and do change at runtime. I've moved them accordingly and where possible given write access.
Is there a list we can see of those old constants that were changed?
 
I am curious about something:
So in the new attack method, attack2 triggers pain3?
1704110240453.png


I can understand it design-wise, but this is very counter intuitive. And I am worried about this raising the learning curve for newcomers.
 
Back
Top Bottom