Commit Graph

87 Commits

Author SHA1 Message Date
Jonathan Berglin
c1c331d59e Resolve all '#[allow(clippy::approx_constant)]' error supressions 2021-07-15 16:56:55 +00:00
Imbris
a9767c40d1 Merge branch 'aweinstock/networktracy' into 'master'
Add some tracy plots about network usage to the client.

See merge request veloren/veloren!2510
2021-07-03 05:44:30 +00:00
Avi Weinstock
c2106e158f Use approximate byte count for the terrain recv graph. 2021-07-02 12:43:34 -04:00
Avi Weinstock
f9c263faf6 Add benchmark for color quantization using the rtree crate. 2021-07-01 13:41:37 -04:00
Avi Weinstock
47b3b5e5d9 Generate palette info from block statistics, and benchmark how well it compresses. 2021-06-28 22:11:19 -04:00
Avi Weinstock
19979413d5 Convert dungeon lights to CSG, tweak pillars, convert the magic circle from lava to glowing rock, make enemies spawn in dungeons, and fix clippy warnings. 2021-06-24 23:03:24 -04: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
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
96cbf60c3f Made commands a distinct ClientMsg to avoid possible sanitisation problems for clients 2021-06-17 19:55:21 +01:00
Marcel Märtens
4167621f5d Change the version number to 0.10 2021-06-12 10:14:07 +02:00
Marcel Märtens
7185dcee68 switch to hashbrown 0.11 and specs 0.16.2 2021-06-07 13:01:01 +02:00
Imbris
48ebb10d50 Update toolchain 2021-05-31 20:44:57 -04:00
Joshua Yanovski
e7587c4d9d Added non-admin moderators and timed bans.
The security model has been updated to reflect this change (for example,
moderators cannot revert a ban by an administrator).  Ban history is
also now recorded in the ban file, and much more information about the
ban is stored (whitelists and administrators also have extra
information).

To support the new information without losing important information,
this commit also introduces a new migration path for editable settings
(both from legacy to the new format, and between versions).  Examples
of how to do this correctly, and migrate to new versions of a settings
file, are in the settings/ subdirectory.

