Commit Graph

889 Commits

Author SHA1 Message Date
holychowders
706ec91e69 Fix: Add alignment passivity check in is_enemy(). 2022-05-01 19:18:25 -05:00
holychowders
97e0e39887 Reduce function names and remove unnecessary component fetch from function. 2022-05-01 19:05:28 -05:00
holychowders
455cab0ee7 Address code review. 2022-05-01 18:44:10 -05:00
holychowders
995504be26 Have line-of-sight checks explicitly account for eye-height for entities. 2022-05-01 18:23:27 -05:00
holychowders
dda85e4bc3 Address code review. 2022-05-01 18:23:23 -05:00
holychowders
645bbf7b0d Refactor: re-order function signature to make more sense. 2022-05-01 17:30:23 -05:00
holychowders
d3873e357e Agent: Use FOV when scanning for hostile targets and refactor choose_target().
- Refactors `choose_target()`, renaming it and extracting functions with more meaningful names and more correct behavior.
- Adds FOV for agents scanning for hostile targets.
2022-05-01 17:29:45 -05:00
holychowders
914b44c714 Fix villagers seeing cultists and familiar enemies through objects. 2022-05-01 15:06:43 +00:00
Youssef Fahmy
aec866e5ec Balance tweaks 2022-04-23 14:54:01 +00:00
holychowders
cc409fd537 Extract some retargeting logic. 2022-04-11 11:54:09 -05:00
James Melkonian
b590bc50d7 Fix #1516 Add else branch to allow for agent idling when no sound events 2022-04-05 03:40:26 +00:00
Tormod G. Hellen
cb88648cca Give NPCs random Big Five personalities. 2022-04-04 20:17:50 +02:00
holychowders
39d5a73c10 Fix deadwood not attacking if target is at a different elevation than deadwood. 2022-03-27 20:02:38 +00:00
Justin Shipsey
aee1aa7c1d Merge branch 'holychowders/prevent_undesired_movement_on_agent_interaction' into 'master'
Agent Perception: Improve Awareness System

See merge request veloren/veloren!3263
2022-03-26 00:28:18 +00:00
holychowders
a88d8ada0f Comment out unused awareness increment/decrement calls and un-nest conditional for early return. 2022-03-19 12:02:29 -05:00
Manuel Schmidbauer
0037518472 Impl #1357: Agent chase abort
- Adds util funcs to calculate benefit of continue pursue vs letting
target escape
- Hooks util funcs into agent's hostile tree
2022-03-14 18:06:57 +01:00
holychowders
c6bc6b63ee Prevent enemy agents from reacting to sounds from too far away and remove an inconsequential distance check. 2022-03-12 18:13:02 -06:00
holychowders
cc808251e6 Make Enemy agents flee from dangerous sounds instead of follow. 2022-03-12 16:58:06 -06:00
holychowders
3ffb1a7706 Also restrict when Enemy agents respond to sounds and fix potential conditional bug. 2022-03-12 16:58:06 -06:00
holychowders
8d98ade15e Agent perception: Make handling of sounds and awareness more intuitive.
When a sound was received in `idle_tree()`, awareness would be
incremented, causing a call to `handle_elevated_awareness()`, which
handled sounds heard. Instead, just `handle_sounds()` when they are heard and
increment awareness as part of hearing them.

The code more straightforwardly shows the agent first hearing a sound and then
becoming more aware based on that.
2022-03-12 16:58:06 -06: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
Samuel Keiffer
a411db17bf Merge branch 'tygyh/Refactor-path_toward_target' into 'master'
Tygyh/refactor path toward target

