Commit Graph

945 Commits

Author SHA1 Message Date
Nemanja
5caa6a07b0 #612 Fixed utility items not being removed from inventory/hotbar 2020-07-18 02:41:45 +00:00
Justin Shipsey
5d18fc26f5 Merge branch 'sam/armor-stats' into 'master'
Armor Protection Stat

Closes #640

See merge request veloren/veloren!1204
2020-07-18 00:05:28 +00:00
Samuel Keiffer
6cce09be85 Added protection stat to admin armor hidden in debug folder. Removed blue cultist armor set from drop table as it is an admin set. 2020-07-18 00:05:28 +00:00
Imbris
9e880009e0 Loosen in_vd calculation on the server so that it accepts all chunks a client with the specified vd would request 2020-07-17 17:32:31 +01:00
T-Dark0
d5e9e19881 Created banned words file
By default, it's an empty list
2020-07-16 14:05:35 +00:00
Marcel Märtens
6c59caf8e1 make prometheus optional in network and fix a panic in the server
- an extra interface `new_with_regisitry` was created to make sure the interface doesn't depend on the features
2020-07-15 16:45:49 +02:00
Joshua Barretto
8d6b442193 Crafting 2020-07-14 20:11:39 +00:00
Marcel
d5bfae886e Merge branch 'xMAC94x/net-improve' into 'master'
xMac94x/net improve

See merge request veloren/veloren!1162
2020-07-14 14:09:43 +00:00
Joshua Barretto
446923f7d8 Merge branch 'zesterer/small-fixes' into 'master'
Zesterer/small fixes

See merge request veloren/veloren!1190
2020-07-14 09:54:17 +00:00
Marcel Märtens
c74e5e4b47 Changes requested in rewiew 2020-07-13 23:41:32 +02:00
Ben Wallis
a9be045cb8 Fixed suppressed clippy warnings for #587 - useless_conversion 2020-07-13 20:57:13 +01: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
df45d35c0e tcp protocol hardening
- make it harder for the server to crash and also kill invalid sessions properly (instead of waiting for them to close)
 - introduce macros to reduce code duplication
 - added tests to check for valid handshake as well as garbage tcp
2020-07-13 13:03:25 +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
Ben Wallis
7f6c892cf0 Added migration to fix characters unable to login due to DashMelee ability change 2020-07-11 15:42:19 +01:00
Songtronix
5b57072064 fix: use correct specs(-idvs) versions
related to torvus
2020-07-09 19:46:30 +02:00
Joshua Barretto
23c774c8da Fixed missed VD update bug 2020-07-09 16:54:10 +01:00
Samuel Keiffer
25c28f26d6 Different body types now have different health values and gain different amounts of healths on leveling. 2020-07-09 00:04:25 +00:00
Ben Wallis
ddb66ec73b Added CharacterDataError when character list fails to load due to Loadout de-serialization error 2020-07-08 09:34:20 +01:00
Ben Wallis
e83d0abd33 Added migration to create a default inventory and loadout for characters without one 2020-07-08 09:09:48 +01:00
Ben Wallis
3ac18f73ea Removed de-serialization failure tolerance to prevent player inventory/loadout wipes 2020-07-08 09:09:47 +01:00
Marcel Märtens
85a3f8637d fix specs 2020-07-07 14:28:00 +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
Joshua Barretto
3cfd8bdd3c Fixed animal loadouts and /spawn 2020-07-07 02:21:14 +01:00
Joshua Barretto
d1cdb6ea55 Updated changelog 2020-07-07 01:11:37 +01:00
Joshua Barretto
e626f6255f Prevented pet damage 2020-07-07 01:01:39 +01:00
Joshua Barretto
bdab3972c2 Fixed view distance bug 2020-07-06 16:36:13 +01:00
Marcel
e19d170b61 Merge branch 'imbris/smaller-fixes' into 'master'
Stop spamming loadout, Update specs

