Commit graph

1113 commits

Author SHA1 Message Date
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
Image
0e86dac628 Sirius Updates
Fix  - pets don't follow
Fix  - FaceTarget(Originator, Target, disable_action_state) - disable_action_state defaults to true
Fix  - pause on hail
	RULE_INIT(R_Spawn, HailMovementPause, "5000"); // time in milliseconds the spawn is paused on hail
	RULE_INIT(R_Spawn, HailDistance, "5"); // max distance to hail a spawn/npc
Fix  - PauseMovement(Spawn, time_in_ms) added
Fix  - spawn_npcs added water_type and flying_type, temp rules added also

alter table spawn_npcs add column water_type tinyint(1) unsigned not null default 0;
alter table spawn_npcs add column flying_type tinyint(1) unsigned not null default 0;
    RULE_INIT(R_Spawn, UseHardCodeWaterModelType, "1"); // uses alternate method of setting water type by model type (hardcoded) versus relying on just DB
    RULE_INIT(R_Spawn, UseHardCodeFlyingModelType, "1"); // uses alternate method of setting flying type by model type (hardcoded) versus relying on just DB
2021-02-16 23:01:50 -05:00
Image
230e76a915 crash fix / error log when collection reward item missing in DB 2021-02-14 16:12:11 -05:00
Image
0ec5525d16 Exe Update 2021-02-07 22:42:44 -05:00
Image
31da67dc73 bad ptr depending on certain logging 2021-02-07 22:42:38 -05:00
Image
43c6075aaa goof 2021-02-07 22:30:14 -05:00
Image
a9708111ba EmemJR WS_SelectTradeskill struct update for AOM client 2021-02-07 22:19:31 -05:00
Image
e59972526f Exe Update 2021-02-07 22:19:10 -05:00
Image
65e7222de5 Spirit Shards, Group and Solo EXP Debt (PVE/PVP), new lua functions, rules included
xp_debt in InfoStruct changed to float use SetInfoStructFloat and GetInfoStructFloat for it

SpawnScript file is now listed in /spawn details on the last page

LUA functions added:
bool GetRuleFlagBool(category, name)
float GetRuleFlagFloat(category, name)
int32 GetShardID(Spawn)
int32 GetShardCharID(Spawn)
int64 GetShardCreatedTimestamp(Spawn)
bool DeleteDBShardID(shardid) -- using GetShardID
int32 GetCharacterID(Spawn)
bool SetAccessToEntityCommandByCharID(Spawn, CharID, command_string, val) -- same as SetAccessToEntityCommand, but using a CharID instead of player

Rules added:

