xp.VAR_TOP_GROUP stores the GROUP object ID when the top attacker is in
a group, not an individual player. The isPlayer() guard in addRareLoot()
was then failing immediately, preventing any RLS chest from spawning
whenever players were grouped.
Pick a random member of the group as the RLS recipient, consistent with
how other group loot mechanics work in the codebase.
Fixes#343
chest stores tier + quality
ground chest path is guarded
space chest menu/open path exists
reward table lookup moved to open time
quality matching supports all and pipe lists
item-type dispatch stubs are ready
The buildout utility should now work on all scenes, including Kashyyyyk and Mustafar without the need to check scenes and performs better coordinate checking.
Also adds additional JNI call (additional PR in src repo)
This fix adds an effect map to build a buff, which allows multiple buffs to be applied to an effect. This fixes the trader assembly buff, which only applied food_assembly. The mapping table allows multiple assembly buffs to be applied without hard coding. This fix also makes a change to the experience buff. The trade buffs also apply an experience bonus, but were not limited to crafting. The XP buff provides an additional buff, to chronicler xp.
I moved the xp application to a common function, and they no longer overwrite each other. The highest buff is applied.
I did a partial refactor to make the code easier to follow. This refactor is limited to the build a buff handlers.
If an item on an NPC vendor is no trade you can get a permissions error when you attempt to purchase the item. Aconite gave me this fix, and I am including it from my private repo.