As part of this effort, editable settings have been revamped to
guarantee atomic saves (due to the increased amount of information in
each file), some latent bugs in networking were fixed, and server-cli
has been updated to go through StructOpt for both calls through TUI
and argv, greatly simplifying parsing logic.
2021-05-09 21:19:16 -07:00
Avi Weinstock
efa4f9fe0a Experiment with const fn lanczos lookup tables, enable weighted average interpolation for now. 2021-05-03 00:09:44 -04:00
Avi Weinstock
be39054767 Make terrain compression a checkbox instead of a bandwidth (throughput?) heuristic. 2021-05-03 00:09:44 -04:00
Avi Weinstock
b15913560b Optimize CompressedData with Vec::with_capacity, and move obsolete formats from common_net into the compression benchmark. 2021-05-03 00:09:24 -04:00
Avi Weinstock
c199d12f2d Address MR 2207 review comments.
- Add metrics for which branch of the compression heuristic was taken.
- Reduce the threshold for the heuristic.
- Deduplicate code for dealing with lazy messages.
- Make jpeg dependency only scoped to the compression benchmark.
- Remove commented code.
2021-05-03 00:09:24 -04:00
Avi Weinstock
30cae40b82 Add a bandwidth-based heuristic for chunk compression. 2021-05-03 00:09:24 -04:00
Avi Weinstock
cdc2eccda8 Improve quadpng by adding WidePacking, which makes a wider image, which is faster due to PNG compressing by row. Heuristically switch between quadpng and deflate based on chunk height to reduce variance. 2021-05-03 00:09:24 -04:00
Avi Weinstock
dffc7db8f5 Add matplotlib graph generation to the compression benchmarks. 2021-05-03 00:09:24 -04:00
Avi Weinstock
0f4315c98b Remove a use of inline_tweak and use TallPacking instead of GridLtrPacking in common_net::msg::server. 2021-05-03 00:09:24 -04:00
Mckol
c913b9b858 Added Lanczos interpolation for QuadPng
Should support arbitrary scales (N).
Does support arbitrary Lanczos a parameters (currently 2)
and sample sizes (currently 5x5).
2021-05-03 00:09:24 -04:00
Avi Weinstock
fe0f331a19 Add 5x5 manhattan blur effect to quadpng, and omit interpolation at chunk borders. 2021-05-03 00:09:24 -04:00
Avi Weinstock
c2fd5e807d Experiment with 256-color palette "tripng" encoding, and Lanczos interpolation for "quadpng". 2021-05-03 00:09:24 -04:00
Avi Weinstock
a220cc569e Add resolution downscaling to QuadPng's color channel, and use half-resolution QuadPng ingame. 2021-05-03 00:09:24 -04:00
Avi Weinstock
f81539cb00 Get PngPngPngJpeg terrain working in the actual game. 2021-05-03 00:09:24 -04:00
Avi Weinstock
a9a943c19a Move compression helpers to common_net::msg::compression and experiment with more image formats at more site kinds. 2021-05-03 00:09:24 -04:00
James Melkonian
f553700e8c Add map markers for lakes and mountains 2021-05-03 02:00:23 +00:00
Avi Weinstock
308ad4d81e Cleanup errors introduced in rebase. 2021-04-20 23:34:17 -04:00
Avi Weinstock
15e32e5655 Move terrain compression code to common_net and disable redundant LZ4 compression on the terrain stream. 2021-04-20 23:24:24 -04:00
Avi Weinstock
6d9de520f3 Compress terrain chunks with deflate. Includes a benchmark showing that this makes them around 70% smaller, and is the same speed as LZ4. 2021-04-20 23:23:53 -04:00
Imbris
e17477979f Remove extra chunk cloning and parallelize serialization in the server terrain sys 2021-04-20 15:25:05 -04:00
Ludvig Böklin
762c68cfbb Basic fluid dynamics and physical properties for entities 2021-04-20 17:38:19 +02:00
Marcel Märtens
425063e24e remove authc from common::net 2021-04-20 01:30:23 +02:00
Avi Weinstock
50d0314a75 Add a toggle to negotiate the use of server-authoritative physics. 2021-04-15 08:50:17 -04:00
holychowders
568a8d9666 Resolve Issue #978 - Extract SkillSet Into Its Own Component 2021-04-14 15:35:34 +00:00
Joshua Yanovski
af94753ad9 Remove panics and unwraps, part 1.
Also fixes various other miscellaneous bugs.
2021-04-10 10:03:21 +02:00
Joshua Barretto
b0acbda236 Improved archery with feedback sfx and particles 2021-03-29 21:52:04 +01:00
Marcel
da5c73c84b Merge branch 'refactor-login' into 'master'
refactor handling of duplicate login #1015

Closes #1015

See merge request veloren/veloren!1992
2021-03-27 13:49:09 +00:00
aljazerzen
0ea102dc9c refactor handling of duplicate login 2021-03-25 12:33:56 +01:00
Avi Weinstock
8d90548331 Get SitePricing information to clients, and use it to display coin-denominated prices in voxygen on tooltips during a trade. Also boost merchant spawn rate slightly. 2021-03-25 02:11:58 -04:00
heydabop
0e3f7625a9 Fix #962 - kick old client and add new client on duplicate login 2021-03-22 19:15:24 -05:00
Marcel Märtens
6b23101fac update toolchain to nightly-2021-03-22 2021-03-22 16:41:04 +01:00
Marcel Märtens
2733ba2e27 Change the version number to 0.9 2021-03-20 13:07:09 +01:00
Joshua Barretto
e8b053a09f Reduced rubber-banding and interpolation jerk without significantly impacting upon network usage 2021-03-17 21:31:07 +00:00
Avi Weinstock
62de0816e0 Apply ForcedUpdate messages to the interpolation system, potentially improving the handling of teleports. 2021-03-16 11:55:01 -04:00
Avi Weinstock
9304ecab3d Address Imbris's MR 1888 comments, and add changelog entry.
- Use Ori::{new,to_quat} and make the field private.
- Update/capitalize/add various comments.
- Implicitly drop scope guards where applicable.
- Take !Copy colliders by reference instead of cloning.
- s/cylinder_voxel_collision/box_voxel_collision/
- Unindent some physics code with a continue.
2021-03-14 23:21:46 -04:00
Avi Weinstock
546ee48073 Fix interpolation for possession, and make the mount point of airships above their deck. 2021-03-14 23:21:45 -04:00
Avi Weinstock
23b1417275 Add hermite interpolation for position (disabled for now with a flag, since it breaks possession). 2021-03-14 23:20:48 -04:00