Marcel Märtens
ea8ab1ce7a
Great improvements to the codebase:
...
- better logging in network
- we now notify the send of what happened in recv in participant.
- works with veloren master servers
- works in singleplayer, using a actual mid.
- add `mpsc` in whole stack incl tests
- speed up internal read/write with `Bytes` crate
- use `prometheus-hyper` for metrics
- use a metrics cache
2021-02-17 16:15:00 +01:00
Marcel Märtens
5aa1940ef8
get rid of async_std::channel
...
switch to `tokio` and `async_channel` crate.
I wanted to do tokio first, but it doesnt feature Sender::close(), thus i included async_channel
Got rid of `futures` and only need `futures_core` and `futures_util`.
Tokio does not support `Stream` and `StreamExt` so for now i need to use `tokio-stream`, i think this will go in `std` in the future
Created `b2b_close_stream_opened_sender_r` as the shutdown procedure does not need a copy of a Sender, it just need to stop it.
Various adjustments, e.g. for `select!` which now requieres a `&mut` for oneshots.
Future things to do:
- Use some better signalling than oneshot<()> in some cases.
- Use a Watch for the Prio propergation (impl. it ofc)
- Use Bounded Channels in order to improve performance
- adjust tests coding
bring tests to work
2021-02-17 12:38:53 +01:00
Marcel Märtens
1b77b6dc41
Initial switch to tokio for network, minimum working example.
2021-02-17 12:37:59 +01:00
Caelan
dda4931f46
Clean and update dependencies
...
* Remove tweak feature
* Remove const-tweaker
* Update tiny_http
* Update bitvec to 0.21.0
* Downgrade euc to avoid conflict with vek 0.12.0
* Require exactly vek 0.12.0
* Update all other dependencies automatically based on these changes
* Update gilrs to latest at the request of Ada Lovegirls
* Update meshing benchmarks to new criterion API
2021-02-17 01:27:06 -08:00
Ben Wallis
c785e75e60
Follow-up fixes from review of inventory MR
2021-01-10 11:27:09 +00:00
Ben Wallis
aef2637288
Refactored loadout to have public functions for each slot instead of requiring callers to use the _INDEX consts
2021-01-08 19:12:09 +00:00
Marcel Märtens
107fd432f5
update further crates
2020-12-16 08:56:21 +01:00
Marcel Märtens
26918d10c9
update chrossbeam, tracy, prometheus (and reduce server deps to crossbeam-channel)
2020-12-16 00:51:07 +01:00
Joshua Barretto
494436be01
Hid plugins behind a feature flag to resolve Windows CI issue
2020-12-15 11:14:26 +00:00
Joshua Barretto
f8c8e342e6
Moved common networking code to common/net, clippy fixes
2020-12-13 17:23:45 +00:00
Marcel Märtens
ccb01e1898
adjust fmt and clippy after toolchain upgrade
2020-12-10 14:53:01 +01:00
Ben Wallis
81a8ee0c19
Changed logging to use termcolor crate to fix ansi control codes showing when run under Windows Command Prompt
2020-12-06 14:49:13 +00:00
Ben Wallis
c37b91fbf1
Changed Dockerfile to use ENTRYPOINT to allow the veloren-server-cli process to receive signals sent by Watchtower
2020-11-30 16:46:36 +00:00
Marcel Märtens
ca1601a980
Change the version number to 0.8
2020-11-28 11:25:58 +01:00
Imbris
1355c1e8f5
Move tracy frame markers to proper locations, add a few spans
2020-11-22 14:22:39 -05:00
Imbris
a97b188bea
Make fps display and specification more precise
2020-11-11 21:47:22 -05:00
Marcel Märtens
e4e5c6e55b
massivly switch clock algorithm.
...
- before we had a Clock that tried to average multiple ticks and predict the next sleep.
This system is massivly bugged.
a) We know exactly how long the busy time took, so we dont need to predict anything in the first place
b) Preduction was totally unrealistic after a single lag spike
c) When a very slow tick happens, we dont benefit from 10 fast ticks.
- Instead we just try to keep the tick time exact what we expect.
If we can't manage a constant tick time because we are to slow, the systems have to "catch" this via the `dt` anyway.
2020-11-10 18:31:42 +01:00
Marcel Märtens
40f5afc2b0
ci cleanup, dependency update
2020-11-06 14:34:42 +01:00
Marcel Märtens
00456c8373
extract a Presence Component, which is server
only and has state of Player
and Client
. Presence is only valid for Clients that are in game
2020-11-03 08:56:02 +01:00
Imbris
47b06658b0
Log where the userdata folder is in binary crates, fix bug where the old
...
path was logged instead of the new path when renaming invalid settings
2020-10-29 18:30:49 -04:00
Capucho
e77cc3eae2
Fixed the server cli dropping new lines
2020-10-23 20:30:33 +01:00
Marcel Märtens
f1c9b959f4
rename a file, fix error msg, dont spam persistence by default
2020-10-13 00:06:24 +02:00
Imbris
fa45edb541
Fix clippy, minor fmt, add TODO comments
2020-10-10 03:01:30 -04:00
Imbris
71251ca6a6
Change admins from Vec<String> into Hashset<Uuid>, add commands to server-cli-bin for adding and removing admins
2020-10-10 02:10:32 -04:00
Imbris
83fb26c4f9
Group editable server settings into one struct that is stored in the ecs, don't expose DataDir, use Uuid in the whitelist instead of usernames, replace Banlist record tuple with new type with named fields, remove commented code
2020-10-10 02:10:32 -04:00
Imbris
fb2cf1a292
Fix clippy warnings
2020-10-10 02:10:32 -04:00
Imbris
522880a0ab
Update CI and docker files to work with changes to data folder structure
2020-10-10 02:10:32 -04:00
Imbris
308cca0dc9
Put server-cli specific settings in their own structure, serde_derive -> serde
2020-10-10 02:10:32 -04:00
Imbris
7c14a3f4a4
New userdata folder that holds voxygen settings and logs and server saves and settings, split up server settings file into parts that are persisted back to their files and parts that are read-only, misc fixes
2020-10-10 02:10:32 -04:00
Imbris
66d2d636ee
Add server-cli option to disable auth
2020-10-10 02:10:32 -04:00
Imbris
873ea1ec46
Make basic server-cli mode default to not reading input and add interactive option
2020-10-10 02:10:31 -04:00
Ben Wallis
51459c0733
Implemented graceful shutdown on SIGUSR1 signal. Added shutdown <seconds> TUI command. Added abortshutdown TUI command. Fixed a bug in TUI that caused a panic on quit in basic mode on windows.
2020-10-04 21:24:45 +01:00
Ben Wallis
b3dd8e8a02
Added #![deny(clippy::clone_on_ref_ptr)] to all crates and fixed resulting lint errors
2020-09-27 17:25:33 +01:00
Marcel Märtens
8eec46424f
switching veloren naming scheme, to either one of the following:
...
`stable-0.7.0 (<hash>-<datetime>)` for release versions.
And
`nightly-<date> (<hash>)` for nightly and master versions
Reason is, many players only give information that they are running `0.x.0` but are not giving us the information which day, or commit they are running. So we should make master builds less confusing.
2020-09-22 11:47:18 +02:00
Marcel Märtens
9833ec91ea
fix spam due to mio tracing
2020-09-16 10:13:37 +02:00
Imbris
c3ae641fbb
Merge branch 'imbris/tracy' into 'master'
...
Add more tracing instrumentation and tracy support
See merge request veloren/veloren!1359
2020-09-10 05:07:51 +00:00
Marcel Märtens
a50757b88b
fix comment
2020-09-07 17:45:00 +02:00
Marcel Märtens
a0eebf15d0
fixed #757
2020-09-07 17:20:52 +02:00
Marcel Märtens
4cf86c725e
detect EOL on stdin and no longer try to read commands.
...
This can be locally tested with CTRL+D on basic mode.
RUST_LOG=trace might help
2020-09-07 16:28:13 +02:00
Marcel Märtens
5f15555fc5
decrease TUI to only draw 10 frames on idle.
...
add tracing when a cmd is entered
2020-09-07 14:32:46 +02:00
Imbris
0683a40741
Use finish_continuous_frame directly
2020-09-06 22:28:14 -04:00
Imbris
4f68a6df27
Update tracy crates, reduce overhead of timing, add more misc instrumentation
2020-09-06 22:28:14 -04:00
Capucho
5fd0e0a5b7
Added commands to basic mode
2020-09-03 09:05:15 +02:00
Capucho
6e24ff31ee
Fix all the problems with the tui
2020-09-03 09:04:42 +02:00
Marcel Märtens
36350a08b1
clean shutdown and do a full frame all 10 ticks. also increase polling time to 100ms and dont poll while drawing but afterwards
2020-09-01 23:03:50 +02:00
Marcel Märtens
f5c8f3fcf8
move tui in multiple files
2020-09-01 23:03:48 +02:00
Capucho
337860de93
Fix lack of scrolling
2020-09-01 23:03:47 +02:00
Capucho
8b1ba19b4f
Fix panic when window is too small
2020-09-01 23:03:45 +02:00
Capucho
752b2510ee
Fix resize issue
2020-09-01 23:03:43 +02:00
Capucho
aa676a4327
Updated the Dockerfile
2020-09-01 23:03:42 +02:00
Capucho
8fd052768e
Fix typo and clippy warnings
2020-09-01 23:03:40 +02:00
Capucho
332cb20df1
Added flags to toggle the tui
2020-09-01 23:03:38 +02:00
Capucho
bf8e455839
Make it easier to add commands and added the help command
2020-09-01 23:03:36 +02:00
Capucho
a893ccc228
Fix the offsetting problem after using the cli
2020-09-01 23:03:35 +02:00
Capucho
83ff13a035
Coloring done very badly
2020-09-01 23:03:32 +02:00
Capucho
a2d70e6ff6
Escape ansi sequences
2020-09-01 23:03:31 +02:00
Capucho
c399afa7c5
Made the server cli great
2020-09-01 23:03:29 +02:00
Marcel Märtens
ed68bff135
Change the version number to 0.7
2020-08-15 11:53:59 +02:00
Joshua Barretto
1763693f5f
Added labour value to economy, castle improvements
2020-08-12 21:15:52 +01:00
Joshua Barretto
f21a50e393
Added forts to towns, began better economy sim
2020-08-12 21:15:52 +01:00
Marcel Märtens
6535fa5744
fix various clippy issues
2020-07-01 00:37:06 +02:00
Marcel Märtens
c558c9de7c
fix server-cli tracing accepting RUST_LOG env var and pass RUST_LOG via docker-compose rather than hardcoding it
...
- however RUST_BACKTRACE=1 is still hardcoded as its probably useful
- dont spam the server-cli with debug
2020-06-29 11:05:55 +02:00
CapsizeGlimmer
aabf9d7b21
fix chat-cli name formatting.
2020-06-27 17:20:26 -04:00
Marcel Märtens
9485b45e70
switch to tracing
stlye and enhance logs with usefull information
...
- Updated CHANGELOG
- reduce dependencies
- found out that we have alot of duplicate coding... alot...
2020-06-22 09:53:15 +02:00
Kevin Glasson
589254e4ab
Convert all other veloren crates to use tracing
...
- Completely removed both `log` and `pretty_env_logger` and replaced
with `tracing` and `tracing_subscriber` where necessary.
- Converted all `log::info!(...)` et al. statements to just use the
shorthand macro i.e. `info!`. This was mostly to make renaming easier.
2020-06-21 23:19:41 +08:00
Ben Wallis
c1c968f479
Globally suppressed clippy lint option_map_unit_fn for #587
2020-06-14 16:48:07 +00:00
Ben Wallis
950c62efc6
Suppressed all existing clippy warnings in preparation for fixes as part of #587
2020-06-10 22:01:42 +01:00
Marcel Märtens
ec03c4518a
Change the version number to 0.6
2020-05-16 00:50:40 +02:00
Songtronix
67df50708d
fix: outdated volume path
2020-05-11 11:07:37 +02:00
S Handley
5a13b54cbf
- Load characters after login.
...
- Make the character screen load with an empty character list from the server, send event to the server for character creation with data, but not yet saving them to the DB.
- Working but messy character saving to DB
- Add the character_data to the client, rather than keep it in the GLobalState.
2020-05-09 15:41:25 +00:00
Marcel
32a8e6d304
Update docker-compose.yml with the same as in production by official server
2020-04-15 12:49:33 +00:00
Marcel
342e46afcb
Install meta package librust-backtrace+libbacktrace-dev in debian, this might fix the problem that we dont have server backtraces.
...
According to its documentation its specifically tailed down to deliver everything for rust backtrace crate:
https://packages.debian.org/buster/librust-backtrace+libbacktrace-dev
The official requierement would be install `cc` and `ar`, where `ar` is in binutils, and `cc` seems to be in gcc-8 or a subpackage of it. Both would requiere about 100MB additionally for backtraces, while this package should requiere additional 8MB
2020-04-09 11:22:34 +00:00
Songtronix
604a6cf169
feat: log server version
2020-03-26 12:41:30 +01:00
Marcel
48b5977551
add watchtower support and fix CMD in Dockerfile
2020-03-22 14:56:14 +00:00
Marcel
d8cbd15204
Fix docker image for server-cli
2020-03-22 12:44:32 +00:00
Marcel Märtens
1fbdb9c590
auto-generated docker image for server-cli based on kaniko like i researched for torvus and correct release branch detection:
...
- ade4d37575
2020-02-26 17:08:46 +01:00
Marcel Märtens
e960c2233b
Change the version number to 0.5
2020-01-31 17:26:45 +01:00
Joshua Barretto
11193a692a
Better neutral AI, initial waypoint objects
2020-01-26 12:52:28 +00:00
Joshua Barretto
2d9aa21eef
Added test world, friendly NPC pathfinding
2020-01-26 12:52:07 +00:00
Monty Marz
851d7858e6
Scrolling Combat Text (SCT)
2020-01-10 00:33:38 +00:00
Shane Handley
f7cfcc5394
Re-add the metrics port logging which was lost in the merge.
2019-11-06 21:34:19 +01:00
Shane Handley
15c725bfde
Address code review points:
...
- Clarify caffeine fueled comment
- Be better at comparing Instant's, and catch the 0 seconds case to say
Goodbye to the user
- Switch println for 'info!'
2019-11-06 21:34:18 +01:00
timokoesters
c733c95718
improvement: UI for connecting to singleplayer servers + threading fixes
2019-11-06 21:34:15 +01:00
soruh
6dfa146484
Mitgated RUSTSEC-2019-0014 by updating noise
and
...
disabling its default features, specifically `image`,
which had the vulnerability.
2019-11-05 11:14:39 +00:00
Acrimon
5beea76624
Remove heaptrack as it is now deprecated.
2019-10-29 06:55:45 +00:00
Marcel Märtens
20c520a044
Change the version number to 0.4
2019-10-10 15:48:01 +02:00
Forest Anderson
b13f9f37f7
Revert "Merge branch 'angelonfira/change-memory-allocator-to-jemalloc' into 'master'"
...
This reverts merge request !547
2019-10-06 01:31:47 +00:00
Forest Anderson
0304b51159
Chanced to ignore msvc instead of windows
...
Change server to ignore msvc
2019-10-05 17:57:29 -04:00
Forest Anderson
e1bab6afe0
Added jemalloc for Linux systems
2019-10-05 17:57:29 -04:00
Forest Anderson
9ef98ce1a5
Remove heaptrack
2019-10-05 17:57:29 -04:00
Joshua Barretto
5a677b9c1e
Added modular building generation
2019-08-31 11:44:52 +01:00
Acrimon
a41cf1a83d
Disabled unsafe using lint level.
2019-08-19 14:39:23 +02:00
Piotr Korgól
d3f2ca69a4
Change the version number to 0.3
2019-08-04 13:53:59 +02:00
Acrimon
ee49ebe807
Update rand, log and scan_fmt
2019-07-29 13:42:26 +00:00
timokoesters
5aa864ee58
Update most dependencies
2019-07-28 22:47:23 +02:00
Acrimon
b1e1cb0f00
Hopefully fix conflict.
2019-07-24 02:20:35 +02:00
Acrimon
deb6c6adef
Some other stuff I missed to commit. (Hooked into server-cli)
2019-07-24 02:20:35 +02:00
Songtronix
5b31c7c1f9
little cleanup
2019-07-17 19:03:37 +02:00
Songtronix
e2b83883f3
fmt
2019-07-17 18:32:01 +02:00
Songtronix
bbb024224d
add configureable server info
2019-07-17 18:32:01 +02:00
Songtronix
1213d9844b
add customizable port and worldseed
2019-07-17 18:32:00 +02:00
timokoesters
f5da167ce5
Fix warnings and clippy recommendations in common
2019-07-02 15:48:25 +02:00
Cody
14ac5babd4
Removes most unused imports; changes some unused variables to underscores or provides a leading underscore; removes some unnecessary variables and mutable declarations; and performs other miscellaneous warning fixes.
2019-06-06 14:48:41 +00:00
Cody
6b09fd7c53
Pedantic comment and language fixes.
...
Former-commit-id: eb49765c911aaa97a9c8ed351216a7a6f8411213
2019-05-17 18:32:07 -04:00
Forest Anderson
993388e56a
Ran fmt on codebase
...
Former-commit-id: 7fecffa1dc66fffba4f07d45fb80960dc5178f4f
2019-04-29 20:37:19 +00:00
timokoesters
f35e8d7b98
Fix gitignore and delete gitignores in subdirs
...
Former-commit-id: 4d57caa521c47d137e29d5b781abbdda6a2d8759
2019-04-29 20:43:04 +02:00
Joshua Barretto
f4260706e6
Updated package versions
...
Former-commit-id: bb0d1efd718ddef598fbb894498a43ad014a11c0
2019-04-14 14:23:43 +01:00
Joshua Barretto
62b91eb01b
Integrated Sphynx
...
Former-commit-id: 5d96983a385bb77a2876aa7439158252b7e2f0fc
2019-04-14 14:23:43 +01:00
Joshua Barretto
26906d8674
Minor changes
...
Former-commit-id: 39beb7858926cb62a1f2d0db5c74e71c804c5962
2019-03-19 19:53:35 +00:00
Joshua Barretto
99bd0630b7
Added post refactor unit tests
...
Former-commit-id: 66ea368de32dc6dfe22fc752476b71856e0588a0
2019-03-19 11:35:38 +00:00
Joshua Barretto
664f28a972
Patched in netcode refactor
...
Former-commit-id: 34a3b9a95129edad6dc8280d9a3cb41581d4d386
2019-03-19 11:35:38 +00:00
Joshua Barretto
a8b0039898
Added networked entity updates, player entity allocation
...
Former-commit-id: b81d6e38a74f846d64c092d1422dc402f369100c
2019-03-19 11:35:38 +00:00
Joshua Barretto
bb93f29522
Fixed client/server comms bug
...
Former-commit-id: fffc9cbf59784e7e2c9c2d9a60b8f2520b6f41fb
2019-03-19 11:35:38 +00:00
Joshua Barretto
dbbcc1e80e
Added basic networked communications, chat communication
...
Former-commit-id: 06bafdf69486f4da5fbc416835e34c5bed8c2caa
2019-03-04 19:58:58 +00:00
Joshua Barretto
c16a257ae3
Added server-cli, UI tests
...
Former-commit-id: 93bf5b39138920aa7a4a773a8247d716866c4a05
2019-01-30 12:11:34 +00:00