.com.unity Forums

.com.unity Forums (http://forum.shrapnelgames.com/index.php)
-   Space Empires: IV & V (http://forum.shrapnelgames.com/forumdisplay.php?f=20)
-   -   SEV: Taking me to the edge of sanity (http://forum.shrapnelgames.com/showthread.php?t=32077)

Baal November 30th, 2006 04:25 PM

SEV: Taking me to the edge of sanity
 
Turn processing taking 10+ minutes at turn 60 I can stand (barely).
Slight bugs being fixed continually, not a problem.
When the game crashes so much that I can't do more than 2 turns in a row. That puts me to the end of my rope.

Ungomma November 30th, 2006 05:12 PM

Re: SEV: Taking me to the edge of sanity
 
Yes-yes... It takes longer to process the turn than for me to make it. That is very very wrong.

I doubt there's any justification for such immense slowness. The code has to be fixed.

Ragnarok-X November 30th, 2006 06:28 PM

Re: SEV: Taking me to the edge of sanity
 
Agreed. The code is probably majorly broken. At some point i had games with 4-6 AIs where already turns 5+ were taking 10 seconds and even more. And thats with using 2 gigs of RAM and a E6600. Im dissapointed by that.

Raapys November 30th, 2006 06:37 PM

Re: SEV: Taking me to the edge of sanity
 
A patch ago it was problems with combat that made the turn processing take way too long. That's been pretty much resolved( although one could argue AI combats should still be optimized alot, speed-wise ). The problem now seem to be that the actual 'movement' phase of the AIs seem to take much longer than it did before.

From what I remember, the best turn processing speed was at patch 1.08, i.e. release state, and even that speed wasn't impressive with alot of AIs. I'd be playing the game alot more if it wasn't for the fun-degrading processing times, that's for sure.

Romulus68 November 30th, 2006 07:21 PM

Re: SEV: Taking me to the edge of sanity
 
Keep in mind how long it takes you to do a turn then multiply that by 11 for the AI's.

The logic routines are going to take time as the Empires grow and the number of ships increase.

Personally, I think the AI needs better fleet management as it seems to move each ship indivdually. This appears to be the slow down in my games.

Fyron November 30th, 2006 09:46 PM

Re: SEV: Taking me to the edge of sanity
 
Bah, you think that is bad... you should have seen how horribly slow turn processing was with civ3 when it came out. http://forum.shrapnelgames.com/image...ies/tongue.gif

Aaron is aware of the slow nature of the AI script processing, and mentioned that he had some ideas for how to speed it up in the IRC chat.

Captain Kwok December 1st, 2006 12:43 AM

Re: SEV: Taking me to the edge of sanity
 
The slowness is primarily pathfinding for ships and not script execution.

Arralen December 1st, 2006 03:56 AM

Re: SEV: Taking me to the edge of sanity
 
Fundamental flaw in all those games (as Fyron remarked, it was the same with Civ3, isn't that much better with Civ4 at times, and Dominions3 can be problematic as well with 'big' games):

The games getting more and more complicated - several orders of magnitude, actually, if you want to put down the mechanics into formulas for an AI to use.
And we all want "smart" AIs, don't we? AIs which at least somewhat understand whats going on and can play the game on roughly even ground without cheating too much (able to see through for of war etc)

But does it get the 'power' to do so? Hardly.
Yes, o.c., CPU 'power' has grown enormously.
But power = work * time, or something like that, I was told.
And obviously, there's lots more time needed to reach to 'power levels' we want to see.

But there's an easy solution to this:
Atm, the AI programming is still following the concepts of the '80 .. but instead of giving the AI only some seconds to "think" between the player hitting the "end turn" button and him eagerly awaiting the results of his orders, the AI(s) should do its(their) turn(s) while the player does his.

That shouldn't be too hard to implement, with all those games being TCP/IP-enabled MP games .. just plug the AI(s) in like any other player in a MP game, and you wouldn't even need big changes to the game mechanics to make it work.

And with all those multi-thread, multi-core and multi-CPU equipped PCs out there, I doubt anyone could complain about the AI slowing down his PC or endless "end turn" waits ... .

Atrocities December 1st, 2006 06:53 AM

Re: SEV: Taking me to the edge of sanity
 
I thought Aaron also said that the slow down was related to ship movement or tracking or something in addition to AI script processing??? I don't recall to be honest.

EDIT:

Wait, I see that CK posted about the ship path thingy so that comment from Aaron must be accurate.

Captain Kwok December 1st, 2006 09:46 AM

Re: SEV: Taking me to the edge of sanity
 
Seriously, it's a combination of pathfinding and sometimes combats. The heaviest script execution times are on turn 1, 10, 20, etc. when the AI updates its designs... but those are just little bumps. You'll notice pathfinding kick in around turn 4-5, when the AI first starts exploring/surveying.

Raapys December 1st, 2006 10:19 AM

Re: SEV: Taking me to the edge of sanity
 
Yah, that's really the worst part of it: The AI isn't using the long processing time to do something sensible, like figuring out what he should do next. It's used for the actual movement of the ships, since the pathfinding mechanism apparantly isn't optimized at all.

Romulus68 December 1st, 2006 12:08 PM

Re: SEV: Taking me to the edge of sanity
 
Try changing the ship movement speed in the options.

Captain Kwok December 1st, 2006 12:15 PM

Re: SEV: Taking me to the edge of sanity
 
To clarify, it's not the movement itself but the pathfinding - so it is sensible really. This is due to the line of sight in the game, so it's calculating the path for the ship each hex that it moves. Although I don't think it calculates again in squares that have sensor coverage - but if it does that may be a point of optimization.

Slick December 1st, 2006 12:29 PM

Re: SEV: Taking me to the edge of sanity
 
There have got to be other optimizations for pathfinding. Numerous other games use pathfinding, oftentimes with more complex pathing/obstacles without a noticable slowdown. SEV, in fact, really has a simple pathing, even with the rules of sight. I'm thinking this is a negative consequence of going from square grids to hex grids. Although I really like the hex grids over squares, somehow, when I first saw the demo, I had a bad feeling that this change would cause a slowdown.

geoschmo December 1st, 2006 12:44 PM

Re: SEV: Taking me to the edge of sanity
 
Quote:

Arralen said:
But there's an easy solution to this:
Atm, the AI programming is still following the concepts of the '80 .. but instead of giving the AI only some seconds to "think" between the player hitting the "end turn" button and him eagerly awaiting the results of his orders, the AI(s) should do its(their) turn(s) while the player does his.


I'm not sure really this would make as much of a difference as you would think. I can't say for sure with SE5, but I know with SEIV and simultaneous turn processing games on PBW large games can take a lot of time to process even when there are no AI involved. I think that at least with SEIV the amount of time it takes for the AI to make up it's mind what to do is small compared to the time it takes for the game mechanics to carry out those orders. And a lot of decisions, like combat, can't be made until the game is actually processing because what the AI does is dependant on what the players around it do.

Slick December 1st, 2006 01:23 PM

Re: SEV: Taking me to the edge of sanity
 
Come to think of it, it appears to me (without testing) that longer paths have much higher processing time. It appears that if you break up a long path into multiple steps using multiple "move to" orders, you can achieve the same thing but now the pathing routine just calculates up to the next "move to" point instead of the destination. Thus this should cut down processing time for pathing. I have been doing this and it seems to improve turn processing time. The bad thing is that this method kinda makes waypoints useless. More testing required to confirm.

Captain Kwok December 1st, 2006 01:50 PM

Re: SEV: Taking me to the edge of sanity
 
It speeds things up for the player since only 1 movement order a time is taken - but the individual AIs wouldn't be doing this and that's a bigger source of slowness.

frightlever December 2nd, 2006 08:28 PM

Re: SEV: Taking me to the edge of sanity
 
Quote:

Arralen said:
Fundamental flaw in all those games (as Fyron remarked, it was the same with Civ3, isn't that much better with Civ4 at times, and Dominions3 can be problematic as well with 'big' games):

The games getting more and more complicated - several orders of magnitude, actually, if you want to put down the mechanics into formulas for an AI to use.
And we all want "smart" AIs, don't we? AIs which at least somewhat understand whats going on and can play the game on roughly even ground without cheating too much (able to see through for of war etc)

But does it get the 'power' to do so? Hardly.
Yes, o.c., CPU 'power' has grown enormously.
But power = work * time, or something like that, I was told.
And obviously, there's lots more time needed to reach to 'power levels' we want to see.

But there's an easy solution to this:
Atm, the AI programming is still following the concepts of the '80 .. but instead of giving the AI only some seconds to "think" between the player hitting the "end turn" button and him eagerly awaiting the results of his orders, the AI(s) should do its(their) turn(s) while the player does his.

That shouldn't be too hard to implement, with all those games being TCP/IP-enabled MP games .. just plug the AI(s) in like any other player in a MP game, and you wouldn't even need big changes to the game mechanics to make it work.

And with all those multi-thread, multi-core and multi-CPU equipped PCs out there, I doubt anyone could complain about the AI slowing down his PC or endless "end turn" waits ... .

It's like you're pretending you discovered GalCiv or something. Trust me, we know how GC works but it is a world away from SE. Sheesh.

Fyron December 2nd, 2006 09:39 PM

Re: SEV: Taking me to the edge of sanity
 
Slick said:
I'm thinking this is a negative consequence of going from square grids to hex grids.


Hexes have 6 adjacent locations to analyze, squares have 8. If anything, hexes should reduce the pathfinding calculations by virtue of 25% fewer adjacent locations to consider. Of course, if you optimize it to ignore squares/hexes that are in the opposite direction of the target, you pretty much have 3 versus 3 locations to consider. Sight and larger systems, plus double the movement, seem like they would have more of an effect than hex vs. square.

Theonlystd December 3rd, 2006 02:15 AM

Re: SEV: Taking me to the edge of sanity
 
the sim times are depressingly long


Grab a book,mow your lawn, do the dishes your turn might be done when you return.

Fyron December 3rd, 2006 03:59 AM

Re: SEV: Taking me to the edge of sanity
 
If you play in windowed mode, you can use your PC for other things during the turn processing. Browse the web, chat on IRC, play other games (even SE4 heheh), etc. Its only in fullscreen that the window being out of focus causes it to halt processing. http://forum.shrapnelgames.com/images/smilies/happy.gif

Phoenix-D December 3rd, 2006 05:03 AM

Re: SEV: Taking me to the edge of sanity
 
hah, that'd be a trick. Play SE4 and SE5 at the same time, see which game you finish first. http://forum.shrapnelgames.com/image...ies/tongue.gif

Slick December 3rd, 2006 02:50 PM

Re: SEV: Taking me to the edge of sanity
 
Quote:

Imperator Fyron said:
Slick said:
I'm thinking this is a negative consequence of going from square grids to hex grids.


Hexes have 6 adjacent locations to analyze, squares have 8. If anything, hexes should reduce the pathfinding calculations by virtue of 25% fewer adjacent locations to consider. Of course, if you optimize it to ignore squares/hexes that are in the opposite direction of the target, you pretty much have 3 versus 3 locations to consider. Sight and larger systems, plus double the movement, seem like they would have more of an effect than hex vs. square.


Except that your incorrect opinion does not reflect reality. Hex grids do require more math overall when compared to square grids. If hex grids provided more efficient pathing, then why aren't all 2D computer games coded for a hex grid? This is illustrated more especially in the early days of computer gaming, when computing power and graphics forced optimization everywhere. Nowadays, optimization is not so important to programmers. They expect their customers to store their bloatware on ever increasing storage devices and play their games with ever more powerful CPU's and graphics cards.

Phoenix-D December 3rd, 2006 03:04 PM

Re: SEV: Taking me to the edge of sanity
 
Slick, that's just silly. Many of the early PC wargames were ports of board versions, and they had hex grids. And PC games have -always- been prone to bloat. Its gotten a little worse lately, but not much more so.

Fyron December 3rd, 2006 03:40 PM

Re: SEV: Taking me to the edge of sanity
 
Slick said:
Except that your incorrect opinion does not reflect reality. Hex grids do require more math overall when compared to square grids.


More math overall? How so? You can find adjacent hexes exactly equivalently to square grids; the constant offset x,y coordinate values are different, but it is the same amount of math (add an x value, add a y value). You can efficiently represent and parse both hexes and squares in 2d arrays, with not much difference in computational complexity. We discussed this on IRC yesterday; some important bits:

<Vornicus> a hex system is just a square system with two specific paths disabled
...
<Vornicus> If you're looking at the linked object model, a hex only has six links where a grid has eight (and an ortho grid has four); if you're looking at the array index object model, then grid rejects (0,0) as nonadjacent, hex rejects x == y as nonadjacent, and orthogrid rejects (x + y) & 1 == 0 as nonadjacent
<Vornicus> it was a bit technical
<Vornicus> But the point is that a 2-d array can describe a hex grid as well as it describes a square grid.
<Vornicus> Anyway, without obstructions, a path is found almost trivially

If hex grids provided more efficient pathing, then why aren't all 2D computer games coded for a hex grid?

Because they are weird-looking, and most games are designed for the masses?

Slick December 3rd, 2006 05:26 PM

Re: SEV: Taking me to the edge of sanity
 
See, that's the thing. When a kooky theory conflicts with reality, it doesn't need to be argued. Hex map games (board games) have been around since well before your were born and most of them are still around. They sell just fine. They aren't wierd-looking. They are actually more natural looking and they map an area most efficiently for polygonal mapping. This is why you find hex grids in nature, but not square grids (honeycombs, crystal structure; there are many examples). The only thing more efficient is free movement. Yes, of course, these games are desinged for the masses, who else would they be designed for? But are you really trying to say that people wouldn't buy a hex map game because it is "wierd-looking"? Or are you trying to say that programmers fear a creating "weird-looking" product and fear that the "masses" wouldn't like it? That makes no sense at all. If the programmer was so worried about how it looked, he could easily use whichever grid system he chooses and not make the grid viewable, but we don't see that either; most grid games allow turning on the grid.

Fyron December 3rd, 2006 07:53 PM

Re: SEV: Taking me to the edge of sanity
 
Kooky theory? Geeze, sorry for hazarding a guess... Can you point out any mass-market (PC) games that used hexes? All I can think of use floating point or squares.

Anyways, this is all tangential to the point that hex grids don't necessarily require any more computational power than square grids...

President_Elect_Shang December 3rd, 2006 08:07 PM

Re: SEV: Taking me to the edge of sanity
 
Quote:

Imperator Fyron said:
Can you point out any mass-market games that used hexes?

Heroscape; but I agree the hex should be better than the square.

Phoenix-D December 3rd, 2006 08:26 PM

Re: SEV: Taking me to the edge of sanity
 
Quote:

Imperator Fyron said:
Kooky theory? Geeze, sorry for hazarding a guess... Can you point out any mass-market (PC) games that used hexes? All I can think of use floating point or squares.


Almost every wargame ever made?

Fyron December 3rd, 2006 08:32 PM

Re: SEV: Taking me to the edge of sanity
 
"mass-market" is an important qualifier there. Wargames are generally even more niche than TBS space opera games. http://forum.shrapnelgames.com/images/smilies/wink.gif

Possum December 3rd, 2006 08:33 PM

Re: SEV: Taking me to the edge of sanity
 
Quote:

Imperator Fyron said:
Kooky theory? Geeze, sorry for hazarding a guess... Can you point out any mass-market (PC) games that used hexes? All I can think of use floating point or squares.

Anyways, this is all tangential to the point that hex grids don't necessarily require any more computational power than square grids...

Panzer General used a hex grid

Possum December 3rd, 2006 08:35 PM

Re: SEV: Taking me to the edge of sanity
 
OMG, I think Fyron might be about to lose an argument!

Quick, call the Guiness book! http://forum.shrapnelgames.com/images/smilies/wink.gif http://forum.shrapnelgames.com/images/smilies/wink.gif http://forum.shrapnelgames.com/images/smilies/wink.gif

Fyron December 3rd, 2006 08:41 PM

Re: SEV: Taking me to the edge of sanity
 
Eh? I just said I couldn't think of any; I didn't say there weren't any. The argument was about computational efficiency anyways...

Possum December 3rd, 2006 08:58 PM

Re: SEV: Taking me to the edge of sanity
 
Just teasing you, bro http://forum.shrapnelgames.com/images/smilies/happy.gif

I personally don't have a clue which uses more resources for pathing calculations. But my personal prejudice is strong.

To me, hexgrids look "right" and "professional"

To me, square grids look "cheap", "cheesy", amateurish", and just plain "wrong".

Hey, I said it was prejudice, didn't I?

Raapys December 3rd, 2006 09:26 PM

Re: SEV: Taking me to the edge of sanity
 
I don't think it's necessarily the hexgrid that makes it slower. The problem seems to be that the game is recalculating the entire travel path each hex a ship move, instead of only doing it when encountering something that demands a path recalculation( i.e. an enemy ship blocking a warp point or occupying a hex in the middle of your travel route comes into sensor range, preventing your ship from moving further, therefor requiring recalculation of the path ).

Captain Kwok December 3rd, 2006 09:33 PM

Re: SEV: Taking me to the edge of sanity
 
Raapys is right - not to mention that fact it does it so much more as a ship can travel 10-15 hexes per turn.

Baron Munchausen December 3rd, 2006 10:38 PM

Re: SEV: Taking me to the edge of sanity
 
Quote:

Imperator Fyron said:
Slick said:
Except that your incorrect opinion does not reflect reality. Hex grids do require more math overall when compared to square grids.


More math overall? How so? You can find adjacent hexes exactly equivalently to square grids; the constant offset x,y coordinate values are different, but it is the same amount of math (add an x value, add a y value). You can efficiently represent and parse both hexes and squares in 2d arrays, with not much difference in computational complexity. We discussed this on IRC yesterday; some important bits:

<Vornicus> a hex system is just a square system with two specific paths disabled
...
<Vornicus> If you're looking at the linked object model, a hex only has six links where a grid has eight (and an ortho grid has four); if you're looking at the array index object model, then grid rejects (0,0) as nonadjacent, hex rejects x == y as nonadjacent, and orthogrid rejects (x + y) & 1 == 0 as nonadjacent
<Vornicus> it was a bit technical
<Vornicus> But the point is that a 2-d array can describe a hex grid as well as it describes a square grid.
<Vornicus> Anyway, without obstructions, a path is found almost trivially

If hex grids provided more efficient pathing, then why aren't all 2D computer games coded for a hex grid?

Because they are weird-looking, and most games are designed for the masses?

I think that what MM is doing is a very fine-resolution absolute coordinate system (x,y) underneath the display, and then figuring out what hex the ship(s) fall into after doing the coordinate calculation. In the early betas there was a lot of 'stuttering' as ships tried to decide what hex they were gonna land in. http://forum.shrapnelgames.com/images/smilies/happy.gif


All times are GMT -4. The time now is 06:52 AM.

Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©1999 - 2025, Shrapnel Games, Inc. - All Rights Reserved.