Commit Graph

661 Commits

Author SHA1 Message Date
Marcel Märtens
ba260e8419 translate MOD and YOU messages 2022-09-27 13:46:12 +02:00
Marcel Märtens
cc3fcfce8c initial approach of utelising chat-i18n crate by chat-cli bot 2022-09-27 13:46:12 +02:00
Marcel Märtens
a0ef3be9ac remove hardcoded localisation from client 2022-09-27 13:46:12 +02:00
Marcel Märtens
c2b453f6f1 update toolchain to 2022-09-08
This reverts commit 6c9deee491.
This reverts commit a32b269252.
2022-09-24 00:04:40 +02:00
Marcel Märtens
29d0f5b25d update dependencies 2022-09-22 11:57:55 +02:00
Joshua Yanovski
57ea753bff Merge branch 'sharp/parallel-ingame' into 'master'
Parallelize ingame messages.

See merge request veloren/veloren!3627
2022-09-21 19:44:40 +00:00
Joshua Yanovski
1c14ec7ee1 Parallelize ingame messages. 2022-09-21 10:25:57 -07:00
Joshua Yanovski
67231aff90 Remove persistence loading error from SkillSet.
This is needed (for now) in order to parallelize ingame_chat, because
one of the handled messages updates this value on the server.  It turns
out that the value is not actually used on the server, only the client,
so this was mostly a matter of threading this back to the correct place.
Additionally, we took the opportunity to modify the UI to not log you
into the game until your character was confirmed to be loaded, which
was a todo item that lets us simplify some error handling logic and
remove stuff from global state.
2022-09-21 09:29:25 -07:00
Imbris
1b48a3008c Merge branch 'Couls/TestBed' into 'master'
Extend item pickup UI to group members

Closes #1402

See merge request veloren/veloren!3521
2022-09-20 22:13:50 +00:00
Couls
4a4c061b55 Extend item pickup UI to group members 2022-09-20 22:13:50 +00:00
Joshua Yanovski
e9a463d459 Revert "Merge branch 'xMAC94x/update-deps' into 'master'"
This reverts merge request !3608
2022-09-15 18:51:48 +00:00
Joshua Yanovski
2c15d0af56 Reduce overhead of messaging systems. 2022-09-14 21:04:53 -07:00
Marcel Märtens
a32b269252 steal sharps clippy improvements to the old nightly 2022-09-11 16:10:56 +02:00
Joshua Yanovski
986d104faa Update Rust toolchain. 2022-09-08 15:43:53 -07:00
Marcel Märtens
d9e6f10688 update dependencies 2022-09-08 23:29:08 +02:00
Joshua Yanovski
f5aee1d2a7 Allow mods/admins to log in when server is full.
As a side effect, this moves the initial game server sync message into
the login code, since that's the first place we can check for admin
permissions and we want to avoid sending large messages to users who are
not authenticated (especially if the player cap has been reached;
previously, the player cap check limited the damage that could be done
by unauthenticated players).