RULE_INIT(R_Combat, DeathExperienceDebt, "50.00"); // divide by 100, 50/100 = .5% debt per pve death
RULE_INIT(R_Combat, PVPDeathExperienceDebt, "25.00"); // divide by 100, 25/100 = .25% debt per pvp death
RULE_INIT(R_Combat, GroupExperienceDebt, "0"); // set to 1 means we will share debt between the group
RULE_INIT(R_Combat, ExperienceToDebt, "50.00"); // percentage of xp earned to debt vs obtained xp 50/100 = 50% to debt
RULE_INIT(R_Combat, ExperienceDebtRecoveryPercent, "5.00"); // recovery percentage per period of time, 5/100 = 5% recovered (so if .5% debt, .5*.05 = .025, .5-.025=.475% debt left)
RULE_INIT(R_Combat, ExperienceDebtRecoveryPeriod, "600"); // every 10 minutes (x*60 seconds) recover ExperienceDebtRecoveryPercent
RULE_INIT(R_Combat, EnableSpiritShards, "1");
RULE_INIT(R_Combat, SpiritShardSpawnScript, "SpawnScripts/Generic/SpiritShard.lua");
RULE_INIT(R_Combat, ShardDebtRecoveryPercent, "25.00"); // recovered percentage of debt upon obtainig shard, 25/100 means 25%.  If there is .5 DeathExperienceDebt, .5*25% = .125,  .5 - .125 = .375
2021-02-07 22:19:03 -05:00
Image
ce323835bf Exe Update 2021-02-05 08:39:38 -05:00
Image
761693a42a Added Monk to 360 degree avoidance per Kingdom of Sky PDF 2021-02-05 08:39:30 -05:00
Image
c83409daec Quest SetCompleteFlag now updates player the quest is tied to
Fix 
2021-02-05 08:39:14 -05:00
Image
09f3ae4557 disabling the legends of norrath and tell on widget sign was causing rotation issue on some objects, fixed 2021-02-05 08:38:21 -05:00
Image
a9055916a5 Exe Update 2021-02-04 09:13:08 -05:00
Image
cd5aa30acb Fix deadlock in hateby 2021-02-04 09:12:55 -05:00
Image
c08cf0aa66 Fix crashes in /add_aa 2021-02-04 09:12:48 -05:00
Image
7cdc9b0c77 fix GetSpell on custom spell script to load the lua spell script 2021-02-04 09:12:36 -05:00
Image
08f53e621f display xp_debt in player profile 2021-02-04 09:12:23 -05:00
Image
56c2c69a40 Fix logging when there is no old process running to hang on 2021-02-04 09:12:14 -05:00
Image
6d697c0e5c remove entity commands tell and play legends of norrath from widgets and signs
Fix 
2021-02-04 09:12:01 -05:00
Image
a745a5fa3d Exe Update 2021-02-01 21:46:33 -05:00
Image
6f92367102 Multiple combat / functionality updates
Fix  - hp / power regen rewrite
Also added power_regen_override and hp_regen_override, when set to 1, you can LUA manually set hp_regen and power_regen to enforce it in code

RULE R_Spawn, ClassicRegen added.  Set to 1 means we do not have both regens when out of combat (eg. out of combat = out of combat regen + in combat regen).  In classic you only received in combat or out of combat regen individually.

Fix  - HatedBy now properly handled, we know when a player/spawn is being hated by other targets

Fix  - Parry/Riposte, Block and Dodge implemented.  Missing Block formula which will become its own issue.

Entity GetInfoStruct/SetInfoStruct, cur_avoidance, parry, parry_base, deflection, block are now floats.  Added sint16 power_regen adn hp_regen, lastly power_regen_override and hp_regen_override are int8's.

Fix  - Implemented stats Crushing, Defense, Deflection, Disruption, Fishing, Focus, Foresting, Gathering, Mining, Parry, Piercing, Safe Fall, Slashing and Trapping

/waypoint command now allows flushing waypoint if you do not have active target

/spawn details [x] supports behind, infront and flank

/craftitem added per EmemJr update

INSERT INTO commands SET TYPE=1,command='craftitem',subcommand='',HANDLER=526,required_status=100;

Crash fix for /add_aa hitting bad spell id

LUA Functions:

RemoveSpawnSpellBonus(spawn) - used in LUASpell script
GetSpell(spell_id, tier, custom_lua_script) - third argument added to setup custom script file

AddIconValue(spawn, value)
RemoveIconValue(spawn, value)

Fix  - evac now works correctly, no ghost spawn of self and you can go into combat and see damage taken/given.

Also simplified the player spawn / index map (had duplicates unneeded)

Fixed region_map_v1 throwing errors on special variable for signed vs unsigned
2021-02-01 21:46:26 -05:00
Image
b344a3f894 updated version to Sirius 2021-02-01 21:33:50 -05:00
Image
7db2458feb Exe Updates 2021-01-24 17:31:28 -05:00
Image
517ae12865 /bot follow id and /bot stopfollow id added
Allows to stop the bot from following you or continue following when in group.  Also fixed the default runspeed on NPC's to be set to MaxSpeed.  Should resolve any unexpected stationary npc's/bots.
2021-01-24 17:31:05 -05:00
Image
87db7f34d2 Update Bot.h 2021-01-24 17:30:08 -05:00
Image
45d38d4845 Fix disband group with depopped bot crash
Fix 
2021-01-24 17:29:42 -05:00