See merge request veloren/veloren!3241
2022-03-08 16:43:37 +00:00
Dr. Dystopia
1810998641 Remove redundant 'pos' variable 2022-03-05 09:54:01 +01:00
Dr. Dystopia
1cb7a083e7 Remove redundant if-statement 2022-03-05 09:53:28 +01:00
Dr. Dystopia
4aab1eea43 Remove redundant 'tgt_pos' variables 2022-03-01 22:54:44 +01:00
Dr. Dystopia
5aa1d3ceaf Rename 'vec3' parameter to 'pos_difference' 2022-03-01 22:47:01 +01:00
Dr. Dystopia
f99a637606 Rename 'dist_to_pos' variable to 'pos_diff' 2022-03-01 22:44:55 +01:00
Dr. Dystopia
50f877bdf6 Rename 'dist_to_pos_xy' variable to 'dist_xy' 2022-03-01 22:42:03 +01:00
Dr. Dystopia
83f46658a9 Fix pathing execution 2022-03-01 22:40:43 +01:00
Dr. Dystopia
0a3de57be6 Rename 'distance_to_target' variable to 'pos_difference' 2022-03-01 22:38:35 +01:00
Dr. Dystopia
4d24ff0027 Rename 'target_position' clojure to 'partial_path_tgt_pos' 2022-03-01 22:33:25 +01:00
InfRandomness
042d258161 Modify message catch-all arms 2022-02-27 23:08:47 +00:00
Imbris
7be5b4c051 Merge branch 'imbris/fix-possesion-comp-sync' into 'master'
Improve possession edge cases

See merge request veloren/veloren!3233
2022-02-27 20:10:16 +00:00
N A
fc9c3c3be9 worth_choosing refactor 2022-02-27 19:21:21 +00:00
Imbris
e52159f638 Remove original character from game world when possessing to make persistence more robust. 2022-02-27 13:47:13 -05:00
Imbris
10803a9735 Stop using Character presence kind when possessing so that persistence doesn't get messed up. 2022-02-27 13:47:12 -05:00
Imbris
c2ad763b9c Handle removing/inserting SyncFrom::ClientEntity components properly during possession. 2022-02-27 13:47:12 -05:00
Dr. Dystopia
7e70d7648e Dereference 'tgt_pos' variables 2022-02-27 10:36:01 +01:00
Dr. Dystopia
a39d514bae Replace 'tgt_data' parameter with 'tgt_pos' parameter 2022-02-27 10:19:45 +01:00
Imbris
fb2f731ac3 Small fix 2022-02-26 01:05:28 -05:00
Dr. Dystopia
75322ddfc0 Extract 'dist_to_pos' variable 2022-02-25 22:00:42 +01:00
Dr. Dystopia
ee26778118 Extract 'dist_to_pos_xy' variable 2022-02-25 21:57:29 +01:00
Dr. Dystopia
019d619cf6 Extract 'spacing' variable 2022-02-25 21:48:29 +01:00
Dr. Dystopia
15bea26823 Extract 'target_position' clojure 2022-02-25 21:44:43 +01:00
Dr. Dystopia
d921e1e3ea Extract 'pos' variable 2022-02-25 21:40:42 +01:00
Dr. Dystopia
e2d42207a4 Update 'path_toward_target' doc comment 2022-02-25 21:37:01 +01:00
Dr. Dystopia
4aebe19d94 Extract 'distance_to_target' variable 2022-02-25 21:35:50 +01:00
Dr. Dystopia
0dad86e1ca Replace flag parameters with 'Path' enum 2022-02-25 21:35:35 +01:00
Isidor Nielsen
a685a353cb Shared and persistent waypoints 2022-02-20 10:10:18 +00:00
jshipsey
e569ee24c3 fix 2022-02-17 00:58:25 -05:00
Marcel
b09698b8ac Merge branch 'shouvik/prevent_empty_trades' into 'master'
Fixes #1452 - Prevents empty trades

Closes #1452

