| 10-08-2006, 08:03 PM | #1 |
What do we have here? Yes, I probably found why would disease cloud cause problems but I think I need testers to mass test this spell again to confirm it doesn't have bugs anymore. So I can come to a conclusion and not just a guess. Oh yes, if you find a bug please attach a replay, if you don't have a replay don't bother reporting the bug ... |
| 10-09-2006, 06:40 AM | #2 |
Wel, I tested for 25 minutes and couldn't get any bug to occur. However, to avoid these bugs, must all maps be this much bigger than their actual playable area? Seems... unpractical. |
| 10-09-2006, 01:05 PM | #3 |
no, I made it so big so we were sure that the bugs weren't caused at all by the border, and in the latest tests the borders were not involved at all and there were still bugs. But the borders used to cause problems. From my empiric experience the map should only be 2 tiles bigger at each edge. |
| 10-09-2006, 01:36 PM | #4 |
Will test it later, hopefully you fixed the bug (banned disease cloud in it's original orm from my map, and since that time, no unresonable bugs/crashes/errorMsgs appeared) |
| 10-09-2006, 05:07 PM | #5 |
ummmm. maybe i miseed something, but how exactly is disease cloud causing bugs? |
| 10-09-2006, 05:41 PM | #6 |
When a disease cloud gets damaged by some unit. It seems to be the reason for one of the bugs which appeared on the hydra spell (-map). |
| 10-09-2006, 06:35 PM | #7 |
hmm tested for like 20 minutes, no bug well i did say the disease cloud MIGHT be the problems >.< anyway vex congrats for being able settle down the hydra spell X) |
| 10-10-2006, 12:59 AM | #8 | |
Quote:
if it is true that this version doesn't have a bug then the problem is with adding disease clouds to groups that last more than an instant |
| 10-10-2006, 06:51 AM | #9 |
100% it was a CSCache bug !... oh yes i test it over ~23 minutes and get NO bug. so is allright ! but enable other abilitys ;) and test together because map don't have only 1 spell =) i mean we must make more realystical tests ! |
| 10-10-2006, 07:21 AM | #10 |
@Toadcop: Vex and testers like me isolated the cause of the bugs. So you should be quite, stating things nobody ever expirienced and is just guess of your mind. @Vex: Good Job! So we never should use diseaseclouds in a map at all to fix the probleam (at least it's the easiest way to trigger it)? |
| 10-10-2006, 01:30 PM | #11 | |
Quote:
Variety of spells by itself wouldn't make a difference considering that I tested with plenty of instances of hydra so there isn't anything like limits involved. And whoever said I am not going to test the other spells. But it is kind of obvious that a problem with one spell can cause problems with the rest, that's the reason I am isolating them. --- Edit: There was a CSCache bug , a very minor one that doesn't look as it could be a good cause for this, it was fixed and the bugs were still there. The only things that seem to really be a cause of the problem are disease cloud, the map border, timers and miss use of FirstOfGroup , I also replaced collisionmissiles' location based linked list with an array as well as the Array allocator and deallocator with pair based linked lists. Location basedThey were not the cause of the problem but they made the system very vulnerable to problems that cause handle index corruptions. I also added a timer recycler it did not solve the problem that later turned to be caused by disease cloud, it probably fixed another issue, the real reason for using the timer recycler is for speed and simplicity. I also used Griffen's assigning solution for triggers which could have fixed the DestroyTrigger bug or do nothing at all but I think it is a really good idea to use a local to ensure the game knows it is a trigger value. I also fixed a couple memory leaks it seems I wasn't awake when I wrote this spell (that happens) and that some guys were not awake either cause they were rather obvious leaks. --- Making your own disease cloud is easier than making every spell disease cloud-immune. |
| 10-10-2006, 05:48 PM | #12 |
@Vex, I looked though the Hyrda code and do not see where you used this new destroy trigger deally, maybe I missed something, but I am interested to see it and use it |
| 10-10-2006, 06:45 PM | #13 |
hydra itself doesn't use triggers, collision missiles do and what Griffen did was just assign a local to the trigger before destroying it and then he even set it to null. For example instead of call DestroyTrigger(GetSomeTriggerWithReturnbug()) he is doing: set t=GetSomeTriggerWithReturnbug() call DestroyTrigger(t) set t=null |
| 10-10-2006, 06:53 PM | #14 |
I also did it with the trigger actions, which, with my rather small scale testing, appeared to be just as significant, if not more, though Vex may have found different results (mine were far from conclusive). |
| 10-10-2006, 06:56 PM | #15 |
I actually think that should be done for every handle to be removed, not really because they can cause problems but just in case and for legibility's sake. |
