Commit Graph

288 Commits

Author SHA1 Message Date
Marcel
f590e68f7e Merge branch 'mckol/mute-keybinds' into 'master'
Mute audio keybinds (and respective buttons in settings)

See merge request veloren/veloren!3361
2022-09-21 09:22:45 +00: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
986d104faa Update Rust toolchain. 2022-09-08 15:43:53 -07:00
Mckol
6605c2657f Added mute buttons for all of the audio sliders in settings 2022-09-03 20:31:04 +02: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
parzivale
cf09348306 second cleaning pass after removing i18n.get 2022-08-23 13:14:29 +02:00
parzivale
9e22ae01a0 finished first pass removing i18n.get 2022-08-23 11:17:21 +02:00
Joshua Barretto
dfe2e1c085 Merge branch 'AldanTanneo/discord-presence' into 'master'
Discord Activity

See merge request veloren/veloren!3529
2022-08-15 15:58:38 +00:00
AldanTanneo
ba87a405af Discord Activity 2022-08-15 15:58:37 +00:00
IsseW
911be0113d camera movement changes 2022-08-14 22:41:08 +02:00
IsseW
f77cce68d5 fix viewpoint meshing 2022-08-14 22:41:08 +02: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
Julio Cezar Silva
9315482fc4 Craft all 2022-08-12 00:47:48 +00:00
DaforLynx
258feee634 Fix crash when Gap Between Songs is set to 0.0; changed name to Music Spacing 2022-08-11 02:56:40 +00:00
IsseW
a165bc09bc character viewpoint 2022-08-09 18:45:45 +02:00
IsseW
bf44ebd12b spectate speedup key 2022-08-09 18:44:10 +02:00
Isse
0471e78f41 spectate mode :D 2022-08-09 18:43:13 +02:00
juliancoffee
d000cc90a1 Migrate code to new i18n API 2022-08-06 21:56:01 +03:00
DaforLynx
bf4a582cf7 WIP: New music, "now playing" line in debug overlay, and music frequency slider 2022-08-01 17:41:44 +00:00
Isse
cfdc2a8ae6 Add setting to disable flashing lights 2022-07-31 21:53:25 +00: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
5e5698249b Remove unnecessarily qualified paths 2022-07-15 14:49:46 +02:00
DaforLynx
ac82689f83 Clean up audio code, fix egui bug 2022-07-04 18:18:34 +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
DaforLynx
83ee54001e Ambience slider; fix to utterances 2022-07-04 18:07:15 +02:00
DaforLynx
365f45397b At this point all sfx should be able to detect underwater 2022-07-04 18:07:14 +02:00
DaforLynx
088d1cfe9d Remove debug lines, re-mix some sfx, add crafting sfx, separate inv event sfx into spatial and nonspatial 2022-07-04 18:07:13 +02:00
IsseW
234ed5afb2 Rain occlusion projection matrix 2022-07-04 18:07:13 +02:00
DaforLynx
aafd13508d Completely redoing ambient sound again. 2022-07-04 18:07:08 +02:00
DaforLynx
ca815f25a1 merging some UI sfx from a now-dead branch
Merge part 2

merge part 3

Merge part 4

merge part 5
2022-07-04 18:07:07 +02:00
IsseW
b578f0231f Interpolate in client 2022-07-04 18:07:06 +02:00
IsseW
4fa2644507 Interpolate weather in voxygen 2022-07-04 18:07:04 +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
Socksonme
f048600335 Add back old i18n + some small fixes
- Fix .filter() for combo_floater
- Rename sct_inc_dmg_accum_duration to sct_inc_dmg, as it was in the
  wrong place

to rebase
2022-06-29 17:31:58 +03:00
Socksonme
2c5fd06d0b Address review
- Change hp_pulse to not be framerate dependent
- Change some of the HpFloater checks to be inside the find() function
- Remove unnecessary join
- Add back option for showing incoming damage + add option for
  experience accumulation
- Change `ExpFloater`s to not store the owner, as they are only shown
  for the player (will have to see if the implementation is correct so
  that it may be applied to the other floaters)
