ZGameEditor 3.0.0

Information and change log about the latest ZGameEditor release.

Moderator: Moderators

Post Reply
User avatar
VilleK
Site Admin
Posts: 2274
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

ZGameEditor 3.0.0

Post by VilleK »

Version 3.0.0 is released today!

The main new feature is Android platform support, but there have also many other improvements and changes.

For a detailed list of updates in ZGE since the last version visit the beta-thread for 3.0.0:

viewtopic.php?t=874

Download the new release 3.0.0 from here:

http://www.zgameeditor.org/files/ZGameEditor.zip

Note: The Linux and OSX runtime binaries are not included because I don't have the build environments configured. However they can be built from source using Freepascal. If someone manages to build them successfully then please send the binaries to me for inclusion in the distribution.
Last edited by VilleK on Fri Feb 21, 2014 12:47 pm, edited 1 time in total.
User avatar
Ats
Posts: 603
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Post by Ats »

Hi VilleK,

Thanks for this new version. It's working fine on my Xubuntu using Wine. There is still this little problem with the right clic to add components, but the sound don't crash anymore :wink:

If that interests you, I tried to compile the sourcecode but it gave me errors with NativeUInt in ZPlatform.pas

Code: Select all

~/zgameeditor-read-only$ fpc -al -XXis -O2 -dZZDC_SDL SDL -dMINIMAL -FU./Build/obj/ -B -Mdelphi -FE./Build/ ZzDC.dpr

Warning: Only one source file supported, changing source file to compile from "SDL" into "ZzDC.dpr"
Free Pascal Compiler version 2.4.4-3.1 [2012/01/04] for i386
Copyright (c) 1993-2010 by Florian Klaempfl
Note: Switching assembler to default source writing assembler
Target OS: Linux for i386
Compiling ZzDC.dpr
ZzDC.dpr(23,2) Warning: Illegal compiler directive "$WEAKLINKRTTI"
Compiling ZClasses.pas
Compiling ZMath.pas
ZMath.pas(576,9) Warning: "fdivp" without operand translated into "fdivp %st,%st(1)"
ZMath.pas(870,3) Warning: "fsubrp" without operand translated into "fsubrp %st,%st(1)"
ZMath.pas(888,3) Warning: "fsubrp" without operand translated into "fsubrp %st,%st(1)"
Assembling zmath
Compiling ZLog.pas
Compiling ZPlatform.pas
ZPlatform.pas(84,66) Error: Identifier not found "NativeUInt"
ZPlatform.pas(85,52) Error: Identifier not found "NativeUInt"
ZPlatform.pas(111,53) Fatal: There were 2 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/bin/ppc386 returned an error exitcode (normal if you did not specify a source file to be compiled)
User avatar
VilleK
Site Admin
Posts: 2274
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

Ats wrote:If that interests you, I tried to compile the sourcecode but it gave me errors with NativeUInt in ZPlatform.pas
Hi Ats,

NativeInt/NativeUInt types have been added to later versions of Fpc. Could you try upgrading?
User avatar
Ats
Posts: 603
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Post by Ats »

Ok, so I downloaded the latest fpc from sourceforge but now I have new errors in ZPlatform_SDL.inc :

Code: Select all

~/zgameeditor-read-only$ fpc -al -XXis -O2 -dZZDC_SDL SDL -dMINIMAL -FU./Build/obj/ -B -Mdelphi -FE./Build/ ZzDC.dpr

