Commit Graph

3143 Commits

Author SHA1 Message Date
Maxicarlos08
fd42b3f767
localize commands 2023-09-20 23:29:24 +02:00
Maxicarlos08
dccbfc4595
Soft loot protection 2023-09-20 17:02:25 +02:00
Isse
f4ca60cbb6 Map selector and generation UI 2023-09-17 17:11:19 +00:00
Imbris
aabf67a72a Add server-cli bench command for profiling that automates loading a certain area, running for a specific time, and then exiting. 2023-09-15 16:32:59 -04:00
Christof Petig
6c57d17714 Merge branch 'christof/location_fix' into 'master'
Correct location names after editing and creation

See merge request veloren/veloren!4108
2023-09-13 23:05:16 +00:00
Marcel Märtens
d67817068e fix auth, needed to set correct Config for argon to fix the hashing 2023-09-13 12:23:36 +02:00
Marcel
c25e8536ab Merge branch 'xMAC94x/update_uuid_authc' into 'master'
update uuid via authc

See merge request veloren/veloren!4093
2023-09-13 08:47:27 +00:00
Christof Petig
b6e421facc correct location names after editing and creation 2023-09-12 22:34:25 +02:00
Maxicarlos08
0613cd8dc1
Changelog entry 2023-09-06 17:54:43 +02:00
Maxicarlos08
ec42b9b5ce
don't store group id in ChatMode 2023-09-06 17:47:16 +02:00
Maxicarlos08
ec92b2c33b
Fix group chat leak 2023-09-03 21:25:44 +02:00
Xiretza
60538e0664 server: fix kill source for buff deaths without origin 2023-08-29 17:09:49 +00:00
Isse
06d7548dc6 Fix rtsim airships 2023-08-29 12:56:25 +00:00
Marcel Märtens
d54ed537ac update uuid via authc 2023-08-28 20:09:17 +02:00
Maxicarlos08
f2958954b9
new model for portal & use cultist particles 2023-08-27 19:40:49 +02:00
Maxicarlos08
0f13b407a2
allow for non-owned entities to teleport 2023-08-27 19:40:49 +02:00
Christof Petig
653b3b7374 Merge branch 'christof/location_names' into 'master'
Send the location name to the character selection dialog

See merge request veloren/veloren!4085
2023-08-26 15:56:40 +00:00
Laura
f0d8237e2d Upgrade authc dependency revision
42dddd666f28e1a94cdf4b542fcd61f67658e261 contains additional fixes
for RUSTSEC-2023-0052.
2023-08-23 11:17:30 +02:00
Laura
b03d0dcc7b Upgrade rustls and quinn
According to RUSTSEC-2023-0052 we need to upgrade rustls to 0.21
to get a fix for the issue which may or may not affect Veloren
since it's about client certificates but with the absence of a
PoC it seems like a good idea to upgrade anyway, just to be sure.

webpki has gone unmaintained (which rustls 0.20 depends on),
starting with rustls 0.21 it depends on rustls-webpki which
contains a fix for the issue. Since quinn also depends on
rustls 0.20 in 0.8 and 0.9 versions, we needed to upgrade it to
0.10 so that it depends on rustls 0.21 which we now use.
2023-08-23 06:35:36 +02:00
Christof Petig
b20ff5144c determine location names when loading character list 2023-08-22 22:41:48 +02:00
Joshua Barretto
6fbca74e88 Merge branch 'maxicarlos08/dungeon-avoid-cave' into 'master'
Cheesing fixes to old-style dungeons

See merge request veloren/veloren!4014
2023-08-19 11:12:01 +00:00
Maxicarlos08
1274dc43c8
document and cleanup StateExt::position_mut 2023-08-19 12:43:48 +02:00
Maxicarlos08
14f433b6cd
used second sfx for teleport event 2023-08-19 11:44:58 +02:00
Maxicarlos08
dc1756b2df
added sfx (thanks to @flo666) 2023-08-17 22:47:35 +02:00
Maxicarlos08
ce8be9596b
fix pets not following after making them stay and translation 2023-08-17 12:10:32 +02:00
Maxicarlos08
e5e26149ed
review 2023-08-17 11:16:20 +02:00
Imbris
e8361d5abf Merge branch 'imbris/sync-toggle' into 'master'
Add field to Presence to control when an entity is synced to other clients

See merge request veloren/veloren!3972
2023-08-16 00:10:35 +00:00
Maxicarlos08
0c9a942027
refactor teleporter system and include nearby pets 2023-08-15 12:24:49 +02:00
Maxicarlos08
92ab8dab9a
require interaction to start teleportation 2023-08-15 12:24:49 +02:00
Maxicarlos08
6a4a6bab9f
dance dance 2023-08-15 12:24:49 +02:00
Maxicarlos08
ac68f0af7b
addressed review comments and added hud interaction 2023-08-15 12:24:49 +02:00
Maxicarlos08
26ada89bb9
portal event -> change body and teleport to 2023-08-15 12:24:49 +02:00
Maxicarlos08
8fe5f2e708
addressed review comments 2023-08-15 12:24:49 +02:00
Maxicarlos08
e5fe64ccf6
pre-review cleanups 2023-08-15 12:24:49 +02:00
Maxicarlos08
bb2034ca92
portal particles 2023-08-15 12:24:48 +02:00
Maxicarlos08
09f7087ac6
buildup time adjustments 2023-08-15 12:24:48 +02:00
Maxicarlos08
3343ddf4cc
go into blink state at half buildup time 2023-08-15 12:24:48 +02:00
Maxicarlos08
25fcb04ad3
buildup times and portal model update 2023-08-15 12:24:48 +02:00
Maxicarlos08
0f2db68498
added portals 2023-08-15 12:24:17 +02:00
Maxicarlos08
13dbf679c5
review 2023-08-15 11:10:54 +02:00
Maxicarlos08
1ea0f249f5
display if pet is currently following or staying 2023-08-15 11:10:54 +02:00
TelepathicWalrus
4bdbb3ff6b
Move stay position to agent 2023-08-15 11:10:54 +02:00
TelepathicWalrus
2cb8e2ca84
Update code quality 2023-08-15 11:10:53 +02:00
Joshua Barretto
62d998252d
sync 2023-08-15 11:10:53 +02:00
TelepathicWalrus
6adca217fe
Clean code 2023-08-15 11:10:53 +02:00
TelepathicWalrus
6a080c242c
Add server side check to stop stay when mounted
Add filter to allow telling other pets to stay when mounted
2023-08-15 11:10:53 +02:00
TelepathicWalrus
0648ba1bc6
Clean Code
Remove option to mount if pet is told to stay
2023-08-15 11:10:53 +02:00
TelepathicWalrus
d6496c999d
Removed is_stay variable
Added server side owner and distance checks
2023-08-15 11:10:53 +02:00
TelepathicWalrus
d9d364fe79
Add stay position to PetState
Pets will now stay within 10 voxels of where they were told to stay
Added MAX_STAY_DISTANCE constant
Fixed being able to tell pet to stay when mounted
2023-08-15 11:10:53 +02:00
TelepathicWalrus
9597810e3d
Remove is_stay function
Clean code
2023-08-15 11:10:53 +02:00
TelepathicWalrus
e611d695b1
Add stay/follow option for pets 2023-08-15 11:10:52 +02:00
Imbris
aba0c23bc7 Make sync_me based of PresenceKind rather than being an independent
field.
2023-08-11 20:09:55 -04:00
Imbris
ecb27deeae When sync_me is false avoid:
* Logging a warning when deleting the entity and it is not in any
  Region.