- Rename `Outcome::Damage` to `Outcome::HealthChange` and `DamageInfo`
  to `HealthChangeInfo`
- Update some outdated comments/documentation
2022-06-29 17:31:58 +03:00
socksonme
eabbfe6a51 Remove damage batch option + crit_mult 2022-06-29 17:31:54 +03:00
socksonme
ddf0ba6dd6 Small UI changes + fix hurt animation 2022-06-29 17:31:41 +03:00
socksonme
5533d139bc Slider for accumulated damage duration 2022-06-29 17:31:41 +03:00
socksonme
5360a7c93e Tons of code quality changes, added damage rounding option 2022-06-29 17:31:37 +03:00
socksonme
634a3095d6 Handling crits (very bad color choice+naming) 2022-06-29 17:24:05 +03:00
socksonme
aee7888a92 HpFloaters are now created by Outcomes, touched up Damage Outcome 2022-06-29 17:24:05 +03:00
Samantha W
57ab1c5767 Add a client-side mutelist 2022-06-14 20:35:01 +00:00
Sam
5e57eabd11 Code changes and msm 2022-05-30 20:25:31 -04: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
Corvella
a9622fe28e Add a setting to toggle zooming in when charging bow 2022-05-23 23:09:47 +00:00
Sam
13ea6dee93 Addressed second round of balance feedback (assets). 2022-05-16 15:11:40 -04:00
Sam
64d07d02c4 Changed item definition id to better handle modular items. 2022-05-16 15:11:34 -04:00
Sam
afd2c8730f Addressed most review comments (no assets). 2022-05-16 15:11:32 -04:00
Sam
d436362a8d Consolidated crafting UI for the primnary component of modular weapons. 2022-05-16 15:11:21 -04:00
Sam
8fc0138e84 Initial crafting UI for modular weapons. 2022-05-16 15:11:17 -04:00
Sam
08b7bb781f Changed Item to have ItemBase instead of ItemDef. NO ASSETS. 2022-05-16 15:11:10 -04:00
Joshua Barretto
f35c98d1a1 Added LoD distance setting 2022-05-10 12:40:06 +01:00
Marcel
d05cb99007 Merge branch 'unvariant/trading_fix' into 'master'
prevent glider and sneak from triggering during trade

See merge request veloren/veloren!3264
2022-03-08 10:25:16 +00:00
ninefox
115b2875b3 prevent glider and sneak from triggering during trade 2022-03-07 20:28:38 -08:00
Sam
89bf529a5e Addressed review comments 2022-03-03 01:12:40 -05:00
Sam
0a0fffd5ed Addressed review comments 2022-03-03 01:11:17 -05:00
Sam
5a60562eee Addressed review comments 2022-03-03 01:11:16 -05:00
Sam
c6dc96b795 Settings button to turn off weapon trails. 2022-03-03 01:10:59 -05:00
Sam
0794f980fe Mostly snaked through another rendering pipeline 2022-03-03 01:10:47 -05: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
Isidor Nielsen
a685a353cb Shared and persistent waypoints 2022-02-20 10:10:18 +00: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
Imbris
21cad12272 Merge branch 'fix-ghost-item' into 'master'
Fix ghost item when trade gets declined

Closes #1429

See merge request veloren/veloren!3117
2022-01-30 17:31:15 +00:00
Imbris
7e5a3efd02 Add egui window to toggle experimental shaders. 2022-01-23 21:14:41 -05:00
Joshua Barretto
8a684973b4 Merge branch 'zesterer/tiny-fixes' into 'master'
Addressing criticisms

See merge request veloren/veloren!3121
2022-01-22 16:44:01 +00:00
Joshua Barretto
4f181c936d Merge branch 'name_areas_based_on_biome' into 'master'
name_areas_based_on_biome

