Commit Graph

101 Commits

Author SHA1 Message Date
Yogurt
8ba3c195f2 Small fixes
Fix Shoulder Tackle script using Weaponskill function names
Change BattleNPC to not use array.Clone on respawn.
Move custom StatusEffect ids to 300000+ (will break these statuses until
new sql file is pushed)
2019-06-03 23:45:21 -07:00
Yogurt
905cbf7d3c Add GetActionType for scripts.
Fix miss check for tp gain on attacks
2019-06-01 03:18:23 -07:00
Yogurt
4c850ea768 Don't generate TP on misses 2019-06-01 03:05:40 -07:00
Yogurt
97dcd765eb Add new hit effect flag for hit effects that only show animations
Fix SetMP setting MaxMP instead of MP

Fix substate updates not being sent
2019-06-01 02:10:40 -07:00
Yogurt
9cda72f1ab Remove MP and TP before setting combo ids to actually take combo into
account for MP and TP cost
2019-05-31 23:42:52 -07:00
Yogurt
6127ad44cc Pass BattleCommand to scripts. 2019-05-29 20:19:44 -07:00
Yogurt
289e4dc24b More targeting changes
Added CanUse instead of CanAttack/CanWeaponSkill/CanCast since they all
check the same things anyway.

Fixed some bugs like mp checking against hp in AddMP.
2019-05-29 19:46:29 -07:00
Yogurt
a458608322 BattleCommand changes
New targeting flags for BattleCommand and TargetFind. (This breaks
combat until new BattleCommand data is in)
Changed MP and TP to shorts in BattleCommand to handle cases where they
might go negative. (might not be correct?)
2019-05-29 19:24:58 -07:00
Yogurt
26ef649a6c Refactor StatusEffectContainer to better handle messages using
CommandResultContainer.

Alter Modifiers to be the same as ParamNames.

Add LoseOnClassChange flag for status effects.

Add a few missing status effects.

Fix EndTime for stance status effects to stop icon from blinking.
2019-05-27 23:05:20 -07:00
Yogurt
cc07e1f453 Pass BattleCommand to combat functions to prepare for passing
BattleCommand to scripts.

Add CommandResultContainer to status update to handle death from dots.
2019-05-27 17:31:25 -07:00
Yogurt
75c6708ac5 Handle dying in AddHP instead of OnDamageTaken. 2019-05-27 17:08:06 -07:00
Yogurt
f6104812a5 Add ActionLanded to make some checks cleaner.
Split physical and magic text id dictionaries.

Add calculation for resists.
2019-05-27 16:52:56 -07:00
Yogurt
d0dca62a91 Add some helper methods for Modifier and only update stats for the
visual modifiers.
2019-05-27 16:26:10 -07:00
Filip Maj
080f9ea23d Fixed bug where when a mob was insta-killed they would disappear (not die). More renames for action -> result. Reverted result packet unknown from 0x801 to 0x810. Added hitnum. Fixed isolation. 2019-05-04 18:53:00 -04:00
Filip Maj
e236e1d207 Renamed BattleActionPacket -> CommandResultPacket as it better defines what these packets do. A command fires -> here is what happened due to it. 2019-01-29 00:02:09 -05:00
Filip Maj
7c7742fb35 Update substate and implemented it into Character. Cleaned up more code mix. 2018-10-20 13:15:58 -04:00
Filip Maj
c55145d715 Added substate modifications to characters. 2018-10-20 13:02:14 -04:00
Filip Maj
bec0cae0eb Removed more dapper code and unsupported syntax. 2018-10-20 12:08:47 -04:00
yogurt
1579aa3d6a Bug fixes
Fixed LookAt resetting rotation when looking at self
Fixed BattleNpcs running to their target's exact position instead of the closest position they can attack from
2018-07-03 04:46:34 -05:00
yogurt
cf30eef39e AoE rewrite and bug fixes
Rewrote aoe checks for cone and line aoes and added minimum distance values
Added height checks for commands
Fixed combo effects repeating for every target hit by AoE attacks
Fixed teleport sometimes not raising (I think)
Fixed gear checks in some command scripts
2018-07-02 00:45:06 -05:00
yogurt
ace4dfe58f Small fixes
Fixed final message for multi-hit attacks.
Fixed self targeting for commands
Made it so player.lua doesn't skip over home points setting, just the quest setitng.
Began adding knockback effect handling
2018-06-25 18:20:20 -05:00
yogurt
79f2edf406 Bug fixes
Fixed some bugs with targeting flags
Fixed action equip bug for real this time
Fixed server crash when commands hit no targets
2018-05-31 11:25:55 -05:00
yogurt
0f7e6f359d Added class-specific exp messages for non-english languages
Fixed status effect loss message not being sent
Fixed party bug where people in the same party were considered to be in different parties
2018-05-28 16:28:44 -05:00
yogurt
8de606051a More bug fixes
Fixed loading status effects on login
Fixed barrage issues
Added untraited version of Protect
Added sanguine rite
2018-05-27 18:07:52 -05:00
yogurt
922fb80f3d Bug fixes.
Added stoneskin effect to database.
Fixed Rampage not working
Fixed bug where abilities didn't equip correctly when leveling up
Added a temporary fix for returning while dead
Added handling for abilities that don't have an actiontype set, like elusive jump
2018-05-27 14:51:39 -05:00
yogurt
c5ce2ec771 Combat additions
Added formulas for base EXP gain and chain experience
Added basic scripts for most player abilities and effects
Added stat gains for some abilities
Changed status flags
Fixed bug with player death
Fixed bug where auto attacks didnt work when not locked on
Added traits
2018-04-18 16:06:41 -05:00
yogurt
b8d6a943aa Combat changes and bug fixes
Added the combo and proc systems
Added scripts for most weaponskill and spells as well as some abilities and status effects
Added support for multihit attacks
Added AbilityState for abilities
Added hiteffects that change based on an attack's parameters
Added positionals

