Commit Graph

297 Commits

Author SHA1 Message Date
Joshua Barretto
8d6b442193 Crafting 2020-07-14 20:11:39 +00:00
Marcel Märtens
6db9c6f91b fix a followup bug, after a protocol fail now Participant is closed, including all streams, so we get the stream errors.
We MUST handle them and we are not allowed to act on a stream after it failed, as i am to lazy to change the structure to ensure the client to be imeadiatly dropped i added a AtomicBool to it.
2020-07-13 13:03:35 +02:00
Marcel Märtens
9d32e3f884 proper voxygen connect and code cleanups:
- voxygen abort when the server has a invalid veloren_network handshake, e.g. by outdated version instead of try again
- rename Network `Address` to `ProtocolAddr` as sugested by zest as it's a combination of Protocol and std::io::Addr
- remove the manual byte arrays in `protocols.rs` with something more nice
2020-07-13 13:03:20 +02:00
Marcel Märtens
041349be48 Switch API to return Participant rather than Arc<Participant>
- API behavior switched!
 - the `Network` no longer holds a copy of participant, thus if the return of `connect` (before `Arc<Participant>, now `Participant`) got dropped, the `Participant::Drop` is triggered!
 - you can close a Participant async via `Particiant::disconnect()`, no more need to know the network at this point
 - the `Network::Drop` will check and drop not yet disconnected Participants.
 - you can compare Participants via PartialEq, if they are true they point to the same endpoint (it checks remote_pid)
   - Note: multiple Participants are only supported in theory, wont work yet

Additionally:
 - fix some `debug!`
 - veloren-client will now drop the participant gracefully on shutdown
 - rename `error` to `debug` when 2 times Bparticipant shutdown is called, as it is to be expected in a async runtime
2020-07-13 13:03:14 +02:00
Marcel Märtens
9ae1d8474f dropping participant on client disconnect clients 2020-07-13 13:03:07 +02:00
Kai
6b771b8dca Add a clientside check to only allow freefly camera for admins 2020-07-11 13:59:47 -07:00
Ben Wallis
6ca6e2d646 Removed rounding from ping delta and added weighted rolling average ping calculation 2020-07-11 15:39:31 +01:00
Songtronix
5b57072064 fix: use correct specs(-idvs) versions
related to torvus
2020-07-09 19:46:30 +02:00
Marcel Märtens
c212de00c2 updated dependencies and fixed stuff
- replace serde_derive by feature of serde
   incl. source code modifications to compile
 - reduce futures-timer to "2.0" to be same as async_std
 - update notify
 - removed mio, bincode and lz4 compress in common as networking is now in own crate
   btw there is a better lz4 compress crate, which is newer than 2017
 - update prometheus to 0.9
 - can't update uvth yet due to usues
 - hashbrown to 7.2 to only need a single version
 - libsqlite3 update
 - image didn't change as there is a problem with `image 0.23`
 - switch old directories with newer directories-next
 - no num upgrade as we still depend on num 0.2 anyways
 - rodio and cpal upgrade
 - const-tewaker update
 - dispatch (untested) update
 - git2 update
 - iterations update
2020-07-07 09:43:49 +02:00
Imbris
8d39f27458 Upgrade hashbrown 2020-07-06 03:15:06 -04:00
Imbris
c2d6d00b00 point to github specs to access PairedStorage type, fix Loadout sync spam 2020-07-06 01:56:02 -04:00
Forest Anderson
e73ec7a4d2 Added spawning test dummy 2020-07-03 16:53:04 -04:00
Marcel Märtens
15ff58cd6a simple fmt in order to make the replacement commit as simple as possible 2020-07-03 13:11:44 +02:00
Marcel Märtens
4e92c0160e network layer switch, doing the stuff that might confict.
- mostly its the message handling put now in a async wrapper
 - add some fixes to pass without warnings and make clippy happy
 - some network error handling is ignored, this can be improved but is no blocker
2020-07-03 13:11:38 +02:00
Marcel Märtens
77c90b2c7c doing a simple 1:1 swap out network coding
this is the part which prob has less Merge conflics and is easy to rebase
the next commit will have prob alot of merge conflics
followed by a fmt commit
2020-07-03 13:11:31 +02:00
Monty Marz
89400264dc Loot ChatType, Update german translation, map zooming 2020-07-01 19:05:44 +00:00
Marcel Märtens
6535fa5744 fix various clippy issues 2020-07-01 00:37:06 +02:00
Ben Wallis
dc1844b489 Moved sfx from common to voxygen 2020-06-28 18:16:22 +01:00
Forest Anderson
201f513737 Fixed meta chattype error on master 2020-06-28 17:10:01 +00:00
Forest Anderson
9246e34c1b Merge branch 'CapsizeGlimmer/chat_modes' into 'master'
Capsize glimmer/chat modes

Closes #217

See merge request veloren/veloren!1043
2020-06-28 14:35:39 +00:00
Ben Wallis
a9d3f984f0 Implemented loot pickup chat messages and the option for playing different sounds for picked up items
* Added chat message when an item is picked up
* Changed InventoryUpdateEvent::Collected to InventoryUpdateEvent::Collected(Item) to facilitate the client being aware of what was picked up
* Added SfxInventoryEvent enum to allow different sounds to be used based on the item type. The RON mapping/de-serialization doesn't support matching on structs so we have to give it fixed enum values which are determined in TryFrom<&InventoryUpdateEvent> for SfxEvent
* Refactored InventoryManip::Pickup arm of match in inventory_manip::handle_inventory for clarity/better warning messages
* Fixed a bug that prevented the CollectFailed event from being raised when a player's inventory is full
* Added a panic for the situation where an item is pushed into the players inventory and then the deletion of the entity fails as this would indicate an item dupe bug - this could potentially be reworked to pull the item back from the player's inventory but this seems like there's be a more correct transactional way to do this.
* Added two temporary sounds to prove the per-item sound functionality (pickup sounds for Swords and Staffs)
2020-06-28 13:05:28 +01:00
Forest Anderson
2665159790 Fixing errors after rebase 2020-06-27 19:12:12 -04:00
CapsizeGlimmer
883d9acf30 cargo fmt 2020-06-27 17:43:46 -04:00
CapsizeGlimmer
3d29c3254a Add setting for displaying character names in chat. Placate cargo clippy. 2020-06-27 17:43:46 -04:00
CapsizeGlimmer
b04810cae5 misc chat mode changes 2020-06-27 17:40:03 -04:00
CapsizeGlimmer
5ad212b7ed Add chat types for offline, online. Implement Pfau's fixes 2020-06-27 17:40:03 -04:00
CapsizeGlimmer
b7d7696d89 Implement MR!1043 changes suggested by Imbris 2020-06-27 17:20:26 -04:00
CapsizeGlimmer
34acc4ddf3 Players are removed from social menu when logged out. 2020-06-27 17:20:26 -04:00
CapsizeGlimmer
aabf9d7b21 fix chat-cli name formatting. 2020-06-27 17:20:26 -04:00
CapsizeGlimmer
4117f2f2a8 cargo fmt; changelog 2020-06-27 17:03:55 -04:00
CapsizeGlimmer
22315a6e1d Added shortcut for chat commands /g=>/group, /s=>/say, /w=>/world, etc. 2020-06-27 17:03:30 -04:00
CapsizeGlimmer
289ef5d6b2 Move message processing and chat bubbles to the client 2020-06-27 16:42:26 -04:00
CapsizeGlimmer
0b2a3ebe8b Re-implement names in chat. It is done client-side now and /alias changes are retroactive. 2020-06-27 16:42:25 -04:00
CapsizeGlimmer
b08d717eac Rework chat processing 2020-06-27 16:29:03 -04:00
CapsizeGlimmer
702a21302c Base implementation of /group /faction /say /region 2020-06-27 16:26:02 -04:00
Joshua Barretto
b46e080ade Added server-side maximum view distance setting 2020-06-25 18:46:04 +01:00
Imbris
6501611372 Merge branch 'shandley/character-loading' into 'master'
Move character DB ops off the main thread

See merge request veloren/veloren!1075
2020-06-25 16:16:15 +00:00
Songtronix
f44df23935 feat: add server whitelist 2020-06-24 17:36:19 +02:00
Shane Handley
255ad97289 - Move the remaining character data loading to the message/thread formatharacter list actions
- Handle/notify the client of errors during character load by returning to character select with the error, clean up client and server states
- Add player_uuid check when loading character data.
2020-06-24 11:47:41 +10: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
Kevin Glasson
19c2bf1181 Add hotbar state persistence.
Persist the hotbar state to disk by writing it out to a `profile.ron`
situated next to the existing `settings.ron`. There are individual
profiles for every character on every server. On creation of a new
character the default hotbar state will be `[None; 10]` i.e. the hotbar
will be empty.

Resolves: https://gitlab.com/veloren/veloren/-/issues/577
2020-06-19 08:00:21 +08:00
scott-c
88d68df2c0 Remove wield requirement to swap loadout 2020-06-17 21:34:58 +08:00
Justin Shipsey
2f896849d4 Wield glider instead of weapon when attempting glide wield, change behavior when running into walls to not drop out of gliding 2020-06-16 21:32:39 +00:00
Ben Wallis
c1c968f479 Globally suppressed clippy lint option_map_unit_fn for #587 2020-06-14 16:48:07 +00:00
Ben Wallis
8ed2109bcf Fixed suppressed clippy warnings for #587 - collapsible_if 2020-06-12 20:34:54 +01:00
Marcel Märtens
0e59ee901e dependency reduction:
- authc no longer uses reqwest
 - image only supports PNG
 - replace routille with tiny_http
 - several other dependencies
 - cargo upgrade
 - following improvement was measured on R7 1700X:
   before:
    - cargo build: 3076.73s user / 4:45 total / 589 dependencies
    - cargo test: 6118.38s user / 7:30 total / 959 dependencies
   after:
    - cargo build: 2680.54s user / 4:05 total / 480 dependencies
    - cargo test: 5351.81s user / 7:04 total / 791 dependencies
 - added xMAC94x to CODEOWNERS for Cargo.toml, he will protect them from now on and hit people with evil looks ;)
2020-06-11 20:55:34 +02: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
S Handley
e0633a238e Update CHANGELOG and a TODO, fix safer deserialisation for inventory
data.
2020-06-04 11:44:33 +00:00
scott-c
bfd97cac7e Fix build error 2020-06-01 22:04:44 +08:00