See merge request veloren/veloren!3115
2022-01-20 19:50:57 +00:00
Joshua Barretto
89cd58b1ac Don't allow interaction with mounted entity 2022-01-20 11:25:53 +00:00
threadexception
2a65d4950d Fix ghost item when trade gets declined 2022-01-20 09:07:47 +01:00
floppy
a836b61190 allow enabling/disabling biome names on map 2022-01-17 23:45:51 +01:00
Joshua Barretto
bde3aade2b Updated changelog, fixed incorrect hint for mineable blocks 2022-01-16 17:53:51 +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
6931514ae5 Made teleport commands redirect to mount 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
Tormod G. Hellen
3afa16bf03 Fix hotbar changing when sorting inventory.
Previously the hotbar slots would refer to inventory slots. An
unfortunate consequence of this was that when the contents of an
inventory slot changed, so would the corresponding hotbar slot
change. This commit fixes that.
2022-01-14 19:14:24 +01:00
unvariant
71d2be5f76 support removing key bindings 2022-01-07 20:30:30 +00:00
voxal
e546a1d1a9 Allow players to see own speech bubbles. 2022-01-05 20:06:43 -08:00
Sam
efbc5f9b75 UI notifying player that their skillset has been invalidated. 2022-01-03 19:55:06 -05:00
Joshua Barretto
dd95d69dc4 Fixed character editing 2021-12-13 00:55:25 +00:00
Marcel Märtens
ef40ebe0c8 update toolchain to nightly-2021-11-24 2021-11-24 10:09:22 +01: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
Sam
e28ca15059 Salvaging now requires a salvaging station. 2021-10-27 17:02:33 -04:00
Sam
794b072d3e Simple recipes now take a vec of slots to look in for the ingredients. 2021-10-27 17:02:30 -04:00
Sam
7a17863988 Salvage works by double clicking from inventory while salvage tab in crafting is open. 2021-10-27 17:02:30 -04:00
Marcel
94439a4240 Merge branch 'jtriantafylos/background_fps' into 'master'
Fixes #1350 - Allow players to cap the game FPS when unfocused

Closes #1350

