Commit graph

1139 commits

Author SHA1 Message Date
Image
907d9731d3 Exe Update 2021-03-13 09:52:19 -05:00
Image
22ef3e0557 Complete persisting of buff spells cross zone
Complete Fix 

- Other players pets (grouped) will persist buffs, non-grouped direct target also persist
- Save spell state added to persist beyond the self player since targets/spells can evolve rapidly with other players/npc/pets in the mix, resulted in two new rules:
	RULE_INIT(R_Spells, PlayerSpellSaveStateWaitInterval, "100"); // time in milliseconds we wait before performing a save when the spell save trigger is activated, allows additional actions to take place until the cap is hit
	RULE_INIT(R_Spells, PlayerSpellSaveStateCap, "1000"); // sets a maximum wait time before we queue a spell state save to the DB, given a lot can go on in a short period with players especially in combat, maybe good to have this at a higher interval.
2021-03-13 09:52:00 -05:00
Image
6d66417584 Exe Update 2021-03-10 22:28:52 -05:00
Image
6a95d4657f Restored spell queueing support
Fix 
2021-03-10 22:28:39 -05:00
Image
ae740819ce Exe Update 2021-03-10 08:50:47 -05:00
Image
c989aaea1b few locks just in case 2021-03-10 08:50:41 -05:00
Image
78495169d0 Exe Update 2021-03-10 08:41:04 -05:00
Image
a30f1e6747 Fix far journey to use GiveQuestItem not GiveImmediateQuestReward 2021-03-10 08:39:55 -05:00
Image
a718618909 lua_file set to not include default value since mysql is picky 2021-03-10 08:37:23 -05:00
Image
3d3ea08dde Albireo Update (persisting spells cross zone between group members, self pet, and more)
- /spawn details now includes the stat / base stats (STR/AGI/STA/INT/WIS) of an entity (NPC/PET/Player)
- SetInfoStructUInt and GetInfoStructUInt now support interaction_flag, when not set we will default to 12 which is looking at other players nearby.
- Fixed NPCs / Pets having spell bonuses, base stats updated (sta/str/agi/wis/int)
- Deprecated GiveImmediateQuestReward
- With spell persistence (groups, direct target and self pet) added new rule options for cross zone buffs:
	RULE_INIT(R_Spells, EnableCrossZoneGroupBuffs, "0"); // enables/disables allowing cross zone group buffs
	RULE_INIT(R_Spells, EnableCrossZoneTargetBuffs, "0"); // enables/disables allowing cross zone target buffs
2021-03-10 08:36:46 -05:00
Image
92bd67d314 Forgot to set FizzleDefaultSkill rule 2021-03-10 07:53:03 -05:00
Image
49bb456594 Send biography packet only if the biography is set 2021-03-10 07:52:50 -05:00
Image
0cb26e084d Fixed the camel case function for classes to upper case the first character AFTER setting to lower case 2021-03-10 07:52:04 -05:00
image
81491f4b33 Merge branch 'merchantfixes' of TesterOrg/EQ2EMuTestBranch into master
Appreciate the fix, 0xFF is ok for server side, client needs 0xFFFF for certain quantity fields to blank out the quantity I guess is the difference to note.
2021-03-09 12:15:08 +00:00
Joseph Re
f58dbc90eb treat >0xFF as infinite quantity instead of >0xFFFF 2021-03-08 23:35:19 -06:00
devn00b
70f6b22e0c Update to Pathing 2021-03-07 06:41:32 +00:00
Image
c6a4c65113 Exe Updates 2021-03-06 17:35:13 -05:00
Image
fe70bba3b0 DB Updates 2021-03-06 17:33:10 -05:00
Image
7f03a88414 structure updates 2021-03-06 17:32:07 -05:00
Image
963d40521e Albireo Stage First Update
Issue  - partially implemented cross zone spells.  Buffs will cross with you for self, group spells can re-attach if the caster enters the zone first.  Pet spells will recreate the pet, but name and other buffs to the pet do not persist cross zone.  WORK IN PROGRESS!!

Fix  - no sale option supported on merchants and saved to database, see additionalfields_mar6_2021.sql

Fix  - mastery skills all update now and relate to fizzle (ordination, ministration, etc)

