H-Craft Championship Open Source
Re: H-Craft Championship Open Source
Hm, dll's... could be libgcc_s_dw2-1.dll and libstdc++-6.dll which are messing things up. Try deleting or replacing them. Those probably don't belong in the source-control. I guess I checked them in because I was scared of not finding them anymore anywhere in the future otherwise (if mingw moves on) and I would lose my only working version. But when compiling with a newer mingw they have to be replaced.
edit: Ah - after deleting those I also get the TGA errors (before I couldn't start a compiled version on Windows at all yet)
edit: Ah - after deleting those I also get the TGA errors (before I couldn't start a compiled version on Windows at all yet)
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Re: H-Craft Championship Open Source
I even build now all statically , without any dlls : same error.
The only case when all works, its with irrlicht.dll coming from the win32 binary release archive, when build whole h-craft non-statically.
Will try now to build it for linux. Maybe its just for win32 something wrong in irrlicht which placed in the h-craft trunk
The only case when all works, its with irrlicht.dll coming from the win32 binary release archive, when build whole h-craft non-statically.
Will try now to build it for linux. Maybe its just for win32 something wrong in irrlicht which placed in the h-craft trunk
Last edited by kas1e on Fri Oct 11, 2019 4:08 pm, edited 1 time in total.
Re: H-Craft Championship Open Source
@CuteAlien
Tried to build Linux version : all fine from begining, no problems. So issue seems in Irrlicht itself, but in win32 part, about handling tga formats (seems so) ?
I tried on win32 2 different compilers (through, both times mingw, but one time i tried with one from MSYS2 environment, thant 7.3.0 , and one time one from CodeBlocks).
So or issue is with mingw support (maybe those things about packet structs you mean still didn't fixed fully), or something else..
But as i build all statically and issue still here,then its probably not because of other dlls, but in irrlicht's win32 code (imho of course).
Tried to build Linux version : all fine from begining, no problems. So issue seems in Irrlicht itself, but in win32 part, about handling tga formats (seems so) ?
I tried on win32 2 different compilers (through, both times mingw, but one time i tried with one from MSYS2 environment, thant 7.3.0 , and one time one from CodeBlocks).
So or issue is with mingw support (maybe those things about packet structs you mean still didn't fixed fully), or something else..
But as i build all statically and issue still here,then its probably not because of other dlls, but in irrlicht's win32 code (imho of course).
Re: H-Craft Championship Open Source
Pretty sure it's struct packing going wrong. It messed up the values of the tga-header when reading it.
edit: Yeah, there was another change in Irrlicht 1.8 which I don't see in changes.txt. Which fixes the fix for struct packing once more. Before the check for gcc versions was wrong so - kinda depended on your gcc minor version if it worked or not. Which also explains why it worked for me back then. Unfortunately this only gets me one step further - now I end up with crashes inside the standard library dll. Probably because after deleting those 2 dll's I have in source-control I must rebuild all libs first. *sigh*
edit2: Rebuilding everything didn't help. Argh.
edit3: I give up for now.
edit: Yeah, there was another change in Irrlicht 1.8 which I don't see in changes.txt. Which fixes the fix for struct packing once more. Before the check for gcc versions was wrong so - kinda depended on your gcc minor version if it worked or not. Which also explains why it worked for me back then. Unfortunately this only gets me one step further - now I end up with crashes inside the standard library dll. Probably because after deleting those 2 dll's I have in source-control I must rebuild all libs first. *sigh*
edit2: Rebuilding everything didn't help. Argh.
edit3: I give up for now.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Re: H-Craft Championship Open Source
@CuteAlien
if (__GNUC__ > 4 ) || ((__GNUC__ == 4 ) && (__GNUC_MINOR__ >= 7))
And yeah all builds, but then i just crashes when use new libirrlicht.dll with that "packed" change : I run game, have that output:
Btw, i also checked the versions of gcc i use and:
linux : gcc 7.4.0 x86_64
msys2 : gcc 7.3.0 i686-w64-mingw32
codeblocks : gcc 5.1.0 mingw32
For linux it works , for msys2 and codeblocks mingws are not.
EDIT1 : i can make it works in my mingw like this now: i compile whole irrlicht with adding "-mno-ms-bitfields" (as writen in comment in the irrpack.h) instead of adding "pragma pack" fix. And it works ! Yahoo !
EDIT2: but seems that "-mno-ms-bitfields" trick works only on codeblocks's mingw (5.1.0), but didn't on msys2 mingw (7.3.0). But in general whatever if i want to make amigaos4 port, and win32 only need for some testing, and i make it works with codeblock's mingw at least.
Ah i see, seems that h-craft irrlicht its just 1.8.2 (not full) + added something from 1.9.0. So exactly that "Fix compiling on GCC5 on MinGW" didn't fit in. Also and other fix coming in 1.8.3 "Fix the fix for compiling on GCC5". In other words, the correct fix is to have in irrpack.h just that:Yeah, there was another change in Irrlicht 1.8 which I don't see in changes.txt. Which fixes the fix for struct packing once more
if (__GNUC__ > 4 ) || ((__GNUC__ == 4 ) && (__GNUC_MINOR__ >= 7))
And yeah all builds, but then i just crashes when use new libirrlicht.dll with that "packed" change : I run game, have that output:
And then crashLog set-up.
strArgv0D:\msys64\work\hcraft_test\
strCwdd:\msys64\work\hcraft_test/
MakeLinuxTypePath orig:d:\msys64\work\hcraft_test/
MakeLinuxTypePath modified:d:/msys64/work/hcraft_test/
MakeLinuxTypePath orig:D:\msys64\work\hcraft_test\
MakeLinuxTypePath modified:D:/msys64/work/hcraft_test/
strArgv0D:/msys64/work/hcraft_test/
BasePath: D:/msys64/work/hcraft_test/
compiled date Feb 21 2015
compiled time 22:52:55
log priority file: 1
log priority stderr: 5
log priority stdout: 0
log priority stream: 5
Irrlicht Engine version 1.9.0
Btw, i also checked the versions of gcc i use and:
linux : gcc 7.4.0 x86_64
msys2 : gcc 7.3.0 i686-w64-mingw32
codeblocks : gcc 5.1.0 mingw32
For linux it works , for msys2 and codeblocks mingws are not.
EDIT1 : i can make it works in my mingw like this now: i compile whole irrlicht with adding "-mno-ms-bitfields" (as writen in comment in the irrpack.h) instead of adding "pragma pack" fix. And it works ! Yahoo !
EDIT2: but seems that "-mno-ms-bitfields" trick works only on codeblocks's mingw (5.1.0), but didn't on msys2 mingw (7.3.0). But in general whatever if i want to make amigaos4 port, and win32 only need for some testing, and i make it works with codeblock's mingw at least.
Re: H-Craft Championship Open Source
Oh good news !
For amigaos4 i have no such problems as for win32 ! Everything fine ! Check this out:
http://kas1e.mikendezign.com/aos4/gl4es ... nshot1.jpg
http://kas1e.mikendezign.com/aos4/gl4es ... nshot2.jpg
Only what i had to change its endianes for ov_read() in ogg_stream , but in others i almost made no changes !
I didn't see it, but is there ability to enable FPS counter in the game, so to see how fast/slow it operate on me ?
For amigaos4 i have no such problems as for win32 ! Everything fine ! Check this out:
http://kas1e.mikendezign.com/aos4/gl4es ... nshot1.jpg
http://kas1e.mikendezign.com/aos4/gl4es ... nshot2.jpg
Only what i had to change its endianes for ov_read() in ogg_stream , but in others i almost made no changes !
I didn't see it, but is there ability to enable FPS counter in the game, so to see how fast/slow it operate on me ?
Re: H-Craft Championship Open Source
@CuteAlien
Check this out: https://youtu.be/4UM3mOpYE94
Check this out: https://youtu.be/4UM3mOpYE94
Re: H-Craft Championship Open Source
Wow! That worked a lot faster than I expected :-) I guess "ghosts" might still be a problem as I'm not sure I cared about endian-correct serializing there.
You can enable an FPS display with F11.
Also there is a test-suite for speeds, but ... uhm, have to figure out myself again how to run that.
edit: You run tests by passing parameter -test=NAME where NAME must be a file in the tests folder containing the tests to run. To get good info you likely have to compile Irrlicht with profiling enabled (_IRR_COMPILE_WITH_PROFILING_ in IrrCompileConfig.h).
You can enable an FPS display with F11.
Also there is a test-suite for speeds, but ... uhm, have to figure out myself again how to run that.
edit: You run tests by passing parameter -test=NAME where NAME must be a file in the tests folder containing the tests to run. To get good info you likely have to compile Irrlicht with profiling enabled (_IRR_COMPILE_WITH_PROFILING_ in IrrCompileConfig.h).
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Re: H-Craft Championship Open Source
@CuteAlien
640x480: 95 fps
800x600: 50 fps
1920x1080: 45 fps
So in 1920x1080 very playable
What i only miss, is:
1. ability to change between window/full scren from the menu.
2. make "esc' key works to back to the roots menu from sub menus
3. auto-change of screenmodes without need to exit/run hcraft
Is there any way to choice window/fullscreen ? Maybe from command line ?
Do test with all details on , in first level (tutorial one):Wow! That worked a lot faster than I expected You can enable an FPS display with F11.
640x480: 95 fps
800x600: 50 fps
1920x1080: 45 fps
So in 1920x1080 very playable
What i only miss, is:
1. ability to change between window/full scren from the menu.
2. make "esc' key works to back to the roots menu from sub menus
3. auto-change of screenmodes without need to exit/run hcraft
Is there any way to choice window/fullscreen ? Maybe from command line ?
Re: H-Craft Championship Open Source
Yeah, changing Windowed/Fullscreen at runtime is pretty tricky. You lose GL context when doing that, so textures become invalid. You can change it only in media/config.xml currently (set fullscreen to 0)
Sorry about "ESC" key doing nothing, but you got the code :-)
And 3. is again tricky to do at runtime
Sorry about "ESC" key doing nothing, but you got the code :-)
And 3. is again tricky to do at runtime
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Re: H-Craft Championship Open Source
But should to say game is VERY polished. I assume because it was commercical ?:) As for window mode i think about adding command line parametr, so when it set it just will create window (by setting params.fullscreen to false)
Re: H-Craft Championship Open Source
Thanks, professional artist makes all the difference.
Hm, yeah, command-line parameter for this is a good idea.
Hm, yeah, command-line parameter for this is a good idea.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Re: H-Craft Championship Open Source
Btw, notice 2 times a crash, when i pass the level, and want to start another one.
In console i have that when crash happens:
And then shutdown (without cleanup of resources , but that not big deal).
Are you meet with such issue any time ? Or maybe have a clue what it can be ?
I build whole hcraft source with just -O2 , so maybe one of those which i didn't use , but which are used to build linux version "-fexpensive-optimizations -fno-strict-aliasing -Wno-unused-parameter -fno-rtti -fno-exceptions" can be guilty for such issue ?
In console i have that when crash happens:
Code: Select all
assertion "mTrackMarkerReached >= 0 && mTrackMarkerReached < (int)aiTrack.GetNumTrackInfos()" failed: file "player.cpp", line 315
Are you meet with such issue any time ? Or maybe have a clue what it can be ?
I build whole hcraft source with just -O2 , so maybe one of those which i didn't use , but which are used to build linux version "-fexpensive-optimizations -fno-strict-aliasing -Wno-unused-parameter -fno-rtti -fno-exceptions" can be guilty for such issue ?
Re: H-Craft Championship Open Source
Hm, no never had that one. No idea right now. Don't know if compile-flags make a difference.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Re: H-Craft Championship Open Source
And while it show that crash, usually the crashed process are openall , but that can be because of shutdown happens, so cleanup didn't happens and openall crashes after. Will try to recompile all with those compiler flags.
EDIT: nope, same crash with all those flags
EDIT2: so its 100% reproducable, i most of time crash on 5st level of champinship when i about to press "start race" (but didn't). But only when i start game and play whole 4st first levels. If i run game from scratch and choice "continue championship", then i almost never crashes (very rare).
So i run hcraft firstly as it, and play first 4 levels before crash, and that what i have in log file then:
Then i run hcraft as "hcraft -logfile=0", and also play first 4st level till crash on 5st loading/starting happens, and there is whole log:
http://kas1e.mikendezign.com/aos4/gl4es ... g_full.txt
But didn't see there anything which can point out on the error. Only that in console before crash i have that :
And i never had anything of that kind on any other level.
EDIT: nope, same crash with all those flags
EDIT2: so its 100% reproducable, i most of time crash on 5st level of champinship when i about to press "start race" (but didn't). But only when i start game and play whole 4st first levels. If i run game from scratch and choice "continue championship", then i almost never crashes (very rare).
So i run hcraft firstly as it, and play first 4 levels before crash, and that what i have in log file then:
compiled date Oct 12 2019
compiled time 22:09:47
SDL Version 1.2.15Desktop width:1920
Desktop height:1080
Desktop depth:24
createDevice
Resolution width:1920
Resolution height:1080
Resolution depth:32
createDevice ok
mGui->Init
OPEN_AL
AL_VERSION: 1.1 ALSOFT 1.18.2
AL_RENDERER: OpenAL Soft
AL_VENDOR: OpenAL Community
Loading menu dialogs
Warning: GetAllGhostRecordsFromDisk: changeWorkingDirectoryTo failed
No functor created for unknown GUI element: sld_lights
No functor created for unknown GUI element: sld_texture_resolution
Init finished
MODE_GUI enabled
start running
mesh had no triangle selector: /Work/games/hcraft/media/levels/tutorial01.lmo
mesh had no triangle selector: /Work/games/hcraft/media/levels/tutorial01.lmo
mesh had no triangle selector: /Work/games/hcraft/media/levels/tutorial01.lmo
mesh had no triangle selector: /Work/games/hcraft/media/levels/track26.lmo
mesh had no triangle selector: /Work/games/hcraft/media/levels/track05.lmo
mesh had no triangle selector: /Work/games/hcraft/media/levels/track01.lmo
Then i run hcraft as "hcraft -logfile=0", and also play first 4st level till crash on 5st loading/starting happens, and there is whole log:
http://kas1e.mikendezign.com/aos4/gl4es ... g_full.txt
But didn't see there anything which can point out on the error. Only that in console before crash i have that :
Code: Select all
assertion "mTrackMarkerReached >= 0 && mTrackMarkerReached < (int)aiTrack.GetNumTrackInfos()" failed: file "player.cpp", line 315
Last edited by kas1e on Mon Oct 14, 2019 9:28 am, edited 1 time in total.