Commit Graph

26 Commits

Author SHA1 Message Date
Forest Anderson
cea55143ce Change outcomes to eventbus 2022-05-09 19:58:13 +00:00
holychowders
df91f665d7 Agent Perception: Restrict when idling agents respond to sounds.
- Prevent utterances and other sounds from causing undesired jitters and
  fleeing, such as those caused by greeting villagers.
- Agents will no longer flee from quieter weapon sounds such as melee.
2022-03-12 16:58:06 -06:00
Sam
d1e1de3b14 Slashing damage now decreases target's energy if available, and if target has no remaining energy will do additional damage.
Piercing damage now ignores an amount of protection equal to the piercing damage value.
Crushing damage now does poise damage equal to the amount of mitigated damage.
When poise damage is dealt while in a poise state, poise damage is instead converted to damage.
2022-01-12 22:18:58 -05:00
Ben Wallis
022c1417b6 EXP on kill is now shared between damage contributors. A "damage contributor" is either an individual entity, or a group - depending if the attacker is in a group. This means that not only does the "killing blow" no longer get 100% of EXP, but multiple groups and individuals all receive their fair share of EXP on death (assuming they are still within range of the entity when it dies).
Damage from a given individual or group only counts towards a kill for 10 minutes since that individual or group's last damage to the entity - after this period their damage contribution is removed. This avoids the list of damage contributors growing excessively large for an entity that does a lot of combat but never dies.

EXP sharing within groups is unchanged - the difference is simply that the input to this calculation may be less than 100% of the base EXP reward for the kill if other individuals or groups contributed damage.
2021-11-13 20:46:45 +00:00
Sam
42012fddcb Overhauled health component, making it a float to outer interfaces. 2021-09-09 00:10:17 -04:00
juliancoffee
338e81de10 Deduplicate pvp-checks 2021-09-03 17:28:34 +03:00
juliancoffee
6b0d016418 Don't forget about pets in PvP checks 2021-09-03 17:28:34 +03:00
Joshua Barretto
0b1a820762 Make arrows 'bonk' hanging sprites 2021-08-31 13:31:27 +01:00
juliancoffee
a82f5ca057 Add comment about fragility of solution 2021-08-12 15:28:58 +03:00
juliancoffee
86b9e2d8e6 Make Fireballs explode EnsnaringVines 2021-08-12 01:25:55 +03:00
juliancoffee
4766450258 Avoid negative bounds in harm checks
* disallow_harm -> allow_harm to avoid negative reasoning since it mostly
requires double negation in code
* allow_harm -> may_harm to specify side-effect free
2021-08-03 18:57:53 +03:00
juliancoffee
1efc3188ef Refactor projectile system 2021-08-03 16:43:55 +03:00
juliancoffee
497a94cd7a Post review refactoring
* inline `target_dodging` into struct declaration as they are named
anyway
* move `avoid_harm` check out of `Attack::apply_attack` so we don't need
to pass whole Player component.
* another cosmetic things
2021-08-03 16:43:55 +03:00
juliancoffee
c7fdb640ac Cleaning 2021-08-03 16:42:58 +03:00
juliancoffee
7d4a8cbfa4 Add battle_mode server setting and player flag 2021-08-03 16:42:58 +03:00
holychowders
f316f1da60 Make Guards Defend Villagers 2021-07-14 07:40:43 +00:00
Sam
6790b71d53 Energy recovery stat functional. 2021-06-07 10:58:32 +02:00
holychowders
d5f3ba77d4 Make NPCs Aware of Sound - See Issue #913 2021-05-15 19:36:27 +00:00
Avi Weinstock
7ec7540be4 Make projectiles function properly if they hit a wall in the same tick as an entity. 2021-05-07 23:20:57 -04:00
Sam
6848851dc3 Cleaned up tweaks in ui and allowed sfx choosing to scale to amount of sfx variants provided. 2021-04-25 13:09:10 -04:00
Sam
372eff2a02 Initial SCT implementation to display blocks. 2021-04-25 13:09:09 -04:00
Sam
288a6f3a82 Blocking now works if no weapon is equipped in main hand.
Added temp sfx for blocking and parrying.
Added temp particles for successful parry.
Tweaked values of default block ability.
2021-04-25 13:09:02 -04:00
Sam
91c6288213 Melee weapons can now block. 2021-04-25 13:08:42 -04:00
Imbris
1af4a04231 Revert "Merge branch 'revert-b10718c5' into 'master'"
This reverts merge request !2172
2021-04-21 17:10:13 +00:00
Imbris
fd672980c4 Revert "Merge branch 'imbris/agent-opt' into 'master'"
This reverts merge request !2024
2021-04-21 14:10:06 +00:00
Imbris
26222a0a2d Rename common-sys to common-systems and rearrange common-state slightly 2021-04-20 15:25:04 -04:00