Warning: Only one source file supported, changing source file to compile from "SDL" into "ZzDC.dpr"
Free Pascal Compiler version 2.6.0 [2011/12/23] for i386
Copyright (c) 1993-2011 by Florian Klaempfl and others
Note: Switching assembler to default source writing assembler
Target OS: Linux for i386
Compiling ZzDC.dpr
ZzDC.dpr(23,2) Warning: Illegal compiler directive "$WEAKLINKRTTI"
Compiling ZClasses.pas
Compiling ZMath.pas
ZMath.pas(576,9) Warning: "fdivp" without operand translated into "fdivp %st,%st(1)"
ZMath.pas(870,3) Warning: "fsubrp" without operand translated into "fsubrp %st,%st(1)"
ZMath.pas(888,3) Warning: "fsubrp" without operand translated into "fsubrp %st,%st(1)"
Assembling zmath
Compiling ZLog.pas
Compiling ZPlatform.pas
Compiling SDL.pas
Assembling sdl
Compiling AudioPlayer.pas
Compiling AudioComponents.pas
Compiling ZApplication.pas
Compiling Meshes.pas
Compiling ZBitmap.pas
Compiling ZOpenGL.pas
Assembling zopengl
Assembling zbitmap
Compiling ZExpressions.pas
Compiling ZApplication.pas
Compiling Meshes.pas
Compiling ZApplication.pas
Compiling Collision.pas
Compiling ZApplication.pas
Compiling Commands.pas
Compiling ZApplication.pas
Compiling Renderer.pas
Renderer.pas(1084,17) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1317,14) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1317,27) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Assembling renderer
Assembling zapplication
Assembling commands
Assembling collision
Assembling meshes
Assembling zexpressions
Assembling audiocomponents
AudioPlayer.pas(656,5) Warning: unreachable code
Assembling audioplayer
ZPlatform_SDL.inc(29,10) Error: function header doesn't match the previous declaration "Platform_InitScreen(var LongInt,var LongInt,Boolean,PChar):LongInt;"
ZPlatform_SDL.inc(101,55) Error: Identifier not found "ZApp"
ZPlatform_SDL.inc(121,23) Error: Identifier not found "ZApp"
ZPlatform_SDL.inc(122,23) Error: Identifier not found "ZApp"
ZPlatform_SDL.inc(357,5) Warning: unreachable code
ZPlatform_SDL.inc(419,10) Error: function header doesn't match the previous declaration "Platform_ShowOptionDialog:Boolean;"
ZPlatform_SDL.inc(448,14) Error: Identifier not found "ZApp"
ZPlatform.pas(127) Fatal: There were 6 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/bin/ppc386 returned an error exitcode (normal if you did not specify a source file to be compiled)
So in ZPlatform_SDL.inc I changed

Code: Select all

function Platform_InitScreen(var Width, Height : integer; UseFullScreen : boolean; Title : PAnsiChar) : integer;
to

Code: Select all

function Platform_InitScreen(var Width, Height : integer; UseFullScreen : boolean; Title : PAnsiChar; ZApp : pointer) : integer;
and the two

Code: Select all

function Platform_ShowOptionDialog : boolean;
by

Code: Select all

function Platform_ShowOptionDialog(App : pointer) : boolean;
It got rid of the first and fifth error, but not of the rest ( Error: Identifier not found "ZApp" ).

Do I have to define something in the compiling command to take advantage of the {$IFDEF LINUX} in the sourcecode?
If so, is it -Tlinux?

Thanks !
User avatar
VilleK
Site Admin
Posts: 2274
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

Thanks for testing. I've now committed an updated zplatform_sdl.inc. Please use it and try again.
User avatar
Ats
Posts: 603
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Post by Ats »

I've updated zplatform_sdl.inc and I installed libgl1-mesa-dev and libsdl1.2-dev for the linking.
It's almost OK...

Here's the compilation log:

Code: Select all

~/zgameeditor-read-only$ fpc -al -XXis -O2 -dZZDC_SDL SDL -dMINIMAL -FU./Build/obj/ -B -Mdelphi -FE./Build/ ZzDC.dpr

