Jonathan Berglin
144d6d41f7
Extract 'calculate_projection_and_collision_dist' function
2022-05-02 09:14:17 +00:00
Marcel Märtens
fa49248c31
switch to upstream vek again
2022-04-28 09:10:55 +02:00
Plright
cffa980f24
Fixed being able to sneak on mount
2022-04-16 16:56:47 +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
Olexorus
cf66eccb75
Use Rust 2021 postfix .into_iter()
2022-03-15 16:34:56 +01: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
bc7c088a12
More sensible vertical limit to what melee attacks can hit
2022-03-03 20:03:32 -05:00
ubruntu
94a9b407c2
Fix waypoints being movable
2022-02-28 19:20:37 +00:00
ubruntu
6d795b6ecd
Campfire heals pets when owner sits
2022-02-22 09:23:07 +00:00
jshipsey
6d34a6b544
wallrunning
2022-02-09 19:34:23 -05: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
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
Dr. Dystopia
7b5d9508b6
Create 'ColliderData' struct and implement it in 'resolve_e2e_collision' function
2022-01-30 19:50:32 +01:00
juliancoffee
fba89517de
Move Veloren to 2021 edition
2022-01-26 16:46:40 +02:00
Dr. Dystopia
bb48267827
Fix warnings
2022-01-23 19:03:47 +01:00
Sam
fe1db1e9e0
Can move around, so character state system runs
...
Hotbar now visible
Can't yet activate skillbar abilities, only M1 and M2
2022-01-20 15:26:35 -05:00
Snowram
a6e396e29a
Stunned and jump anims, stats, spawns, more IA work
2022-01-20 00:53:29 +01:00
Snowram
ae71f2e4f0
Adds poisoned debuff (energy change over time)
2022-01-19 19:01:13 +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
3beb3c8205
Address review comments
2022-01-19 00:56:42 -05:00
Imbris
cc40058ae2
Reduce extra energy updates
2022-01-19 00:56:42 -05:00
Imbris
5494bd31f2
Sync SkillSet from all entities for now since it is needed for some things in voxygen, fix character_behavior system always triggering energy and density modification flags
2022-01-19 00:56:42 -05:00
Joshua Barretto
20509a7818
Removed mounted combat edge cases
2022-01-16 19:28:53 +00:00
Joshua Barretto
5008dba413
Sensibly filter mount inputs
2022-01-16 18:45:27 +00:00
Joshua Barretto
2966a42093
Added mounted combat
2022-01-16 18:30:00 +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
157cd6cd14
Fixed unusual speech bubble placement
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
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
d0e487da8a
Ability sets now start with non-empty defaults.
2022-01-15 21:45:27 -05:00
Sam
d86692c4fe
Added in-memory persistence of ability sets per weapon kind pair.
2022-01-15 21:42:34 -05:00
Sam
e98edbcc7a
Conversion of poise damage to health damage now scales depending on the poise state the target is in.
...
Entities are now immune to poise damage for 1 second after exiting a poise state.
Rebalanced most phyiscal damage attacks on player-accessible tools.
2022-01-12 22:18:59 -05: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
Sam
0a9f3381f5
Skill points now attempt to be earned as experience is added.
2022-01-03 19:55:05 -05:00
Sam
da78800047
Changed skill groups to be a hashmap instead of a vec.
2022-01-03 19:55:05 -05:00
Sam
6d2496b7de
Changed skill group to store available_exp instead of spent_exp to help enforce certain invariants. Addressed more review coments.
2022-01-03 19:55:04 -05:00
Sam
8221336587
Addressed some review.
2022-01-03 19:55:04 -05:00
Sam
64c8321626
Made skill groups remain locked if skill to unlock them not acquired.
2022-01-03 19:55:03 -05:00
Sam
fe45a158ed
Skill groups now only persist earned_exp instead of available_exp, earned_sp, and available_sp.
2022-01-03 19:55:00 -05:00
Imbris
bf48bd5346
update toolchain to nightly-2021-12-19
2021-12-23 13:04:24 +01:00
Joshua Barretto
6e97e3179d
Slippery ice
2021-12-20 18:03:52 +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
Joshua Barretto
c0bf9503bd
Addressed review issues, added cloning docs to BodySpec::Manifests
2021-11-13 17:20:23 +00:00
Joshua Barretto
46ec4203a2
Arbitrary volume airships
2021-11-13 17:13:08 +00:00
Samuel Keiffer
6e57380735
Merge branch 'sam/ability-pool-and-hotbar' into 'master'
...
Ability pool
See merge request veloren/veloren!2996
2021-11-12 05:11:12 +00: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
a8bec0280c
Ability pool mostly functional.
2021-11-09 12:56:07 -05:00
Imbris
79afad626b
Merge branch 'socksonme/pushback_require_collider' into 'master'
...
Make the collider component be required for entity pushback
See merge request veloren/veloren!2954
2021-11-09 06:11:07 +00:00
Sam
41effe61d0
Being knocked out of item use or sprite interact states forces a poise state.
2021-10-29 19:24:40 -04:00
socksonme
2ef668a16c
removed unnecessary self
2021-10-29 15:23:49 +03:00
socksonme
42ed5c43f5
fixed code quality
2021-10-29 15:01:21 +03:00
socksonme
584e379e40
Removed beams and shockwaves from phys.rs
...
calc_z_limit doesn't use an Opyion anymore, construct_spacial_grid also doesn't check for beams or shockwaves, collider_other in apply_pushback is also required now and resolve_e2e_pushback also doesn't use Options anymore.
2021-10-29 09:43:01 +03:00
socksonme
052e09039a
Made the pushback cache require colliders
2021-10-19 15:05:30 +03:00
Bryant Deters
b2bd43f4d3
Sneak with weapons drawn
2021-10-18 14:53:55 -05:00
Imbris
aa1ffa9f61
Remove timings and commented code (separate from the previous commit so we can keep these notes in the git history), add potentially better version of the straight up/down case for to_horizontal as a comment for testing in the future, remove fine grained spans
2021-10-15 01:38:56 -04:00
Imbris
457ed6ac64
Remove per entity VecDeque's of events from character StateUpdate and instead pass in external Vecs that can be pushed to (saves significant time not allocating for VecDeque::new)
2021-10-15 01:23:00 -04:00
Imbris
d515b42eac
Improve efficiency of states::utils::handle_orientation by reducing the conversions between Ori/Dir less frequent and optimizing the conversion of Dir -> Ori, also added a method to compute the angle between two Ori so that they don't need to be converted to Dir
2021-10-15 01:23:00 -04:00
Imbris
4f6eb286e6
Remove dead commented code, updated changelog, commented profiling spans
...
(but left in for easy reuse later), fix clippy complaint
2021-10-10 03:09:03 -04:00
Imbris
7f6ba90f59
simplify water/walls check code, interally iterate in chonks (but not
...
chunks)
2021-10-10 02:42:06 -04:00
Imbris
e7b92789f9
Refactor some of the terrain collision code, failed pre-emptive liquid check experiment
2021-10-10 02:42:06 -04:00
Imbris
8987f6128e
Do iteration check for snapping after checking the other conditions
2021-10-10 02:42:06 -04:00
Imbris
798e02b9e5
Convert water/walls check to the new iteration function
2021-10-10 02:42:06 -04:00
Imbris
59bd5b4acd
Initial iterator optimization by using internal iteration at the vol_grid level, water/walls not switched over yet
2021-10-10 02:42:06 -04:00
ubruntu
0e2808a8fd
Interactable campfires
2021-10-05 00:55:29 +00: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
2a82405df2
update toolchain to nightly-2021-09-24
2021-09-24 23:18:07 +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
Joshua Barretto
a76496c339
Use previous position caches for airship collision detection
2021-09-17 22:34:28 +01:00
juliancoffee
19f0cf4ee5
Set z_min to 0 for terrain collision checks
...
This allows us have different z_min for e2e checks
2021-09-17 13:28:34 +03:00
juliancoffee
4e3fb87526
Adress review
...
- Rename Collider::get_radius to bounding_radius
- Check origin difference in CapsulePrism with EPSILON * 10.0 instead of
magic 0.00001
- Add comments for closest_points, hardnened expression against NaNs
- Add comments to try_e2e_collision function, renamed to
resolve_e2e_collision, make it return whether collision was triggered.
- Remove Collider::Box (it is Cylinder, which is subset of CapsulePrism
with p0=p1=Vec2::zero())
2021-09-17 13:28:34 +03:00
juliancoffee
3dd6aa9dea
Implement capsule2capsule collisions
2021-09-17 13:28:34 +03:00
juliancoffee
fdb4b7111a
Fix bug with zero-pushback for bigger colliders
2021-09-17 13:28:34 +03:00
juliancoffee
c069a3523d
Fix beam offsets
...
- Introduce notion of min and max radius for Body instead of old
`radius()` function (which is renamed to `max_radius()`).
2021-09-17 13:28:34 +03:00
juliancoffee
7d97fe7ec5
Fix colliding bugs
...
- Make cylinder-like capsules prisms work without NaN in origin offsets.
Just return p0 as both origins instead of getting NaN by further
normalizing required because of how we rotate offsets.
- Fix pushback direction.
Make sure that pushback is calculated as our_pos - their_pos (and not
other way around).
- Fix colliding boundary detection.
Calculate center as Vec3::new(0, 0, height) and
not as `Vec3::new(0, height, 0)`.
2021-09-17 13:28:34 +03:00
juliancoffee
eeb3bec8ad
Refactor implementation of e2e collision
...
+ Add some hopefully helpful comments
+ Extract colliding tries to separate function
+ Move to Capsule + Cylinder collider combination instead of Capsule +
Capsule.
2021-09-17 13:28:34 +03:00
juliancoffee
44962958d8
Adress feedback
...
- Rewrite 2 * PI to TAU
- Some comment formatting
2021-09-17 13:28:34 +03:00
juliancoffee
6c3b61dc25
Implement CapsulePrism collisions
2021-09-17 13:28:34 +03:00
juliancoffee
7712976b86
Refactor box_voxel_collision function
2021-09-17 13:28:34 +03:00
juliancoffee
3b308a3f6f
Add CapsulePrism collider variant
...
+ Add placeholder physics collision implementation as copy of cylinder
Box collider.
+ Display it with debug hitboxes.
2021-09-17 13:28:34 +03:00
Sam
99981338bb
Fixed exp fix mistake and fixed lava, campfire, and bomb damage.
2021-09-15 08:32:44 -04:00
Sam
3d31248ced
Fixed health ui in few places and xp scaling from health.
2021-09-14 10:55:14 -04:00
Sam
85f4e66337
Addressed MR 2824 comments
2021-09-10 15:20:14 -04: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
Sam
44c3b0f153
Added attack hook event, attacks now cancel item use and sprite interaction.
2021-08-31 13:37:32 -04:00
Sam
538cb56b87
Sprites now go through a character state to be picked up.
2021-08-31 13:36:04 -04:00
Joshua Barretto
0b1a820762
Make arrows 'bonk' hanging sprites
2021-08-31 13:31:27 +01:00
Sam
7dcbd6aaf0
Renamed variable to make more explicit what it does.
2021-08-28 18:31:44 -04:00
Sam
0a648e2e8f
Fixed arrows dealing damage to entities if entity walked near arrow that stuck to terrain several seconds prior.
2021-08-26 19:00:28 -04:00
juliancoffee
c2247686db
Make is_mid_air use on_surface().is_none()
2021-08-13 23:16:38 +03: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
Illia Denysenko
0858279810
Gliding Debug Info
2021-08-07 13:19:58 +00:00
Joshua Barretto
665951946f
Fixed block snapping
2021-08-04 14:12:10 +01: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
7413e7fd11
Prettify aura system
2021-08-03 16:43:55 +03:00
juliancoffee
61416faec3
Refactor Aura system, add avoid_harm flag
...
+ fix bug where you cast OutOfGroup on yourself and your group
2021-08-03 16:42:58 +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
Imbris
3ddbb0a5fb
Merge branch 'mohs/refactoring_character_behavior' into 'master'
...
reducing complexity of character_behavior's run method by extracting logical pieces.
See merge request veloren/veloren!2697
2021-07-31 02:47:55 +00:00
Thomas Kosel
3735688e4c
changing <Sys> to Self to be a little more speaking and less riddles.
2021-07-29 23:14:46 +02:00
Thomas Kosel
005c33bb28
renaming methods to match the names of the methods called within
2021-07-29 22:55:58 +02:00
Thomas Kosel
0b07b14093
moving CharacterState interpreting methods to character_state.rs
2021-07-29 22:38:20 +02:00
Thomas Kosel
93045ba1ee
reducing complexity of character_behavior's run method by extracting logical pieces.
2021-07-29 20:09:31 +02:00
Imbris
01d1089a46
Add comment to physics and replace magic number in climbing boost with a named constant, fixes #1002
2021-07-29 03:11:44 -04:00
Thomas Kosel
c8527491cc
#918 reverting wrongly merged inventory related changes.
2021-07-28 21:13:09 +02:00
Thomas Kosel
acb7f5dc4b
#918 remove usages of .restrict_mut() from character_behavior.rs
2021-07-27 23:34:16 +02:00
Thomas Kosel
27f666622f
#918 remove usages of .restrict_mut() from mount.rs and stats.rs
2021-07-27 22:22:39 +02:00
Sam
f164d6036e
Made swapping equipped weapons a server event instead of being called in common to prevent server-client desyncs.
2021-07-25 18:30:17 -05:00
Joshua Barretto
199d56b1db
Fix block-hopping with strangely sized blocks
2021-07-25 20:03:17 +01:00
Dr. Dystopia
c577a7d677
Resolve unused '#[allow(clippy::while_let_on_iterator)]' error supressions
2021-07-24 20:04:52 +02:00
Imbris
d2b8a5a169
Fix check before calculating entity pushback, was causing a NaN and probably other bugs
2021-07-19 01:31:40 -04:00
Imbris
3e6fd0ee1d
Setup animation mount points for quadruped medium, update offsets in
...
common for new quadruped mediums, properly transform the offset in the
mount system using ori, fix issue with composing in the base ori with
the mounting bone ori in voxygen.
2021-07-18 15:09:36 -04:00
Imbris
b2bf83e200
Rework mounting animation so that full hierarchies of animation transforms can be applied to the mounter, factor out some common code in figure/mod.rs
2021-07-18 15:04:02 -04:00
Snowram
09cbb90f61
Make the mounter animations dependant of the mountee animation
2021-07-18 15:03:57 -04:00
Jonathan Berglin
b15f426ee5
Resolve all approved error supressions
2021-07-18 17:11:46 +00:00
Joshua Barretto
eade248e1f
Fixed handling of orientation changes for airships
2021-07-18 01:13:36 +01:00
Samuel Keiffer
f38cde9d40
Merge branch 'knightresspaladin/healing-aura' into 'master'
...
Knightresspaladin/healing aura
See merge request veloren/veloren!2587
2021-07-16 21:32:03 +00:00
holychowders
f316f1da60
Make Guards Defend Villagers
2021-07-14 07:40:43 +00:00
Marcel Märtens
9b3b21f368
fix clippy warnings
2021-07-12 12:09:09 +02:00
Knightress Paladin
146f86be2c
Removed references to Healing Beam, which Healing Aura is replacing
2021-07-10 21:39:11 -07:00
swrup
02151417f2
fix melee hit_count increment
2021-07-09 16:17:51 +00:00
juliancoffee
c538a9696c
Use Food after Buildup
...
+ Remove Saturation effect by rolling
+ Remove Saturation effect if interrupted with poise
+ Rename Potion to Drink, add ComplexFood
2021-07-05 10:56:29 +03:00
Sam
d8f68668b1
Addressed potential for divide by zero.
2021-07-04 22:00:13 -05:00
Sam
4ac9d9e0a5
Fix interaction of max health and max health over time buffs causing infinite health scaling.
2021-07-04 21:43:29 -05:00
Avi Weinstock
110aa17642
Fix underwater campfires.
2021-06-30 18:36:43 -04:00
Sam
8a9de26132
Food now applies buff at end of state.
...
Rolling and poise states now cancel the potion buff.
UseItem character state now checks that the item in the slot has the same item_definition_id as when the entity enters the state.
Rolling can no cancel item use.
Rolling now checks for move_dir instead of velocity.
2021-06-29 05:59:02 -05:00
Sam
3559ce5803
Added UseItem character state.
2021-06-29 05:59:02 -05:00
Sam
645cc60dc0
Balance tweaks.
2021-06-23 22:38:37 -05:00
Sam
aac24ad601
Added ensnared debuff icon.
2021-06-23 22:38:16 -05:00
Sam
0a32b676c8
Vines now ensnare you by applying a buff.
2021-06-23 22:38:16 -05:00
Sam
763461ebef
Ensnaring vines now ensnare you.
2021-06-23 22:38:16 -05:00
Sam
ed503236d6
Slightly functional sprite summon.
2021-06-23 22:38:16 -05:00
Dominik Broński
8356e2ffca
Merge branch 'aweinstock/lava' into 'master'
...
Lava
See merge request veloren/veloren!2482
2021-06-21 20:49:44 +00:00
Joshua Barretto
e930ff6779
Sanitise controller inputs
2021-06-21 21:13:49 +01:00
Avi Weinstock
0f9181cbcb
Address MR 2482 comments.
...
- Change lava density to 3x water density.
- Use `ServerEvent::Buff` instead of modifying the buff component directly.
- Revert commented-out changes to fluid shaders.
2021-06-20 11:32:05 -04:00
Avi Weinstock
f1a1160b80
Make lava solid w.r.t. rendering while still being liquid w.r.t. physics.
2021-06-19 16:52:21 -04:00
Avi Weinstock
2226a4c6a9
Add lava to caves, which sets you on fire if you swim in it. Currently requires uncommenting #define LAVA
in the shaders, and only looks good with cheap fluid mode.
2021-06-19 16:31:21 -04:00
Imbris
659b42e813
Remove tracy features that are no longer needed now that macros have been fixed
2021-06-19 04:27:50 -04:00
Joshua Barretto
46dfc119fb
Merge branch 'aweinstock/tighten_e2t' into 'master'
...
Make e2t hitboxes tighter by checking the floating point coordinates before looking up voxels.
See merge request veloren/veloren!2460
2021-06-18 16:27:20 +00:00
Joshua Barretto
fb51fd3230
Emit sound from head
2021-06-16 17:23:22 +01:00