* Searching every single region for an entity that is in none of them.

Also:
* Add workaround for bug in specs where deleting any entity clears the
  components before checking that the generation is correct (surprised
  that we haven't encounted bugs from this yet).
* Properly update `tracked_entities` inside `RegionMap` when deleting
  an entity. Previously, we just relied on this being updated in
  `RegionMap::tick` by the absence of the `Pos` component at that index.
  However, this means if a new entity is created at that index after
  deletion and before calling `RegionMap::tick`, then this can be
  interpreted as an entity moving between regions rather than one being
  deleted and another created. It seems like this could lead to
  synchronization bugs like not creating the new entity on the client
  (although I haven't noticed this before, I think maybe we use newly
  inserted `Uid`s to detect new entities rather than the region system?).
  I think it could at least lead to sending redundant messages to
  synchronize the new entity.
2023-08-11 20:09:55 -04:00
Imbris
cdca700297 Properly check conditions for when the client's physics components should be synced 2023-08-11 20:09:55 -04:00
Imbris
396c08e7ee Also make sure physics components are synced 2023-08-11 20:09:55 -04:00
Imbris
997babca18 Always sync components for a client's entity even if it has no position
or has sync_me false in `Presence`.
2023-08-11 20:09:55 -04:00
Imbris
ba7d7481d7 Move RegionMap insertion into ecs and ticking from common into server
Since it now needs Presence component to be available and we don't use
the RegionMap on the client.
2023-08-11 20:09:55 -04:00
Imbris
a01f75b38d Add sync_me parameter to Presence that must be set to true for
entities with the `Presence` component to be synced to other clients.
2023-08-11 20:09:55 -04:00
Isse
a39923e4d6 digging shovel 2023-08-03 19:32:09 +02:00
Michal Sroczynski
2c23781d22 Remove tiers from dungeons names 2023-08-02 18:48:01 +02:00
flo
57fe2c4adb spawn wyverns 2023-08-02 07:55:10 +00:00
Sam
e3ad16ef47 Addressed review comments 2023-07-29 19:04:11 -04:00
Sam
d6fcd893bf Addressed testing feedback 2023-07-29 19:04:10 -04:00
Sam
9fa556b165 Axe AI 2023-07-29 19:04:07 -04:00
Sam
1cc99c9c4a Fixes to animations and making ability that the animation system thinks is being used more correct 2023-07-29 19:03:56 -04:00
Sam
ff15780c22 Maelstrom 2023-07-29 18:53:48 -04:00
Sam
4a690840e4 Savage sense 2023-07-29 18:53:47 -04:00
Sam
80ab9c26ec Initial setup 2023-07-29 18:53:38 -04:00
Samuel Keiffer
026b61baee Merge branch 'maxicarlos08/chieftain-mask-fix' into 'master'
Maxicarlos08/chieftain mask fix

See merge request veloren/veloren!4024
2023-07-29 01:22:28 +00:00
Neras
e72a8f2fcc Nerasw/defensive stance tweaks 2023-07-28 21:29:32 +00:00
Maxicarlos08
922a592c8d
fixed migrations 2023-07-27 00:24:43 +02:00
Maxicarlos08
2cbb104243
Miner helmet migrations 2023-07-13 17:18:46 +02:00
Igigog
02cb319624 Refactor save_thread function 2023-07-12 21:46:57 +02:00
Monty Marz
102945b9e7 Dungeon rework initial patch 2023-07-09 20:03:09 +00:00
Christof Petig
708819013f remove another dead code section 2023-07-01 15:31:53 +02:00
Christof Petig
01223d7174 implement and use read_exact_bytes, cleanup 2023-07-01 15:31:53 +02:00
Christof Petig
28c3721ecf upgrade wasmer, implement basic WASI, turn off login events for now 2023-07-01 15:31:53 +02:00
Marcel
59e242dfb8 Merge branch 'zesterer/anticheat' into 'master'
Emergency fixes to terrain persistence and anticheat

See merge request veloren/veloren!4006
2023-07-01 12:15:32 +00:00
Joshua Barretto
7c59bec29d Removed dead code warning 2023-07-01 12:11:21 +01:00
Joshua Barretto
598f628858 Reenabled physics rejection logging 2023-07-01 09:40:57 +01:00
Joshua Barretto
9a0aa5d552 Emergency fixes to terrain persistence and anticheat 2023-06-30 19:56:24 +01:00
Marcel Märtens
e3f8046691 Change the version number to 0.15 2023-06-30 16:31:00 +02:00
Joshua Barretto
9c1a06d1b2 Upped maximum vertical speed 2023-06-22 19:34:18 +01:00
Joshua Barretto
98493fd511 Better rejection logs 2023-06-22 13:14:07 +01:00
Joshua Barretto
dda28d5621 Overhauled and improved anticheat 2023-06-22 12:25:08 +01:00
Joshua Barretto
8480cb4a7a Apply client physics once per server tick 2023-06-22 10:43:02 +01:00
Imbris
0b213b6149 Move common code into a separate function to avoid the complexity of calling delete_entity_recorded from handle_exit_ingame 2023-06-04 22:29:19 -04:00
Imbris
599e25c9c6 Address review on !3971 2023-06-04 21:12:39 -04:00
Imbris
9a12de5fcf rebase fix 2023-06-04 14:24:01 -04:00
Imbris
b72bf74563 Update TODO after re-reading code and seeing that it was slightly inaccurate 2023-06-04 12:59:09 -04:00
Imbris
b96e7e1b26 Adjust tests to match changes 2023-06-04 12:59:09 -04:00
Imbris
ea77a443a2 Fix conditions on some error logging spots 2023-06-04 12:59:09 -04:00
Imbris
77e1b1919a Use new id mappings to improve lookup_actor function 2023-06-04 12:59:09 -04:00
Imbris
42ba445ea2 Add RtsimEntity mapping if it is included as a component on a newly
created npc.

Also, improve wording of a comment.
2023-06-04 12:58:16 -04:00
Imbris
b8af76deff Remove potential for client to delete its own entity.
Also:
* Fix some clippy warnings
* Remove unused clippy allow
* Document semantics of `DeletedEntities`
2023-06-04 12:58:16 -04:00
Imbris
65efa779b5 Steps towards properly synchronizing when a client exits in-game to
return to the character screeen. And other related improvements.

* Uid now optional when removing an entity from IdMaps since that Uid
  may have been transferred to the new entity created when the client
  exits "in-game".
* Added notes about making sure to update the CharacterId mapping when
  changing the `kind` field of `Presence`.
* Add a parameter to `delete_entity_recorded` that indicates whether it
  is being called from `handle_exit_ingame` and that provides the `Uid`
  that was removed from the entity so that we can more explicitly and
  correctly handle that case.
* We now add the Uid of the client to the deleted entities list when it
  exits "ingame". (still need to rework code so that the client doesn't
  delete its own entity).
* Improved integration of possession code with ForceUpdate logic.
* Don't remove `Presence` component from old entity in possession so
  that deleting that entity will properly handle updating the
  CharacterId unmapping (if the old entity isn't going to be deleted we
  still remove the `Presence` component so that it doesn't keep terrain
  loaded).
* Added a couple TODOs on existing tangential things I noticed.
2023-06-04 12:58:16 -04:00
Imbris
996f58ebd2 Avoid using return for skipping respawn events 2023-06-04 12:58:16 -04:00
Imbris
62abed1eec Replace u64 with Uid in some places and add/modify some comments 2023-06-04 12:58:16 -04:00
Imbris
a8fbfc026a Fix compilation errors from recent changes 2023-06-04 12:58:16 -04:00
Imbris
c60f994c7f Some random changes and a fmt 2023-06-04 12:58:16 -04:00
Imbris
f11baed9fa Adapting various things to the new interface, fixing compilation errors,
and progressing on half done things. Also, added a few TODO comments.
2023-06-04 12:58:16 -04:00
Imbris
4094887997 Rename UidAllocator to IdMaps everywhere, also rename lookup_entity to
uid_entity.

Also made more progress on changes in common/src/uid.rs

(does not compile so don't know if all rebase quirks resolved)
2023-06-04 12:58:16 -04:00
Imbris
35922866a8 Start refactoring UidAllocator to contain mappings for different Id
types.

* Add new `IdMaps` type that contains mappings to Entity from Uid, CharacterId, and
  RtsimEntity.
* Add PresenceKind::LoadingCharacter variant for when the CharacterId
  has not actually been confirmed to exist and belong to the logged in
  client. Switches to the regular PresenceKind::Character once the
  character is loaded from the database and that is used to update the
  entity.
* Start refactoring `delete_entity_recorded` to check for CharacterId
  and RtsimEntity values that may need to be removed from the map (just
  very start, not near complete).
* Other misc tweaks.
2023-06-04 12:58:16 -04:00
Imbris
3277d18265 Rename retrieve_entity_internal to lookup_entity 2023-06-04 12:58:16 -04:00
Imbris
ea725fffde Cleanup UidAllocator and Uid a bit:
* Remove unnecessary Marker/MarkAllocator trait implementations.
* Delete excess functions
* Change some methods to take Uid instead of u64
2023-06-04 12:58:15 -04:00
Isse
a884e0e058 Various rtsim related stuff 2023-06-03 22:14:18 +00:00
Samuel Keiffer
272d57b4fa Merge branch 'cyclops_and_dullahan_tweaks' into 'master'
npc_attack_tweaks

See merge request veloren/veloren!3969
2023-06-03 14:04:11 +00:00
flo
53288d0b22 npc_attack_tweaks 2023-06-03 14:04:10 +00:00
flo
16d58c6b4e plant creatures 2023-06-03 13:59:52 +00:00
Joshua Barretto
ec3a7d1898 Make items vanish after 5 minutes 2023-06-01 14:51:19 +01:00
Joshua Barretto
3a383050d5 Apply fall damage even after a block-hop 2023-06-01 14:14:28 +01:00
Joshua Barretto
f00f96636c Fixed weird fall damage application 2023-06-01 14:08:13 +01:00
flo
40832456f2 spawn frost gigas 2023-05-31 12:31:54 +00:00
Joshua Barretto
4fa799e7c7 Fixed volume mount orientation 2023-05-25 03:16:27 +01:00
Joshua Barretto
9127d6cbf2 Account for surface normal when calculating collision damage 2023-05-25 01:21:44 +01:00
Joshua Barretto
6a2796dc17 Everything damage 2023-05-25 00:28:35 +01:00
Joshua Barretto
dbcbd43b8f Added body kind argument to /airship and /ship 2023-05-25 00:25:28 +01:00
Joshua Barretto
610d1d8497 Simplified replacement drag logic, special-case volume entities to improve movement 2023-05-25 00:25:28 +01:00
Joshua Barretto
74d4fc8e64 Added sprites to ship models 2023-05-25 00:25:28 +01:00
Joshua Barretto
96bf86dae0 Rebalanced masses, dimensions, swim thrusts, and made various improvements to water movement that help with gameplay and pathfinding. Also fixed swimming animations for many creatures. 2023-05-25 00:25:25 +01:00
Joshua Barretto
5988237b3d Fixed non-dismounting teleportation 2023-05-25 00:22:54 +01:00
Isse
68491dde55 Merge branch 'seachapel_rework' into 'master'
seachapel_rework

See merge request veloren/veloren!3856
2023-05-24 18:13:29 +00:00
flo
a55276ea73 seachapel_rework 2023-05-24 18:13:29 +00:00
Kittycat
9eb4931822 Fix: the /time command has been fixed in accordance to issue #1622 2023-05-24 16:47:36 +00:00
Maxicarlos08
777a69e576
adressed review comments 2023-05-22 23:20:11 +02:00
Maxicarlos08
fbe32a9047
no_dura -> no_durability 2023-05-22 22:38:48 +02:00
Maxicarlos08
174f75dc63
durability free areas 2023-05-22 22:38:47 +02:00
Joshua Barretto
b730766106 Prevent explosion damage going through walls 2023-05-21 15:30:18 +01:00
Joshua Barretto
cfdf184c4c Fix non-humanoid pathfinding and movement in water 2023-05-16 20:48:50 +01:00
Joshua Barretto
52b5967914 Fix pet idle movement, add a way to configure agent behaviour through manifests 2023-05-16 18:51:46 +01:00
Joshua Barretto
4732d28e24 Reduce creature flee speed 2023-05-14 22:18:01 +01:00
Joshua Barretto
140927cbe7 Clean up day coefficient code 2023-05-14 22:10:37 +01:00
flo666
aca38d0cf4 review fixes 2023-05-13 09:32:29 -04:00
Sam
fd3c377d1c Taught adlet elder how to use leap 2023-05-13 09:32:25 -04:00
Sam
8c3b1f23ee Adlet elder AI 2023-05-13 09:31:31 -04:00
Sam
71d7a3b780 Ice creature AIs 2023-05-13 09:30:56 -04:00
Sam
5a83f85779 Initial ice drake AI 2023-05-13 09:30:55 -04:00
Sam
2e9f1edef3 Adlet AI 2023-05-13 09:30:52 -04:00
Sam
680d987e11 Adlet hunter AI 2023-05-13 09:30:51 -04:00
flo666
1750c9a0f2 structure work 2023-05-13 09:30:48 -04:00
Sam
76f4db6f70 Tweaked positioning of adlet sites 2023-05-13 09:30:14 -04:00
Joshua Barretto
ec5e3fe716 Avoid re-fetching system data on every link persist 2023-05-13 12:31:19 +01:00
Joshua Barretto
9e9889eed6 Allowed bird pets to mount their owners when nearby 2023-05-12 21:03:44 +01:00
Marcel Märtens
3a19669d53 use workspace dependencies to make our life easier maintaining them :) 2023-05-10 18:16:25 +02:00
Isse
2bc63d22ae Merge branch 'isse/sittable-sprites' into 'master'
Sprites on airships, and mountable sprites

See merge request veloren/veloren!3886
2023-05-10 13:55:51 +00:00
Isse
9fa4c7217e more info on todo comment and allow clippy lint 2023-05-10 15:22:35 +02:00
maxicarlos08
5c4c47b517
Use LRU cache for caching presistent chunks instead of time-based cache 2023-05-09 20:06:53 +02:00
maxicarlos08
4e136e2961
Performance improvements for persisted terrain
- Only save terrain to disk if it actually has been modified
 - Keep a 10 minute cache with recently unloaded persistent chunks
2023-05-09 20:06:53 +02:00
Isse
1617c180ef small changes 2023-05-09 19:55:52 +02:00
Isse
bcc8c55b5e change 'force from mount' to 'force from volume' in commands 2023-05-09 19:43:10 +02:00
Isse
61ecd2c178 various small fixes 2023-05-09 19:43:10 +02:00
Isse
a6665ed988 some comments 2023-05-09 19:43:10 +02:00
Isse
192356f6c5 use interpolated pos and ori 2023-05-09 19:43:09 +02:00
Isse
b6c7316de9 place rtsim on sprite controllers 2023-05-09 19:43:09 +02:00
Isse
57551c479c force of mount in teleporting commands 2023-05-09 19:43:09 +02:00
Isse
134d0f0c04 varius fixes 2023-05-09 19:43:09 +02:00
Isse
b3a70627e5 fix volumes 2023-05-09 19:43:09 +02:00
Isse
6674cce2cc intercat with sprites on ships 2023-05-09 19:43:09 +02:00
Joshua Barretto
1cc221f653 Merge branch 'zesterer/rtsim-tweaks' into 'master'
Started adding wandering rtsim monsters

See merge request veloren/veloren!3908
2023-05-09 14:51:15 +00:00
Marcel Märtens
95bca5418a update toolchain to nightly-2023-04-20 2023-05-08 18:58:54 +02:00
Sam
faff715c4f Simultaneous melee hits now show separately in SCT 2023-05-07 20:43:52 -04:00
Sam
a38f336c9e Added dual wielding sword contextual abilities. 2023-05-07 20:43:51 -04:00
Sam
0ecf4fbe87 Dual wielding weapons of the same kind added as a context 2023-05-07 20:43:51 -04:00
Sam
9cedf854de Abilities can now be activated from multiple contexts 2023-05-07 20:43:50 -04:00
Imbris
95a38ff8f6 Merge branch 'imbris/revert-some' into 'master'
Revert some of the updates to make windows cross compile directx work

See merge request veloren/veloren!3918
2023-05-06 05:12:20 +00:00
Imbris
af0d0f3ea4 Second attempt (success) 2023-05-06 00:30:54 -04:00
Corvella
6367a51fa3 Cheesing fixes mainly focused on bosses 2023-05-06 01:57:41 +00:00
Marcel Märtens
cd7d889c13 get rid of oldtime in chrono 2023-05-05 18:25:49 +02:00
Marcel
223ae7ee98 Merge branch 'xMAC94x/update_deps' into 'master'
update further dependencies

See merge request veloren/veloren!3913
2023-05-05 08:42:43 +00:00
Joshua Barretto
b6d8182382 Merge branch 'zesterer/item-merging' into 'master'
Zesterer/item merging

See merge request veloren/veloren!3912
2023-05-05 00:03:22 +00:00
Joshua Barretto
73c84dfcc2 Clippy 2023-05-05 00:04:13 +01:00
Joshua Barretto
8d9625d6ee Addressed comments 2023-05-04 23:18:40 +01:00
Marcel Märtens
4be1e82ba9 update further dependencies 2023-05-04 23:42:05 +02:00
Joshua Barretto
ee971e4056 Added item merging 2023-05-04 22:12:25 +01:00
Marcel Märtens
27620e665b we need a new version of refinery that needs a new version of rusqlite, so update both 2023-05-04 20:53:00 +02:00
Marcel
ce4beff7fe Merge branch 'xMAC94x/update_deps' into 'master'
update veloren deps

See merge request veloren/veloren!3911
2023-05-04 18:28:59 +00:00
Imbris
60dbcf86f9 Merge branch 'imbris/server-start-faster' into 'master'
Improve server startup times, in particular, finding paths between sites.

See merge request veloren/veloren!3888
2023-05-04 18:06:38 +00:00
Joshua Barretto
f000347cac Make NPCs respond to each other 2023-05-04 11:53:01 +01:00
Joshua Barretto
a5b1e41d8b Make NPC interaction go via rtsim 2023-05-04 11:23:46 +01:00
Marcel Märtens
054f4f9453 update veloren deps 2023-05-04 11:58:43 +02:00
Joshua Barretto
2ff0118df0 More rtsim monsters 2023-05-04 10:13:02 +01:00
Joshua Barretto
0f92f38967 Started adding wandering rtsim monsters 2023-05-01 18:29:32 +01:00
Isse
3d3a6eab2b Fix items not dropping when no exp is given. 2023-04-25 11:33:44 +02:00
Isse
ab4076518f Add multiloot 2023-04-23 19:17:39 +00:00
Imbris
cd02b3a172 Apply TODO from !3883 and refactor to avoid collect in Inventory::damage_items, also reduce to iterating over the hashmap once when culling the recently unequipped items list 2023-04-22 11:37:52 -04:00
Imbris
c82e6cfc77 Cleanup, fmt, appease clippy 2023-04-20 21:53:59 -04:00
Imbris
c6f5e8dac2 Add more profiling spans to Server startup related things in order to
visualize where time is being spent. Make `Lod::from_world` use the same
rayon pool as other things during the server startup. Move parallel
iteration up out of structure_gen.par_iter in order to slightly optimize
Lod::from_world (saves a few hundred milliseconds on my machine)
2023-04-20 21:53:59 -04:00
Imbris
ed4643e80b Add profiling spans for Server::new and World::generate 2023-04-20 21:53:59 -04:00
Sam
e819cd2309 Updated hashbrown, removed some to_owned calls in handling recently unequipped items 2023-04-19 18:43:40 -04:00
Sam
7fdfc0e71b Addressed review 2023-04-19 18:34:17 -04:00
Sam
d0a902d918 Being attacked now cancels all active trades. 2023-04-19 18:34:16 -04:00
Sam
c1a64e1d69 Recently unequipped items are now tracked and durability loss on death is applied to them 2023-04-19 18:34:16 -04:00
Julian Tölle
573a2942c9 Add more info to the /rtsim_{npc,info} commands
- Add the name of the NPC to /rtsim_npc to help identify this NPC in the world
- Add faction & personality to /rtsim_info command to learn more about the NPC
2023-04-16 12:37:37 +02:00
Sam
553aa690b4 Added repair equipment command 2023-04-14 18:09:23 -04:00
Isse
60b626d3ee don't load npc by themself if they're riding 2023-04-14 13:21:43 +02:00
Isse
3548b464da orient airships correctly on load 2023-04-14 11:25:59 +02:00
Isse
d1f6e6bef6 somewhat fix airships 2023-04-14 11:22:10 +02:00
Joshua Barretto
504ea158d2 Merge branch 'zesterer/towns' into 'master'
Improvements to towns and NPCs

See merge request veloren/veloren!3867
2023-04-13 21:03:02 +00:00
Joshua Barretto
daacadaedb Made NPCs give directions to nearby towns, fixed player death propagation 2023-04-13 14:34:31 +01:00
Samuel Keiffer
7aa43e9e8a Merge branch 'taoist/better-dullahan' into 'master'
taoist&floppy/cyclops&dullahan

See merge request veloren/veloren!3859
2023-04-12 22:53:38 +00:00
Tao In Way
e32460f9ee taoist&floppy/cyclops&dullahan 2023-04-12 22:53:38 +00:00
Joshua Barretto
9e17042bf6 Merge branch 'rtsim2' into 'master'
Initial implementation of rtsim2

Closes #1476

See merge request veloren/veloren!3517
2023-04-12 16:17:52 +00:00
Isse
f13ae63985 make reposition_on_load join immutable 2023-04-12 17:08:16 +02:00
Isse
fc3f7590c7 clamp chase_tgt to ground if we can't fly 2023-04-12 17:04:25 +02:00
Joshua Barretto
16e3227f78 Correct localisation of numeric values, use coordinate conversions in rtsim 2023-04-12 10:36:11 +01:00
Isse
0c688a9b50 remove comment 2023-04-12 10:19:19 +02:00
Isse
0bb6fa7946 add flag to clamp to ground for RepositionOnChunkLoad 2023-04-12 10:17:49 +02:00
Isse
6be4a2b33f only add RepositionOnChunkLoad to rtsim npcs and don't add Waypoint if it doesn't exist 2023-04-12 09:24:07 +02:00
Joshua Barretto
cf701fb604 Localised rtsim NPC speech 2023-04-11 17:00:08 +01:00
Joshua Barretto
edcc2f1870 Overhauled chat message representation to allow for more exhaustive localisation 2023-04-11 15:46:36 +01:00
Joshua Barretto
08afe26112 Directly compare rtism resources to avoid unnecessary hooks 2023-04-11 11:49:10 +01:00
Joshua Barretto
81b52298f0 Addressed review feedback 2023-04-11 10:34:06 +01:00
Imbris
4ea635cc8d Merge branch 'imbris/random-tweaks-35902u8' into 'master'
Some misc tweaks

See merge request veloren/veloren!3861
2023-04-11 02:07:35 +00:00
Joshua Barretto
92ead1cf38 Removed vehicle riders, for now 2023-04-10 20:58:08 +01:00
Joshua Barretto
b50645c1ee Addressed review comments 2023-04-10 17:59:43 +01:00
Joshua Barretto
859eb95033 Log error instead of panicking 2023-04-09 19:25:58 +01:00
Joshua Barretto
c6a7d7aa9b Synchronise rtsim saves 2023-04-09 19:25:58 +01:00
Joshua Barretto
d751a22af7 Fixed buggy NPC aggro behaviour 2023-04-09 19:25:58 +01:00
Joshua Barretto
251ab95ac5 Neater rtsim_npc 2023-04-09 19:25:58 +01:00
Joshua Barretto
326aa3f8ff Made /rtsim_npc order NPCs by distance 2023-04-09 19:25:58 +01:00
Joshua Barretto
2fbddafd0a Added report system, information sharing, made NPCs act on sentiments 2023-04-09 19:25:58 +01:00
Joshua Barretto
08338436ea Added sentiments 2023-04-09 19:25:58 +01:00
Joshua Barretto
d7ba4ecef7 Allow OnDeath event to handle all actors 2023-04-09 19:25:58 +01:00
Joshua Barretto
ce5ef481e1 Added interrupt_with combinator, guard patrol patterns 2023-04-09 19:25:58 +01:00
Joshua Barretto
a7a08763f2 Gave NPCs names 2023-04-09 19:25:58 +01:00
Joshua Barretto
74610833d0 Cleaned up rtsim tick handling 2023-04-09 19:25:58 +01:00
Joshua Barretto
80e4e8deae Fixed NPCs talking to themselves 2023-04-09 19:25:57 +01:00
Joshua Barretto
5614eaa7a5 Cleaned up rtsim rules 2023-04-09 19:25:57 +01:00
Joshua Barretto
3e0f5295c0 Added CharacterActivity, made NPCs look at the player when speaking to them 2023-04-09 19:25:57 +01:00
Joshua Barretto
2e047f6723 Use atomic file for rtsim data 2023-04-09 19:25:57 +01:00
Joshua Barretto
082bcdb755 Don't hunt friendly animals 2023-04-09 19:25:57 +01:00
Joshua Barretto
c8d0443111 Clippy fixes 2023-04-09 19:25:57 +01:00
Joshua Barretto
9f025de27d Addressed feedback 2023-04-09 19:25:57 +01:00
Joshua Barretto
1fcb46ae0c Made merchants advertise wares 2023-04-09 19:25:56 +01:00
Joshua Barretto
b72d8f3192 Added the ability for rtsim to tell NPCs to speak 2023-04-09 19:25:56 +01:00
Joshua Barretto
7dfbc2bdab Made socialising NPCs dance 2023-04-09 19:25:56 +01:00
Joshua Barretto
5aaee96cb1 Removed special-casing of merchants 2023-04-09 19:25:56 +01:00
Joshua Barretto
2d7d172f49 Made rtsim aware of character locations 2023-04-09 19:25:56 +01:00
Joshua Barretto
7175f7f02f Hunters explore forests to hunt game 2023-04-09 19:25:56 +01:00
Joshua Barretto
b402e450cf Added rtsim_npc, made herbalists gather ingredients 2023-04-09 19:25:56 +01:00
Joshua Barretto
dfb5e32803 Don't interact forever 2023-04-09 19:25:56 +01:00
Joshua Barretto
364255c7fe Allowed rtsim NPCs to greet nearby actors 2023-04-09 19:25:55 +01:00
Isse
d53b344c23 make merchants use tell, and general cleanup 2023-04-09 19:25:55 +01:00
Joshua Barretto
8ba68e30f3 Merchants no longer buy/sell things they don't know the price of 2023-04-09 19:25:55 +01:00
Joshua Barretto
ea007ff702 Cleaning up 2023-04-09 19:25:55 +01:00
Joshua Barretto
6035234c6e Removed old rtsim 2023-04-09 19:25:55 +01:00
Joshua Barretto
5062920b5c Better NPC spawning 2023-04-09 19:25:55 +01:00
Joshua Barretto
64324262c7 Added /rtsim_purge command 2023-04-09 19:25:55 +01:00
Isse
1c0fdf9228 rtsim personalities 2023-04-09 19:25:55 +01:00
Isse
7ac6c6b453 fix warnings in rtsim 2023-04-09 19:25:55 +01:00
Isse
adb2e1ba85 very simple repopulation 2023-04-09 19:25:55 +01:00
Isse
dda1be58d4 big birds! 2023-04-09 19:25:54 +01:00
Isse
64bd11d34a use wpos_to_cpos 2023-04-09 19:25:54 +01:00
Isse
1a117f1331 rtsim vehicles 2023-04-09 19:25:54 +01:00
Isse
a7588e274d clean up mounting 2023-04-09 19:25:54 +01:00
Isse
a6b2f04518 use push_basic_input instead of actions.push 2023-04-09 19:25:54 +01:00
Joshua Barretto
bb96e92362 Track almost all collectable sprites, added resource replenishment 2023-04-09 19:25:54 +01:00
Joshua Barretto
94390331e0 Rtsim death event 2023-04-09 19:25:54 +01:00
Joshua Barretto
077da13a5f Improved herbalist, hunter, farmer, added cultist factions 2023-04-09 19:25:54 +01:00
Joshua Barretto
2aa6ced357 Removed patrol origin from humanoid NPCs 2023-04-09 19:25:54 +01:00
Joshua Barretto
84eb7b0653 Made adventurers explore sites before moving on 2023-04-09 19:25:54 +01:00
Joshua Barretto
2b3f0737d0 Added npc_info, action backtraces 2023-04-09 19:25:54 +01:00
Joshua Barretto
b2f92e4a6c Switch to combinator-driven NPC AI API 2023-04-09 19:25:53 +01:00
Joshua Barretto
acecc62d40 sync 2023-04-09 19:25:53 +01:00
Joshua Barretto
0b4d3c9e20 Fixed scaling of airships 2023-04-09 19:25:53 +01:00
Joshua Barretto
7e9474ab70 Overhauled rtsim2 pathfinding with TravelTo 2023-04-09 19:25:53 +01:00
Joshua Barretto
1b439d0897 New behaviour tree system for rtsim2 2023-04-09 19:25:53 +01:00
Joshua Barretto
e8b489a71a sync 2023-04-09 19:25:53 +01:00
TaylorNAlbarnaz
3a52cc1fa3 NPCs walk in when pathing in intrasite 2023-04-09 19:25:53 +01:00
IsseW
63f1ac0e31 trade with alchemists 2023-04-09 19:25:53 +01:00
IsseW
c026b4d20a travelers say where they're going 2023-04-09 19:25:53 +01:00
IsseW
9be6c7b527 Pathing between sites. 2023-04-09 19:25:53 +01:00
IsseW
ca02b5e97c cleaner entity creation 2023-04-09 19:25:52 +01:00
Joshua Barretto
6397e283b2 Added world settings 2023-04-09 19:25:52 +01:00
Joshua Barretto
e08f7d4fa9 Added blacksmith 2023-04-09 19:25:52 +01:00
IsseW
afd9ea5462 site pathing 2023-04-09 19:25:52 +01:00
Joshua Barretto
f40cfb4ac3 Made farmers sell food 2023-04-09 19:25:52 +01:00
Joshua Barretto
e204789ce9 Persist TimeOfDay with rtsim 2023-04-09 19:25:52 +01:00
Joshua Barretto
ee048ad5a2 Made NPCs talk and trade 2023-04-09 19:25:52 +01:00
IsseW
21f9bcb8e2 added professions, and loadouts 2023-04-09 19:25:52 +01:00
IsseW
ac0e62df8e tp_npc command 2023-04-09 19:25:52 +01:00
Joshua Barretto
587996abb7 Correctly scale glider physics 2023-04-09 19:25:52 +01:00
Joshua Barretto
558dd99fd3 Added basic rtsim NPC simulation, rtsim controller support 2023-04-09 19:25:51 +01:00
Joshua Barretto
8ff438bb5b Smol animals 2023-04-09 19:25:51 +01:00
Joshua Barretto
c856f2625c Added rtsim sites 2023-04-09 19:25:51 +01:00
Joshua Barretto
1dc7518200 Added rtsim entity unload hook 2023-04-09 19:25:51 +01:00
Joshua Barretto
87a6143375 Began adding rtsim2 NPCs, scale command 2023-04-09 19:25:51 +01:00
Joshua Barretto
9d3dadfaba Make resource depletion an rtsim rule 2023-04-09 19:25:51 +01:00
Joshua Barretto
0b06eaec6f Use MessagePack for more compact rtsim state persistence 2023-04-09 19:25:51 +01:00
Joshua Barretto
a421c1239d Use BufReader/BufWriter for rtsim2 operations 2023-04-09 19:25:51 +01:00
Joshua Barretto
c168ff2f9b Added rtsim saving, chunk resources, chunk resource depletion 2023-04-09 19:25:51 +01:00
Joshua Barretto
0cafafdaa7 Began integrating rtsim2 into server 2023-04-09 19:25:51 +01:00
Imbris
e20cf5f14f Reduce rand::thread_rng calls, document MeleeConstructor scaled field more, remove extra stances.get() in hud/mod.rs 2023-04-07 01:59:41 -04:00
Sam
132f26dbc0 Addressed review 2023-04-06 10:57:16 -04:00
Sam
79812a7326 Addressed persistence review comments. 2023-04-06 10:57:15 -04:00
Sam
00710a4eb0 Fixed csv tools 2023-04-06 10:57:13 -04:00
Sam
52a62420db Changed durability persistence to a NonZeroU32 2023-04-06 10:54:49 -04:00
Sam
011b6c3feb Changed how durability was persisted so that a more general system can be used for future item properties. 2023-04-06 10:54:49 -04:00
Sam
0966753699 Added repair recipes 2023-04-06 10:54:48 -04:00
Sam
c3f5bc13f1 Equipment can now be repaired at sprites in town. 2023-04-06 10:54:48 -04:00
Sam
c586db8feb Item durability is now persisted 2023-04-06 10:54:47 -04:00
Sam
a07e042fa2 Items now lose durability on death 2023-04-06 10:54:46 -04:00
Antonios Barotsis
34cdd2d7f5 fmt 2023-04-04 23:25:11 +02:00
Antonios Barotsis
093b1c924c Refactored according to review 2023-04-04 23:16:00 +02:00
Antonios Barotsis
3adea9cdbb Temporarily patch underwater fall damage bug 2023-04-04 19:16:58 +02:00
Samuel Keiffer
494019ecc2 Merge branch 'sam/polymorph-buff-fix' into 'master'
Fix multiple polymorph buffs

See merge request veloren/veloren!3850
2023-04-02 22:45:54 +00:00
Joshua Barretto
33ebb0a4a3 Make clippy happy 2023-04-01 22:55:45 +01:00
Joshua Barretto
ab4e3d23e3 Make clippy happy 2023-04-01 22:03:24 +01:00
Sam
f40ef0d5dd Polymorph effect now more correctly handles when multiple polymorph buffs are applied. 2023-04-01 13:11:59 -04:00
Joshua Barretto
63a949b95c Removed spawn town and safe spawn settings 2023-04-01 17:51:05 +01:00
Joshua Barretto
42c534b7b4 Removed /home, replaced with /respawn 2023-04-01 17:37:01 +01:00
Joshua Barretto
2e3870cf6d Shut up, clippy 2023-03-31 21:17:38 +01:00
Joshua Barretto
9e76561ad6 Spawn new players at the highest point in a chunk 2023-03-31 14:38:32 +01:00
Joshua Barretto
acec45b756 Initial implementation of starting site choice 2023-03-31 14:24:14 +01:00
Isse
c34e5ad4ed Small fixes 2023-03-29 23:11:59 +00:00
Sam
cdaf9e5c0e Ability changes 2023-03-26 21:41:22 -04:00
Sam
ef7b400cca Number tweaking 2023-03-26 19:50:42 -04:00
Sam
f2dfaf0276 Fixed dullahan AI. Some number tweaks. 2023-03-23 21:56:16 -04:00
Isse
1298fc792b Merge branch 'ProfessionalHobbyist/configurable_day_night_length' into 'master'
Add setting to control length of day/night cycle for servers. ("Fix" for https://gitlab.com/veloren/veloren/-/issues/1798)

See merge request veloren/veloren!3836
2023-03-23 16:33:39 +00:00
Sophia Waggoner
b1943cdb26 Handle invalid settings gracefully (use default, give warning). 2023-03-22 11:16:30 -07:00
Sophia Waggoner
30251221e5 Fix math mistakes (24 * 60 is 1440 not 1400) 2023-03-22 06:19:38 -07:00
Sophia Waggoner
83d66a180a Delete TODO 2023-03-22 06:14:51 -07:00
Sophia Waggoner
264e4a53f8 cargo clippy + fmt 2023-03-22 05:49:54 -07:00
Sophia Waggoner
4a3d1bbb86 Ultimately use setting in day cycle updates.
(First functional commit.)
2023-03-21 21:32:05 -07:00
Sophia Waggoner
7e4ea483e0 Add a ServerConstants to Client and Server structs and sync on register. 2023-03-21 20:28:08 -07:00
Sam
c78c45ec73 Addressed review 2023-03-21 20:16:59 -04:00
Sam
0dc25c8389 Addressed review 2023-03-21 20:16:57 -04:00
Sam
610d47f787 Effect power now affects more than just poise 2023-03-21 20:16:55 -04:00
Sam
e37e4016d6 Balance tweaks 2023-03-21 20:10:44 -04:00
Sam
34168d9c76 Advanced AI for every stance. 2023-03-21 20:03:21 -04:00
Sam
e31668b188 Fixed dynlib features to not have UB when allocating. 2023-03-21 20:03:20 -04:00
Sam
1edd064611 Simple AI for each of the stances. 2023-03-21 20:03:20 -04:00
Sam
43d7e9357a Basic sword AI 2023-03-21 20:03:19 -04:00
Sam
c4154b0160 Unskilled sword AI 2023-03-21 20:03:19 -04:00
Sam
387ea16598 Non-attack potion of sword AI 2023-03-21 20:03:18 -04:00
Sam
99f6312e59 Sword AI structure 2023-03-21 20:03:17 -04:00
Sam
7365fcb530 Rolls cancel recover at the cost of additional energy, sitting ends active stances. 2023-03-21 20:03:15 -04:00
Sam
a3d655970e Heavy stance required abilities 2023-03-21 19:56:32 -04:00
Sam
e0a7449a99 Crescent slash 2023-03-21 19:39:40 -04:00
Sam
fce9211d49 Secondaries for all stances 2023-03-21 19:39:39 -04:00
Sam
57806d7be9 Sword M1 abilities 2023-03-21 19:39:22 -04:00
Sam
61f0b424b9 Old sword mostly torn out, new sword framework in place 2023-03-21 19:39:22 -04:00
Sam
b376228d45 Primary and secondary abilities can now be contextual. BasicStance character state added. 2023-03-21 19:38:15 -04:00
Sam
9875008efa Added stance component that persists even after sheathing weapon (does not yet work with M1 replacement). 2023-03-21 19:29:34 -04:00
Sophia Waggoner
ea23d066c6 Add (currently dummy) setting for day length and validation for that setting. 2023-03-20 21:58:57 -07:00
Imbris
61cb0ad39b Merge branch 'imbris/small-tweaks' into 'master'
Various small tweaks / fixes

Closes #1475

See merge request veloren/veloren!3817
2023-03-18 00:52:20 +00:00
Imbris
94dd8c2b70 Address review on 3817 2023-03-17 20:17:46 -04:00
Imbris
9e212935e5 Merge branch 'imbris/time-local-event-handling' into 'master'
Add metrics for timing subsections of State::tick

See merge request veloren/veloren!3825
2023-03-14 14:52:57 +00:00
Imbris
87bf44241b Add metrics for timing subsections of State::tick 2023-03-14 01:03:05 -04:00
Ben Wallis
45c8934b79 Merge branch 'xvar/queue-char-deletes' into 'master'
Changed character deletion to go via batch update

See merge request veloren/veloren!3562
2023-03-12 23:21:54 +00:00