Author Topic: Glest Advanced Engine  (Read 147197 times)

Duke

  • Guest
(No subject)
« Reply #75 on: 14 March 2008, 23:02:04 »
hmm, these are the last messages I get when compiling:

Code: [Select]
LinkApplication glest
./build/x86_64-unknown-linux-gnu/optimize/glest_game/network/server_interface.o: In function `Glest::Game::ServerInterface::sendFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
/home/duke2112/glest/gae/mk/linux/glest_game/network/server_interface.cpp:240: undefined reference to `compress2'
./build/x86_64-unknown-linux-gnu/optimize/glest_game/network/client_interface.o: In function `Glest::Game::FileDecompressor::processFragment(Glest::Game::NetworkMessageFileFragment const&)':
/home/duke2112/glest/gae/mk/linux/glest_game/network/client_interface.cpp:50: undefined reference to `inflateInit_'
/home/duke2112/glest/gae/mk/linux/glest_game/network/client_interface.cpp:59: undefined reference to `inflate'
/home/duke2112/glest/gae/mk/linux/glest_game/network/client_interface.cpp:80: undefined reference to `inflateEnd'
collect2: ld gab 1 als Ende-Status zurück

g++ -o glest ./build/x86_64-unknown-linux-gnu/optimize/glest_game/ai/ai_rule.o
.
.
.
./build/x86_64-unknown-linux-gnu/optimize/shared_lib/sources/libglestlib.a   -L/usr/lib -lSDL -lGL  -lm -lGLU -lGL  -lm -lxerces-c -lpthread  -lvorbis -lm -lvorbisfile  -logg -lopenal

...failed LinkApplication glest ...
...failed updating 1 target(s)...

I don't understand it that well, but to me it looks like you broke something while implementing netgame saving?

Ok, just to make sure I tested it on ubuntu 7.10 and 8.04 alpha6, both the same result.
But I noticed that configure doesn't check for zlib. (The base was installed, but Ubuntu has seperate devel packages.)
« Last Edit: 1 January 1970, 00:00:00 by Duke »

daniel.santos

  • Guest
(No subject)
« Reply #76 on: 15 March 2008, 03:34:48 »
AF,
Yea, I think it would be cool to have that as an option when starting a new game.

Duke,
Thanks for the info.  I'm not sure why it's working on mine actually, because I'm not telling it I'm using zlib :(  On line 57 of mk/linux/Jamfile, change it from
Code: [Select]
ExternalLibs glest : SDL GL GLU XERCES VORBIS VORBISFILE OGG OPENAL ;to
Code: [Select]
ExternalLibs glest : SDL GL GLU XERCES VORBIS VORBISFILE OGG OPENAL ZLIB ;and then do
Code: [Select]
jam distclean
./autogen.sh
jam -j2
and recompile it.  Those are symbols from the zlib library.  I'll get this changed in subversion soon as well.

As far as the problems I was complaining about earlier, I'm going to modify it to just transfer files uncompressed for now until I can figure out the problems I'm having with using zlib, that will prevent problems when restoring a saved game with lots of units (basically, one that compresses to greater than 8100 bytes).  I'm also going to try to figure out the problem with the hit points jumping.

orion,
Do you remember anything in particular you did when the hit points jumped?

tux-gamer,
yea, sorry, I forgot to add ScrollSpeed into glestadv.ini before, but it's in there now. (I hope I got this right on the windows .ini file).  Also, I noticed that freaking cancel button.  I had to select something else and then select the building again to cancel unit production.  hehe, funny that you finally get the button when you aren't producing anything!

As far as adding the load menu, I'm not entirely certain how easy that will be because of the way it treats menus, they are "ProgramState" objects.  The Game class is also a ProgramState, the one that runs when you are playing and you can only have one "ProgramState" be run by the "Program" at a time.  However, I'm thinking I can probably hack it by having the Game object call the load menu directly, but I'll have to see.  I do agree however that it would be nice, as well as an auto save and auto load button.

!!!!!! EDIT !!!!!!!
Holy crap, don't forget the space after ZLIB, you'll be in error hell!!
« Last Edit: 15 March 2008, 04:23:16 by daniel.santos »

wciow

  • Behemoth
  • *******
  • Posts: 968
    • View Profile
(No subject)
« Reply #77 on: 15 March 2008, 03:43:01 »
I just tested out the 0.1.7, the new camera controls are excellent!  :)

Worked perfectly on my windows machine (there was no jerky movement).