See merge request veloren/veloren!1165
2020-07-06 09:50:46 +00:00
Songtronix
200496d1bc fix: allow maximum view distance in singleplayer 2020-07-06 10:37:44 +02:00
Imbris
8d39f27458 Upgrade hashbrown 2020-07-06 03:15:06 -04:00
Imbris
afff8a43b9 Add some code to count how many updates will be sent for each component type (commented out) 2020-07-06 02:25:29 -04:00
Imbris
c2d6d00b00 point to github specs to access PairedStorage type, fix Loadout sync spam 2020-07-06 01:56:02 -04:00
Joshua Barretto
a9f862ee95 Fixed multiple char select bug 2020-07-05 18:05:00 +01:00
Joshua Barretto
43f75f2f54 Removed bomb timeout 2020-07-05 16:15:51 +01:00
Joshua Barretto
fd39ee97bc Added training dummies 2020-07-05 16:15:51 +01:00
Joshua Barretto
92c9db5291 Made fluids block explosions 2020-07-05 16:15:51 +01:00
Joshua Barretto
38c422bef7 Added bombs to loot table 2020-07-05 16:15:51 +01:00
Joshua Barretto
2f6a618d5a Added bombs, throwable items, more block kinds, weaker explosions 2020-07-05 16:15:48 +01:00
Marcel
2a7a8b05e6 Merge branch 'network-lockless' into 'master'
Network lockless

See merge request veloren/veloren!1153
2020-07-05 09:17:29 +00:00
Forest Anderson
7ac5876743 Merge branch 'xvar/skills' into 'master'
Initial implementation of skills and skill groups

See merge request veloren/veloren!1135
2020-07-05 00:33:11 +00:00
Forest Anderson
3e830aa0ca Merge branch 'angel/add-spawn-training-dummy' into 'master'
Added spawning test dummy

