Page 2 of 2
Re: Single Player Save Game Needed
Posted: 27 Aug 2009, 15:32
by zwzsg
AF wrote:This mechanism in the end results in the AI suffering a setback because any logical processes and things its tracked based on that current game have gone.
Yes. But not an issue. The issue is that any player should be able save / load without having a crash. That AIs suffer a couple second of confusion before re-assigning task, is something that no one but AI devs would notice. Make something that works, instead of planning something perfect that is never getting done.
I don't know if you play other RTS than Spring, but on many commercial RTS, savegames are not perfect. Order queue are not restored, in-flight shots are not restored, I even saw one where explored region under fog of war was not restored. Yet no one complains about that.
Savegame need not to be perfect. They need to restore what's important, and can drop the rest.
Re: Single Player Save Game Needed
Posted: 01 Sep 2009, 19:24
by AF
Just because other people made the mistake doesnt excuse us from making it.
And Hoijui, this is because AIs tend not to track long chains of commands and logics, they never think very far ahead in terms of the actions of a single unit.
Just because it doesnt occur in the current active AIs does not mean the problem does not exist, and I'm sure if we started being pedantic we would find lots of tiny non-issues arising from this, but I can see that it could become more than a non-issue depending on how an AI works.
You are saying:
We should not put tracks on tanks because our prototype tanks dont need to drive anywhere
Re: Single Player Save Game Needed
Posted: 01 Sep 2009, 20:51
by hoijui
You are saying:
Re: Single Player Save Game Needed
Posted: 01 Sep 2009, 21:02
by Argh
LOL.
OK, I will jump into this fracas.
Things that a save-game state should store:
1. Units and resources. Hoijui, did the multiple-resource thing ever get committed btw?
On AIs:
If the AI needs storage of its full state, in order to reinitialize properly, then it's probably very badly designed. It should read whatever resources it possesses when it gets them. It bothers me to no end that pretty much all of the AIs on this engine have extreme issues if you give them Units- allowing for this to happen should be part of any sensible AI design.
Things that a save-game state can't store, without a full state save:
1. Lua custom gameplay states. In the future, the GG. and WG. tables should be stored in savegames, so that on ShutDown() events in Lua, the entire logical state of Lua can be stored, if necessary.
2. Projectiles. I don't think we should store projectiles at all. That's going to offend some folks, but I think it would take a lot of storage to do it correctly.
3. COB states / Piece positions. Again, too much size for too little benefit.
4. CEG states. Ditto. Besides which, at some point fairly soon we should be moving away from CEG entirely.
Re: Single Player Save Game Needed
Posted: 01 Sep 2009, 22:12
by hoijui
Ais handle units given to them pretty well by now.
Of course, in a perfect world, saving all the state is best, whether in the engine or in AIs.
I cna only speak for AIs and say.. no matter how much you argue, it is not going to happen. Every AI has the possibility to do it, but they dont, as it is practical nonsense.
And plsease stop the arguing!
You see...
It is possible, AI devs can alreayd do it if they want, but dont have to, and can rely on units given to them again when the game is loaded.
So AF, there is nothign to beg for.
The Loading/Saving ha sot be fixed, and someone has to do it.
Talking about the details what it should be like is pointless, as you wont do it.
Re: Single Player Save Game Needed
Posted: 03 Sep 2009, 16:04
by AF
UnitCreated and UnitFinished may be called in this manner even when full saving is implemented when an AI takes control of a team, etc etc
What I am asking for is the flexibility for me to be able to do things that are currently not possible because of an ambiguity in the API.
I am asking for the following:
Instead of using UnitCreated(); UnitFinished(); I would like a specific new callback allowing me to distinguish between these events, because I would like the option of implementing different behaviours in my AI. Existing AIs need only shove UnitCreated(); and UnitFinished(); in this function.
If you are correct then there is no loss in implementing my request.
If I am correct then I can prove you all wrong in code.
Eitherway as an AI developer, I can see a use for this. Even if you cannot, this is something I require, and just because the current AI designs in use do not require it, does not mean that your API is foolproof.
Re: Single Player Save Game Needed
Posted: 03 Sep 2009, 18:17
by hoijui
if you want to do special things when loading form a save game, use the laoding method, and get the list of units for your team.
if you want to do something special when initializing mid-game, check the frame num when initializing.
Re: Single Player Save Game Needed
Posted: 04 Sep 2009, 11:22
by Forboding Angel
Argh wrote:
Besides which, at some point fairly soon we should be moving away from CEG entirely.
Yeah, no. Fuck a bunch of that noise.
Re: Single Player Save Game Needed
Posted: 04 Sep 2009, 12:18
by smoth
Forboding Angel wrote:Argh wrote:
Besides which, at some point fairly soon we should be moving away from CEG entirely.
Yeah, no. Fuck a bunch of that noise.
I concur, not happening.
Re: Single Player Save Game Needed
Posted: 04 Sep 2009, 20:37
by REVENGE
smoth wrote:Forboding Angel wrote:Argh wrote:
Besides which, at some point fairly soon we should be moving away from CEG entirely.
Yeah, no. Fuck a bunch of that noise.
I concur, not happening.
Just curious, what sort of alternative to CEG?
Re: Single Player Save Game Needed
Posted: 04 Sep 2009, 21:23
by Forboding Angel
Argh is probably thinking of lups, which is absurd.
Re: Single Player Save Game Needed
Posted: 05 Sep 2009, 01:27
by Argh
No, I'm thinking about stuff I'm doing.
Re: Single Player Save Game Needed
Posted: 05 Sep 2009, 01:34
by smoth
REVENGE wrote:Just curious, what sort of alternative to CEG?
Currently lups. Lups does not work on all cards and it does not yet cover all ceg behaviors.
Argh, given past rampages of yours most of us, not saying who but I'll be the bad guy and say it AGAIN... eye anything you give as subject to removal and or drama from you later.
there is a distinct feeling that anything from you is somewhat tainted but your need to own things.