I think the draw distance needs to be extended because with the new camera angles its possible to see things popping into the screen!
« Last Edit: 1 January 1970, 00:00:00 by wciow »
Check out my new Goblin faction - https://forum.megaglest.org/index.php?topic=9658.0

daniel.santos

  • Guest
(No subject)
« Reply #78 on: 15 March 2008, 04:16:27 »
cool, glad ya like it :(  I haven't figured out how to rewrite GameCamera::computeVisibleQuad() to correctly handle the new camera views.  I added two new settings MaxFPS and MaxRenderDistance to the .ini, but they aren't connected to anything yet.  But in changing the camera angle, the area rendered must be carefully controlled so you don't get down into low frame rate rendering objects that aren't even visible.  I made some minor tweaks so that visibility is better than it was, but I didn't want to hard-code changes that open up visibility so much that it hurts people on slower machines.

I think I got the majority of the other camera issues fixed aside from the rotation still not forming a correct sphere around the center view.  That is, when you rotate the camera angle around, it should continue to point at exactly the same spot on the ground at zero altitude, but instead, the yaw fluctuates incorrectly (again, due to a lack of trig skills).  On the bright side, this is forcing me to finally learn trig! (I never finished high school or got a degree, so I was never forced to learn it.)

Sorry I haven't worked on FPM much recently, I kinda got obsessed with putting some things in the engine.
« Last Edit: 1 January 1970, 00:00:00 by daniel.santos »

Duke

  • Guest
(No subject)
« Reply #79 on: 15 March 2008, 04:36:48 »
I should realy learn to be more precise, that were actually two different topics I talked about.
What I wanted to say with the last sentence is that if youre missing libxerces, configure was complaining, but it didn't say anything if zlib was missing, So jam started compiling and throw the error out later,
Your instructions fix this ( I found out about that space myself (; ).
But they have nothing to do with the compile error I get in LinkApplication.

Are you sure you put the correct rev in the source package?

Ps If you post the base settings I should be able to give the right trig formulas.
« Last Edit: 1 January 1970, 00:00:00 by Duke »

daniel.santos

  • Guest
(No subject)
« Reply #80 on: 15 March 2008, 05:58:06 »
sorry I missed that detail in your post.  You're right, I haven't modified the configure.ac yet so that it'll actually check for zlib.  I have everything checked in, I just haven't gotten to that part.  As I said before, GAE is in a fairly unstable place right now because of all of the changes.  I did finally get a clean work-around to the problem with a limited saved file size when restoring network games.  I'm going to have it auto save now when somebody disconnects so you can resume where you left off.

As far as the trig stuff, I'll definitely take you up on that :)

First off, given an x, y, z position, pitch and yaw (i.e., horizontal and vertical angle of rotation) how do I determine x & z coordinates, on a given y plane (in this case, zero; the ground).  Basically, I need to determine the exact spot on the ground (zero altitude) that I'm pointing at with the camera.  I think I'm close, but some help wont hurt.
« Last Edit: 1 January 1970, 00:00:00 by daniel.santos »

daniel.santos

  • Guest
-
« Reply #81 on: 15 March 2008, 07:55:44 »
Minor bug fixes.
Glest Advanced Engine v0.1.7a & Four Path Magitech v0.1.3
Code: [Select]
[list][li][url=http://glest.codemonger.org/files/glestadv-win32-0.1.7a.rar]GAE v0.1.7a win32 binaries[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-src-0.1.7a.tbz2]GAE v0.1.7a sources[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-0.1.7a-fpm-0.1.3-win32.rar]GAE v0.1.7a win32 binaries w/ FPM v0.1.3 tech tree[/url][/li][/list]
Glest Advanced Engine v0.1.7a Changes
  • Fix the problem with not being able to restart a network game if the compressed size of the saved game file was more than 8k.
  • Updated configure.ac to perform at least minimal checks for zlib now, checking for zlib.h.  However, it doesn't actually try to compile or link, so it still needs more work, I'm just not all that agile in autoconf.

EDIT: I've noticed sync problems with this build when playing multiplayer.
« Last Edit: 9 April 2016, 13:33:45 by filux »

Duke

  • Guest
(No subject)
« Reply #82 on: 15 March 2008, 14:21:21 »
OK, these formulars expect that yaw is messured counter clokwise from the y-axis and pitch upward from the Z axis:

Xviewpoint = Xcamera + cos Yaw * Zcamera * tan Pitch
Yviewpoint = Ycamera + tan Yaw * Zcamera * tan Pitch

If pitch is measured downward from horizontal you should use: (90-Pitch).

If Yaw is measured from x then use (Yaw-90).
If Yaw is clockwise then use (360-Yaw).
In case of both it would be (270-Yaw).
« Last Edit: 1 January 1970, 00:00:00 by Duke »

Duke

  • Guest
(No subject)
« Reply #83 on: 15 March 2008, 16:59:49 »
Hmm, Now I get this in configure:
Code: [Select]
checking zlib.h usability... yes
checking zlib.h presence... no
configure: WARNING: zlib.h: accepted by the compiler, rejected by the preprocessor!
configure: WARNING: zlib.h: proceeding with the compiler's result
checking for zlib.h... yes
checking for wx-config... no
configure: creating ./config.status
config.status: creating Jamconfig
config.status: executing Jamfile commands

and the error in LinkApplication
« Last Edit: 1 January 1970, 00:00:00 by Duke »

tux-gamer

  • Guest
-
« Reply #84 on: 15 March 2008, 17:08:41 »
Quote from: daniel.santos
As far as adding the load menu, I'm not entirely certain how easy that will be because of the way it treats menus, they are "ProgramState" objects. The Game class is also a ProgramState, the one that runs when you are playing and you can only have one "ProgramState" be run by the "Program" at a time. However, I'm thinking I can probably hack it by having the Game object call the load menu directly, but I'll have to see. I do agree however that it would be nice, as well as an auto save and auto load button.
Wow, looks like it very difficult to do now, so i will wait you implementation this to GAE.
And Thanks before.

Quote from: daniel.santos
you can now save your game from a network game and resume later -- HOWEVER, this is shaky right now and if your saved game file is too big it doesn't work. Will have to fix this later (was fighting with the damn zlib library and it won  )
Too bad, i can not tes it, i don't have nice internet access to connect.
and i don't have friend to play LAN Game.

I have download , compile and play GAE version 0.1.7a, and now saw new bug.
1.Now i get Segmentation fault twice, and it leave this error message:
Code: [Select]
[tux-gamer@localhost Glest-3.1.2]$ ./glestadv
ALSA lib confmisc.c:769:(parse_card) cannot find card ''
ALSA lib conf.c:3500:(_snd_config_evaluate) function snd_func_card_driver returned error: No such device
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:3500:(_snd_config_evaluate) function snd_func_concat returned error: No such device
ALSA lib confmisc.c:1247:(snd_func_refer) error evaluating name
ALSA lib conf.c:3500:(_snd_config_evaluate) function snd_func_refer returned error: No such device
ALSA lib conf.c:3972:(snd_config_expand) Evaluate error: No such device
ALSA lib pcm.c:2145:(snd_pcm_open_noupdate) Unknown PCM default
Couldn't process event: Bad surface texture dimensions
Segmentation fault

And here the last glest.log:
Code: [Select]
[tux-gamer@localhost Glest-3.1.2]$ more glest.log | tail
Upgrade type: techs/magitech/factions/tech/upgrades/blade_weapons
Upgrade type: techs/magitech/factions/tech/upgrades/piercing_weapons
Upgrade type: techs/magitech/factions/tech/upgrades/robotics
Upgrade type: techs/magitech/factions/tech/upgrades/shield_level_1
Upgrade type: techs/magitech/factions/tech/upgrades/shield_level_2
Upgrade type: techs/magitech/factions/tech/upgrades/stables
Upgrade type: techs/magitech/factions/tech/upgrades/training_field
Faction types
State cells
Heightmap computations

And the "no cancel button" bug still in there, this "no cancel button" bug occur when upgrade too.
here the screenshot when upgrade (create training field )

big size
here screenshot when producing in Farm:

big size

And the BUG that orion say, looks like it only happen to Guard, after upgrading the guard.
here the screenshot:

big size

btw, thanks for Auto pause when saving the game.
another request, can you add "owerwrite confirmation" dialog too.
and what about "map resources aren't being saved (trees, gold, etc.)" bug you mentioned ini here
Code: [Select]
[url=http://www.glest.org/glest_board/viewtopic.php?p=14464#14464]http://www.glest.org/glest_board/viewtopic.php?p=14464#14464[/url]I hope you could fixed this before other bugs, but of course, it's up to you to fixed this before other bugs or not.

Thanks before and after
ps: i'am sory if my english is bad.
« Last Edit: 9 April 2016, 13:33:15 by filux »

orion

  • Guest
(No subject)
« Reply #85 on: 15 March 2008, 22:14:57 »
Thanks for figuring out what the bug was Tux-Gamer. I tried to figure out what caused the HP jump, but I could not. As for another bug, forgive me if this has been already acknowledged, but when you load a previously saved game, the scoring chart at the end of the game is screwed up. I saved a game at the end of one, when I already defeated the enemy. When I reloaded it, the message appeared that said "You win" and when I pressed exit, the score chart showed that every team killed exactly 120 people and produced 145. I know it is not a coincidence that every team produced and killed the same amount of people. :D
« Last Edit: 1 January 1970, 00:00:00 by orion »

theotherhiveking

  • Guest
(No subject)
« Reply #86 on: 15 March 2008, 23:25:45 »
Quote from: "orion"
Thanks for figuring out what the bug was Tux-Gamer. I tried to figure out what caused the HP jump, but I could not. As for another bug, forgive me if this has been already acknowledged, but when you load a previously saved game, the scoring chart at the end of the game is screwed up. I saved a game at the end of one, when I already defeated the enemy. When I reloaded it, the message appeared that said "You win" and when I pressed exit, the score chart showed that every team killed exactly 120 people and produced 145. I know it is not a coincidence that every team produced and killed the same amount of people. :D


Very nice! You did it?
« Last Edit: 1 January 1970, 00:00:00 by theotherhiveking »

Duke

  • Guest
(No subject)
« Reply #87 on: 16 March 2008, 00:25:47 »
That is a realy good design you got there, although I'm not sure about making it just silver.
It's rather far from the original.
« Last Edit: 1 January 1970, 00:00:00 by Duke »

ZaggyDad

  • Guest
(No subject)
« Reply #88 on: 16 March 2008, 01:49:04 »
It looks great! :)

Btw, what are you making it in?

And is part of the shield transparent, or am I just dreaming?

~Zaggy
« Last Edit: 1 January 1970, 00:00:00 by ZaggyDad »

daniel.santos

  • Guest
(No subject)
« Reply #89 on: 16 March 2008, 04:14:51 »
wow, I really do need bugzilla for this thing, it's hard to keep track of all of the bugs.  I was once told, that if debugging is the process of removing bugs, than programming must be the processor creating them. :)

Got the stats issue (not yet checked in) and now that I have the resume network game issues resolved, I'll focus on the other stuff.  Also, as far as the sync errors I was getting, that was with me playing two games on the same machine.  This shouldn't cause this problem, but it could be the cause if there's some problem that creates this.  I hope that made sense.

orion, the mediafire server is offline, so right now I'm just seeing a huge image that says "server offline".  I'm guessing that'll change once they come back up.
« Last Edit: 1 January 1970, 00:00:00 by daniel.santos »

tux-gamer

  • Guest
(No subject)
« Reply #90 on: 16 March 2008, 10:23:11 »
@orion
i saw "server offline" too.

@daniel.santos
Quote from: "daniel.santos"
Got the stats issue (not yet checked in) and now that I have the resume network game issues resolved, I'll focus on the other stuff. Also, as far as the sync errors I was getting, that was with me playing two games on the same machine. This shouldn't cause this problem, but it could be the cause if there's some problem that creates this. I hope that made sense.

Thanks, glad to see another bug fixed, keep the good work. :D
« Last Edit: 1 January 1970, 00:00:00 by tux-gamer »

Duke

  • Guest
(No subject)
« Reply #91 on: 16 March 2008, 10:49:46 »
Daniel, since you seem able to compile, could you post a Linux 64bit binary for me, please?
Thanks in advance.
« Last Edit: 1 January 1970, 00:00:00 by Duke »

daniel.santos

  • Guest
(No subject)
« Reply #92 on: 16 March 2008, 12:41:17 »
Ok, it looks like the cancel button is something I broke when adding the ability to toggle auto-repair.  I still need a few better icons for the auto repair, but that's actually something I might be able to do myself since I can just steal the X part of the cancel icon and super-impose that over the repair/heal icons :)[/li]
[li]You can disable giving orders via the minimap in the .ini by setting EnableMinimapCommands to 0.[/li]
[li]I have reworked a lot of the code in the Game and Gui classes, having moved some of the responsibilities from Game to Gui.  As with any non-trivial change, this may have unintended consequences. :)  Let me know the what your processor is, for now, I'll post an athlon64 compatible binary shortly at this address: url]http://glest.codemonger.org/files/glestadv-linux-athlon64-bin-0.1.8.tbz2[/url].  I should probably start building Linux binaries with each build as well.
« Last Edit: 1 January 1970, 00:00:00 by daniel.santos »

daniel.santos

  • Guest
-
« Reply #93 on: 16 March 2008, 13:27:02 »
doh! stupid bug alert (would have left units trying to auto-repair smaller units going off into space or something).  Please use this version instead of 0.1.8.

Glest Advanced Engine v0.1.8a
Code: [Select]
[list][li][url=http://glest.codemonger.org/files/glestadv-win32-0.1.8a.rar]GAE v0.1.8a win32 binaries[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-src-0.1.8a.tbz2]GAE v0.1.8a sources[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-linux-athlon64-0.1.8a.bz2.tbz2]GAE v0.1.8a Linux AMD64 binary[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-linux-nocona-0.1.8a.bz2.tbz2]GAE v0.1.8a Linux AI64 binary (nocona core)[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-linux-x86_64-0.1.8a.bz2.tbz2]GAE v0.1.8a Linux generic 64 bit binary[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-0.1.8a-fpm-0.1.3-win32.rar]GAE v0.1.8a win32 binaries w/ FPM v0.1.3 tech tree[/url][/li][/list]

EDIT: bah! still no good. The AI isn't doing anything bug harvesting as was reported before with the indians mod.
« Last Edit: 9 April 2016, 13:32:12 by filux »

Dr.Dixie

  • Guest
(No subject)
« Reply #94 on: 16 March 2008, 14:29:33 »
*begs for Linux 32 bit binaries*


!Dr.Dixie!
« Last Edit: 1 January 1970, 00:00:00 by Dr.Dixie »

daniel.santos

  • Guest
-
« Reply #95 on: 16 March 2008, 15:48:36 »
hehe, ok Dr Dixie, I just need to install some 32 bit libs, like a lot of them.  In the mean time, here is the fix for the stupid AI not building bug.  I think that this *may* be a good build, which I really need cause I had a lotta crappy builds lately. :)  What processor do you have in your machine BTW?  I just have this thing where I hate for there to be unused processor instruction sets that could help.  I'm actually planning on digging into the Glest rendering engine at some point and hand coding some assembly for SSE + MMX optimizations.  The deal here is that there are some tricks where you can have each of the processor units working at the same time and get some performance benefits.

Anyway, here's the fix.
Code: [Select]
[list][li][url=http://glest.codemonger.org/files/glestadv-win32-0.1.8b.rar]GAE v0.1.8b win32 binaries[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-src-0.1.8b.tbz2]GAE v0.1.8b sources[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-linux-athlon64-0.1.8b.bz2.tbz2]GAE v0.1.8b Linux AMD64 binary[/url][/li]
[li][url=http://glest.codemonger.org/files/glestadv-linux-nocona-0.1.8b.bz2.tbz2]GAE v0.1.8b Linux AI64 binary (nocona core)[/url][/li][/list]

EDIT: Oh, and another thing, guarding units are following too closely, but at least that's not a major bug.
« Last Edit: 9 April 2016, 13:32:32 by filux »

Duke

  • Guest
(No subject)
« Reply #96 on: 16 March 2008, 17:39:27 »
I haven't tested 1.8b but 1.8a has still the same problem in LinkAplication.
Zlib-dev is installed, without it I get problems in 14 other classes as well.

I have a core2duo by the way.
« Last Edit: 1 January 1970, 00:00:00 by Duke »

Dr.Dixie

  • Guest
(No subject)
« Reply #97 on: 16 March 2008, 18:41:38 »
I have a Pentium 4 with no HT, I think.


!Dr.Dixie!
« Last Edit: 1 January 1970, 00:00:00 by Dr.Dixie »

orion

  • Guest
(No subject)
« Reply #98 on: 16 March 2008, 20:19:25 »
Ok, the mediafire server is back online. I know this because I'm looking at the picture right now. :)

Quote from: "theotherhiveking"
Very nice! You did it?
Yes I did it myself. This came straight from my imaginative brain. :lol: :lol:
« Last Edit: 1 January 1970, 00:00:00 by orion »

ZaggyDad

  • Guest
(No subject)
« Reply #99 on: 16 March 2008, 20:27:56 »
You still haven't fixed the command queuing of gather points. :? And the same (except not only sometimes) with when you right-click on the minimap.

~Zaggy
« Last Edit: 16 March 2008, 21:00:33 by ZaggyDad »