See merge request veloren/veloren!1142
2020-07-04 19:24:02 +00:00
Piotr Korgól
27440e16c4 Correctly load the loot table 2020-07-04 18:40:23 +02:00
Ben Wallis
538598eb08 Refactored Skills/SkillGroups structure and implemented JSON persistence 2020-07-04 15:25:21 +01:00
Piotr Korgól
aefa7e2f11 Make chests and enemies use the basic loot table 2020-07-04 14:07:10 +02:00
Marcel Märtens
cbfd398035 remove Mutex in server as Stream is now 'Sync' 2020-07-04 12:31:59 +02:00
Forest Anderson
954a4857c4 Added proper training dummy model 2020-07-03 16:53:04 -04:00
Forest Anderson
c525358637 Prevent xp gain from training dummy kill 2020-07-03 16:53:04 -04:00
Forest Anderson
6140555e43 Fixed clippy issues 2020-07-03 16:53:04 -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
Samuel Keiffer
44203ab817 Adds a command that allows a username to be added or removed from the whitelist 2020-06-30 12:21:36 +00:00
Ben Wallis
48a23e5f4c Fixed inventory full message when pressing the pickup item key in quick succession (#651) 2020-06-29 07:48:44 +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
Monty Marz
f3a84e07a7 changed message type for motd 2020-06-28 16:04:55 +02:00
Forest Anderson
48f70bd088 Fixed double login message 2020-06-28 09:47:48 -04:00
Monty Marz
670d9e8736 remove unnecessary conversions to make clippy happy 2020-06-28 15:15:00 +02: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
59db2fcd3b Admin status added when registering; cargo fmt 2020-06-27 17:43:45 -04:00
CapsizeGlimmer
2d2aba3a5d Chat bubble text shadows. Fix panic when re-joining a group or faction 2020-06-27 17:40:03 -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
4117f2f2a8 cargo fmt; changelog 2020-06-27 17:03:55 -04:00
CapsizeGlimmer
35ed03aa18 Implement chat mode icons in chat window 2020-06-27 17:03:30 -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
c984bdcdf1 Implement chat filtering for /say /region /group etc. 2020-06-27 17:03:30 -04:00
CapsizeGlimmer
5cbecb29e6 Implement /join_group and /join_faction commands 2020-06-27 16:42:26 -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
1cca7bf4a8 Fmt, fixed chat-cli problem 2020-06-25 19:50:04 +01:00
Joshua Barretto
d9cd37056d Added settings editing, set_motd command 2020-06-25 18:57:29 +01:00
Joshua Barretto
83a96c24ec Added MOTD on login, MOTD editing 2020-06-25 18:57:26 +01: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
Shane Handley
38b146d840 Add channel setup for persistence to move character operations off the
main thread.
2020-06-23 21:07:43 +10:00
Shane Handley
304e06cbce Fix clippy warnings after toolchain update 2020-06-23 16:52:04 +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
Ben Wallis
6da7a11d33 Fixed suppressed clippy warnings for #587 - clone_on_copy 2020-06-18 22:25:48 +01:00
Imbris
26e53409d8 Merge branch 'xvar/clippy-globally-suppress-option_map_unit_fn' into 'master'
Globally suppressed clippy lint option_map_unit_fn for #587

See merge request veloren/veloren!1071
2020-06-14 16:48:07 +00:00
Ben Wallis
c1c968f479 Globally suppressed clippy lint option_map_unit_fn for #587 2020-06-14 16:48:07 +00:00
Imbris
fb47115695 Merge branch 'xvar/clippy-fixes-redundant_closure_found' into 'master'
Fixed suppressed clippy warnings for #587 - redundant_closure

See merge request veloren/veloren!1065
2020-06-14 16:33:04 +00:00
Ben Wallis
4d6c553b1b Fixed suppressed clippy warnings for #587 - redundant_closure 2020-06-12 20:47:22 +01: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
Marcel Märtens
3324c08640 Fixing the DEADLOCK in handshake -> channel creation
- this bug was initially called imbris bug, as it happened on his runners and i couldn't reproduce it locally at fist :)
- When in a Handshake a seperate mpsc::Channel was created for (Cid, Frame) transport
  however the protocol could already catch non handshake data any more and push in into this
  mpsc::Channel.
  Then this channel got dropped and a fresh one was created for the network::Channel.
  These droped Frames are ofc a BUG!
  I tried multiple things to solve this:
   - dont create a new mpsc::Channel, but instead bind it to the Protocol itself and always use 1.
     This would work theoretically, but in bParticipant side we are using 1 mpsc::Channel<(Cid, Frame)>
     to handle ALL the network::channel.
     If now ever Protocol would have it's own, and with that every network::Channel had it's own it would no longer work out
     Bad Idea...
   - using the first method but creating the mpsc::Channel inside the scheduler instead protocol neither works, as the
     scheduler doesnt know the remote_pid yet
   - i dont want a hack to say the protocol only listen to 2 messages and then stop no matter what
  So i switched over to the simply method now:
   - Do everything like before with 2 mpsc::Channels
   - after the handshake. close the receiver and listen for all remaining (cid, frame) combinations
   - when starting the channel, reapply them to the new sender/listener combination
   - added tracing
- switched Protocol RwLock to Mutex, as it's only ever 1
- Additionally changed the layout and introduces the c2w_frame_s and w2s_cid_frame_s name schema
- Fixed a bug in scheduler which WOULD cause a DEADLOCK if handshake would fail
- fixd a but in api_send_send_main, i need to store the stream_p otherwise it's immeadiatly closed and a stream_a.send() isn't guaranteed
- add extra test to verify that a send message is received even if the Stream is already closed
- changed OutGoing to Outgoing
- fixed a bug that `metrics.tick()` was never called
- removed 2 unused nightly features and added `deny_code`
2020-06-09 01:24:21 +02:00
Marcel Märtens
8f65168506 fix workspaces and Cargo dependencies 2020-06-09 01:23:21 +02:00
Marcel Märtens
88f6b36a4e Differ Metrics to make it easier to implement your own metric coding!
Implement my own metric coding in networking
2020-06-09 01:22:48 +02:00
Shane Handley
24cdea0a4c Enable WAL and busy_timeout for each sqlite connection to mitigate db locks, 2020-06-07 22:33:48 +10:00
S Handley
e0633a238e Update CHANGELOG and a TODO, fix safer deserialisation for inventory
data.
2020-06-04 11:44:33 +00:00
Monty Marz
b34da9b07b More item drops 2020-06-03 17:59:09 +00:00
S Handley
b1d191301a Make the persistence system code more generic so that it handles all
data associated with a character, rather than individually as we were
planning to do with stats/inv/etc... This removes potential for DB locking when we deal with each individually, and we
should have plenty of room for additional writes within the transaction.
2020-06-01 21:34:52 +00:00
scott-c
2d3f81b4c1 Add character info to /players command 2020-06-01 22:04:44 +08:00
scott-c
fe20da3923 send level change event for set_level command 2020-06-01 22:04:44 +08:00
scott-c
7eb1b2c263 Add level up network event 2020-06-01 22:04:44 +08:00
scott-c
730399b5f4 Add character select network event 2020-06-01 22:04:44 +08:00
scott-c
136bf271b8 Fix social list having incorrect player count 2020-06-01 22:04:44 +08:00
scott-c
c23183b1ca Add character name and level to social window 2020-06-01 22:04:44 +08:00
scott-c
636fcafd2e Restore player alias being displayed in chat 2020-06-01 22:04:44 +08:00
scott-c
fefd643657 Fix unused variable compiler warning 2020-06-01 21:56:46 +08:00
scott-c
288c7cdbfa fix #562 Confusing chat alias 2020-06-01 21:36:39 +08:00
Shane Handley
84d0332c6d Ensure that the player uuid and character id both match in a character deletion query. 2020-06-01 02:29:05 +10:00
Prashan Dharmasena
6865894f96 Closes #573. Do not announce alias change for non-body players. 2020-05-29 18:36:52 -07:00
Monty Marz
f7d6f76a04 Added 36 Swords
I added 36 sword models to the code.
2020-05-29 18:23:00 +00:00
Monty Marz
6d1ec73b47 Merge branch '561-info-popup-for-saved-waypoints-only-appear-for-the-second-time-you-visit-one' into 'master'
Resolve "Info popup for saved waypoints only appear for the second time you visit one"

Closes #561

See merge request veloren/veloren!1014
2020-05-29 11:39:12 +00:00
CapsizeGlimmer
78a06550d0 Only NPCs speak when hit. Farm animal alignment changed from NPC to Tame 2020-05-27 13:49:18 +02:00
CapsizeGlimmer
3cea76b82f NPCs now call for help when you hit them. Redraw speech bubble dark mode. 2020-05-27 13:49:18 +02:00
CapsizeGlimmer
c65967ccdb Chatting now creates speech bubbles 2020-05-27 13:49:14 +02:00
Justin Shipsey
ea07d744a7 orientation animation 2020-05-27 06:41:55 +00:00
Prashan Dharmasena
cba403df36 Closes #450: Send update chat message to all clients on successful alias change. 2020-05-26 22:00:47 -07:00
CapsizeGlimmer
2a83e91242 Waypoint notifications have a 10 second cooldown 2020-05-25 02:56:31 -04:00
Joshua Yanovski
2f89b863e0 Merge branch 'treeco/new-map' into 'master'
Changed default map and seed, lowered site counts

See merge request veloren/veloren!992
2020-05-21 20:46:54 +00:00
Monty Marz
ecb7963730 Pfau/0.6 bg 2020-05-16 12:48:29 +00:00
Marcel Märtens
ec03c4518a Change the version number to 0.6 2020-05-16 00:50:40 +02:00
Imbris
307cbaddb3 Merge branch 'imbris/stats-updater' into 'master'
Update stats in a separate thread

See merge request veloren/veloren!997
2020-05-15 21:52:40 +00:00
Imbris
6b70354fbb Wrap updates in transaction 2020-05-15 16:40:06 -04:00
Imbris
49e2fb80e7 Update stats in a separate thread 2020-05-15 16:03:51 -04:00
Joshua Barretto
ba80f7c872 Fixed square staircases in dungeons 2020-05-15 18:34:05 +01:00
Joshua Barretto
51a4d5c402 Fixed incorrect giant names 2020-05-15 18:33:34 +01:00
Joshua Barretto
aac28d04d5 Added dungeon bosses, boss loot, boss arenas 2020-05-15 16:05:50 +01:00
Treeco
61bcfbeeb2 Changed default map and seed, lowered site counts 2020-05-15 11:36:19 +01:00
Shane Handley
a41576e767 Correctly set the exp target for the next level when spawning a character.
Removed the unwrap_or from the update method for stats persistence, and
have a dedicated method for updating single rows with a new connection.
2020-05-15 13:27:26 +10:00
Mckol
fe859fc2e1 VELOREN_SAVES_DIR envar now overrides the server persistence db path 2020-05-15 01:54:14 +02:00
Mckol
48c5d37a5d Make singleplayer use voxygen's config path for persistence path. 2020-05-15 01:54:13 +02:00
Mckol
aa69046055 Changed the default path of persistence database
Now the default is `./saves/`, it's also configurable.
2020-05-14 22:42:44 +02:00
CapsizeGlimmer
0a723614f9 Popup message when setting waypoint 2020-05-14 16:56:10 +00:00
Forest Anderson
acab072a63 Merge branch 'shandley/persistence-stats' into 'master'
Stats Persistence

See merge request veloren/veloren!970
2020-05-13 13:43:22 +00:00
Shane Handley
fa8c6418f6 Write stats to the DB when a player disconnects from the server. 2020-05-13 22:08:26 +10:00
Forest Anderson
7703bc1214 Merge branch 'imbris/entity_count' into 'master'
Fill in entity_count in metrics

See merge request veloren/veloren!983
2020-05-13 08:13:05 +00:00
Imbris
8f857e6e11 Fill in entity_count in metrics 2020-05-12 19:44:27 -04:00
Shane Handley
e852e0cfab - Update the stats of characters individually, reverting the change with
big combined updates.
- Add a timer to the stats persistence system and change the frequency
that it runs to 10s
- Seperate the loading of character data for the character list during
selection, and the full data we will grab during state creation. Ideally
additional persisted bits can get returned at the same point and added
to the ecs within the same block.
2020-05-13 09:14:09 +10:00
Shane Handley
0a6f9b860d Gather all characters stats in the system, build one big query, rather than per-character queries. 2020-05-13 09:14:08 +10:00
Shane Handley
7c6c9f4302 Stats persistence
- Update client code to use persisted stats
- Add a system for stats persistence
- Add a basic scheduler to control duration between execution of
persistence systems
2020-05-13 09:14:08 +10:00
Shane Handley
e5853dbdd4 Initial models, migration and client code for stats persistence. 2020-05-13 09:14:08 +10:00
Acrimon
0993e9e146
Fix #556 2020-05-13 01:08:33 +02:00
CapsizeGlimmer
49d1225823 Tab completion code review suggestions 2020-05-11 18:02:21 -04:00
CapsizeGlimmer
3f76d1d702 Rework tp command - "/sudo player /tp" is short for "/sudo player /tp sudoer" 2020-05-10 19:17:34 -04:00
CapsizeGlimmer
9d118b55a0 Fixed player list tab completion 2020-05-10 19:17:17 -04:00
CapsizeGlimmer
b486de28ac Implement tab completion of enums (/object /time /spawn) and numbers 2020-05-10 19:16:34 -04:00
CapsizeGlimmer
24fa23fef4 Initial client implementation of tab completion 2020-05-10 19:16:01 -04:00
CapsizeGlimmer
7ecea34f85 Server server::cmd depends on common::cmd 2020-05-09 21:50:51 -04: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
CapsizeGlimmer
63826d1a50 Add optional argument to /get_items 2020-05-07 18:39:48 +00:00
Monty Marz
522e3493c5 Merge branch 'pfau/fix-animals' into 'master'
Fix animals not attacking

See merge request veloren/veloren!960
2020-05-04 16:59:33 +00:00
Monty Marz
b589c3fc71 Fix animals not attacking 2020-05-04 16:59:32 +00:00
Songtronix
1d88ec6295 server(cmd): add server version cmd 2020-05-04 17:59:53 +02:00
Monty Marz
89980284aa Merge branch 'CapsizeGlimmer/functional_lanterns' into 'master'
Equipped lanterns now provide an illumination effect.

See merge request veloren/veloren!935
2020-05-04 15:15:31 +00:00
CapsizeGlimmer
4e7f8c686a Equipped lanterns now provide an illumination effect. 2020-05-04 15:15:31 +00:00
protheory8
31c0457913 Fix #542 - Impose limits on admin commands 2020-05-04 14:50:58 +05:00
Monty Marz
c792cc05a9 Villagers and Cultists 2020-04-30 20:43:24 +00:00
Joshua Barretto
8e0f40c71e Added on_ceiling check for sticky entities 2020-04-26 17:56:09 +01:00
Joshua Barretto
eb23b0b2bd Added Colliders, made projectiles point particles 2020-04-26 17:56:09 +01:00
CapsizeGlimmer
2afa5d06b1 Fixed mutability in /sudo 2020-04-25 13:18:29 -04:00
CapsizeGlimmer
29fd45eb52 /sudo player /kill now lists the sudoer as killing the target 2020-04-24 12:17:56 -04:00
CapsizeGlimmer
bbbe03a033 Implement /sudo command 2020-04-23 22:36:19 -04:00
Joshua Barretto
2a6a19f7ef fmt 2020-04-23 18:19:42 +01:00
Joshua Barretto
44ace13d85 Stopped player spawning underground 2020-04-23 18:19:42 +01:00
Joshua Barretto
982886b3f8 Made players spawn in the nearest town to the centre of the world, delete object.zip 2020-04-23 18:19:41 +01:00
Joshua Barretto
444f2ecb45 Made /waypoint admin-only, MR cleanup 2020-04-23 18:19:41 +01:00
Joshua Barretto
0329b355ef Made civsim paths visible in-game 2020-04-23 18:19:41 +01:00
Pfauenauge90
98704a4753 turnip and window blocks 2020-04-23 18:19:41 +01:00
Joshua Barretto
6448c17110 Fixed sprite AO, overhauled entity spawning, better enemy spawning in dungeons, made agents more skilled at combat 2020-04-23 18:19:41 +01:00
Joshua Barretto
e3ebdc56b3 Fixed figure AO (still need to do sprite AO), added more control over NPC spawning, loot in dungeons 2020-04-23 18:19:41 +01:00
Songtronix
996eee0b42 change(server): rename settings file to server_settings.ron 2020-04-15 13:31:16 +02:00
Imbris
053458c2e3 Changelog and small fix 2020-04-12 18:41:09 +02:00
Imbris
c1c09dce1b Enable unequipping as well as equipping to specific slots 2020-04-12 18:41:06 +02:00
Pfauenauge90
2263b9be95 starter chest, removed unused key commands 2020-04-12 18:41:02 +02:00
Pfauenauge90
85f9f80024 starter equip 2020-04-12 18:41:00 +02:00
Pfauenauge90
ca667fd02b tooltips 2020-04-12 18:40:58 +02:00
Pfauenauge90
f5a768dccf more armour types 2020-04-12 18:40:56 +02:00
Pfauenauge90
7f97fbac0b cape item 2020-04-12 18:40:56 +02:00
Pfauenauge90
771baaaae5 cape item 2020-04-12 18:40:55 +02:00
Olexorus
7c0a3bafe6 Change how fall damage works 2020-04-10 12:03:15 +02:00
Imbris
a73d010f7b Point to newly released vek, add todo to reconsider empty item, remove uneeded ori slerp, remove agent from character behavior, add todos to combat sys, check if entities still exist before possessing & if possessed entity has a loadout move the active item into the second item space 2020-04-01 11:15:14 -04:00
AdamWhitehurst
e04fdd715e expose and use blocking consts 2020-04-01 07:07:10 -07:00
Imbris
b3791a2b4e Upgrade vek version so that it actually uses the patch 2020-03-30 19:44:51 -04:00
Imbris
f551c4a2c5 Move armor types to a new location, use a const for the moving cutoff in voxygen anims 2020-03-28 01:52:12 -04:00
Imbris
ba3fa16c33 Create Dir type for better enforcement of non NaN, normalized representations of directions 2020-03-27 22:02:07 -04:00
timokoesters
c6e635c511 Increase movement speed, make npcs slower than players 2020-03-27 18:39:26 +01:00
timokoesters
fe2aa7da7b Merge remote-tracking branch 'origin/master' into combat 2020-03-26 23:43:33 +01:00
timokoesters
8010e5afb4 Better equip durations, fix roll bug, slow down while attacking, smoother gliding, stronger npcs, giants 2020-03-26 22:56:33 +01:00
timokoesters
b9c85b9beb Balancing 2020-03-26 22:56:33 +01:00
Songtronix
604a6cf169 feat: log server version 2020-03-26 12:41:30 +01:00
Imbris
3889ec7292 climbing tweaks, fix triple strike overflow, fix Last<CharacterState>
not registered
2020-03-25 02:05:28 -04:00
Imbris
6ba158b7e1 Input handling changes 2020-03-25 01:38:37 -04:00
timokoesters
2117bb05d0 Healing staff 2020-03-24 22:03:11 +01:00
timokoesters
99e7e1f785 Split staff into 3 abilities 2020-03-24 14:00:22 +01:00
timokoesters
fbb24e7c8a Even better fireballs 2020-03-23 22:52:35 +01:00
timokoesters
9d47fd8c3e Better explosions 2020-03-23 18:13:14 +01:00
timokoesters
5194cef03a Easier swimming, better damage calculation for explosions 2020-03-23 12:50:08 +01:00
timokoesters
f3ca06aa71 feat: fireball explosions 2020-03-22 20:40:16 +01:00
timokoesters
0456d3cbed Better staff M1, random +1 damage, better attackrange,angle impl 2020-03-22 16:26:32 +01:00
Imbris
41c424ac13 Optimized uses of emitters, cleanup 2020-03-22 00:49:46 -04:00
timokoesters
df858cb370 Remove all warnings 2020-03-20 15:45:36 +01:00
timokoesters
c630df7f9a Ranged weapons now give xp on kill and also make enemies angry 2020-03-20 14:26:18 +01:00
timokoesters
835f3f5fe3 Arrows shouldn't turn into loot, staff shoots fireballs again 2020-03-20 11:25:53 +01:00
timokoesters
26674390ab Hide player body after death 2020-03-19 20:36:19 +01:00
timokoesters
49b0af10a9 Regular naming scheme for armor assets 2020-03-19 17:47:37 +01:00
timokoesters
449ae22730 Add inventory stacking 2020-03-19 14:32:17 +01:00
Pfauenauge90
d863e12235 swift leather armour parts 2020-03-19 14:17:53 +01:00
timokoesters
2b22b84a33 Give bandits and travelers different armor 2020-03-19 11:21:37 +01:00
Pfauenauge90
509615c15b npc armour 2020-03-18 23:09:58 +01:00
Imbris
1a484410ca Delete Vel and Ori on the client when they are removed on the server 2020-03-18 17:01:51 -04:00
timokoesters
87c276b292 Add hard coded loot 2020-03-18 20:37:42 +01:00
timokoesters
f32eb1db75 fix dash attack angles, arrow damage and readd possession stick impl 2020-03-17 14:15:39 +01:00
timokoesters
b040e18246 Fix body parts not changing 2020-03-16 22:06:23 +01:00
timokoesters
81591fcaf7 Make npcs attack again 2020-03-16 14:27:52 +01:00
timokoesters
87acc01d48 Readd ranged and debug boost. Add bouncing while running in first person 2020-03-16 12:32:57 +01:00
timokoesters
1f78344d6f Move equipment from loadout into body 2020-03-15 19:44:47 +01:00
Joshua Barretto
e20feeeb0c Added armour items and equipping of armour 2020-03-15 16:42:09 +01:00
timokoesters
aa963b7686 Merge remote-tracking branch 'origin/master' into clientstates 2020-03-15 15:27:06 +01:00
timokoesters
447617dc69 Make durations and damage depend on weapon type 2020-03-15 14:34:17 +01:00
timokoesters
598a4c6cbb Add loadout struct for info on weapon configurations 2020-03-14 22:33:20 +01:00
timokoesters
fe19698d52 Make abilities depend on weapon 2020-03-14 16:40:29 +01:00
S Handley
bc692c0101 Add audio and chat message feedback when the player attempts to collect something while thier inventory is full. 2020-03-11 10:30:59 +00:00
Imbris
a4eaeb1da6 Merge branch 'imbris/se-latency' into 'master'
Rearrange some operations in the server tick to reduce clientside latency of ServerEvent mediated effects

See merge request veloren/veloren!840
2020-03-10 23:21:57 +00:00
Acrimon
406767ae31 Merge branch 'capucho/voxygen-logout-timeout' into 'master'
FIX #513 logout timeout

See merge request veloren/veloren!837
2020-03-10 22:12:29 +00:00
Capucho
b14582d196 removed merge artifact 2020-03-10 21:09:38 +00:00
Capucho
339965f6ad Merge branch 'capucho/voxygen-logout-timeout' of gitlab.com:veloren/veloren into capucho/voxygen-logout-timeout
Fixed conflicts
2020-03-10 21:06:08 +00:00
Capucho
a9580a81bc Rebased on master and moved logout message to events 2020-03-10 21:04:13 +00:00
S Handley
b2312a0487 Check that a targeted collectible is within a certain pickup range of the character before highlighting it 2020-03-10 20:50:04 +00:00
Capucho
5fe9521233 Fix the spam on disconnect 2020-03-10 20:34:50 +00:00
Capucho
9d805a745e Proper fix to the logout timeout problem using Disconnect ACK 2020-03-10 20:34:50 +00:00
Capucho
d8ba63ffdc Janky fix of the logout timeout problem 2020-03-10 20:34:50 +00:00
Imbris
14f0b018fd Add metric for new connection handling time, move StateExt to its own module 2020-03-09 22:39:12 -04:00
Imbris
7132ef4136 Rearrange some operations in the server tick to reduce clientside latency of ServerEvent mediated effects 2020-03-09 22:31:24 -04:00
Songtronix
80dafebac5 fix: #517 2020-03-09 20:52:04 +01:00
Acrimon
bc39b78173 Rebased. 2020-03-08 23:02:15 +01:00
Imbris
a04c1b1d1d Add uid to Player component
fix: world examples
2020-03-08 22:58:38 +01:00
Acrimon
b29e543089 Remove account on logout. 2020-03-08 22:57:19 +01:00
Acrimon
3995f099b0 Fix singleplayer crash. 2020-03-08 22:57:13 +01:00
Imbris
6cc07270ac improve(login): more precise error handling during login 2020-03-08 22:56:59 +01:00
Acrimon
d3412d5493 Fixed gameserver crash on authprovider error. 2020-03-08 22:56:44 +01:00
Acrimon
08b4cc5fc3 Update auth to use new hashing scheme. 2020-03-08 22:56:34 +01:00