See merge request veloren/veloren!3202
2022-02-16 21:41:26 +00:00
ShouvikGhosh2048
d72f43190b Fixes #1452 - Prevents empty trades 2022-02-16 21:41:26 +00:00
James Melkonian
c906c9e2dc Fix NPC humanoids not rolling when on fire 2022-02-15 08:28:37 +00:00
Sam
c77270b799 Addressed feedback 2022-02-12 20:52:01 -05:00
jshipsey
2eee43865f chieftain anims 2022-02-11 02:18:48 -05:00
Sam
4991f7ecea Gnarlign site tweaks and chieftain buff 2022-02-11 01:23:09 -05:00
Sam
0031aa6f5f Chieftain AI and attacks 2022-02-10 14:58:35 -05:00
Sam
fcb0f8d8f0 Wood golem attacks and ai 2022-02-10 14:58:32 -05:00
Sam
e044bf5091 Mandragora attacks and ai 2022-02-10 14:58:32 -05:00
Sam
f1801560fa Deadwood ai 2022-02-10 14:58:31 -05:00
Sam
40bb74c42f Gnarling stalker AI 2022-02-10 14:58:28 -05:00
Sam
c15fb2b68f Better mugger AI 2022-02-10 14:58:28 -05:00
Sam
e1f164d099 Initial AI for gnarling logger/mugger. 2022-02-10 14:58:27 -05:00
Tormod G. Hellen
a00121bedf Make entities protect owned bodies. 2022-02-08 22:53:00 +01:00
Tormod G. Hellen
82273f0f36 Make friendly creatures defend each other. 2022-02-08 22:32:25 +01:00
Marcel
72e270368d Merge branch 'aweinstock/resolve-clippy-lints' into 'master'
Globally allow more clippy lints and reconfigure complexity to be less verbose