See merge request veloren/veloren!2890
2021-10-10 15:33:38 +00:00
James Triantafylos
99776a6ebd Fixes #1350 - Allow players to cap the game FPS when unfocused 2021-10-10 15:33:31 +00:00
Imbris
26c028975e Remove map drag from the settings file since it is always reset when closing the map leaving little reason to persist it 2021-10-06 02:13:02 -04:00
ubruntu
0e2808a8fd Interactable campfires 2021-10-05 00:55:29 +00:00
Bafon
d53d2300a6 Add setting to disable hotkey hints 2021-09-24 16:03:05 +00:00
Ben Wallis
d665ce329d * Added new Admin Commands window to egui, including Give Items and Kits sections
* Added widgets.rs to egui for reusable widgets
* Added filterable_list egui widget
* Reworked DebugShapeAction to be a more generic EguiAction which now allows for ChatCommands (used by admin tools) as well as DebugShape drawing requests.
* Fixed egui event handling so that typing/clicking within egui windows now correctly doesn't pass these events onto the game itself
* Removed /give_item limit for stackable items
2021-09-18 16:17:42 +01:00
anomaluridae
d0bd1ddb24 remove unneeded mut, provide default_select_pos to secondry key event handler, and use the is_filled() over the is_opaque() to be reader friendly 2021-09-17 10:34:20 -07:00
anomaluridae
82f3c3c3e8 is_solid() detects both solid rock and sprites (e.g. mineable ore). when in build mode, would like to be able to still mine if user cursor is over a mineable ore. so need to properly cast the build ray to use opaque (not fillable) blocks to get the proper position, vs the mineable block which may be nearer 2021-09-17 10:34:20 -07:00
anomaluridae
aa86c86cb6 choose nearest target, from a specific subset of targets, for scene highlighting vs interactable vs game primary/secondary key input 2021-09-17 10:34:20 -07:00
anomaluridae
6362df4ffc keep MAX_TARGET_RANGE within voxygen 2021-09-17 10:34:20 -07:00
anomaluridae
b4d12b7995 intentional use of terrain targeting and select_pos as passed to the event handler. select_pos is None when not needed. 2021-09-17 10:34:20 -07:00
anomaluridae
42d5836cfa properly use the target vs pickup range, in choosing the interactable. when finding the target_entity, use the proper limited dist range (cast_dist) with the proper upper bounds. 2021-09-17 10:34:20 -07:00
anomaluridae
5c66f73bb4 make the ContollerInputs.select_pos be explicitly the breakable blacks for mining 2021-09-17 10:34:20 -07:00
anomaluridae
c5d66192fc add comment for future direction of Interactables. 2021-09-17 10:34:20 -07:00
anomaluridae
c20dbe17dd build positions for place versus remove block are cleaner (less likely to fail) when apply the +0.01 modifier versus -0.01 modifier selectively. this is equivalent to current master, and is simply more explicit now 2021-09-17 10:34:20 -07:00
anomaluridae
f60bd80cc2 changes per MR feedback. simplier Option handling with zip, filter, and fewr unwraps. use kind keyword (not typed). if lets when possible. additional syntax cleanup 2021-09-17 10:34:20 -07:00
anomaluridae
8b83b48b9b make Target generic, over the specific typed targets 2021-09-17 10:34:20 -07:00
anomaluridae
ba4af5ee8e undo macro use for DRY on client event handler, and handle edge detection in mining so that we don't get Empty interactables. 2021-09-17 10:34:20 -07:00
anomaluridae
309447dced MR review updates. Added back the 0.01 modifiers, update naming and comments, keep interactable construction in the interactables mod, remove unneeded curry, syntax updates. only cast for mining and build if enabled. 2021-09-17 10:34:20 -07:00
anomaluridae
84f19b408f build is working. to add and remove blocks. 2021-09-17 10:34:20 -07:00
anomaluridae
48cc5d3b08 make Target into a typed struct. delineate the clear difference in Target versus Interactable. comments and naming cleanup, for more explicitness. 2021-09-17 10:34:20 -07:00
anomaluridae
51f38df169 clippy is a thing 2021-09-17 10:34:20 -07:00
anomaluridae
f20b5f0b49 make scene interaction be targeted exactly on mining blocks (removing abnormal Empty labels), and don't reset position to None in the middle of mining. 2021-09-17 10:34:20 -07:00
anomaluridae
ff91da8b52 make the concepts of targets (under cursor), separate from interactable. interactable is what is (1) indicated visually in gui as able to interact, or (2) is an entity, or (3) is a block capable of Interaction. whereas a target is what occurs under the cursor, regardless of other state and input (such as different InputKind). targets are determined first, then other factors are cosidered to determine interactable. 2021-09-17 10:34:20 -07:00
anomaluridae
582f578e61 breakout interactable into seperate file 2021-09-17 10:32:06 -07: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
Bafon
b910c1dd9c Add setting to always show energy bars 2021-09-15 12:04:44 +00:00
Joshua Barretto
c442822885 Capped camera distance without privilege 2021-09-08 13:17:22 +01:00
Marcel Märtens
02d6462858 disable mumble-link on macos 2021-09-04 00:32:16 +02:00
Marcel Märtens
cf1a6b1806 switch to SharedLink and unset context 2021-09-02 12:29:01 +02:00
Joshua Barretto
171e329609 Merge branch 'xvar/fix-egui-toggle' into 'master'
Fixed egui maintain() running when only F3 debug is toggled rather than only when F7 is toggled

See merge request veloren/veloren!2793
2021-08-31 17:07:13 +00:00
Ben Wallis
ad079377fb Fixed egui maintain() running when only F3 debug is toggled rather than only when F7 is toggled 2021-08-31 17:21:13 +01:00
Joshua Barretto
6f15233448 Fixed first-person zoom, added fixation to allow more precise mouse movement when zoomed 2021-08-31 13:31:52 +01:00
Illia Denysenko
0858279810 Gliding Debug Info 2021-08-07 13:19:58 +00:00
Monty Marz
a1e22df944 Merge branch 'transp---opacity-in-UI' into 'master'
transparency -> opacity

