Vote for Islands of Myth on Top Mud Sites
firstprevious1nextlast
Inform ReportSat Mar 16 16:37:37 2013 MST
Vor
admin
offline
avatar
I'm making this news post for two reasons. One is to explain the early reboot, and two is so that you can be on the lookout for bugs.



I'm going to use harmer examples cause I'm too lazy to think of others.



You may or may not know that Avatar of Talakh prevents you from being able to cast spells while it is up. You may or may not also know that in the middle of a harmer ritual, you are prevented from casting spells or using skills. Now you know that, so I can give an example of the now fixed issue.



If you are in Avatar of Talakh form, a flag is set on you that says 'this person cannot cast spells' basically. This effect can be either in the form of a function, which can manipulate the odds of whether or not you can't cast spells, or it can be a static 100% chance that just returns a message every time.



Now, let's say you are involved in a ritual. At this point, the ritual sets a flag on you that says 'this person cannot cast spells', and the flag set by Talakh is basically overwritten by the ritual's.



At this point, when the ritual is over and the flag is removed, there's nothing stopping you from casting spells as Avatar of Talakh.



To fix this, what I've done is basically make each separate flag retain its own information, and then when it checks to see if a flag is set, it gives it the list of flags that are appropriate to that action (skill or spell).



At this point, it is able to check all the flags, and it basically returns whichever one came first.



Also, if a flag is removed, it doesn't affect any other flags that are set.



The reason I had to reboot the mud is that I substantially changed the code, and it would have basically made the new system nonfunctional because the old code is already in effect. Neither set would have worked.



Anyway, if you notice anything odd, like being able to cast when you know you shouldn't or something, please let me know.
firstprevious1nextlast