* Loginserver will auto create the opcodes file if it doesn't exist on load.
* Use path manager in login opcodes.
---------
Co-authored-by: KimLS <KimLS@peqtgc.com>
* initial work porting this to upstream
* more
* track complete connect
* it sucks to suck
* Few optimizations
* Move sent_inventory init
* Move var
* Adjustments
---------
Co-authored-by: Akkadius <akkadius1@gmail.com>
* Add an exception process to assigning item serial numbers to correct a bug in the client hot bar clicky system.
* fixed missing guid in replace statement
* added snapshot support
* upate #show inventory command to protect against crash conditions
* [Improvment] Filtered Messages Extension
Added:
ItemSpeech 25
Strikethrough 26
Stuns 27
BardSongsOnPets 28
I wired up Strikethrough and Stuns as they already had message entries.
ItemSpeech and BardSongsOnPets do not appear to be currently used in the source.
Note: There are still 5 unknown Filters in RoF2 that need to be investigated:
Achievments
Fellowships
Mercenary Messages
PVP Messages
Spam
* Spelling Error
* Missed some stun calls
* Add Barter/Buyer Features
Adds barter and buyer features, for ROF2 only at this time including item compensation
* Remove FKs from buyer tables
Remove FKs from buyer tables
* Bug fix for Find Buyer and mutli item selling
Update for quantity purchases not correctly providing multi items.
Update for Find Buyer functionality based on zone instancing.
Update buyer messaging
Update buyer LORE duplicate check
* Revert zone instance comment
* Revert zone_id packet size field
* Add zone instancing to barter/buyer
---------
Co-authored-by: Akkadius <akkadius1@gmail.com>
* Implement Move Multiple Items
* Send LinkDead on invalid packet
* structure this more like MoveItem
* implement all modes
* remove un-needed debug message
* handle mode 3 swaps in bank\shared bank correctly.
* Revert "handle mode 3 swaps in bank\shared bank correctly."
This reverts commit ce01fbfde70d52e88381772a6c7a77b4b650c7c5.
* Revert "remove un-needed debug message"
This reverts commit f4b662459e11a60c3a46a97e5320757c4b2b9a84.
* handle mode 3 swaps without extra unintended code
* correct variable type
* remove magic numbers
* forgot a semicolon in emu_constants.h
* fix bad rebase artifact
* Remove unused struct
* apply changes discussed in PR
* last rebase conflict
* last rebase conflict
fix more inventory type enum refs
* fix windows build error
* fix other windows build error.
* fix duplication bug
* [Rules] Add HasteCap and Hastev3Cap rules for NPCs, Bots and Mercs
Previously NPCs, bots and mercs all had a flat haste cap of 150 whereas clients were capped at 100.
NPCs, bots and mercs used the character rule for v3 cap, they now each have their own.
Rules for v3 cap are the default of 25 as they were using.
Rules for haste caps are the default of 150 for NPCs they were using but lowered to 100 for bots and mercs, the same as clients.
This also adds haste output to the GM target stat window
* Fix for stat windows to account for client haste
* fix stacking issues with Aegolism spell line
Issue: When casting buffing a player with aegolism spell line, who already has cleric AC, symbol and heroism spell, it would overwrite heorism buff and leave other two.
Aegolism spell line when applied when a client has Heroism spell line, AC spell line, and symbol spell line. Should overwrite the Heroism spell and fade the AC and Symbol buffs.
* Update spdat.cpp
Previous change did not account for the modern slay undead and holyforge spells.
Reverted some of the changes and cleaned up others.
Rule Renamed (Default value was incorrect, this was a clean way to fix that) - SlayDamageAdjustment -> SlayDamageMultiplier
Also added a rate multiplier
RULE_REAL(Combat, SlayRateMultiplier, 1.0, "Slay Rate Adjustments - Multiply final slay rate check by this value. Default: 1.0")
Fixed the ordering of the constants for the slay undead SPA that were backwards and causing major headaches with tuning and setting up slay undead correctly.
Base = Damage Mod (100 is base, so 240 = 140% more)
Limit = Proc Rate - Value is divided by 10000 for a Float %. e.g. 1700 becomes 0.17 (Or 17% proc rate).
Damage bonus should be additive not std::max as AA, Spells and Item bonuses should stack.
e.g. Slay Undead RK3 240 + Holy Forge 140 should = 380 (280% damage)
* Fix bazaar trading
* Update `constexpr`
* Added world trader table truncate on boot to ensure that the trader table is always empty when world starts.
---------
Co-authored-by: Mitch Freeman <65987027+neckkola@users.noreply.github.com>
* [Rule] Classic Harm Touch Formula
Pre 2007 Harm Touch was handled differently with base harm Touch ( Ability or 2 ranks aa) and Improved Harm Touch AA. It was converted into 10 ranks of Harm Touch -
http://www.tski.co.jp/baldio/patch/20071113.html
It was further refined in 2008 to have a DoT component.
http://www.tski.co.jp/baldio/patch/20080709.html
This rule focuses on the pre 2007 version and allows the damage to properly scale
* Updated logic
* Update per feedback.