-
Notifications
You must be signed in to change notification settings - Fork 53
Chars losing memory_ipet either by removal / override #1497
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
fix pets memory being removed
|
Isn't the Feels more like a workaround to the issue: not applying the memory instead of fixing, why the memory goes away. |
Yes it is - however without it, it happenes again. 😁 |
|
Latest change might be a more proper fix, as in here, the attacker combat memories are cleared, after the fight ends, however it doesnt check if by chance the memory isnt holding also memory_ipet of your owner.... |
|
Good thinking. So to sumarize: when you enter combat, you will get memory object linked to combatant or your existing memory will get flags. After combat, the memory gets removed, even if it has other flags. |
Im not sure what should be default behaviour. Keeping the combat flags on your owner memory or not. It kinda feel natural that the pet will still try to hit you after combat ends and he comes back to you, unless you commands him again. But in the same time, it feels weird. |
|
I'd fix it like this, if there is memory_ipet change the color to hold only memory_ipet (so even the pet stop the combat), if not remove the memory. |
So the issue is described in the #1472.
Basically your pet, if you hit him or cause dmg will lose flag memory_ipet from its memory after its done fighting, and goes back to "guarding" or "following you". After some delay, pet will start attacking you which is signal the memory is gone, and he is no longer your pet. However, he is still stuck in followerslots.
I found out this way you can protect it, so the memory_AddObjTypes are called only if its not your owner, and also no reason to call Attacker_Add on your owner.
This fix is working, pets are no longer missing memory_ipet after fight. Sometimes they still attack you back once they come to you, but thats probably normal since you didnt call any command yet, and they still remember you damaged them.