See merge request veloren/veloren!3052
2022-01-30 22:53:36 +00:00
James Melkonian
44865d99ff Fix guards menacing instead of defending villagers 2022-01-30 13:14:24 -08:00
Avi Weinstock
f3f08936d8 Decrease too-many-arguments-threshold and type-complexity-threshold. 2022-01-30 20:16:21 +01:00
Avi Weinstock
5f8957d8ef Globally allow the clippy lints {new_without_default, many_single_char_names, identity_op, type_complexity, too_many_arguments}. 2022-01-30 20:16:20 +01:00
juliancoffee
ed593cd0cb Adress review №2 2022-01-28 00:02:34 +02:00
juliancoffee
e004fba9da Adress review 2022-01-28 00:02:34 +02:00
juliancoffee
4a4f2f8d8f Loadout Update: Managed Rng
Rewrite EntityInfo api to take Rng from caller.
2022-01-28 00:02:34 +02:00
juliancoffee
d5b927602a Loadout Udpate: NpcData part
Actually implement creating npc with new EntitytInfo by chaning
CreateNpc.loadout to CreateNpc.inventory and cleaning code in
NpcData::from_entity_info.
2022-01-28 00:02:34 +02:00
Dr. Dystopia
b0d6a68e8c Create 'push_initiate_invite' function 2022-01-26 21:23:37 +01:00
Dr. Dystopia
027154a5be Create 'push_invite_response' function 2022-01-26 21:16:29 +01:00
Dr. Dystopia
0516526985 Create 'push_utterance' function 2022-01-26 21:12:19 +01:00
Dr. Dystopia
765e858c19 Create 'push_cancel_input' function 2022-01-26 21:07:36 +01:00
Dr. Dystopia
b2b208687c Create 'push_basic_input' function 2022-01-26 20:09:59 +01:00
Dr. Dystopia
bc0a8c7704 Create 'push_action' function 2022-01-26 19:52:19 +01:00
Dr. Dystopia
f47184df85 Use 'push_event' function in more places 2022-01-26 19:40:18 +01:00
James Melkonian
2671f824d0 Prohibit accidental cliff diving by NPCs 2022-01-25 16:25:40 +00:00
Snowram
a6e396e29a Stunned and jump anims, stats, spawns, more IA work 2022-01-20 00:53:29 +01:00
Snowram
fd3ed89899 More arthropod animations 2022-01-19 19:01:15 +01:00
Snowram
38bbd60fd2 Arthropod basic attack 2022-01-19 19:01:14 +01:00
Snowram
1e6ead4005 Arthropod charge 2022-01-19 19:01:13 +01:00
Snowram
02ed6ffd60 More arthropod work 2022-01-19 19:01:13 +01:00
Snowram
ae71f2e4f0 Adds poisoned debuff (energy change over time) 2022-01-19 19:01:13 +01:00
Snowram
f67bf2a539 Adds arthropod skeleton 2022-01-19 19:01:11 +01:00
Imbris
13d970bf6f Rename SyncFrom::AllEntities to SyncFrom::AnyEntity for more clarity, add more comments for component syncing code, address MR comment 2022-01-19 00:56:42 -05:00
Imbris
7f7dc5ff8a Add ability to plot component update counts each tick in tracy, controlled by the PLOT_UPDATE_COUNTS env var 2022-01-19 00:56:42 -05:00
Imbris
aa122c1a18 Sync some components only from the client's own entity. Vastly reduce the amount of places to modify when adding/removing a component from network syncing. 2022-01-19 00:56:42 -05:00
James Melkonian
ac6f53922f Move agent code into separate files 2022-01-18 03:02:43 +00:00
Joshua Barretto
c9762568d6 Don't block teleportation when mounted 2022-01-17 09:47:29 +00:00
Joshua Barretto
3b7ea72a9c Fixed review comments 2022-01-16 21:13:13 +00:00
Joshua Barretto
043016a433 Don't try to mount unmountable entities, clippy fixes and fmt 2022-01-16 17:53:14 +00:00
Joshua Barretto
504e2a38d5 Added overhead hints, smoother mount movement 2022-01-16 17:53:14 +00:00
Joshua Barretto
2923d3cd2b Made NPCs prefer food when idle 2022-01-16 17:53:13 +00:00
Joshua Barretto
5c37786185 Improved interpolation for riders 2022-01-16 17:53:13 +00:00
Joshua Barretto
6931514ae5 Made teleport commands redirect to mount 2022-01-16 17:53:13 +00:00
Joshua Barretto
537cc38b5e Fixed lantern position when mounting 2022-01-16 17:53:13 +00:00
Joshua Barretto
b3e2d825ed Overhauled mounting to make it more reliable 2022-01-16 17:53:13 +00:00
Sam
4c3771a1a0 Persistence of auxiliary abilities. 2022-01-15 21:42:34 -05:00
Sam
9b6c76bd3b Removed health scaling that bypasses the skill system. 2022-01-15 11:58:28 -05:00
jshipsey
1fac6359de more gnarling weapons 2022-01-13 23:20:56 -05:00
jshipsey
7f928d0bc0 woodengolem, chieftain, icedrake, blowgun 2022-01-13 23:20:52 -05:00
Sam
efbc5f9b75 UI notifying player that their skillset has been invalidated. 2022-01-03 19:55:06 -05:00
Sam
27dd7b4391 Refactored skills code. 2022-01-03 19:55:01 -05:00
Imbris
b255f0ee0f put Client::tick_network function behind feature, remove unnecessary cloning of deleted entity vecs in entity sync, move prepare_send hack that avoids locking during message serialization from send_fallible to send, add job.cpu_status par mode adjustment around parallel section 2021-12-26 12:04:08 -05:00
Imbris
6547a6bf5e Parallelize entity sync loop over regions. 2021-12-25 19:24:12 -05:00
Imbris
bf48bd5346 update toolchain to nightly-2021-12-19 2021-12-23 13:04:24 +01:00
Joshua Barretto
e3203080ed Added Calendar for temporal events based on the real-world calendar 2021-12-20 18:03:52 +00:00
Ben Wallis
9a4e6b81d3 Merge branch 'Character-editting' into 'master'
Character editing

See merge request veloren/veloren!3059
2021-12-20 15:24:43 +00:00
Dr. Dystopia
3a52599e49 Clean up 2021-12-15 21:55:53 +01:00
Dr. Dystopia
408fe1e6b6 Begin creating character editing 2021-12-13 01:13:33 +01:00
holychowders
b40d94dd53 Re-allow and improve fleeing. 2021-12-07 20:18:03 -06:00
Jonathan Berglin
596307c9b7 Remove unused clippy suppressions 2021-12-05 17:59:02 +00:00
Marcel
3fa2dab3aa Merge branch 'xMAC94x/update-toolchain' into 'master'
xMAC94x/update toolchain

