Commit Graph

2750 Commits

Author SHA1 Message Date
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
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
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
996f58ebd2 Avoid using return for skipping respawn events 2023-06-04 12:58:16 -04:00
62abed1eec Replace u64 with Uid in some places and add/modify some comments 2023-06-04 12:58:16 -04:00
a8fbfc026a Fix compilation errors from recent changes 2023-06-04 12:58:16 -04:00
c60f994c7f Some random changes and a fmt 2023-06-04 12:58:16 -04:00
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
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
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
3277d18265 Rename retrieve_entity_internal to lookup_entity 2023-06-04 12:58:16 -04:00
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
a884e0e058 Various rtsim related stuff 2023-06-03 22:14:18 +00:00
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
ec3a7d1898 Make items vanish after 5 minutes 2023-06-01 14:51:19 +01:00
3a383050d5 Apply fall damage even after a block-hop 2023-06-01 14:14:28 +01:00
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
4fa799e7c7 Fixed volume mount orientation 2023-05-25 03:16:27 +01:00
9127d6cbf2 Account for surface normal when calculating collision damage 2023-05-25 01:21:44 +01:00
6a2796dc17 Everything damage 2023-05-25 00:28:35 +01:00
dbcbd43b8f Added body kind argument to /airship and /ship 2023-05-25 00:25:28 +01:00
610d1d8497 Simplified replacement drag logic, special-case volume entities to improve movement 2023-05-25 00:25:28 +01:00
74d4fc8e64 Added sprites to ship models 2023-05-25 00:25:28 +01:00
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
5988237b3d Fixed non-dismounting teleportation 2023-05-25 00:22:54 +01:00
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
9eb4931822 Fix: the /time command has been fixed in accordance to issue #1622 2023-05-24 16:47:36 +00:00
777a69e576 adressed review comments 2023-05-22 23:20:11 +02:00
fbe32a9047 no_dura -> no_durability 2023-05-22 22:38:48 +02:00
174f75dc63 durability free areas 2023-05-22 22:38:47 +02:00
b730766106 Prevent explosion damage going through walls 2023-05-21 15:30:18 +01:00
cfdf184c4c Fix non-humanoid pathfinding and movement in water 2023-05-16 20:48:50 +01:00
52b5967914 Fix pet idle movement, add a way to configure agent behaviour through manifests 2023-05-16 18:51:46 +01:00
4732d28e24 Reduce creature flee speed 2023-05-14 22:18:01 +01:00
140927cbe7 Clean up day coefficient code 2023-05-14 22:10:37 +01:00
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
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
ec5e3fe716 Avoid re-fetching system data on every link persist 2023-05-13 12:31:19 +01:00
9e9889eed6 Allowed bird pets to mount their owners when nearby 2023-05-12 21:03:44 +01:00