Fix  - fizzle support added
	RULE_INIT(R_Spells, EnableFizzleSpells, "1"); // enables/disables the 'fizzling' of spells based on can_fizzle in the spells table.  This also enables increasing specialized skills for classes based on spells/abilities.
	RULE_INIT(R_Spells, DefaultFizzleChance, "10.0"); // default percentage x / 100, eg 10% is 10.0
	RULE_INIT(R_Spells, FizzleMaxSkill, "1.2"); // 1.0 is 100%, 1.2 is 120%, so you get 120% your max skill against a spell, no fizzle
	RULE_INIT(R_Spells, FizzleDefaultSkill, ".2"); // offset against MaxSkill to average out to 100%, default of .2f so we don't go over the threshold if no skill

Fix  - Brokers now use /frombroker instead of /itemsearch to show correct icon (money stack like merchants)

Fix  - implemented selling for status, no buy back, city merchant type (set merchant_type in spawn to 64) allows selling for status
2021-03-06 17:32:00 -05:00
Image
69ac4a9649 Exe Update 2021-03-01 09:37:33 -05:00
Image
db6f98058d crash fix on quests due to uninitialized value 2021-03-01 09:37:27 -05:00
Image
2b1f07ebb0 attempt to fix duplicate quest message updates 2021-03-01 09:37:13 -05:00
Image
bd7ce48636 Versioning updated to 0.9.1 albireo 2021-03-01 09:36:56 -05:00
Image
5057dcf9ee Exe Update 2021-02-28 09:07:54 -05:00
Image
941fa4dd77 cleanup on QuestStep constructor 2021-02-28 09:07:49 -05:00
Image
8d943b8c42 fixed collection items throwing a no quest found error in logs 2021-02-28 09:07:35 -05:00
Image
276dd356b6 disabled paperdoll, causing memory corruption to load the packet data 2021-02-28 09:07:25 -05:00
Image
b7f9187455 Merge branch 'master' of http://git.eq2emu.com:3000/devn00b/EQ2EMu into master 2021-02-28 07:58:00 -05:00
Image
b79d0a96ee Exe Update 2021-02-28 07:57:46 -05:00
Image
03890860f3 DB Update 2021-02-28 07:57:41 -05:00
Image
80bb342256 End of Sirius Feb 2021 Stage
Fix  - Added a caching of state to send a single shoot of visual state.  When setting visual states for chests it was causing opening/closing of the chest if you were not already in range of it.  See SendStateCommand and ProcessStateCommands in client.cpp for more

Fix  - Integrated GiveQuestItem into the Client::DisplayQuestComplete / Client::AcceptQuestReward process.  There is support for temp rewards/status/coin.
LUA Functions added, ONLY CALLED BEFORE GiveQuestItem, NOT to be used with GiveQuestReward
SetStatusTmpReward(quest, status)
SetCoinTmpReward(quest, coin)

- Also addressed quests not updating properly in the journal where sub tasks would completely disappear

Fix  - AoM client Addressed hot swapping a bagged item to equipment slots poofing the item.  Note: DoF client seems to have inventory issues of its own, those are not addressed here

Fix  - Chests have new rules for exposure times
	RULE_INIT(R_Loot, ChestUnlockedTimeDrop, "1200"); // time in seconds, 20 minutes by default, triggers only if AllowChestUnlockByDropTime is 1
	RULE_INIT(R_Loot, AllowChestUnlockByDropTime, "1"); // when set to 1 we will start a countdown timer to allow anyone to loot once ChestUnlockedTimeDrop elapsed
	RULE_INIT(R_Loot, ChestUnlockedTimeTrap, "600"); // time in seconds, 10 minutes by default
	RULE_INIT(R_Loot, AllowChestUnlockByTrapTime, "1"); // when set to 1 we will allow unlocking the chest to all players after the trap is triggered (or chest is open) and period ChestUnlockedTimeTrap elapsed

Fix  - Prevent stacking of food / drink effects.  Also added spell_type Food and Drink to enumeration.  When these are set it tells the server these are unique effects to food/drink and cannot stack with other consumed items.

In conjunction with this fix, auto consume is implemented (while in zone).  Flips the auto consume on/off option as well as 'yellow tints' the background behind the auto consume options when 'on'.