Changed how targeting works for battlecommands

Fixed bug that occurred when moving or swapping hotbar commands
Fixed bug that occurred when losing status effects
2018-02-15 13:20:46 -06:00
yogurt
837c7a9223 Health updating fix, temp r0 fix 2017-12-10 09:20:42 -06:00
yogurt
205d3619d6 Merging 2017-12-08 02:08:13 -06:00
yogurt
1275c8b5da Added party to Gridania opening, fixed BattleActionx18 and made it so x18 is used for packets with more than 10 targets. Changed how death works. Added respawn time and roam modifiers. Added TryAggro functions and moved aggroing out of roaming and helpplayers. Fixed high cpu usage in zone's OnUpdate function. Fixed work value in player update 2017-12-08 00:58:39 -06:00
Tahir Akhlaq
27200b8df5 moved ally engage stuff to ContentArea onUpdate 2017-10-11 19:23:40 +01:00
Tahir Akhlaq
520ae7a119 added helpers for DoW/DoM/DoH/DoH
- fixed allies not being able to aggro on roam
- fixed static characters aggroing
2017-10-11 15:02:12 +01:00
yogurt
460722d3d5 Opening changes 2017-10-11 06:42:06 -05:00
yogurt
92de857cda opening quest stuff 2017-10-10 13:32:47 -05:00
Tahir Akhlaq
bab81a809c fixed auto attack (<3 showmo) 2017-10-03 07:32:32 +01:00
Tahir Akhlaq
ba8184db89 attempt to add tutorial fight
- added tempvars which are reset on spawning/zoning
2017-09-16 02:50:32 +01:00
Tahir Akhlaq
da621dfc0e added pool/spawn/genus mod loading
- moved ai helper classes to own folder
2017-09-12 01:24:02 +01:00
Tahir Akhlaq
ce5030acd1 added mob name colour update
- added mobmods (need to be loaded from db)
- added Zone.GetBattleNpcById
- added missing IsValidTarget check in AttackState
2017-09-10 03:44:12 +01:00
Tahir Akhlaq
2bfaf376ef moved battlenpc loading to db (still doesnt load for some reason) 2017-09-05 23:32:57 +01:00
Tahir Akhlaq
68a2d5f0b9 stubbed item use state (needs to actually look up the item and get its reuse stuff)
- added tables to load mobs from (probably dont import besides server_battlenpc_genus.sql)
- added field to server_battle_commands for commands usable by both monsters and players (probably arent any really)
2017-09-05 21:03:38 +01:00
Tahir Akhlaq
4978813c27 fixed death/despawning kinda (need to figure out why hp wont tick down after respawning) 2017-09-03 01:01:19 +01:00
Tahir Akhlaq
c5cc7c2f00 fixed auto attack messing up cast anim
- fixed auto attack anim for mobs (<3 u ion)
- added hotbar timer updates (<3 u azia)
- fixed actor block bug
- cleaned up substate retardation
- fixed some targetfind issues
- added despawn state
- added messages for in progress commands
- added fields for aoe target, range, battleAnimation to server_battle_commands table
2017-08-31 06:01:26 +01:00
Filip Maj
4c7928da78 Fixed screwed up cast animation. 2017-08-29 22:27:32 -04:00
Tahir Akhlaq
517bdc0638 fixed cast interrupt
- dont allow targeting of mob moving back to spawn
2017-08-30 00:14:14 +01:00
Filip Maj
e60da4f7b4 Wasn't actually sending packets. Changed casting animation back and moved castbar removal to cleanup. 2017-08-29 00:38:07 -04:00
Filip Maj
67485eafc0 Fixed infinite loop with DoBattleAction. Added some casting logic. 2017-08-29 00:33:23 -04:00
Filip Maj
7ad40f625a Refactored Demo's battle action code and cleaned things up. 2017-08-28 21:45:01 -04:00
Filip Maj
71d5bbc9ff Merge branch 'ai-open' of https://bitbucket.org/takhlaq/ffxiv-classic-server into ai-open 2017-08-28 20:26:27 -04:00
Filip Maj
37b8203dae Rewrote the BattleActionPacket classes to standardize them. Added a method in Character.cs to fire off BattleActions. 2017-08-28 20:26:21 -04:00
Tahir Akhlaq
f4016e1a12 renamed tables for consistency
- added magic.lua (todo: enumerate modifiers and stuff)
- moved aggro handling to session position update
- some cleanup
2017-08-29 01:15:12 +01:00