See merge request veloren/veloren!3027
2021-11-26 16:52:51 +00:00
James Melkonian
ab99126a7b Floor merchant cost percentages and display as whole numbers 2021-11-25 01:32:20 +00:00
Marcel Märtens
ef40ebe0c8 update toolchain to nightly-2021-11-24 2021-11-24 10:09:22 +01: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
040d70c750 Final fixes. 2021-11-11 23:11:17 -05:00
Sam
a288f9ee43 Addressed further review. 2021-11-11 22:37:37 -05:00
Sam
dfcb8c8519 Addressed review feedback. 2021-11-11 18:10:22 -05:00
Sam
b678f7f46e Added some client methods for changing abilities to hook into. 2021-11-11 01:55:32 -05:00
Sam
4309e1ff9b Did voxygen stuff for ability pool. 2021-11-09 21:20:41 -05:00
Marcel
bcba2aae7e Merge branch 'juliancoffee/fix_testserver' into 'master'
Make test-server compile again

See merge request veloren/veloren!2974
2021-10-30 09:27:27 +00:00
Sam
aad2384622 Addressed review, changelog. 2021-10-29 17:57:00 -04:00
Sam
2b447852fd Added min fall off to explosions. 2021-10-29 17:37:02 -04:00
juliancoffee
1dc53dad3a Make test-server compile again 2021-10-29 23:49:37 +03:00
Kemper
034041fd4f Aim fireballs at feet
AI aims fireballs at the target’s feet, for a slight improvement
in splash damage.
2021-10-27 19:50:50 +00:00
ubruntu
e6bfce99bb Use stealth stat on armors 2021-10-24 05:31:49 +00:00
Bryant Deters
b2bd43f4d3 Sneak with weapons drawn 2021-10-18 14:53:55 -05:00
socksonme
8099b516a9 Renamed emit_alarm to emit_scream 2021-10-16 19:11:57 +03:00
socksonme
2b36a957ac small code quality change 2021-10-15 23:23:45 +03:00
socksonme
c631341da9 Refactored SoundKind and UtteranceKind 2021-10-15 22:49:25 +03:00
antoniomuso
761ae8f69d Make merchants send the player a trade request when interacted with 2021-10-09 21:14:01 +02:00
Imbris
8987389e8a Submit chunk requests to the generator within the terrain system right before receiving new chunks, so that duplicate work is not done for chunks that just finished but were not yet added to the terrain. 2021-10-08 16:17:31 -04:00
Joshua Barretto
6d33e0d183 Prevented double-spawning of chunks 2021-10-08 12:20:46 +01:00
Joshua Barretto
8dc8aeace5 Added minimum server-side chunk loading 2021-10-07 14:23:55 +01:00
Imbris
c9d2501336 Revert "Merge branch 'ubruntu/par-entity-sync' into 'master'"
This reverts merge request !2891
2021-10-05 14:42:39 +00:00
Bryant Deters
8b557f0e2e using par_join.for_each as if I know what I'm doing 2021-10-01 18:05:52 -05:00
juliancoffee
7291d32209 Make ItemDrop component with Item again 2021-09-27 20:36:18 +03:00
Sam
27823ce8fa Rtsim now uses entity configs. 2021-09-27 15:09:22 +03:00
Sam
09dd9b4813 Changed ItemDrop to use LootSpec 2021-09-27 15:09:22 +03:00
Marcel
cea927efb6 Merge branch 'xMAC94x/update-toolchain' into 'master'
update toolchain to `nightly-2021-09-24`

See merge request veloren/veloren!2862
2021-09-26 19:25:02 +00:00
Sam
942376f88c Made poise a float at interface of module. 2021-09-25 14:07:47 -04:00
Marcel Märtens
e36eef99c8 apply some clippy fixes that comes with the new toolchain version 2021-09-24 23:18:18 +02:00
Sam
0e5e2b46f2 Changed energy to internally use an integer with a high resolution, and externally to use a float. 2021-09-23 14:11:09 -04:00
Snowram
5838a84568 Consolidates projectile offsets into utils 2021-09-22 03:05:57 +02:00
Snowram
9c2ce83430 Set projectile offsets in states instead of globally 2021-09-22 01:07:09 +02:00