Some fallout from this is that we don't synchronize the Player component
anymore, which had some minor effects on voxygen.  This update also
breaks Torvus, since Client::new now expects the username and password
to be provided from the getgo--an accompanying MR will be submitted to
fix it.
2022-09-06 21:42:31 -07:00
Imbris
d3c90f9078 Update changelog, update client/src/bin/* with changes in Client API 2022-08-25 23:25:58 -04:00
Imbris
4126194a5c View distances small fixes and improvement:
* Properly set view_distance field in Client when sending it to the
  server in request_character/request_spectator.
* Removed invalid check I had included in Client::set_view_distance
* ViewDistances::clamp now clamps min to 1 for both types of view distance.
2022-08-25 23:24:43 -04:00
Imbris
37caab539c Replace uses of "65" with client::MAX_SELECTABLE_VD in client and
voxygen crates.
2022-08-25 23:24:43 -04:00
Imbris
334937568e Add an entity view distance setting that allows limiting the distance
entities are synced from and displayed in.

NOTE: Syncing entities work at the granularity regions which are
multi-chunk squares but the display of entities in voxygen is limited in
a circle with the radiues of the supplied distance.

Additional details and changes:
* Added `ViewDistances` struct in `common` that contains separate
  terrain and entity view distances (the entity view distance will be
  clamped by the terrain view distance in uses of this).
* View distance requests from the client to the server now use this
  type.
* When requesting the character or spectate state the client now passes
  its desired view distances. This is exposed as a new parameter on
  `Client::request_character`/`Client::request_spectate`. And the client
  no longer needs to send a view distance request after entering these
  states. This also allows us to avoid needing to initialize `Presence`
  with a default view distance value on the server.
* Removed `DerefFlaggedStorage` from `Presence` and `RegionSubscription` since the
  change tracking isn't used for these components.
* Add sliders in voxygen graphics and network tabs for this new setting.
  Show the clamped value as well as the selected value next to the
  slider.
* Rename existing "Entities View Distance" slider (which AFAIK controls
  the distance at which different LOD levels apply to figures) to
  "Entities Detail Distance" so we can use the former name for this new
  slider.
2022-08-25 23:24:43 -04:00
Imbris
895d6a2d8b Impove UX of server limits on the view distance
* When client gets its view distance set by the server it stores that as
  the max view distance allowed by the server.
* This is used to avoid skip sending requests if `set_view_distance` is
  called with larger values.
* This is then also displayed in the UI via greying out the slider when
  it goes past the limit and drawing another slide at the limit.
* The server clamping the client's view distance no longer leads to
  edits in voxygen's view distance settings (the view distance setting
  is instead preserved).
2022-08-25 23:24:43 -04:00
Imbris
7439d09708 Ensure that the client clears pending trades on its side when exiting to
the character screen (and similar actions). When any entity is
deleted cancel any existing trades associated with it.
2022-08-20 18:47:09 -04:00
IsseW
689376ec70 save spectate position 2022-08-14 22:41:07 +02:00
DaforLynx
daadf3abdb Gnarling Fort music; more specific sites; fix music spacing; new sfx 2022-08-14 01:57:58 +00:00
Samuel Keiffer
a1b5f53d15 Merge branch 'craft-all' into 'master'
Craft all

See merge request veloren/veloren!3525
2022-08-12 00:47:48 +00:00
Julio Cezar Silva
9315482fc4 Craft all 2022-08-12 00:47:48 +00:00
Joshua Barretto
52bd7b2485 Added automod 2022-08-11 11:09:52 +01:00
IsseW
87821d5c1d force update counter 2022-08-09 19:22:09 +02:00
Isse
0471e78f41 spectate mode :D 2022-08-09 18:43:13 +02:00
Marcel Märtens
bfcc2cb802 Change the version number to 0.13 2022-07-23 14:06:08 +02:00
DaforLynx
d2710635d8 Lightning strikes are less audible; cave music restored; fixed audio permanently stopping on logout 2022-07-21 08:27:35 +00:00
tygyh
120ee6b6c0 Fix typos 2022-07-15 18:59:37 +02:00
tygyh
5e5698249b Remove unnecessarily qualified paths 2022-07-15 14:49:46 +02:00
Marcel Märtens
e4909650e1 update hashbrown, specs, and tracy 2022-07-06 15:41:59 +02:00
DaforLynx
9104a07530 Code cleanup, doubled volume of leaves.ogg 2022-07-04 18:11:43 +02:00
IsseW
fd12c8abdb Remove dead shader code, clean up weather.rs 2022-07-04 18:10:06 +02:00
DaforLynx
dc8424c549 Moving audio code 2022-07-04 18:10:05 +02:00
IsseW
6215ccd522 Remove dead code 2022-07-04 18:07:24 +02:00
IsseW
3eabe24f12 base occlusion texture size of off voxels 2022-07-04 18:07:19 +02:00
IsseW
08b0989789 add slider for rain map resolution 2022-07-04 18:07:18 +02:00
IsseW
54f958acc7 more correct occlusion 2022-07-04 18:07:16 +02:00
IsseW
79cac935c8 Added rain occlusion 2022-07-04 18:07:11 +02:00
IsseW
b578f0231f Interpolate in client 2022-07-04 18:07:06 +02:00
IsseW
78c1de19cf More accurate weather sim 2022-07-04 18:04:39 +02:00
IsseW
6585ef1513 weather dependant music 2022-07-04 18:11:43 +02:00
IsseW
b7c0196129 Server weather sim 2022-07-04 18:11:41 +02:00
Marcel Märtens
50d85940d8 implement a event channel that posts regular information on events for Participants 2022-07-03 21:21:59 +02:00
Samantha W
57ab1c5767 Add a client-side mutelist 2022-06-14 20:35:01 +00:00
Benoît du Garreau
8488c7b25e Upgrade assets_manager to 0.8.0 and image to 0.24
This removes a significant number of duplicated dependencies
2022-05-28 23:18:31 +02:00
Ben Wallis
34f580dfaa Introduced loot ownership rules to combat loot stealing by players
* Added `LootOwner` component used to indicate that an `ItemDrop` entity is owned by another entity
* A loot winner is now calculated after EXP allocation using the EXP per entity for weighted chance distribution
* Used existing Inventory Full overitem text to show "Owned by {player} for {seconds}secs" when a pickup fails due to a loot ownership check
* Updated agent code to take into account loot ownership when searching for `ItemDrop` targets to pick up
* Added `loot` ECS system to clear expired loot ownerships
2022-05-28 12:06:49 +00:00