Warning: Only one source file supported, changing source file to compile from "SDL" into "ZzDC.dpr"
Free Pascal Compiler version 2.6.0 [2011/12/23] for i386
Copyright (c) 1993-2011 by Florian Klaempfl and others
Note: Switching assembler to default source writing assembler
Target OS: Linux for i386
Compiling ZzDC.dpr
ZzDC.dpr(23,2) Warning: Illegal compiler directive "$WEAKLINKRTTI"
Compiling ZClasses.pas
Compiling ZMath.pas
ZMath.pas(576,9) Warning: "fdivp" without operand translated into "fdivp %st,%st(1)"
ZMath.pas(870,3) Warning: "fsubrp" without operand translated into "fsubrp %st,%st(1)"
ZMath.pas(888,3) Warning: "fsubrp" without operand translated into "fsubrp %st,%st(1)"
Assembling zmath
Compiling ZLog.pas
Compiling ZPlatform.pas
Compiling SDL.pas
Assembling sdl
Compiling AudioPlayer.pas
Compiling AudioComponents.pas
Compiling ZApplication.pas
Compiling Meshes.pas
Compiling ZBitmap.pas
Compiling ZOpenGL.pas
Assembling zopengl
Assembling zbitmap
Compiling ZExpressions.pas
Compiling ZApplication.pas
Compiling Meshes.pas
Compiling ZApplication.pas
Compiling Collision.pas
Compiling ZApplication.pas
Compiling Commands.pas
Compiling ZApplication.pas
Compiling Renderer.pas
Renderer.pas(1084,17) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1317,14) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Renderer.pas(1317,27) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Assembling renderer
Assembling zapplication
Assembling commands
Assembling collision
Assembling meshes
Assembling zexpressions
Assembling audiocomponents
AudioPlayer.pas(656,5) Warning: unreachable code
Assembling audioplayer
ZPlatform_SDL.inc(361,5) Warning: unreachable code
Assembling zplatform
Assembling zlog
ZClasses.pas(632,5) Warning: Constructor should be public
ZClasses.pas(1198,23) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
ZClasses.pas(3769,19) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
ZClasses.pas(3769,36) Warning: Converting pointers to signed integers may result in wrong comparison results and range errors, use an unsigned type instead.
Assembling zclasses
Compiling BitmapProducers.pas
Compiling NanoJpeg.pas
Assembling nanojpeg
Assembling bitmapproducers
Compiling Animators.pas
Assembling animators
Compiling Steering.pas
Assembling steering
Compiling ImplicitMeshes.pas
ImplicitMeshes.pas(194,5) Warning: Constructor should be public
Assembling implicitmeshes
Compiling ZFile.pas
Assembling zfile
Assembling zzdc
Linking ./Build/ZzDC
/usr/bin/ld: warning: ./Build/link.res contains output sections; did you forget -T?
28785 lines compiled, 3.6 sec 
15 warning(s) issued
1 note(s) issued
It compiles a ZzDC executable file. I moved it to the ZGameEditor folder but it isn't working:

Code: Select all

~/ZGameEditor$ ./ZzDC

Runtime error 216 at $08068EEB
  $08068EEB
  $0804B1A3
  $0805128A
I also tried to add -Tlinux to the compilation line. The result is exactly the same.
User avatar
VilleK
Site Admin
Posts: 2274
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

There must be a zzdc.dat file for the binary to open in the same path. Create one using "Android: Build zzdc.dat file" in project menu. Try with a empty project first.
User avatar
Ats
Posts: 603
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Post by Ats »

Sorry but you lost me... What project menu are you talking about?

I'm compiling directly in the console. Do I have to install an IDE or something? I tried to re-install lazarus (the one who comes with the old fpc 2.4.4) but I didn't managed to find this Android: build command.

Is there a way to build that using the command line in the console?
User avatar
Kjell
Posts: 1876
Joined: Sat Feb 23, 2008 11:15 pm

Post by Kjell »

Hi Ats,
Ats wrote:Sorry but you lost me... What project menu are you talking about?
Ville means the project menu in ZGameEditor.

Image

The standalone executable you've compiled is a platform-specific ( Linux in your case, right? ) player that needs a ZGameEditor project binary to run. That's what a zzdc.dat file is. Even though that option is confusingly labeled "Android: Build zzdc.dat file", the created project binary works with all platforms / players.

To enable the "Build Linux x86 binary" function in ZGE, you need to rename the executable to ... can't remember what actually ( Linux_Player.bin or something ).

It's a real shame the MacOS / Linux players aren't packed in releases anymore. But i can understand why .. haven't seen anyone using them ( publicly at least ) in years.

K
User avatar
Ats
Posts: 603
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Post by Ats »

Ooooh...
So it works like a charm and smoother than using Wine. Thanks for your support!

Here is the zipped ZzDC 3.0.0 file for Ubuntu 12.04 LTS i386 ;)
Attachments
ZzDC.zip
ZzDC 3.0.0 executable for Ubuntu 12.04 LTS i386
(89.83 KiB) Downloaded 949 times
User avatar
Kjell
Posts: 1876
Joined: Sat Feb 23, 2008 11:15 pm

Post by Kjell »

:)

Just checked a old version of ZGE.

Player.bin = Windows player
Player_SS.bin = Windows screensaver player
Player_linux.bin = Linux player
Player_osx86.bin = Mac OS X player

K
Post Reply