[Known 9923] Image Projection and summoning
Galactygon
Member, Developer Posts: 412
Existing behavior: Limits to the number of summoned creatures do not apply if cast via a projected image or simulacrum spellcaster.
Expected behavior: Summoning limit applies to simulacrum/project image as well.
How to reproduce this: Try summoning multiple planetars after casting project image/simulacrum.
My theory on why it functions like this: Whenever some .cre attempts a summon, the engine first checks whether the .cre is in the party to determine whether or not values SUMMLIMIT.2da are checked against the total number of summons. As it turns out projected images and simulacra qualify as "not in the party", so just like enemies they are exempt from the summoning limit. What we are dealing here is hardcoded behavior.
Suggested implementation: Make the engine check whether LastSummoner is an image projection/simulacrum of a PC as well. This can be done by checking if LastSummoner.cre is carrying an effect that uses opcode 237 (Puppet ID) and whether it is set to 0-5. You can read how opcode 237 works in DevSin's old post:
http://forums.gibberlings3.net/index.php?showtopic=6083&p=56836
EDIT: Name of the thread
Expected behavior: Summoning limit applies to simulacrum/project image as well.
How to reproduce this: Try summoning multiple planetars after casting project image/simulacrum.
My theory on why it functions like this: Whenever some .cre attempts a summon, the engine first checks whether the .cre is in the party to determine whether or not values SUMMLIMIT.2da are checked against the total number of summons. As it turns out projected images and simulacra qualify as "not in the party", so just like enemies they are exempt from the summoning limit. What we are dealing here is hardcoded behavior.
Suggested implementation: Make the engine check whether LastSummoner is an image projection/simulacrum of a PC as well. This can be done by checking if LastSummoner.cre is carrying an effect that uses opcode 237 (Puppet ID) and whether it is set to 0-5. You can read how opcode 237 works in DevSin's old post:
http://forums.gibberlings3.net/index.php?showtopic=6083&p=56836
EDIT: Name of the thread
Post edited by Galactygon on
0
Comments
Thanks