See merge request veloren/veloren!2714
2021-08-02 21:30:37 +00:00
Monty Marz
bceed44614 transp -> opacity 2021-08-02 22:49:10 +02:00
Imbris
6cabd74871 Make bloom optional with a config option that is not exposed in the UI (to give artists time to refine bloom before exposing the option) 2021-08-01 18:50:38 -04:00
Imbris
2d83ef1c0e Initial bloom impl 2021-08-01 18:50:37 -04:00
Marcel Märtens
4c0b74150d remove some reexports 2021-07-29 22:18:34 +02:00
schnippl0r
9e3b2a20d0 Moved GameInput to own module and made use of strum's EnumIter and AsRefStr. 2021-07-21 13:23:45 +02:00
Imbris
518ec1f54f Revamp voxygen settings so that the config directory is externally specified, remove persistence of the selected logs folder, remove unused old meta.rs file from voxygen 2021-07-19 10:26:47 -04:00
Imbris
9c72333741 Revert "Merge branch..."
This reverts merge request !2608
2021-07-17 22:04:59 +00:00
Jonathan Berglin
c1c331d59e Resolve all '#[allow(clippy::approx_constant)]' error supressions 2021-07-15 16:56:55 +00:00
Marcel Märtens
9b3b21f368 fix clippy warnings 2021-07-12 12:09:09 +02:00
ubruntu
6bb47b447e Replace "Player 1" with an NPC name when trading with an NPC 2021-07-11 18:27:34 +00:00
Ben Wallis
b499cf2c58 Added egui debug UI - a 100% rust UI framework (similar to imgui) allowing for rapid development of debug interfaces to aid development. This is feature-gated behind the egui-ui feature which is enabled by default but removed for airshipper builds.
Included in the initial implementation is an entity browser which lists all entities in the client ECS, an entity component viewer which shows select components belonging to the selected entity including character state information, and a simple frame time graph.

This MR also includes an extraction of the animation hot reloading code which has been reused for egui to allow for hot-reloading of the egui interface to allow rapid development of the UI with realtime feedback upon save as is the case with aninmations. This is feature-gated behind the `hot-egui` feature which is not enabled by default due to the extra startup time that it adds.
2021-07-04 09:47:18 +00:00
Joshua Barretto
b84708ca75 Added chat toggle 2021-06-21 20:16:03 +01:00
Joshua Barretto
288f2c13d4 Enable strafing in first-person mode 2021-06-21 13:27:19 +01:00
Imbris
83c49895ae Improve rendering spans for tracy 2021-06-19 04:27:51 -04:00
Joshua Barretto
96cbf60c3f Made commands a distinct ClientMsg to avoid possible sanitisation problems for clients 2021-06-17 19:55:21 +01:00
Joshua Barretto
b8749dc219 Added more cow noises, prepare for merge 2021-06-16 17:23:54 +01:00
juliancoffee
25cbff68d3 remove meaningless variables 2021-06-11 11:44:48 +03:00
juliancoffee
2e5f868f31 Make bow zoom less intense 2021-06-11 01:46:32 +03:00
Ben Wallis
1a93e3d84f Added 60 FPS framerate cap for title/menu screens 2021-06-05 14:13:53 +01:00
Imbris
8db11cce37 Use expect to document potential panic when starting a new frame recording, fix clippy warning 2021-06-03 00:10:06 -04:00
Avi Weinstock
a1326d0734 Address MR 2253 review comments. 2021-06-03 00:10:06 -04:00
Avi Weinstock
cf6717ac90 Show hitbox cylinders based on actual ECS data, and add a settings toggle in voxygen for it. 2021-06-03 00:10:06 -04:00
Avi Weinstock
7b04599a3b Implement a Debug pipeline for hitboxes and pathfinding lines.
- Implements mesh generation for cylinders and lines.
    - Implements an Id-allocator so that clients can mutate positions efficiently.
    - Is split into pipeline and scene modules.
    - Contains simple shaders that just pass through a position and color.
2021-06-03 00:10:06 -04:00
Imbris
1830a591f6 Make Drawer work with background pipeline creation 2021-06-02 23:59:51 -04:00