Fix#392 - /gm tag implemented
eg.
/gm tag faction x icon_id (where x is the faction id)
/gm tag spawngroup x icon_id (where x is 1 for spawngroups, 0 for non spawngroups)
/gm tag race x icon_id (where x is the race id or base race id)
/gm tag groundspawn icon_id (tags all groundspawns with the icon id)
icon ids:
1 = skull, 2 = shield half dark blue / half light blue, 3 = purple? star, 4 = yellow sword, 5 = red X, 6 = green flame
7 = Number "1", 8 = Number "2", 9 = Number "3", 10 = Number "4", 11 = Number "5", 12 = Number "6"
25 = shield, 26 = green plus, 27 = crossed swords, 28 = bow with arrow in it, 29 = light blue lightning bolt
30 = bard instrument (hard to see), 31 = writ with shield, 32 = writ with green +, 33 = writ with crossed sword
34 = writ with bow, 35 = writ with light blue lightning bolt, 36 = same as 30, 37 = party with crossed sword, shield and lightning bolt
38 = shaking hands green background, 39 = shaking hands dark green background, unlocked keylock
40 = red aura icon with black shadow of person and big red aura, 41 = green aura icon with black shadow of person big green aura
"tag1" added to info struct as a UInt8
- More LUA Interface cleanup
- Zoning spruced up, we track incoming clients to a zone and also can emergency bootup a zone should it not be ready for incoming clients.
Also resolves crashes related to group members
Trying to target a spawn the client doesnt' have (index wise) crash fix
resetting hp on runback only when previously in combat
Added LUA StopTimer(Spawn, "function_name") support, leave the function_name as an empty string to delete ALL timers tied to the spawn
LUA Functions cleanup continues, reset function stack after arguments are obtained (on-going patch work)
Fix#376 - resolved spells with duration until cancel blinking after zoning
Fix#375 - hard coded activity status to solid/transport flags on lifts/boats resolves falling through lifts when moving on them
Additional crash fixes:
- stats clearing when calculating bonuses on entity
- Player equipment mutex lock protection
- Fix GetFactionAmount to be Signed Integer
- Crash fix spell removal on zone shutdown when player already left
- PlayerItems mutex fixes
- Movement Location mutex fixes
Fix#121 - Can use /reload luasystem and /reload spells without causing a crash
Log messages at spell/warning level for NPC casting when it doesn't have enough mana/concentration/etc
Fixed additional ASan issues:
Fix#370Fix#371Fix#372Fix#373
- healthchanged function for SpawnScripts can now return a modified health. healthchanged also now receives a third argument, Damage
eg function healthchanged(Spawn, Attacker, Damage)
-1 = immune (hit damage is set to 0)
0 (or no return) = default damage
1 or higher = new damage (before wards/procs take place)
- Fixed locking issues with player quests when calling /reload quests
- AddQuestStep now supports spawn ids as arguments 9+ (after the usableitemid) -- this will also set the quest flag icon that you would similarily see in a QuestStepKill noting a Spawn is involved with the quest
- Fixed ruleset error message to only display if we don't get a ruleset id
- Fixed a ASam crash in spawn_update_packet, didn't like our null_byte use. Changed it to not bother since we memset the data, it is already a 0x00 byte no reason to memcpy it in.
Fix#366 - loot_global support for loot_tier
Fix#355 - support for item stat 7xx range, subsequently fixed some issues with spell updates and providing inventory stats reflecting changes to those spells.
#define ITEM_STAT_SPELL_DAMAGE 700
#define ITEM_STAT_HEAL_AMOUNT 701
#define ITEM_STAT_SPELL_AND_HEAL 702
#define ITEM_STAT_COMBAT_ART_DAMAGE 703
#define ITEM_STAT_SPELL_AND_COMBAT_ART_DAMAGE 704
#define ITEM_STAT_TAUNT_AMOUNT 705
#define ITEM_STAT_TAUNT_AND_COMBAT_ART_DAMAGE 706
#define ITEM_STAT_ABILITY_MODIFIER 707
Fix#369 - added error message if a global ruleset not defined in variables eg.
22:46:34 E Rules : Variables table is missing default_ruleset_id variable name, this means the global rules will be code-default, database entries not used. Use query such as "insert into variables set variable_name='default_ruleset_id',variable_value='1',comment='Default ruleset';" to resolve.
Fix#268 - inadvertently display works fine most of the time, except if you cross zone the group was broken and unrecoverable due to bad saving of the group_id.
I am re-using the rejoin_group_id to set that as the default DB value in case the player loses its group temporarily when we zone them.
Fix#367 - Put additional protection to rest of player_quests calls, using read/write locks now also
Fix#363 - Added rule R_Loot, SkipLootGrayMob, default is on "1". Set to "0" to allow chests and 'non body' or 'non quest' drops from gray mobs
Fix#362 - Removed charge based items when charges depleted
Fix#255 - Added World Time LUA Functions
int16 = GetWorldTimeYear()
sint32 = GetWorldTimeMonth()
sint32 = GetWorldTimeHour()
sint32 = GetWorldTimeMinute()
SetWorldTime(int16 years, sint32 months, sint32 hours, sint32 minutes)
SendTimeUpdate()
- Additionally fixed camping and logging back in immediately, there was a 30 second delay. That is no longer the case.
- Fixed effective level updating on level changes, this prevents the unexpected purple inventory and mentor level display