❄️🎁⛄ The Winter Games Tournament is Live! 🎄🎅❄️
Jump to content

Recommended Posts

Posted

Hello,

Nerva is my entry for the Leadwerks Winter Games 2025.

It was initially designed to be a physical board game.

But it deviated from that quite a bit , im making this with Leadwerks 4 c++.

It was quite a joy for me to return to using Leadwerks after quite some time.

You can read the game rules in the below screenshots.

ScreenshotFrom2026-01-0411-10-46.thumb.png.085c86d8e950dd0f483fb8b847f97831.pngScreenshotFrom2026-01-0411-09-41.thumb.png.daac9cca48b84a0cb444d2da3341fd9f.pngScreenshotFrom2026-01-0411-11-09.thumb.png.0bc8ac5e8561df62e26a83a2f2ac2ab8.pngScreenshotFrom2026-01-0411-14-59.thumb.png.f9636a008acb57e50a438b789ed3d961.pngScreenshotFrom2026-01-0411-11-58.thumb.png.9cbb381f346d9d58c7fc198985dfddcb.png

I will update this thread with progress and other interesting info

  • Like 3

I made this with Leadwerks/UAK:

Structura Stacky Desktop Edition

Website:

Binary Station

Posted

And now for some technical stuff that might be useful for people still wanting to use Leadwerks 4:


Im using Fedora linux 43 to make this game.
gcc version 15.2.1 20251211 (Red Hat 15.2.1-5) (GCC)

Leadwerks 4 comes as a static library (Leadwerks.a)

I get a lot of this errors from the linker:

dVec3.cpp:(.text+0x1c58): undefined reference to `__atan2f_finite'
/usr/bin/ld: dVec3.cpp:(.text+0x1dfa): undefined reference to `__atan2f_finite'
/usr/bin/ld: dVec3.cpp:(.text+0x1ef3): undefined reference to `__asinf_finite'
/usr/bin/ld: dVec3.cpp:(.text+0x2231): undefined reference to `__atan2f_finite'
/usr/bin/ld: dgDynamicBody.cpp:(.text+0xda2): undefined reference to `__powf_finite'
/usr/bin/ld: dgDynamicBody.cpp:(.text+0xde9): undefined reference to `__powf_finite'
/usr/bin/ld: dgDynamicBody.cpp:(.text+0xe30): undefined reference to `__powf_finite'

After some investigation, it seems this math functions where removed from glibc for some reason but the Leadwerks.a need them.

Since i cannot recompile the static library as Josh need to do that,  i created a small compatibility wrapper:

#include <math.h>

float __powf_finite(float x, float y) {
    return powf(x, y);
}

double __pow_finite(double x, double y) {
    return pow(x, y);
}

float __logf_finite(float x) {
    return logf(x);
}

double __log_finite(double x) {
    return log(x);
}

double __log10_finite(double x) {
    return log10(x);
}

double __exp_finite(double x) {
    return exp(x);
}

float __acosf_finite(float x) {
    return acosf(x);
}

double __acos_finite(double x) {
    return acos(x);
}

float __asinf_finite(float x) {
    return asinf(x);
}

double __asin_finite(double x) {
    return asin(x);
}

float __atan2f_finite(float y, float x) {
    return atan2f(y, x);
}

double __atan2_finite(double y, double x) {
    return atan2(y, x);
}

double __sinh_finite(double x) {
    return sinh(x);
}

double __cosh_finite(double x) {
    return cosh(x);
}

Compile this in your project and you are set to go with Leadwerks 4 and latest gcc.

And as a side note the binaries from this Fedora gcc 15 and glibc are compatible with Steam OS 3, i tested them on the steam deck.

 

Leadwerks 4 is still a usefull engine in my opinion and should be protected from such bit rot by the author. 

But not my decision to make.


Looking forward to use Leadwerks 5 on linux.

  • Like 1

I made this with Leadwerks/UAK:

Structura Stacky Desktop Edition

Website:

Binary Station

Posted

I added a info bar that shows a message that describe the latest action.
Using this is easier to see the points for different captured cubes and calculate the attack points that you need.

Here is a screenshot that shows both kings being revealed:
ScreenshotFrom2026-01-0623-39-36.thumb.png.15da07c4945ed40c6dae9fa024007814.png

Also i thought about a notation for the game similar to chess + board number.
Example: B1_A1 , you can also look at the location of the Blue King in the screenshot

After playing for a bit , i can say i don't really know what could be the wining/optimal strategies.
Im leaning towards not trying to implement an ai player, not much time left and i don't understand what a good ai should do for this game.
So it will be just the hotseat mode.


Next i will do more polishing for the game.

  • Like 2

I made this with Leadwerks/UAK:

Structura Stacky Desktop Edition

Website:

Binary Station

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...