Sphereserver / Source-X

Ultima Online server emulator
Apache License 2.0
57 stars 45 forks source link

@famechange @karmachange issues #1118

Closed Soulless-1 closed 11 months ago

Soulless-1 commented 12 months ago

A recent commit seems to have rendered these triggers unusable, even in their prior state they were not robust but they were useful @famechange and @karmachange

https://github.com/Sphereserver/Source-X/commit/7de9bb49594f0a8274469012e625e687317c1cc6

assuming it would work like the following local.old = fame/karma before change local.new = fame/karma after change argn1 = amount it is changing

however it works like so. local.old = fame/karma before change local.new = local.old + argn1 (old karma + new karma combined) argn1 = total karma is set to

you can see that the changes are not necessarily very useful. i propose a change: argn1 = amount it's changing (adding/removing) (r/w) argn2 = the creature that triggered the change (if present) local.old = old value before the change local.new = new value after the change (r/w)

and i don't think that just setting the value on a character should set the trigger off. for a very important reason, karma and value changes are subjective based on the characters current values. Not every character gets the same amount, so if you make a proper system you will be doing formulas based off the target's fame+karma and the killers fame+karma. and if you want to just set karma on chardefs and/or characters in game you want the value set exactly as you typed it.

Soulless-1 commented 11 months ago

Thank you, i will test it this evening. closing, will re-open if needed. appreciate it.