View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0002898 | Spring engine | Lua | public | 2012-01-03 01:19 | 2012-07-28 20:29 | ||||
Reporter | Google_Frog | ||||||||
Assigned To | Kloot | ||||||||
Priority | normal | Severity | major | Reproducibility | random | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | 85.0 | ||||||||
Target Version | 86.0 | Fixed in Version | 89.0.1+git | ||||||
Summary | 0002898: Game ends with no Spring.GameOver call | ||||||||
Description | The attached game ends 10 seconds after it has started. This was thought to be a bug with our game over handling gadget but I have discovered that Spring.GameOver is never called. At line 163 of the gadget is the old Spring.GameOver call that exists in the mod, directly before it is an echo which cannot be found in the infolog. "function gadget:GameOver()" can be seen to have run as an associated echo occurs in the infolog. As I far as I know the lua controllable game over system should cause "function gadget:GameOver()" to run only after a Spring.GameOver call. | ||||||||
Additional Information | Game: http://zero-k.info/Battles/Detail/45542 Gadget: http://code.google.com/p/zero-k/source/browse/trunk/mods/zk/LuaRules/Gadgets/game_over.lua?r=4801 | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|
jK (developer) 2012-01-03 06:28 |
It's an autohost issue, need its infolog/stdout for debugging. |
Google_Frog (reporter) 2012-01-04 13:42 |
Springie infolog http://pastebin.com/CNy7S3i1 |
Licho (reporter) 2012-01-04 13:55 |
Its not autohost issue. SERVER_GAMEOVER = 3 was sent through autohost interface to the autohost thats why it quit. There is also (perhaps related) issue when dedicated sends multiple SERVER_GAMEOVER when game ends (as many as there are teams or players). This is new from 84 or 85 |
zwzsg (reporter) 2012-01-09 22:14 |
I had the same problem. Here's how it goes: - The isCommander tag has been removed from the engine - My own game_over.lua gadget detect that no team has any units satisfying UnitDef.isCommander - My own game_over.lua gadget thus Spring.KillTeam every team - Spring.GameOver is NOT called because there are no winners! (everybody lose) |
Google_Frog (reporter) 2012-01-10 09:51 |
If you Spring.KillTeam every team does 'function gadget:GameOver()' happen? |
FLOZi (reporter) 2012-01-10 10:58 |
Not by the engine, depends on your gadget, afaik. |
Licho (reporter) 2012-01-10 13:57 |
so spring can do game over and gadget gameover is not called? Yeah that would be consistent with what happens. |
SirMaverick (reporter) 2012-01-11 11:27 |
> so spring can do game over and gadget gameover is not called? I don't see that in source code. Only path I see: Spring.GameOver (LuaSyncedCtrl) -> Game::GameEnd -> GameOver (callin) One possible explanation: someone is faking the GameEnd network message to server, which is broadcasting it. |
Kloot (developer) 2012-07-28 20:29 |
assuming this was a duplicate of 0003193 |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2012-01-03 01:19 | Google_Frog | New Issue | |
2012-01-03 06:28 | jK | Note Added: 0008077 | |
2012-01-04 13:42 | Google_Frog | Note Added: 0008081 | |
2012-01-04 13:55 | Licho | Note Added: 0008082 | |
2012-01-09 22:14 | zwzsg | Note Added: 0008104 | |
2012-01-09 23:09 | abma | Target Version | => 86.0 |
2012-01-10 09:51 | Google_Frog | Note Added: 0008127 | |
2012-01-10 10:58 | FLOZi | Note Added: 0008128 | |
2012-01-10 13:57 | Licho | Note Added: 0008129 | |
2012-01-11 11:27 | SirMaverick | Note Added: 0008131 | |
2012-07-28 20:29 | Kloot | Note Added: 0009090 | |
2012-07-28 20:29 | Kloot | Status | new => resolved |
2012-07-28 20:29 | Kloot | Fixed in Version | => 89.0.1+git |
2012-07-28 20:29 | Kloot | Resolution | open => fixed |
2012-07-28 20:29 | Kloot | Assigned To | => Kloot |