View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0000580 | Spring engine | General | public | 2007-08-10 12:55 | 2008-01-05 19:57 | ||||
Reporter | imbaczek | ||||||||
Assigned To | imbaczek | ||||||||
Priority | normal | Severity | major | Reproducibility | always | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0000580: area reclaim sometimes orders units to reclaim outside the defined circle | ||||||||
Description | How I reproduced it: - give 3 cons - have two groups of flashes fight each other - issue area reclaim over one group | ||||||||
Additional Information | in the demo, do a .team 3 after all 3 groups of flashes start fighting. or better, do a .skip 60 right after start. replay is recorded in r4171. | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|
imbaczek (reporter) 2007-08-10 14:15 |
it seems that features can get reordered and change their ids. here's some output from logging attached to SlowUpdate: [snip] rec feat: 236 treetype7 rec feat: 155 treetype12 Flash: Can't reach destination! Flash: Can't reach destination! Flash: Can't reach destination! Flash: Can't reach destination! rec feat: 236 armflash_dead [snip] |
Pendrokar (reporter) 2007-08-10 15:00 |
A lot of people have have had this, but no one knows how to reproduce it or when they happen! |
Kloot (developer) 2007-08-10 15:02 Last edited: 2007-08-10 15:03 |
Possible workaround: save the reclaim position p and radius r in each reclaim command queued in FindReclaimableFeatureAndReclaim(), then check if a feature lies within r of p when the unit executes that command in ExecuteReclaim(). |
imbaczek (reporter) 2007-08-10 15:24 |
That will work, but it's a pretty clumsy hack. IMO the root cause of this needs to be found and fixed. I'm investigating the issue for 4 hours now and thank God grep doesn't mind being abused. |
Kloot (developer) 2007-08-10 15:43 |
It would be about as clumsy as r4170. ;) You're right though, the solution should be more structural. |
imbaczek (reporter) 2007-08-10 16:02 |
r4170 closes potential exploits (not tested this, hopefully trepan thought about it somewhere else) from LuaUI side and also is the definite safeguard against a very ugly cheat in case of a regression somewhere, so it's not that bad ;p Anyway, the problem is somehow connected with CFeatureSet and free IDs, not sure what and where exactly, but for now it seems that a used feature ID gets freed... still hunting. |
imbaczek (reporter) 2007-08-10 16:23 |
Got it. When the reclaim finishes, the reclaimed feature is put on a blacklist to delete it sometime later, but the reclaim command stays. If the reclaimed feature id is in the meantime recycled (presumably during the same Update or SlowUpdate or whatever, don't know too much about what happens when in spring yet), the reclaimer thinks that it didn't finish its job. I'll commit a fix soon. |
imbaczek (reporter) 2007-08-11 00:33 |
fixed in r4174. |
tvo (reporter) 2008-01-05 12:12 |
This still happens occasionally. Maybe the time before an ID is reused should be higher? |
imbaczek (reporter) 2008-01-05 14:07 |
do you have a replay? attached a replay that shows how to try to reproduce the bug. BA591, revision around 5260. |
NOiZE (reporter) 2008-01-05 15:21 |
Uploaded a replay of a rather long game which shows the bug: 080105-Comet Catcher Redux-0.76b1.sdf BA60 Spring 76b1 |
imbaczek (reporter) 2008-01-05 16:14 |
noize: any hints what to look after and when? |
NOiZE (reporter) 2008-01-05 16:28 |
@ 18:00 you see a conveh in the middle of the map with the bug |
imbaczek (reporter) 2008-01-05 18:22 |
Guess I didn't fix the issue, I just made the probability low enough for this to not happen in my tests. At least it's repeatable. |
imbaczek (reporter) 2008-01-05 19:57 |
hopefully fixed again in r5275 (in the provided replay convehs don't wander anymore.) |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2007-08-10 12:55 | imbaczek | New Issue | |
2007-08-10 12:55 | imbaczek | File Added: 070810-SmallDivide-0.75b2+-2.sdf | |
2007-08-10 12:57 | imbaczek | Additional Information Updated | |
2007-08-10 13:04 | imbaczek | Additional Information Updated | |
2007-08-10 14:15 | imbaczek | Note Added: 0001069 | |
2007-08-10 15:00 | Pendrokar | Note Added: 0001070 | |
2007-08-10 15:02 | Kloot | Note Added: 0001072 | |
2007-08-10 15:03 | Kloot | Note Edited: 0001072 | |
2007-08-10 15:03 | Kloot | Note Edited: 0001072 | |
2007-08-10 15:24 | imbaczek | Note Added: 0001073 | |
2007-08-10 15:43 | Kloot | Note Added: 0001074 | |
2007-08-10 16:02 | imbaczek | Note Added: 0001075 | |
2007-08-10 16:23 | imbaczek | Note Added: 0001076 | |
2007-08-11 00:33 | imbaczek | Status | new => resolved |
2007-08-11 00:33 | imbaczek | Resolution | open => fixed |
2007-08-11 00:33 | imbaczek | Assigned To | => imbaczek |
2007-08-11 00:33 | imbaczek | Note Added: 0001077 | |
2008-01-05 12:12 | tvo | Status | resolved => feedback |
2008-01-05 12:12 | tvo | Resolution | fixed => reopened |
2008-01-05 12:12 | tvo | Note Added: 0001721 | |
2008-01-05 14:07 | imbaczek | Note Added: 0001727 | |
2008-01-05 14:08 | imbaczek | File Added: reproducing-howto.sdf | |
2008-01-05 15:20 | NOiZE | File Added: 080105-Comet Catcher Redux-0.76b1.sdf | |
2008-01-05 15:21 | NOiZE | Note Added: 0001728 | |
2008-01-05 16:14 | imbaczek | Note Added: 0001730 | |
2008-01-05 16:28 | NOiZE | Note Added: 0001732 | |
2008-01-05 18:22 | imbaczek | Note Added: 0001735 | |
2008-01-05 19:57 | imbaczek | Status | feedback => resolved |
2008-01-05 19:57 | imbaczek | Resolution | reopened => fixed |
2008-01-05 19:57 | imbaczek | Note Added: 0001736 |