Issue  has been created to allow 'cross zone' of maintained effects / effects on the player.

- Few additional fixes:
  *  if you remove an item from inventory and there is a dialog screen, you can now close it (see last parchment in Taint quest before main boss mob, it wasnt letting you put the parchment away).
  * equipment serialized to the player now always includes the player pointer, this was causing menu item information for food/drink to be omitted on zone-in
  *

- Few crash fixes, Deleting spells on players from lua_interface when zoning, protection on QuestStep instantiation, we recreate all the ids and locations so as to not be dependent on the prior step should it be deleted
2021-02-28 07:57:36 -05:00
devn00b
326e41a8b6 Updating scripts from upstream. 2021-02-28 06:17:42 +00:00
Image
d6cad6e90c Exe Update 2021-02-26 11:52:57 -05:00
Image
fa79be306f Crash fix for SpellProcess 2021-02-26 11:52:29 -05:00
Image
b26b33c75e Exe Update 2021-02-24 12:15:16 -05:00
Image
4663fa36c9 Spell stacking restrictions integrated using linked_timer_id and a new field, type_group_spell_id
Fix  - spell stacking restrictions in place

min_class_skill_req is now pulled from the database
sint32 type_group_spell_id added to spells, can use this to distinguish spells of different classes not competing (eg. wards of templar/inquisitor dont stack)
GetSpellData and SetSpellData support min_class_skill_req and type_group_spell_id
2021-02-24 12:15:10 -05:00
Image
ba0fbaee7e AddSpawnToGroup(spawn, group_id) added, AddLanguage sends update to client
Fix  - AddSpawnToGroup(Spawn, group_id)
Fix  - AddLanguage(Spawn, lang_id) now updates client with lang id update
2021-02-24 12:10:11 -05:00
Image
989b691b84 Exe Update 2021-02-21 16:22:57 -05:00
Image
f06c312ddc crash fix on water region hitting a node number beyond range 2021-02-21 16:15:42 -05:00
Image
e46bc141a8 Fix "faction" SpawnSet in a LUA script 2021-02-21 16:15:30 -05:00
Image
dffca17379 Status is supported for housing now, purchase, upkeep, escrow
Fix 
2021-02-21 16:15:16 -05:00
Image
321cd929b9 LUA GiveQuestItem supports more than one item
Fix  - http://cutpon.com:3000/devn00b/EQ2EMu/issues/295

GiveQuestItem(Quest, Player, Description, ItemID1, ItemID2)
2021-02-21 16:14:29 -05:00
Image
eccec9cf92 Exe Updates 2021-02-20 16:41:20 -05:00
Image
7ea4b3d51f spell concentration fix + no_interrupt in info struct
Fix  - spell concentration now adds/subtracts correctly, synched with client.

Fix  - Info struct has new UInt no_interrupt
2021-02-20 16:39:57 -05:00
Image
611456cb06 SpawnSet given more color options
Fix  fields added:

hair_color1, hair_color2, hair_type_color, hair_face_color, hair_type_highlight_color, face_hairlight_color, hair_highlight, model_color, eye_color
soga_skin_color, soga_hair_color1, soga_hair_color2, soga_hair_type_color, soga_hair_face_color, soga_hair_type_highlight_color, soga_face_hairlight_color, soga_hair_highlight, soga_model_color, soga_eye_color

SpawnSet(Spawn, "fieldname", "R G B")

SpawnSet also set to always be temporary unless 5th argument is set to false.
2021-02-20 16:38:28 -05:00
Image
1bff083459 fix status points and missing parry/block/avoidance fields in player::serialize add SetSpawnGroupID lua function
Fix  - status points function and SetInfoStructUInt can set them

Fix  - fields in player profile not updating

Fix  - add SetSpawnGroupID(Spawn, group_id) lua function
2021-02-20 16:35:25 -05:00
Image
b263811f2e Exe Update 2021-02-17 06:49:48 -05:00
Image
5f657e24d6 stationary mobs should not call the runback/pausemovement 2021-02-17 06:49:43 -05:00
Image
e725d18d5d Exe Update 2021-02-16 23:01:55 -05:00