diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a932a81175..788cecef48 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,7 +8,8 @@ variables: stages: - optional-builds - check-compile - - post + - build-post + - publish before_script: - source $HOME/.cargo/env @@ -70,7 +71,7 @@ check: tags: - veloren-docker script: - - RUSTFLAGS="-D warnings" cargo check + - RUSTFLAGS="-D warnings" cargo check --locked code-quality: stage: check-compile @@ -90,29 +91,30 @@ security: # -- -# -- post build +# -- build-post unittests: - stage: post + stage: build-post when: delayed start_in: 5 seconds tags: - veloren-docker script: - echo "Workaround, cargo tests fails due some rust files are already deleted, so we just stack cargo test. if its the os error, it wont appear on them all, if its a real error, it will retry and then fail" - - cargo test || cargo test || cargo test || cargo test + - cargo test || ( sleep 10 && cargo test ) || ( sleep 10 && cargo test ) || cargo test || cargo test || cargo test || cargo test || cargo test || cargo test || cargo test || cargo test || cargo test || cargo test coverage: - stage: post + stage: build-post when: delayed start_in: 5 seconds tags: - veloren-docker script: - - cargo tarpaulin -v + - echo "Workaround, tarpaulin fails due some rust files are already deleted, so we just stack tarpaulin. if its the os error, it wont appear on them all, if its a real error, it will retry and then fail" + - cargo tarpaulin -v || ( sleep 10 && cargo tarpaulin -v ) || ( sleep 10 && cargo tarpaulin -v ) || cargo tarpaulin -v || cargo tarpaulin -v || cargo tarpaulin -v || cargo tarpaulin -v || cargo tarpaulin -v || cargo tarpaulin -v || cargo tarpaulin -v || cargo tarpaulin -v benchmarks: - stage: post + stage: build-post when: delayed start_in: 5 seconds tags: @@ -121,14 +123,26 @@ benchmarks: - unset DISABLE_GIT_LFS_CHECK - cargo bench +localization-status: + variables: + GIT_DEPTH: 0 + stage: build-post + when: delayed + start_in: 5 seconds + allow_failure: true + tags: + - veloren-docker + script: + - cargo test -q test_all_localizations -- --nocapture --ignored + linux: - stage: post + stage: build-post when: delayed start_in: 5 seconds only: refs: - /^r[0-9]+\.[0-9]+\.[0-9]+/ - - /^v[0-9]+\.[0-9]+\.[0-9]+/ + - /^v[0-9]+\.[0-9]+/ - /^master$/ tags: - veloren-docker @@ -147,13 +161,13 @@ linux: expire_in: 1 week windows: - stage: post + stage: build-post when: delayed start_in: 5 seconds only: refs: - /^r[0-9]+\.[0-9]+\.[0-9]+/ - - /^v[0-9]+\.[0-9]+\.[0-9]+/ + - /^v[0-9]+\.[0-9]+/ - /^master$/ tags: - veloren-docker @@ -169,4 +183,52 @@ windows: - LICENSE expire_in: 1 week +macos: + stage: build-post + when: delayed + start_in: 5 seconds + only: + refs: + - /^r[0-9]+\.[0-9]+\.[0-9]+/ + - /^v[0-9]+\.[0-9]+/ + - /^master$/ + tags: + - veloren-docker + script: + - PATH="/dockercache/osxcross/target/bin:$PATH" COREAUDIO_SDK_PATH=/dockercache/osxcross/target/SDK/MacOSX10.13.sdk CC=o64-clang CXX=o64-clang++ cargo build --target x86_64-apple-darwin --release + - cp -r target/x86_64-apple-darwin/release/veloren-server-cli $CI_PROJECT_DIR + - cp -r target/x86_64-apple-darwin/release/veloren-voxygen $CI_PROJECT_DIR + artifacts: + paths: + - veloren-server-cli + - veloren-voxygen + - assets/ + - LICENSE + expire_in: 1 week +# -- + +# -- publish + +docker: + stage: publish + when: delayed + start_in: 5 seconds + image: + name: gcr.io/kaniko-project/executor:debug + entrypoint: [""] + dependencies: + - linux + before_script: + - ls "$CI_PROJECT_DIR/server-cli/" + only: + refs: + - /^r[0-9]+\.[0-9]+\.[0-9]+/ + - /^v[0-9]+\.[0-9]+/ + - /^master$/ + tags: + - veloren-docker + script: + - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json + - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/server-cli/Dockerfile --destination "${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-server" + # -- diff --git a/.gitlab/CODEOWNERS b/.gitlab/CODEOWNERS new file mode 100644 index 0000000000..c1aa0c58d8 --- /dev/null +++ b/.gitlab/CODEOWNERS @@ -0,0 +1,28 @@ +# Defines people who should approve to certain parts of the codebase + +/assets/ @assetsandvisualdesign @frontend +/chat-cli/ @frontend +/client/ @backend @networking +/common/ @backend @networking +/server/ @backend @networking +/server-cli/ @frontend +#/voxygen/ @someone +/voxygen/anim/ @animation +/voxygen/audio/ @audio +#/voxygen/hud/ @someone +#/voxygen/menu / @someone +#/voxygen/mesh/ @someone +/voxygen/render/ @rendering +#/voxygen/scene/ @someone +#/voxygen/ui/ @someone +/world/ @worldgen + +# All files related to documentation or game unrelated content needs to be approved by the meta group +*.md @meta +*.nix @meta +.gitignore @meta +.gitattributes @meta +.gitlab-ci.yml @meta +rust-toolchain @meta +LICENSE @meta +.cargo/ @meta \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 26d7c26394..f0f8bc8c16 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,10 +14,27 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Added rotating orientation marker to main-map - Added daily Mac builds - Allow spawning individual pet species, not just generic body kinds. +- Configurable fonts +- Tanslation status tracking +- Added gamma setting +- Added new orc hairstyles +- Added sfx for wielding/unwielding weapons +- Fixed NPCs attacking the player forever after killing them +- Added sfx for collecting, dropping and using inventory items +- New attack animation +- weapon control system +- Game pauses when in singleplayer and pause menu +- Added authentication system (to play on the official server register on https://account.veloren.net) +- Added gamepad/controller support +- Added player feedback when attempting to pickup an item with a full inventory ### Changed + - Brighter / higher contrast main-map - Removed highlighting of non-collectible sprites +- Fixed /give_exp ignoring player argument +- Extend run sfx to small animals to prevent sneak attacks by geese. +- Decreased clientside latency of ServerEvent mediated effects (e.g. projectiles, inventory operations, etc) ### Removed diff --git a/Cargo.lock b/Cargo.lock index 482cc225c5..a2c3455bdf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -134,11 +134,40 @@ dependencies = [ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "auth-common" +version = "0.1.0" +source = "git+https://gitlab.com/veloren/auth.git?rev=65571ade0d954a0e0bd995fdb314854ff146ab97#65571ade0d954a0e0bd995fdb314854ff146ab97" +dependencies = [ + "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "uuid 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "authc" +version = "1.0.0" +source = "git+https://gitlab.com/veloren/auth.git?rev=65571ade0d954a0e0bd995fdb314854ff146ab97#65571ade0d954a0e0bd995fdb314854ff146ab97" +dependencies = [ + "auth-common 0.1.0 (git+https://gitlab.com/veloren/auth.git?rev=65571ade0d954a0e0bd995fdb314854ff146ab97)", + "fxhash 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "reqwest 0.10.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rust-argon2 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.42 (registry+https://github.com/rust-lang/crates.io-index)", + "uuid 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "autocfg" version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "autocfg" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "backtrace" version = "0.3.40" @@ -159,6 +188,11 @@ dependencies = [ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "base-x" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "base64" version = "0.9.3" @@ -176,6 +210,11 @@ dependencies = [ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "base64" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "bincode" version = "1.2.0" @@ -267,6 +306,11 @@ dependencies = [ "safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "bumpalo" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "byteorder" version = "0.5.3" @@ -277,6 +321,11 @@ name = "byteorder" version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "bytes" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "c2-chacha" version = "0.2.3" @@ -324,6 +373,10 @@ dependencies = [ name = "cc" version = "1.0.47" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "jobserver 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "cexpr" @@ -391,11 +444,6 @@ dependencies = [ "unicode-width 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "claxon" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - [[package]] name = "clipboard-win" version = "2.2.0" @@ -458,9 +506,9 @@ dependencies = [ [[package]] name = "conrod_core" version = "0.63.0" -source = "git+https://gitlab.com/veloren/conrod.git#d28fd18c3092d4c26cf6df11673da195b3bc01db" +source = "git+https://gitlab.com/veloren/conrod.git?branch=hide_text#92925b122dfed139169c7d7687b3ca15c0cb5a2e" dependencies = [ - "conrod_derive 0.63.0 (git+https://gitlab.com/veloren/conrod.git)", + "conrod_derive 0.63.0 (git+https://gitlab.com/veloren/conrod.git?branch=hide_text)", "copypasta 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "daggy 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -473,7 +521,7 @@ dependencies = [ [[package]] name = "conrod_derive" version = "0.63.0" -source = "git+https://gitlab.com/veloren/conrod.git#d28fd18c3092d4c26cf6df11673da195b3bc01db" +source = "git+https://gitlab.com/veloren/conrod.git?branch=hide_text#92925b122dfed139169c7d7687b3ca15c0cb5a2e" dependencies = [ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", @@ -483,7 +531,7 @@ dependencies = [ [[package]] name = "conrod_winit" version = "0.63.0" -source = "git+https://gitlab.com/veloren/conrod.git#d28fd18c3092d4c26cf6df11673da195b3bc01db" +source = "git+https://gitlab.com/veloren/conrod.git?branch=hide_text#92925b122dfed139169c7d7687b3ca15c0cb5a2e" [[package]] name = "const-random" @@ -531,11 +579,25 @@ dependencies = [ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "core-foundation" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "core-foundation-sys 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "core-foundation-sys" version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "core-foundation-sys" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "core-graphics" version = "0.17.3" @@ -740,6 +802,14 @@ dependencies = [ "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ct-logs" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "sct 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "daggy" version = "0.5.0" @@ -803,6 +873,11 @@ dependencies = [ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "discard" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "dispatch" version = "0.1.4" @@ -840,11 +915,24 @@ dependencies = [ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "dtoa" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "either" version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "encoding_rs" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "env_logger" version = "0.6.2" @@ -989,6 +1077,69 @@ name = "fuchsia-zircon-sys" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "futures-channel" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "futures-core" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "futures-io" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "futures-macro" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "futures-sink" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "futures-task" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "futures-util" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-macro 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-task 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "pin-utils 0.1.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro-nested 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "fxhash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "gdk" version = "0.8.0" @@ -1117,6 +1268,38 @@ dependencies = [ "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "gilrs" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "gilrs-core 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)", + "uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", + "vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "gilrs-core" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "core-foundation 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "io-kit-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "libudev-sys 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "nix 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rusty-xinput 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)", + "uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", + "vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "gio" version = "0.4.1" @@ -1143,6 +1326,20 @@ dependencies = [ "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "git2" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "libgit2-sys 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)", + "url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "gl_generator" version = "0.11.0" @@ -1343,6 +1540,24 @@ dependencies = [ "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "h2" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-sink 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-util 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "hashbrown" version = "0.6.3" @@ -1362,6 +1577,11 @@ dependencies = [ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hex" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "hibitset" version = "0.6.2" @@ -1376,6 +1596,25 @@ name = "hound" version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "http" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "http-body" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "httparse" version = "1.3.4" @@ -1389,6 +1628,46 @@ dependencies = [ "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hyper" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "h2 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "http-body 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", + "pin-project 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tower-service 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "want 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "hyper-rustls" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "ct-logs 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "rustls 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rustls-native-certs 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-rustls 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", + "webpki 0.21.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "idna" version = "0.1.5" @@ -1399,6 +1678,16 @@ dependencies = [ "unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "idna" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "image" version = "0.22.3" @@ -1454,6 +1743,15 @@ name = "instant" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "io-kit-sys" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "core-foundation-sys 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "mach 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "iovec" version = "0.1.4" @@ -1475,6 +1773,14 @@ name = "itoa" version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "jobserver" +version = "0.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "jpeg-decoder" version = "0.1.16" @@ -1484,6 +1790,14 @@ dependencies = [ "rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "js-sys" +version = "0.3.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "wasm-bindgen 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "kernel32-sys" version = "0.2.2" @@ -1523,6 +1837,19 @@ name = "libc" version = "0.2.65" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "libgit2-sys" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "libssh2-sys 0.2.16 (registry+https://github.com/rust-lang/crates.io-index)", + "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)", + "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "libloading" version = "0.5.2" @@ -1532,6 +1859,39 @@ dependencies = [ "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "libssh2-sys" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)", + "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", + "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libudev-sys" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libz-sys" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", + "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "line_drawing" version = "0.7.0" @@ -1642,6 +2002,11 @@ dependencies = [ "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "mime" +version = "0.3.16" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "mime_guess" version = "1.8.7" @@ -1653,36 +2018,29 @@ dependencies = [ "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "mime_guess" +version = "2.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "mime 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)", + "unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "minifb" -version = "0.13.0" -source = "git+https://github.com/emoon/rust_minifb.git#bac71b297920c1f7ab5d6e384673d3ae5cc7d46d" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cast 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)", "orbclient 0.3.27 (registry+https://github.com/rust-lang/crates.io-index)", + "raw-window-handle 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "x11-dl 2.18.4 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "minimp3" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "minimp3-sys 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "slice-deque 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "minimp3-sys" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "mio" version = "0.6.21" @@ -1778,6 +2136,18 @@ dependencies = [ "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "nix" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "nodrop" version = "0.1.14" @@ -1961,6 +2331,23 @@ dependencies = [ "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "openssl-probe" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "openssl-sys" +version = "0.9.54" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", + "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "orbclient" version = "0.3.27" @@ -2129,6 +2516,34 @@ dependencies = [ "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "pin-project" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "pin-project-internal 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "pin-project-internal" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "pin-project-lite" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "pin-utils" +version = "0.1.0-alpha.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "piston-float" version = "0.3.0" @@ -2202,6 +2617,11 @@ dependencies = [ "syn 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "proc-macro-nested" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "proc-macro2" version = "0.3.8" @@ -2469,7 +2889,7 @@ dependencies = [ [[package]] name = "raw-window-handle" -version = "0.3.1" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2554,16 +2974,63 @@ dependencies = [ ] [[package]] -name = "rodio" -version = "0.9.0" -source = "git+https://github.com/RustAudio/rodio?rev=e5474a2#e5474a2ef15f2d0a3bae2538de159b6d3e5bdf79" +name = "reqwest" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding_rs 0.8.22 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "http-body 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)", + "hyper-rustls 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)", + "js-sys 0.3.36 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "mime 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)", + "mime_guess 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pin-project-lite 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rustls 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-rustls 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", + "url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen-futures 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)", + "web-sys 0.3.36 (registry+https://github.com/rust-lang/crates.io-index)", + "webpki-roots 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winreg 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "ring" +version = "0.16.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "spin 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "web-sys 0.3.36 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rodio" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "claxon 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "cpal 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "hound 3.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "lewton 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)", - "minimp3 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2615,6 +3082,17 @@ dependencies = [ "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rust-argon2" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "blake2b_simd 0.5.9 (registry+https://github.com/rust-lang/crates.io-index)", + "constant_time_eq 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rustc-demangle" version = "0.1.16" @@ -2636,6 +3114,29 @@ dependencies = [ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rustls" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.16.11 (registry+https://github.com/rust-lang/crates.io-index)", + "sct 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "webpki 0.21.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rustls-native-certs" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rustls 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schannel 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", + "security-framework 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rusttype" version = "0.7.9" @@ -2660,6 +3161,16 @@ dependencies = [ "stb_truetype 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rusty-xinput" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ryu" version = "1.0.2" @@ -2686,6 +3197,15 @@ dependencies = [ "regex 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "schannel" +version = "0.1.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "scoped_threadpool" version = "0.1.9" @@ -2696,6 +3216,15 @@ name = "scopeguard" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "sct" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "ring 0.16.11 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "sdl2" version = "0.32.2" @@ -2718,6 +3247,26 @@ dependencies = [ "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "security-framework" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "core-foundation 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "core-foundation-sys 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "security-framework-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "security-framework-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "core-foundation-sys 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "semver" version = "0.9.0" @@ -2759,6 +3308,17 @@ dependencies = [ "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "serde_urlencoded" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "dtoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", + "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "sha1" version = "0.6.0" @@ -2816,16 +3376,6 @@ name = "slab" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -[[package]] -name = "slice-deque" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", - "mach 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "smallvec" version = "0.6.13" @@ -2932,6 +3482,53 @@ name = "stdweb" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "stdweb" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.42 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-derive 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-internal-macros 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-internal-runtime 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-derive" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-internal-macros" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "base-x 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.42 (registry+https://github.com/rust-lang/crates.io-index)", + "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-internal-runtime" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "sum_type" version = "0.2.0" @@ -3076,6 +3673,46 @@ dependencies = [ "serde_json 1.0.42 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tokio" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)", + "pin-project-lite 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "tokio-rustls" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rustls 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "webpki 0.21.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "tokio-util" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-sink 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "pin-project-lite 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "toml" version = "0.5.5" @@ -3084,6 +3721,11 @@ dependencies = [ "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tower-service" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "treeculler" version = "0.1.0" @@ -3092,6 +3734,11 @@ dependencies = [ "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "try-lock" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "tuple_utils" version = "0.3.0" @@ -3113,6 +3760,14 @@ dependencies = [ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "unicase" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "unicode-bidi" version = "0.3.4" @@ -3144,6 +3799,11 @@ name = "unicode-xid" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "untrusted" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "url" version = "1.7.2" @@ -3154,6 +3814,30 @@ dependencies = [ "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "url" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "uuid" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "uuid" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "uvth" version = "3.1.1" @@ -3164,6 +3848,16 @@ dependencies = [ "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "vcpkg" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "vec_map" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "vek" version = "0.9.11" @@ -3191,6 +3885,7 @@ dependencies = [ name = "veloren-client" version = "0.5.0" dependencies = [ + "authc 1.0.0 (git+https://gitlab.com/veloren/auth.git?rev=65571ade0d954a0e0bd995fdb314854ff146ab97)", "byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "hashbrown 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "image 0.22.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3206,6 +3901,7 @@ dependencies = [ name = "veloren-common" version = "0.5.0" dependencies = [ + "authc 1.0.0 (git+https://gitlab.com/veloren/auth.git?rev=65571ade0d954a0e0bd995fdb314854ff146ab97)", "bincode 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "criterion 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3237,6 +3933,7 @@ dependencies = [ name = "veloren-server" version = "0.5.0" dependencies = [ + "authc 1.0.0 (git+https://gitlab.com/veloren/auth.git?rev=65571ade0d954a0e0bd995fdb314854ff146ab97)", "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "hashbrown 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3273,11 +3970,12 @@ dependencies = [ name = "veloren-voxygen" version = "0.5.0" dependencies = [ + "authc 1.0.0 (git+https://gitlab.com/veloren/auth.git?rev=65571ade0d954a0e0bd995fdb314854ff146ab97)", "backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)", "bincode 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "conrod_core 0.63.0 (git+https://gitlab.com/veloren/conrod.git)", - "conrod_winit 0.63.0 (git+https://gitlab.com/veloren/conrod.git)", + "conrod_core 0.63.0 (git+https://gitlab.com/veloren/conrod.git?branch=hide_text)", + "conrod_winit 0.63.0 (git+https://gitlab.com/veloren/conrod.git?branch=hide_text)", "cpal 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "criterion 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3291,6 +3989,8 @@ dependencies = [ "gfx 0.18.2 (registry+https://github.com/rust-lang/crates.io-index)", "gfx_device_gl 0.16.2 (registry+https://github.com/rust-lang/crates.io-index)", "gfx_window_glutin 0.31.0 (registry+https://github.com/rust-lang/crates.io-index)", + "gilrs 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", + "git2 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", "glsl-include 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "glutin 0.21.1 (registry+https://github.com/rust-lang/crates.io-index)", "guillotiere 0.4.2 (git+https://github.com/Imberflur/guillotiere)", @@ -3300,14 +4000,14 @@ dependencies = [ "msgbox 0.4.0 (git+https://github.com/bekker/msgbox-rs.git?rev=68fe39a)", "num 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rodio 0.9.0 (git+https://github.com/RustAudio/rodio?rev=e5474a2)", + "rodio 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "ron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rust-argon2 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "specs 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)", "specs-idvs 0.1.0 (git+https://gitlab.com/veloren/specs-idvs.git)", "treeculler 0.1.0 (git+https://gitlab.com/yusdacra/treeculler.git)", + "uvth 3.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "vek 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)", "veloren-client 0.5.0", "veloren-common 0.5.0", @@ -3330,7 +4030,7 @@ dependencies = [ "itertools 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "minifb 0.13.0 (git+https://github.com/emoon/rust_minifb.git)", + "minifb 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "noise 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "num 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "ordered-float 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3352,6 +4052,11 @@ name = "version_check" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "version_check" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "void" version = "1.0.2" @@ -3367,11 +4072,82 @@ dependencies = [ "winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "want" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "wasi" version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "wasm-bindgen" +version = "0.2.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.42 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen-macro 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bumpalo 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen-shared 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "js-sys 0.3.36 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", + "web-sys 0.3.36 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen-macro-support 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen-backend 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen-shared 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.59" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "wayland-client" version = "0.21.13" @@ -3479,6 +4255,32 @@ dependencies = [ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "web-sys" +version = "0.3.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "js-sys 0.3.36 (registry+https://github.com/rust-lang/crates.io-index)", + "wasm-bindgen 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "webpki" +version = "0.21.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "ring 0.16.11 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "webpki-roots" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "webpki 0.21.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "winapi" version = "0.2.8" @@ -3542,7 +4344,7 @@ dependencies = [ "objc 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "raw-window-handle 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "raw-window-handle 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "smithay-client-toolkit 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "wayland-client 0.21.13 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3550,6 +4352,14 @@ dependencies = [ "x11-dl 2.18.4 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "winreg" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "winres" version = "0.1.11" @@ -3624,10 +4434,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum atk-sys 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8dc233521f7bffd3042c31082ea71bd08820abf44bac938fb36591e20f76f39" "checksum atom 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3c86699c3f02778ec07158376991c8f783dd1f2f95c579ffaf0738dc984b2fe2" "checksum atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90" +"checksum auth-common 0.1.0 (git+https://gitlab.com/veloren/auth.git?rev=65571ade0d954a0e0bd995fdb314854ff146ab97)" = "" +"checksum authc 1.0.0 (git+https://gitlab.com/veloren/auth.git?rev=65571ade0d954a0e0bd995fdb314854ff146ab97)" = "" "checksum autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2" +"checksum autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d" "checksum backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)" = "924c76597f0d9ca25d762c25a4d369d51267536465dc5064bdf0eb073ed477ea" "checksum backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491" +"checksum base-x 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1b20b618342cf9891c292c4f5ac2cde7287cc5c87e87e9c769d617793607dec1" "checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" +"checksum base64 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7" "checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" "checksum bincode 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b8ab639324e3ee8774d296864fbc0dbbb256cf1a41c490b94cba90c082915f92" "checksum bindgen 0.51.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ebd71393f1ec0509b553aa012b9b58e81dadbdff7130bd3b8cba576e69b32f75" @@ -3639,8 +4454,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum brotli2 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0cb036c3eade309815c15ddbacec5b22c4d1f3983a774ab2eac2e3e9ea85568e" "checksum bstr 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8d6c2c5b58ab920a4f5aeaaca34b4488074e8cc7596af94e6f8c6ff247c60245" "checksum buf_redux 0.8.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b953a6887648bb07a535631f2bc00fbdb2a2216f135552cb3f534ed136b9c07f" +"checksum bumpalo 3.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1f359dc14ff8911330a51ef78022d376f25ed00248912803b58f00cb1c27f742" "checksum byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0fc10e8cc6b2580fda3f36eb6dc5316657f812a3df879a44a66fc9f0fdbc4855" "checksum byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5" +"checksum bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "130aac562c0dd69c56b3b1cc8ffd2e17be31d0b6c25b61c96b76231aa23e39e1" "checksum c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb" "checksum c_vec 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f8a318911dce53b5f1ca6539c44f5342c632269f0fa7ea3e35f32458c27a7c30" "checksum cairo-rs 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a110f269c2fd382df5fe8bd46dfa5f1b83608aa717fecb6e7a28c08c202f0e13" @@ -3655,22 +4472,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum chunked_transfer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "498d20a7aaf62625b9bf26e637cf7736417cde1d0c99f1d04d1170229a85cf87" "checksum clang-sys 0.28.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81de550971c976f176130da4b2978d3b524eaa0fd9ac31f3ceb5ae1231fb4853" "checksum clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9" -"checksum claxon 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f86c952727a495bda7abaf09bafdee1a939194dd793d9a8e26281df55ac43b00" "checksum clipboard-win 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3a093d6fed558e5fe24c3dfc85a68bb68f1c824f440d3ba5aca189e2998786b" "checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" "checksum cocoa 0.18.5 (registry+https://github.com/rust-lang/crates.io-index)" = "1706996401131526e36b3b49f0c4d912639ce110996f3ca144d78946727bce54" "checksum cocoa 0.19.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f29f7768b2d1be17b96158e3285951d366b40211320fb30826a76cb7a0da6400" "checksum color_quant 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0dbbb57365263e881e805dc77d94697c9118fd94d8da011240555aa7b23445bd" "checksum colored 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "433e7ac7d511768127ed85b0c4947f47a254131e37864b2dc13f52aa32cd37e5" -"checksum conrod_core 0.63.0 (git+https://gitlab.com/veloren/conrod.git)" = "" -"checksum conrod_derive 0.63.0 (git+https://gitlab.com/veloren/conrod.git)" = "" -"checksum conrod_winit 0.63.0 (git+https://gitlab.com/veloren/conrod.git)" = "" +"checksum conrod_core 0.63.0 (git+https://gitlab.com/veloren/conrod.git?branch=hide_text)" = "" +"checksum conrod_derive 0.63.0 (git+https://gitlab.com/veloren/conrod.git?branch=hide_text)" = "" +"checksum conrod_winit 0.63.0 (git+https://gitlab.com/veloren/conrod.git?branch=hide_text)" = "" "checksum const-random 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7b641a8c9867e341f3295564203b1c250eb8ce6cb6126e007941f78c4d2ed7fe" "checksum const-random-macro 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c750ec12b83377637110d5a57f5ae08e895b06c4b16e2bdbf1a94ef717428c59" "checksum constant_time_eq 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "995a44c877f9212528ccc74b21a232f66ad69001e40ede5bcee2ac9ef2657120" "checksum copypasta 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe78fc904c59791fc39ba6ed427d45c1cd81529f5496552c3e10dab17b37409" "checksum core-foundation 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "25b9e03f145fd4f2bf705e07b900cd41fc636598fe5dc452fd0db1441c3f496d" +"checksum core-foundation 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171" "checksum core-foundation-sys 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b" +"checksum core-foundation-sys 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac" "checksum core-graphics 0.17.3 (registry+https://github.com/rust-lang/crates.io-index)" = "56790968ab1c8a1202a102e6de05fc6e1ec87da99e4e93e9a7d13efbfc1e95a9" "checksum coreaudio-rs 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f229761965dad3e9b11081668a6ea00f1def7aa46062321b5ec245b834f6e491" "checksum coreaudio-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e8f5954c1c7ccb55340443e8b29fca24013545a5e7d72c1ca7db4fc02b982ce" @@ -3690,6 +4508,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum crossbeam-utils 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ce446db02cdc3165b94ae73111e570793400d0794e46125cc4056c81cbb039f4" "checksum csv 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37519ccdfd73a75821cac9319d4fce15a81b9fcf75f951df5b9988aa3a0af87d" "checksum csv-core 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "9b5cadb6b25c77aeff80ba701712494213f4a8418fcda2ee11b6560c3ad0bf4c" +"checksum ct-logs 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4d3686f5fa27dbc1d76c751300376e167c5a43387f44bb451fd1c24776e49113" "checksum daggy 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9293a0da7d1bc1f30090ece4d9f9de79a07be7302ddb00e5eb1fefb6ee6409e2" "checksum deflate 0.7.20 (registry+https://github.com/rust-lang/crates.io-index)" = "707b6a7b384888a70c8d2e8650b3e60170dfc6a67bb4aa67b6dfca57af4bedb4" "checksum derivative 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "942ca430eef7a3806595a6737bc388bf51adb888d3fc0dd1b50f1c170167ee3a" @@ -3697,12 +4516,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum directories 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "551a778172a450d7fc12e629ca3b0428d00f6afa9a43da1b630d54604e97371c" "checksum dirs 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901" "checksum dirs-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "afa0b23de8fd801745c471deffa6e12d248f962c9fd4b4c33787b055599bde7b" +"checksum discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" "checksum dispatch 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "04e93ca78226c51902d7aa8c12c988338aadd9e85ed9c6be8aaac39192ff3605" "checksum dlib 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "77e51249a9d823a4cb79e3eca6dcd756153e8ed0157b6c04775d04bf1b13b76a" "checksum dot_vox 4.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "11afd3251e588f2770226659b2a1d55ec2f8aaf2ca42bdcdbd01ff53b4a81e70" "checksum downcast-rs 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "52ba6eb47c2131e784a38b726eb54c1e1484904f013e576a25354d0124161af6" "checksum draw_state 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "33cf9537e2d06891448799b96d5a8c8083e0e90522a7fdabe6ebf4f41d79d651" +"checksum dtoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "4358a9e11b9a09cf52383b451b49a169e8d797b68aa02301ff586d70d9661ea3" "checksum either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3" +"checksum encoding_rs 0.8.22 (registry+https://github.com/rust-lang/crates.io-index)" = "cd8d03faa7fe0c1431609dfad7bbe827af30f82e1e2ae6f7ee4fca6bd764bc28" "checksum env_logger 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "aafcde04e90a5226a6443b7aabdb016ba2f8307c847d524724bd9b346dd1a2d3" "checksum euc 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c20f6684a8420df7c300a36bed7cb0b2387b2bc385d4940282399b5df0c08ebd" "checksum euclid 0.19.9 (registry+https://github.com/rust-lang/crates.io-index)" = "596b99621b9477e7a5f94d2d8dd13a9c5c302ac358b822c67a42b6f1054450e1" @@ -3721,6 +4543,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" +"checksum futures-channel 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0c77d04ce8edd9cb903932b608268b3fffec4163dc053b3b402bf47eac1f1a8" +"checksum futures-core 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f25592f769825e89b92358db00d26f965761e094951ac44d3663ef25b7ac464a" +"checksum futures-io 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a638959aa96152c7a4cddf50fcb1e3fede0583b27157c26e67d6f99904090dc6" +"checksum futures-macro 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "9a5081aa3de1f7542a794a397cde100ed903b0630152d0973479018fd85423a7" +"checksum futures-sink 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3466821b4bc114d95b087b850a724c6f83115e929bc88f1fa98a3304a944c8a6" +"checksum futures-task 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7b0a34e53cf6cdcd0178aa573aed466b646eb3db769570841fda0c7ede375a27" +"checksum futures-util 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "22766cf25d64306bedf0384da004d05c9974ab104fcc4528f1236181c18004c5" +"checksum fxhash 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" "checksum gdk 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "dd30051ff3d908ff2fc7e5776ffe1c699821e043809f294c3a61004f11d6c3a9" "checksum gdk-pixbuf 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c2d2199eba47ebcb9977ce28179649bdd59305ef465c4e6f9b65aaa41c24e6b5" "checksum gdk-pixbuf-sys 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df6a3b73e04fafc07f5ebc083f1096a773412e627828e1103a55e921f81187d8" @@ -3732,8 +4562,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum gfx_gl 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8525888d909a6424b04f9136976f07a85fc1f3704555c1a73897e258326c8319" "checksum gfx_window_glutin 0.31.0 (registry+https://github.com/rust-lang/crates.io-index)" = "310ff66f08b5a55854b18fea2f48bdbb75c94458207ba574c9723be78e97a646" "checksum gif 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)" = "471d90201b3b223f3451cd4ad53e34295f16a1df17b1edf3736d47761c3981af" +"checksum gilrs 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "122bb249f904e5f4ac73fc514b9b2ce6cce3af511f5df00ffc8000e47de6b290" +"checksum gilrs-core 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6bdd4ea2d919ecb594362fa26b0f172729b9ee9b95e407fbad95e0a49cadc143" "checksum gio 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2db9fad8f1b0d4c7338a210a6cbdf081dcc1a3c223718c698c4f313f6c288acb" "checksum gio-sys 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2a57872499171d279f8577ce83837da4cae62b08dd32892236ed67ab7ea61030" +"checksum git2 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c1af51ea8a906616af45a4ce78eacf25860f7a13ae7bf8a814693f0f4037a26" "checksum gl_generator 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "39a23d5e872a275135d66895d954269cf5e8661d234eb1c2480f4ce0d586acbd" "checksum gl_generator 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ca98bbde17256e02d17336a6bdb5a50f7d0ccacee502e191d3e3d0ec2f96f84a" "checksum gleam 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)" = "cae10d7c99d0e77b4766e850a60898a17c1abaf01075531f1066f03dc7dc5fc5" @@ -3752,30 +4585,44 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum gtk-sys 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3d9554cf5b3a85a13fb39258c65b04b262989c1d7a758f8f555b77a478621a91" "checksum guillotiere 0.4.2 (git+https://github.com/Imberflur/guillotiere)" = "" "checksum gzip-header 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0131feb3d3bb2a5a238d8a4d09f6353b7ebfdc52e77bccbf4ea6eaa751dde639" +"checksum h2 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9d5c295d1c0c68e4e42003d75f908f5e16a1edd1cbe0b0d02e4dc2006a384f47" "checksum hashbrown 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8e6073d0ca812575946eb5f35ff68dbe519907b25c42530389ff946dc84c6ead" "checksum hermit-abi 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "307c3c9f937f38e3534b1d6447ecf090cafcc9744e4a6360e8b037b2cf5af120" +"checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" "checksum hibitset 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "47e7292fd9f7fe89fa35c98048f2d0a69b79ed243604234d18f6f8a1aa6f408d" "checksum hound 3.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8a164bb2ceaeff4f42542bdb847c41517c78a60f5649671b2a07312b6e117549" +"checksum http 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b708cc7f06493459026f53b9a61a7a121a5d1ec6238dee58ea4941132b30156b" +"checksum http-body 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "13d5ff830006f7646652e057693569bfe0d51760c0085a071769d142a205111b" "checksum httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9" "checksum humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f" +"checksum hyper 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e7b15203263d1faa615f9337d79c1d37959439dc46c2b4faab33286fadc2a1c5" +"checksum hyper-rustls 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac965ea399ec3a25ac7d13b8affd4b8f39325cca00858ddf5eb29b79e6b14b08" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" +"checksum idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9" "checksum image 0.22.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b4be8aaefbe7545dc42ae925afb55a0098f226a3fe5ef721872806f44f57826" "checksum indexmap 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d7b3ea5827fcb9d4fda14bf4da5f136f0db2ae9c8f4bd4e2d1c6fde4e6db2" "checksum inflate 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "1cdb29978cc5797bd8dcc8e5bf7de604891df2a8dc576973d71a281e916db2ff" "checksum inotify 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bc39ee997811267bf8aa0b10e1674c5bea6caacc1957eede5ea45251fe33c6d5" "checksum inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e74a1aa87c59aeff6ef2cc2fa62d41bc43f54952f55652656b18a02fd5e356c0" "checksum instant 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6c346c299e3fe8ef94dc10c2c0253d858a69aac1245157a3bf4125915d528caf" +"checksum io-kit-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f21dcc74995dd4cd090b147e79789f8d65959cbfb5f0b118002db869ea3bd0a0" "checksum iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" "checksum itertools 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f56a2d0bc861f9165be4eb3442afd3c236d8a98afd426f65d92324ae1091a484" "checksum itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f" +"checksum jobserver 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "5c71313ebb9439f74b00d9d2dcec36440beaf57a6aa0623068441dd7cd81a7f2" "checksum jpeg-decoder 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "c1aae18ffeeae409c6622c3b6a7ee49792a7e5a062eea1b135fbb74e301792ba" +"checksum js-sys 0.3.36 (registry+https://github.com/rust-lang/crates.io-index)" = "1cb931d43e71f560c81badb0191596562bafad2be06a3f9025b845c847c60df5" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" "checksum khronos_api 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" "checksum lewton 0.9.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8d542c1a317036c45c2aa1cf10cc9d403ca91eb2d333ef1a4917e5cb10628bd0" "checksum libc 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)" = "1a31a0627fdf1f6a39ec0dd577e101440b7db22672c0901fe00a9a6fbb5c24e8" +"checksum libgit2-sys 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4870c781f6063efb83150cd22c1ddf6ecf58531419e7570cdcced46970f64a16" "checksum libloading 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753" +"checksum libssh2-sys 0.2.16 (registry+https://github.com/rust-lang/crates.io-index)" = "7bb70f29dc7c31d32c97577f13f41221af981b31248083e347b7f2c39225a6bc" +"checksum libudev-sys 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324" +"checksum libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe" "checksum line_drawing 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5cc7ad3d82c845bdb5dde34ffdcc7a5fb4d2996e1e1ee0f19c33bc80e15196b9" "checksum linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83" "checksum lock_api 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f8912e782533a93a167888781b836336a6ca5da6175c05944c86cf28c31104dc" @@ -3791,10 +4638,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6585fd95e7bb50d6cc31e20d4cf9afb4e2ba16c5846fc76793f11218da9c475b" "checksum memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "75189eb85871ea5c2e2c15abbdd541185f63b408415e5051f5cac122d8c774b9" "checksum mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0" +"checksum mime 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)" = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" "checksum mime_guess 1.8.7 (registry+https://github.com/rust-lang/crates.io-index)" = "0d977de9ee851a0b16e932979515c0f3da82403183879811bc97d50bd9cc50f7" -"checksum minifb 0.13.0 (git+https://github.com/emoon/rust_minifb.git)" = "" -"checksum minimp3 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "542e9bed56860c5070a09939eee0e2df6f8f73f60304ddf56d620947e7017239" -"checksum minimp3-sys 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c109ae05c00ad6e3a53fab101e2f234545bdd010f0fffd399355efaf70817817" +"checksum mime_guess 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212" +"checksum minifb 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "799c20458eb0dd69f48cea5014afe736b363818c86d7ca61dbb56e1c0585014c" "checksum mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)" = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f" "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" @@ -3803,6 +4650,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum multipart 0.15.4 (registry+https://github.com/rust-lang/crates.io-index)" = "adba94490a79baf2d6a23eac897157047008272fa3eecb3373ae6377b91eca28" "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" "checksum nix 0.14.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6c722bee1037d430d0f8e687bbdbf222f27cc6e4e68d5caf630857bb2b6dbdce" +"checksum nix 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3b2e0b4f3320ed72aaedb9a5ac838690a8047c7b275da22711fddff4f8a14229" "checksum nodrop 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" "checksum noise 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "337525774dd8a197b613a01ea88058ef0ed023e5ed1e4b7e93de478e1f2bf770" "checksum nom 4.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2ad2a91a8e869eeb30b9cb3119ae87773a8f4ae617f41b1eb9c154b2905f7bd6" @@ -3822,6 +4670,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum objc-foundation 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9" "checksum objc_id 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b" "checksum ogg 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d79f1db9148be9d0e174bb3ac890f6030fcb1ed947267c5a91ee4c91b5a91e15" +"checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" +"checksum openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)" = "1024c0a59774200a555087a6da3f253a9095a5f344e353b212ac4c8b8e450986" "checksum orbclient 0.3.27 (registry+https://github.com/rust-lang/crates.io-index)" = "f8b18f57ab94fbd058e30aa57f712ec423c0bb7403f8493a6c58eef0c36d9402" "checksum ordered-float 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "18869315e81473c951eb56ad5558bbc56978562d3ecfb87abb7a1e944cea4518" "checksum osmesa-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "88cfece6e95d2e717e0872a7f53a8684712ad13822a7979bc760b9c77ec0013b" @@ -3841,6 +4691,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e" "checksum phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662" "checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0" +"checksum pin-project 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7804a463a8d9572f13453c516a5faea534a2403d7ced2f0c7e100eeff072772c" +"checksum pin-project-internal 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "385322a45f2ecf3410c68d2a549a4a2685e8051d0f278e39743ff4e451cb9b3f" +"checksum pin-project-lite 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "237844750cfbb86f67afe27eee600dfbbcb6188d734139b534cbfbf4f96792ae" +"checksum pin-utils 0.1.0-alpha.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5894c618ce612a3fa23881b152b608bafb8c56cfc22f434a3ba3120b40f7b587" "checksum piston-float 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b058c3a640efd4bcf63266512e4bb03187192c1b29edd38b16d5a014613e3199" "checksum piston-viewport 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7d96dd995f7dabe6d57cda668ec0fda39d6fe6e1e0b23f772582f383f2013611" "checksum pistoncore-input 0.24.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0c612ce242c7bac8e96426a0ca34275fd980af440f0cca7c6c0e840ef8a4052f" @@ -3850,6 +4704,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum ppv-lite86 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b" "checksum pretty_env_logger 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "717ee476b1690853d222af4634056d830b5197ffd747726a9a1eee6da9f49074" "checksum proc-macro-hack 0.5.11 (registry+https://github.com/rust-lang/crates.io-index)" = "ecd45702f76d6d3c75a80564378ae228a85f0b59d2f3ed43c91b4a69eb2ebfc5" +"checksum proc-macro-nested 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "369a6ed065f249a159e06c45752c780bda2fb53c995718f9e484d08daa9eb42e" "checksum proc-macro2 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "1b06e2f335f48d24442b35a19df506a835fb3547bc3c06ef27340da9acf5cae7" "checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" "checksum proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "9c9e470a8dc4aeae2dee2f335e8f533e2d4b347e1434e5671afc49b054592f27" @@ -3879,7 +4734,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum rand_pcg 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429" "checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" "checksum rand_xoshiro 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0e18c91676f670f6f0312764c759405f13afb98d5d73819840cf72a518487bff" -"checksum raw-window-handle 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9db80d08d3ed847ce4fb3def46de0af4bfb6155bd09bd6eaf28b5ac72541c1f1" +"checksum raw-window-handle 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0a441a7a6c80ad6473bd4b74ec1c9a4c951794285bf941c2126f607c72e48211" "checksum rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db6ce3297f9c85e16621bb8cca38a06779ffc31bb8184e1be4bed2be4678a098" "checksum rayon-core 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "08a89b46efaf957e52b18062fb2f4660f8b8a4dde1807ca002690868ef2c85a9" "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" @@ -3889,29 +4744,40 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum regex-automata 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "92b73c2a1770c255c240eaa4ee600df1704a38dc3feaa6e949e7fcd4f8dc09f9" "checksum regex-syntax 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "11a7e20d1cce64ef2fed88b66d347f88bd9babb82845b2b858f3edbf59a4f716" "checksum remove_dir_all 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e" -"checksum rodio 0.9.0 (git+https://github.com/RustAudio/rodio?rev=e5474a2)" = "" +"checksum reqwest 0.10.4 (registry+https://github.com/rust-lang/crates.io-index)" = "02b81e49ddec5109a9dcfc5f2a317ff53377c915e9ae9d4f2fb50914b85614e2" +"checksum ring 0.16.11 (registry+https://github.com/rust-lang/crates.io-index)" = "741ba1704ae21999c00942f9f5944f801e977f54302af346b596287599ad1862" +"checksum rodio 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1e0e0dfa7c8b17c6428f6e992a22ea595922cc86f946191b6b59e7ce96b77262" "checksum ron 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2ece421e0c4129b90e4a35b6f625e472e96c552136f5093a2f4fa2bbb75a62d5" "checksum roots 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e4c67c712ab62be58b24ab8960e2b95dd4ee00aac115c76f2709657821fe376d" "checksum rouille 3.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "112568052ec17fa26c6c11c40acbb30d3ad244bf3d6da0be181f5e7e42e5004f" "checksum rust-argon2 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ca4eaef519b494d1f2848fc602d18816fed808a981aedf4f1f00ceb7c9d32cf" +"checksum rust-argon2 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "416f5109bdd413cec4f04c029297838e7604c993f8d1483b1d438f23bdc3eb35" "checksum rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783" "checksum rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7540fc8b0c49f096ee9c961cda096467dce8084bec6bdca2fc83895fd9b28cb8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" +"checksum rustls 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c0d4a31f5d68413404705d6982529b0e11a9aacd4839d1d6222ee3b8cb4015e1" +"checksum rustls-native-certs 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a75ffeb84a6bd9d014713119542ce415db3a3e4748f0bfce1e1416cd224a23a5" "checksum rusttype 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)" = "310942406a39981bed7e12b09182a221a29e0990f3e7e0c971f131922ed135d5" "checksum rusttype 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "14a911032fb5791ccbeec9f28fdcb9bf0983b81f227bafdfd227c658d0731c8a" +"checksum rusty-xinput 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2aa654bc32eb9ca14cce1a084abc9dfe43949a4547c35269a094c39272db3bb" "checksum ryu 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8" "checksum safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" "checksum same-file 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "585e8ddcedc187886a30fa705c47985c3fa88d06624095856b36ca0b82ff4421" "checksum scan_fmt 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "faf737f37ca340201889b5f48ecde47f233e9da3cbf3d04be27883adac39b4da" +"checksum schannel 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "507a9e6e8ffe0a4e0ebb9a10293e62fdf7657c06f1b8bb07a8fcf697d2abf295" "checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" "checksum scopeguard 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d" +"checksum sct 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3042af939fca8c3453b7af0f1c66e533a15a86169e39de2657310ade8f98d3c" "checksum sdl2 0.32.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d051a07231e303f5f719da78cb6f7394f6d5b54f733aef5b0b447804a83edd7b" "checksum sdl2-sys 0.32.6 (registry+https://github.com/rust-lang/crates.io-index)" = "34e71125077d297d57e4c1acfe8981b5bdfbf5a20e7b589abfdcb33bf1127f86" +"checksum security-framework 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "97bbedbe81904398b6ebb054b3e912f99d55807125790f3198ac990d98def5b0" +"checksum security-framework-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "06fd2f23e31ef68dd2328cc383bd493142e46107a3a0e24f7d734e3f3b80fe4c" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" "checksum serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)" = "0c4b39bd9b0b087684013a792c59e3e07a46a01d2322518d8a1104641a0b1be0" "checksum serde_derive 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)" = "ca13fc1a832f793322228923fbb3aba9f3f44444898f835d31ad1b74fa0a2bf8" "checksum serde_json 1.0.42 (registry+https://github.com/rust-lang/crates.io-index)" = "1a3351dcbc1f067e2c92ab7c3c1f288ad1a4cffc470b5aaddb4c2e0a3ae80043" +"checksum serde_urlencoded 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9ec5d77e2d4c73717816afac02670d5c4f534ea95ed430442cad02e7a6e32c97" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" "checksum shared_library 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "5a9e7e0f2bfae24d8a5b5a66c5b257a83c7412304311512a0c054cd5e619da11" "checksum shlex 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2" @@ -3920,7 +4786,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum shrev 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b5752e017e03af9d735b4b069f53b7a7fd90fefafa04d8bd0c25581b0bff437f" "checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac" "checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" -"checksum slice-deque 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "ffddf594f5f597f63533d897427a570dbaa9feabaaa06595b74b71b7014507d7" "checksum smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6" "checksum smallvec 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4ecf3b85f68e8abaa7555aa5abdb1153079387e60b718283d732f03897fcfc86" "checksum smithay-client-toolkit 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2ccb8c57049b2a34d2cc2b203fa785020ba0129d31920ef0d317430adaf748fa" @@ -3933,6 +4798,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" "checksum stb_truetype 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f77b6b07e862c66a9f3e62a07588fee67cd90a9135a2b942409f195507b4fb51" "checksum stdweb 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ef5430c8e36b713e13b48a9f709cc21e046723fe44ce34587b73a830203b533e" +"checksum stdweb 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)" = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" +"checksum stdweb-derive 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" +"checksum stdweb-internal-macros 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" +"checksum stdweb-internal-runtime 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" "checksum sum_type 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "da5b4a0c9f3c7c8e891e445a7c776627e208e8bba23ab680798066dd283e6a15" "checksum svg_fmt 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20e5f95e89d737f30cd1f98a9af9a85c2a1cc162cfedfba5a0c54cf92d7206fc" "checksum syn 0.13.11 (registry+https://github.com/rust-lang/crates.io-index)" = "14f9bf6292f3a61d2c716723fdb789a41bbe104168e6f496dc6497e531ea1b9b" @@ -3949,23 +4818,43 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" "checksum tiny_http 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1661fa0a44c95d01604bd05c66732a446c657efb62b5164a7a083a3b552b4951" "checksum tinytemplate 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4574b75faccaacddb9b284faecdf0b544b80b6b294f3d062d325c5726a209c20" +"checksum tokio 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "0fa5e81d6bc4e67fe889d5783bd2a128ab2e0cfa487e0be16b6a8d177b101616" +"checksum tokio-rustls 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4adb8b3e5f86b707f1b54e7c15b6de52617a823608ccda98a15d3a24222f265a" +"checksum tokio-util 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "571da51182ec208780505a32528fc5512a8fe1443ab960b3f2f3ef093cd16930" "checksum toml 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "01d1404644c8b12b16bfcffa4322403a91a451584daaaa7c28d3152e6cbc98cf" +"checksum tower-service 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e987b6bf443f4b5b3b6f38704195592cca41c5bb7aedd3c3693c7081f8289860" "checksum treeculler 0.1.0 (git+https://gitlab.com/yusdacra/treeculler.git)" = "" +"checksum try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382" "checksum tuple_utils 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44834418e2c5b16f47bedf35c28e148db099187dd5feee6367fb2525863af4f1" "checksum twoway 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "59b11b2b5241ba34be09c3cc85a36e56e48f9888862e19cedf23336d35316ed1" "checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33" +"checksum unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-normalization 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b561e267b2326bb4cebfc0ef9e68355c7abe6c6f522aeac2f5bf95d56c59bdcf" "checksum unicode-width 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7007dbd421b92cc6e28410fe7362e2e0a2503394908f417b68ec8d1c364c4e20" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" "checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c" +"checksum untrusted 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "60369ef7a31de49bcb3f6ca728d4ba7300d9a1658f94c727d4cab8c8d9f4aece" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" +"checksum url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "829d4a8476c35c9bf0bbce5a3b23f4106f79728039b726d292bb93bc106787cb" +"checksum uuid 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "90dbc611eb48397705a6b0f6e917da23ae517e4d127123d2cf7674206627d32a" +"checksum uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9fde2f6a4bea1d6e007c4ad38c6839fa71cbb63b6dbf5b595aa38dc9b1093c11" "checksum uvth 3.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e59a167890d173eb0fcd7a1b99b84dc05c521ae8d76599130b8e19bef287abbf" +"checksum vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3fc439f2794e98976c88a2a2dafce96b930fe8010b0a256b3c2199a773933168" +"checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" "checksum vek 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)" = "1eb3ca8ea588deba055424cc1a79a830428b2f6c270b8d8f91946f660fa4d8ee" "checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" +"checksum version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce" "checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum walkdir 2.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "9658c94fa8b940eab2250bd5a457f9c48b748420d71293b165c8cdbe2f55f71e" +"checksum want 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" "checksum wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d" +"checksum wasm-bindgen 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)" = "3557c397ab5a8e347d434782bcd31fc1483d927a6826804cec05cc792ee2519d" +"checksum wasm-bindgen-backend 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)" = "e0da9c9a19850d3af6df1cb9574970b566d617ecfaf36eb0b706b6f3ef9bd2f8" +"checksum wasm-bindgen-futures 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)" = "457414a91863c0ec00090dba537f88ab955d93ca6555862c29b6d860990b8a8a" +"checksum wasm-bindgen-macro 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)" = "0f6fde1d36e75a714b5fe0cffbb78978f222ea6baebb726af13c78869fdb4205" +"checksum wasm-bindgen-macro-support 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)" = "25bda4168030a6412ea8a047e27238cadf56f0e53516e1e83fec0a8b7c786f6d" +"checksum wasm-bindgen-shared 0.2.59 (registry+https://github.com/rust-lang/crates.io-index)" = "fc9f36ad51f25b0219a3d4d13b90eb44cd075dff8b6280cca015775d7acaddd8" "checksum wayland-client 0.21.13 (registry+https://github.com/rust-lang/crates.io-index)" = "49963e5f9eeaf637bfcd1b9f0701c99fd5cd05225eb51035550d4272806f2713" "checksum wayland-client 0.23.6 (registry+https://github.com/rust-lang/crates.io-index)" = "af1080ebe0efabcf12aef2132152f616038f2d7dcbbccf7b2d8c5270fe14bcda" "checksum wayland-commons 0.21.13 (registry+https://github.com/rust-lang/crates.io-index)" = "40c08896768b667e1df195d88a62a53a2d1351a1ed96188be79c196b35bb32ec" @@ -3976,6 +4865,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum wayland-scanner 0.23.6 (registry+https://github.com/rust-lang/crates.io-index)" = "93b02247366f395b9258054f964fe293ddd019c3237afba9be2ccbe9e1651c3d" "checksum wayland-sys 0.21.13 (registry+https://github.com/rust-lang/crates.io-index)" = "520ab0fd578017a0ee2206623ba9ef4afe5e8f23ca7b42f6acfba2f4e66b1628" "checksum wayland-sys 0.23.6 (registry+https://github.com/rust-lang/crates.io-index)" = "d94e89a86e6d6d7c7c9b19ebf48a03afaac4af6bc22ae570e9a24124b75358f4" +"checksum web-sys 0.3.36 (registry+https://github.com/rust-lang/crates.io-index)" = "721c6263e2c66fd44501cc5efbfa2b7dfa775d13e4ea38c46299646ed1f9c70a" +"checksum webpki 0.21.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f1f50e1972865d6b1adb54167d1c8ed48606004c2c9d0ea5f1eeb34d95e863ef" +"checksum webpki-roots 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)" = "91cd5736df7f12a964a5067a12c62fa38e1bd8080aff1f80bc29be7c80d19ab4" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" "checksum winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6" "checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" @@ -3984,6 +4876,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" "checksum wincolor 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "96f5016b18804d24db43cebf3c77269e7569b8954a8464501c216cc5e070eaa9" "checksum winit 0.19.5 (registry+https://github.com/rust-lang/crates.io-index)" = "1e96eb4bb472fa43e718e8fa4aef82f86cd9deac9483a1e1529230babdb394a8" +"checksum winreg 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9" "checksum winres 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "ff4fb510bbfe5b8992ff15f77a2e6fe6cf062878f0eda00c0f44963a807ca5dc" "checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" "checksum x11-clipboard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "89bd49c06c9eb5d98e6ba6536cf64ac9f7ee3a009b2f53996d405b3944f6bcea" diff --git a/README.md b/README.md index 4ffbf053c8..60d017207d 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,9 @@ Currently the communication of contributors happens mainly on our [official Disc ## Useful Links +[Sign Up](https://account.veloren.net) - Here you can create an online account for Veloren. +This will be needed to play on auth-enabled servers, including the official server. + [The Book](https://book.veloren.net) - A collection of all important information relating to Veloren. It includes information on how to compile Veloren and how to contribute. [Future Plans](https://gitlab.com/veloren/veloren/milestones) - Go here for information about Veloren's development roadmap and what we're currently working on. diff --git a/assets/common/npc_names.json b/assets/common/npc_names.json index eade9f7ae3..d8bb02f0a7 100644 --- a/assets/common/npc_names.json +++ b/assets/common/npc_names.json @@ -19,6 +19,7 @@ "Colborn", "Dagfinn", "Dagrod", + "Digbod", "Dimian", "Domnhar", "Ebraheim", @@ -458,6 +459,10 @@ "peacock": { "keyword": "peacock", "generic": "Peacock" + }, + "eagle": { + "keyword": "eagle", + "generic": "Eagle" } } }, diff --git a/assets/voxygen/audio/sfx.ron b/assets/voxygen/audio/sfx.ron index 8310f26c09..9add266bf9 100644 --- a/assets/voxygen/audio/sfx.ron +++ b/assets/voxygen/audio/sfx.ron @@ -23,5 +23,77 @@ ], threshold: 0.5, ), + Wield(Sword): ( + files: [ + "voxygen.audio.sfx.weapon.sword_out", + ], + threshold: 0.5, + ), + Unwield(Sword): ( + files: [ + "voxygen.audio.sfx.weapon.sword_in", + ], + threshold: 0.5, + ), + Inventory(Collected): ( + files: [ + "voxygen.audio.sfx.inventory.add_item", + ], + threshold: 0.5, + ), + Inventory(Swapped): ( + files: [ + "voxygen.audio.sfx.inventory.add_item", + ], + threshold: 0.5, + ), + Inventory(Given): ( + files: [ + "voxygen.audio.sfx.inventory.add_item", + ], + threshold: 0.5, + ), + Inventory(Dropped): ( + files: [ + "voxygen.audio.sfx.footsteps.stepgrass_4", + ], + threshold: 0.5, + ), + Inventory(Consumed(Potion)): ( + files: [ + "voxygen.audio.sfx.inventory.consumable.liquid", + ], + threshold: 0.3, + ), + Inventory(Consumed(PotionMinor)): ( + files: [ + "voxygen.audio.sfx.inventory.consumable.liquid", + ], + threshold: 0.3, + ), + Inventory(Consumed(Apple)): ( + files: [ + "voxygen.audio.sfx.inventory.consumable.apple", + ], + threshold: 0.3, + ), + Inventory(Consumed(Mushroom)): ( + files: [ + "voxygen.audio.sfx.inventory.consumable.food", + ], + threshold: 0.3, + ), + Inventory(Consumed(Cheese)): ( + files: [ + "voxygen.audio.sfx.inventory.consumable.food", + ], + threshold: 0.3, + ), + Inventory(CollectFailed): ( + files: [ + "voxygen.audio.sfx.inventory.add_failed", + ], + threshold: 0.3, + ) } ) \ No newline at end of file diff --git a/assets/voxygen/audio/sfx/inventory/add_failed.wav b/assets/voxygen/audio/sfx/inventory/add_failed.wav new file mode 100644 index 0000000000..6e5d3abe97 --- /dev/null +++ b/assets/voxygen/audio/sfx/inventory/add_failed.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7cf98460ef3c627df1603e34b9b2b4443f54dc9bfafccaccaba6719f4214085 +size 51216 diff --git a/assets/voxygen/audio/sfx/inventory/add_item.wav b/assets/voxygen/audio/sfx/inventory/add_item.wav new file mode 100644 index 0000000000..380dc30d4d --- /dev/null +++ b/assets/voxygen/audio/sfx/inventory/add_item.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f811babdffe01795b1ff75827ab8e968b61baff8243ea031390dc49152885950 +size 40140 diff --git a/assets/voxygen/audio/sfx/inventory/consumable/apple.wav b/assets/voxygen/audio/sfx/inventory/consumable/apple.wav new file mode 100644 index 0000000000..286d8aade0 --- /dev/null +++ b/assets/voxygen/audio/sfx/inventory/consumable/apple.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c4d2931431c26b95a4d41b2e137b3db74456b8b9db54d7c48defb9d7bb67689 +size 70152 diff --git a/assets/voxygen/audio/sfx/inventory/consumable/food.wav b/assets/voxygen/audio/sfx/inventory/consumable/food.wav new file mode 100644 index 0000000000..ea39de567a --- /dev/null +++ b/assets/voxygen/audio/sfx/inventory/consumable/food.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fd5074d0ec517b626e95bc34cb75e735d48dbb99473ffeadb79d90734f52f7d +size 31208 diff --git a/assets/voxygen/audio/sfx/inventory/consumable/liquid.wav b/assets/voxygen/audio/sfx/inventory/consumable/liquid.wav new file mode 100644 index 0000000000..fa0db211f4 --- /dev/null +++ b/assets/voxygen/audio/sfx/inventory/consumable/liquid.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c3a38dede30bb4a8c13644bd43be5fe261f177f3c65f88e5d02da5b9ba68a97 +size 21548 diff --git a/assets/voxygen/audio/sfx/weapon/sword_in.wav b/assets/voxygen/audio/sfx/weapon/sword_in.wav new file mode 100644 index 0000000000..24061231f9 --- /dev/null +++ b/assets/voxygen/audio/sfx/weapon/sword_in.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:181cb4e801f82a55ad1916b861dfc1dc14f56b2716841bf94f320eadda41c8d1 +size 44272 diff --git a/assets/voxygen/audio/sfx/weapon/sword_out.wav b/assets/voxygen/audio/sfx/weapon/sword_out.wav new file mode 100644 index 0000000000..4233e07a57 --- /dev/null +++ b/assets/voxygen/audio/sfx/weapon/sword_out.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6026f1942a4b6e5dcda65a5984debdf9e025bf98ea30a282f9f7c3ba5c78be5b +size 48620 diff --git a/assets/voxygen/element/buttons/button.png b/assets/voxygen/element/buttons/button.png new file mode 100644 index 0000000000..4bbab4126b --- /dev/null +++ b/assets/voxygen/element/buttons/button.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea5c3ef55df49a9b32fa1f23700267f05c730921fbbf014f6d1765799b6582f4 +size 1717 diff --git a/assets/voxygen/element/buttons/button_hover.png b/assets/voxygen/element/buttons/button_hover.png new file mode 100644 index 0000000000..3d8e07addc --- /dev/null +++ b/assets/voxygen/element/buttons/button_hover.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9945fdcb8f103ab61e0f5ea80d090e8ffb8f081fb25e03bdd8f2d808a52248e3 +size 2185 diff --git a/assets/voxygen/element/buttons/button_press.png b/assets/voxygen/element/buttons/button_press.png new file mode 100644 index 0000000000..693ab36c9e --- /dev/null +++ b/assets/voxygen/element/buttons/button_press.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05c3c6b22f543380cb3a9099651c571fea10940bec73f83f9767c4c23ef01ff9 +size 2264 diff --git a/assets/voxygen/element/frames/banner.vox b/assets/voxygen/element/frames/banner.vox index 23ed569d7a..c22657d78e 100644 --- a/assets/voxygen/element/frames/banner.vox +++ b/assets/voxygen/element/frames/banner.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:17691947a87f25cd45d5d115b22116a0be7905b6791be92e35a7153a1d0cde2b +oid sha256:9a6975e66ab8b86e71d5e8a4014674242128aa1b1015f32d0552d3f229051927 size 78932 diff --git a/assets/voxygen/element/frames/banner_small_top.png b/assets/voxygen/element/frames/banner_small_top.png new file mode 100644 index 0000000000..13bdb3eac9 --- /dev/null +++ b/assets/voxygen/element/frames/banner_small_top.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11bbd57a069713669c4248baab471901dc7fe5e52948c6e2582101e9e38d58fd +size 670 diff --git a/assets/voxygen/element/frames/banner_top.png b/assets/voxygen/element/frames/banner_top.png new file mode 100644 index 0000000000..a8f9c1a224 --- /dev/null +++ b/assets/voxygen/element/frames/banner_top.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f03ab3f90d7abe2ccd67de23b7a7f1e026cb97c8e202a60165397d61b8f9dce +size 4881 diff --git a/assets/voxygen/element/frames/enemybar-0.vox b/assets/voxygen/element/frames/enemybar-0.vox deleted file mode 100644 index 86d8e7b3d9..0000000000 --- a/assets/voxygen/element/frames/enemybar-0.vox +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6bb91912f72a88fb39e4a06dd6a847b0e4512a934ce193cb1325abb91549e455 -size 60720 diff --git a/assets/voxygen/element/frames/enemybar.png b/assets/voxygen/element/frames/enemybar.png index 82515fb6c0..61b5273433 100644 --- a/assets/voxygen/element/frames/enemybar.png +++ b/assets/voxygen/element/frames/enemybar.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bfa1034410f86cc56f8ca737054ff8a8bf71dd4d696fa3bd8195d866cb4405d3 -size 1607 +oid sha256:7c4bad1314144f662c8970136ee954e8a56849b65b39a26caa22148b00c44bfd +size 245 diff --git a/assets/voxygen/element/frames/enemybar_bg.png b/assets/voxygen/element/frames/enemybar_bg.png new file mode 100644 index 0000000000..18748b44f3 --- /dev/null +++ b/assets/voxygen/element/frames/enemybar_bg.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c1214e73e70dcff9b3623d776167b9aae1731cffae41d4dc57549e955372695 +size 178 diff --git a/assets/voxygen/element/frames/esc_menu.vox b/assets/voxygen/element/frames/esc_menu.vox index b4637818c8..de72424efe 100644 --- a/assets/voxygen/element/frames/esc_menu.vox +++ b/assets/voxygen/element/frames/esc_menu.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f8e4a0d231a08ead9cb4677531d5aae0391ac69548e5cba8c7bfb98e3c22b85e -size 79856 +oid sha256:2b588ad596f31ccdc3826a5a59c45601c81c8916c56c5b266f5d82bf87f18ace +size 75292 diff --git a/assets/voxygen/element/icons/elf_m.png b/assets/voxygen/element/icons/elf_m.png index 0d0788e78a..26f18519a4 100644 --- a/assets/voxygen/element/icons/elf_m.png +++ b/assets/voxygen/element/icons/elf_m.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:07f0a96fec50bfef3d3ae62ecdec05749d01dea6feae396f16a1de25804133bc -size 15846 +oid sha256:f9accfbd032585de6fbcf7570bd8f14f13efc392793b1d7bd94a1c246cbec43a +size 19534 diff --git a/assets/voxygen/element/misc_bg/textbox_bot.png b/assets/voxygen/element/misc_bg/textbox_bot.png new file mode 100644 index 0000000000..e944fe5eff --- /dev/null +++ b/assets/voxygen/element/misc_bg/textbox_bot.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79e8e39281ebb9293b804ea0535635d69cc455ab4bb6d1103b84ec91e77990c1 +size 6377 diff --git a/assets/voxygen/element/misc_bg/textbox_mid.png b/assets/voxygen/element/misc_bg/textbox_mid.png new file mode 100644 index 0000000000..9c271c6c21 --- /dev/null +++ b/assets/voxygen/element/misc_bg/textbox_mid.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d9097face16955fac82b30dbe896796aea1b589db5c9cda2f87d9bc7f63f3a7 +size 6103 diff --git a/assets/voxygen/element/misc_bg/textbox_top.png b/assets/voxygen/element/misc_bg/textbox_top.png new file mode 100644 index 0000000000..1f2067cd01 --- /dev/null +++ b/assets/voxygen/element/misc_bg/textbox_top.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d770f17e438f4119cba20d54020acac26445467f968015028a3b476c2e97ea83 +size 6358 diff --git a/assets/voxygen/font/haxrcorp_4089_cyrillic_altgr_extended.ttf b/assets/voxygen/font/haxrcorp_4089_cyrillic_altgr_extended.ttf new file mode 100644 index 0000000000..28a2f56603 --- /dev/null +++ b/assets/voxygen/font/haxrcorp_4089_cyrillic_altgr_extended.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9fe6b6694620909217869f4f3fdce28d9ce9e5f0720c5a601903c95669dc428 +size 22120 diff --git a/assets/voxygen/i18n/en.ron b/assets/voxygen/i18n/en.ron index fcf50d5956..a9ab34bd68 100644 --- a/assets/voxygen/i18n/en.ron +++ b/assets/voxygen/i18n/en.ron @@ -17,6 +17,28 @@ VoxygenLocalization( language_identifier: "en", ), convert_utf8_to_ascii: false, + fonts: { + "opensans": Font ( + asset_key: "voxygen.font.OpenSans-Regular", + scale_ratio: 1.0, + ), + "metamorph": Font ( + asset_key: "voxygen.font.Metamorphous-Regular", + scale_ratio: 1.0, + ), + "alkhemi": Font ( + asset_key: "voxygen.font.Alkhemikal", + scale_ratio: 1.0, + ), + "wizard": Font ( + asset_key: "voxygen.font.wizard", + scale_ratio: 1.0, + ), + "cyri": Font ( + asset_key: "voxygen.font.haxrcorp_4089_cyrillic_altgr_extended", + scale_ratio: 1.0, + ), + }, string_map: { /// Start Common section // Texts used in multiple locations with the same formatting @@ -43,6 +65,8 @@ VoxygenLocalization( "common.disclaimer": "Disclaimer", "common.cancel": "Cancel", "common.none": "None", + "common.error": "Error", + "common.fatal_error": "Fatal Error", // Message when connection to the server is lost "common.connection_lost": r#"Connection lost! @@ -91,12 +115,25 @@ Thanks for taking the time to read this notice, we hope you enjoy the game! // Login process description "main.login_process": r#"Information on the Login Process: -Put in any username. No Account needed yet. - -Character names and appearances will be saved locally. +If you are having issues signing in: -Levels/Items are not saved yet."#, +Please note that you now need an account +to play on auth-enabled servers. +You can create an account over at + +https://account.veloren.net."#, + "main.login.server_not_found": "Server not found", + "main.login.authentication_error": "Auth error on server", + "main.login.server_full": "Server is full", + "main.login.untrusted_auth_server": "Auth server not trusted", + "main.login.outdated_client_or_server": "ServerWentMad: Probably versions are incompatible, check for updates.", + "main.login.timeout": "Timeout: Server did not respond in time. (Overloaded or network issues).", + "main.login.server_shut_down": "Server shut down", + "main.login.already_logged_in": "You are already logged into the server.", + "main.login.network_error": "Network error", + "main.login.failed_sending_request": "Request to Auth server failed", + "main.login.client_crashed": "Client crashed", /// End Main screen section @@ -186,6 +223,7 @@ Enjoy your stay in the World of Veloren."#, "hud.settings.view_distance": "View Distance", "hud.settings.maximum_fps": "Maximum FPS", "hud.settings.fov": "Field of View (deg)", + "hud.settings.gamma": "Gamma", "hud.settings.antialiasing_mode": "AntiAliasing Mode", "hud.settings.cloud_rendering_mode": "Cloud Rendering Mode", "hud.settings.fluid_rendering_mode": "Fluid Rendering Mode", @@ -335,4 +373,4 @@ Willpower "esc_menu.quit_game": "Quit Game", /// End Escape Menu Section } -) \ No newline at end of file +) diff --git a/assets/voxygen/i18n/fr_FR.ron b/assets/voxygen/i18n/fr_FR.ron index d1cbbb75c6..6d5c4d581c 100644 --- a/assets/voxygen/i18n/fr_FR.ron +++ b/assets/voxygen/i18n/fr_FR.ron @@ -4,7 +4,29 @@ VoxygenLocalization( language_name: "Français", language_identifier: "fr_FR", ), - convert_utf8_to_ascii: true, + convert_utf8_to_ascii: false, + fonts: { + "opensans": Font ( + asset_key: "voxygen.font.OpenSans-Regular", + scale_ratio: 1.0, + ), + "metamorph": Font ( + asset_key: "voxygen.font.Metamorphous-Regular", + scale_ratio: 1.0, + ), + "alkhemi": Font ( + asset_key: "voxygen.font.Alkhemikal", + scale_ratio: 1.0, + ), + "wizard": Font ( + asset_key: "voxygen.font.wizard", + scale_ratio: 1.0, + ), + "cyri": Font ( + asset_key: "voxygen.font.haxrcorp_4089_cyrillic_altgr_extended", + scale_ratio: 0.9, + ), + }, string_map: { // Common texts used in multiple locations "common.username": "pseudo", @@ -16,7 +38,7 @@ VoxygenLocalization( "common.languages": "Langues", "common.interface": "Interface", "common.gameplay": "Gameplay", - "common.controls": "Controles", + "common.controls": "Contrôles", "common.video": "Video", "common.sound": "Audio", "common.resume": "Reprendre", diff --git a/assets/voxygen/net.veloren.veloren.appdata.xml b/assets/voxygen/net.veloren.veloren.appdata.xml new file mode 100644 index 0000000000..1192abe8fc --- /dev/null +++ b/assets/voxygen/net.veloren.veloren.appdata.xml @@ -0,0 +1,61 @@ + + + + net.veloren.veloren.desktop + CC0-1.0 + GPL-3.0-or-later + + intense + mild + mild + mild + + Veloren + + Veloren is a multiplayer voxel RPG written in Rust. It is inspired + by games such as Cube World, Legend of Zelda: Breath of the Wild, + Dwarf Fortress and Minecraft. + + +

+ Welcome To Veloren! +

+ Veloren is a multiplayer voxel RPG written in Rust. Veloren takes + inspiration from games such as Cube World, Minecraft and Dwarf + Fortress. The game is currently under heavy development, but is + playable. +

+ Development +

+ Currently the communication of contributors happens mainly on our + official Discord server (https://discord.gg/kjwJwjK). You can join + it to keep up with the development, talk to us or contribute + something yourself. Anyone who shows genuine effort to help is + welcome in our team. You don't have to know how to program to + contribute! +

+
+ + + https://media.discordapp.net/attachments/634860358623821835/643034796548947968/screenshot_1573381825305.png + + + https://media.discordapp.net/attachments/597826574095613962/643102462781423616/screenshot_1573397958545.png + + + https://cdn.discordapp.com/attachments/634860358623821835/646518917577310219/screenshot_1574211401431.png + + + + sandbox + world + multiplayer + + https://veloren.net + https://gitlab.com/veloren/veloren/issues + https://gitlab.com/veloren/veloren#faq + https://book.veloren.net/ + + veloren-voxygen + +
diff --git a/assets/voxygen/net.veloren.veloren.desktop b/assets/voxygen/net.veloren.veloren.desktop new file mode 100644 index 0000000000..5e4f2cd02e --- /dev/null +++ b/assets/voxygen/net.veloren.veloren.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Type=Application +Name=Veloren +Comment=Veloren is a multiplayer voxel RPG written in Rust +Exec=veloren-voxygen +Categories=Game;Simulation; +Keywords=veloren;sandbox;world;blocks;nodes;multiplayer;roleplaying; +Icon=net.veloren.veloren.png +Terminal=false diff --git a/assets/voxygen/net.veloren.veloren.png b/assets/voxygen/net.veloren.veloren.png new file mode 100644 index 0000000000..c849ca552b --- /dev/null +++ b/assets/voxygen/net.veloren.veloren.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7162cb9f05336af0b35e7b8e923716161dc4df418c8e3fd9918c71ad5a875201 +size 33292 diff --git a/assets/voxygen/shaders/include/globals.glsl b/assets/voxygen/shaders/include/globals.glsl index 471320a7ef..e0e97949e2 100644 --- a/assets/voxygen/shaders/include/globals.glsl +++ b/assets/voxygen/shaders/include/globals.glsl @@ -12,4 +12,5 @@ uniform u_globals { uvec4 light_shadow_count; uvec4 medium; ivec4 select_pos; + vec4 gamma; }; diff --git a/assets/voxygen/shaders/postprocess-frag.glsl b/assets/voxygen/shaders/postprocess-frag.glsl index 4193bda525..cd0c87a772 100644 --- a/assets/voxygen/shaders/postprocess-frag.glsl +++ b/assets/voxygen/shaders/postprocess-frag.glsl @@ -45,7 +45,7 @@ void main() { //hsva_color.z = 1.0 - 1.0 / (1.0 * hsva_color.z + 1.0); //vec4 final_color = vec4(hsv2rgb(hsva_color.rgb), hsva_color.a); - vec4 final_color = aa_color; + vec4 final_color = pow(aa_color, gamma); if (medium.x == 1u) { final_color *= vec4(0.2, 0.2, 0.8, 1.0); diff --git a/assets/voxygen/voxel/bird_medium_center_manifest.ron b/assets/voxygen/voxel/bird_medium_center_manifest.ron index 8dde25c342..6951c0e7af 100644 --- a/assets/voxygen/voxel/bird_medium_center_manifest.ron +++ b/assets/voxygen/voxel/bird_medium_center_manifest.ron @@ -111,4 +111,32 @@ center: ("npc.peacock.female.tail"), ) ), + (Eagle, Male): ( + head: ( + offset: (-2.0, -2.0, -3.5), + center: ("npc.eagle.female.head"), + ), + torso: ( + offset: (-3.0, -4.5, -4.5), + center: ("npc.eagle.female.torso"), + ), + tail: ( + offset: (-2.0, -3.5, -3.5), + center: ("npc.eagle.female.tail"), + ) + ), + (Eagle, Female): ( + head: ( + offset: (-2.0, -2.0, -3.5), + center: ("npc.eagle.female.head"), + ), + torso: ( + offset: (-3.0, -4.5, -4.5), + center: ("npc.eagle.female.torso"), + ), + tail: ( + offset: (-2.0, -3.5, -3.5), + center: ("npc.eagle.female.tail"), + ) + ), }) \ No newline at end of file diff --git a/assets/voxygen/voxel/bird_medium_lateral_manifest.ron b/assets/voxygen/voxel/bird_medium_lateral_manifest.ron index 3fef62853c..a934c5695e 100644 --- a/assets/voxygen/voxel/bird_medium_lateral_manifest.ron +++ b/assets/voxygen/voxel/bird_medium_lateral_manifest.ron @@ -143,4 +143,40 @@ lateral: ("npc.peacock.female.leg_r"), ) ), + (Eagle, Male): ( + wing_l: ( + offset: (-1.0, -3.5, -13.0), + lateral: ("npc.eagle.male.wing_l"), + ), + wing_r: ( + offset: (-1.0, -3.5, -13.0), + lateral: ("npc.eagle.male.wing_r"), + ), + foot_l: ( + offset: (-1.5, 0.0, -8.0), + lateral: ("npc.eagle.male.leg_l"), + ), + foot_r: ( + offset: (-1.5, 0.0, -8.0), + lateral: ("npc.eagle.male.leg_r"), + ) + ), + (Eagle, Female): ( + wing_l: ( + offset: (-1.0, -3.5, -13.0), + lateral: ("npc.eagle.female.wing_l"), + ), + wing_r: ( + offset: (-1.0, -3.5, -13.0), + lateral: ("npc.eagle.female.wing_r"), + ), + foot_l: ( + offset: (-1.5, 0.0, -8.0), + lateral: ("npc.eagle.female.leg_l"), + ), + foot_r: ( + offset: (-1.5, 0.0, -8.0), + lateral: ("npc.eagle.female.leg_r"), + ) + ), }) \ No newline at end of file diff --git a/assets/voxygen/voxel/figure/accessory/orc/warpaint-female-0.vox b/assets/voxygen/voxel/figure/accessory/orc/warpaint-female-0.vox index ce8052be51..bec886a3da 100644 --- a/assets/voxygen/voxel/figure/accessory/orc/warpaint-female-0.vox +++ b/assets/voxygen/voxel/figure/accessory/orc/warpaint-female-0.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7f97e6c9ead050281570fb72235a943581a784a1459abf7e180cc73d17ff6894 -size 55685 +oid sha256:17cfb5e4f716fdb7c9c7617247a38f24c7ee72348c5ed2016e51dbec594a674b +size 57958 diff --git a/assets/voxygen/voxel/figure/accessory/orc/warpaint-female-1.vox b/assets/voxygen/voxel/figure/accessory/orc/warpaint-female-1.vox new file mode 100644 index 0000000000..b6594f60c9 --- /dev/null +++ b/assets/voxygen/voxel/figure/accessory/orc/warpaint-female-1.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b589c82819788d4613403fcde382adb3789e6d55e19ca3fb497f39d438a02acd +size 57914 diff --git a/assets/voxygen/voxel/figure/beard/human/human-0.vox b/assets/voxygen/voxel/figure/beard/human/human-0.vox index e607c7e7c3..85e6a409fc 100644 --- a/assets/voxygen/voxel/figure/beard/human/human-0.vox +++ b/assets/voxygen/voxel/figure/beard/human/human-0.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d493cbef02c10163092d61ea2c7a4246178e6955b99cae1e3500d5f66d846005 -size 1240 +oid sha256:d0c5efe8f1645d8104ab07e6412440614febc9b8ca95fdfdc0f0e8ffaee4f331 +size 55723 diff --git a/assets/voxygen/voxel/figure/hair/elf/male-2.vox b/assets/voxygen/voxel/figure/hair/elf/male-2.vox index 08f7052d22..dac3a25e4e 100644 --- a/assets/voxygen/voxel/figure/hair/elf/male-2.vox +++ b/assets/voxygen/voxel/figure/hair/elf/male-2.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e878845d35138cb1ab16ca78baf9d561cfa901330a52db1700301afb191152b9 -size 57002 +oid sha256:4c42e7da38ad6ef36e53c1fcfae73531f1dbf8adbf83b96a0f0f2981a248a5b7 +size 57026 diff --git a/assets/voxygen/voxel/figure/hair/human/male-20.vox b/assets/voxygen/voxel/figure/hair/human/male-20.vox index 08f7052d22..dac3a25e4e 100644 --- a/assets/voxygen/voxel/figure/hair/human/male-20.vox +++ b/assets/voxygen/voxel/figure/hair/human/male-20.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e878845d35138cb1ab16ca78baf9d561cfa901330a52db1700301afb191152b9 -size 57002 +oid sha256:4c42e7da38ad6ef36e53c1fcfae73531f1dbf8adbf83b96a0f0f2981a248a5b7 +size 57026 diff --git a/assets/voxygen/voxel/figure/hair/orc/female-0.vox b/assets/voxygen/voxel/figure/hair/orc/female-0.vox new file mode 100644 index 0000000000..504d5a244e --- /dev/null +++ b/assets/voxygen/voxel/figure/hair/orc/female-0.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:722ff5a49bd37bbc2da3cc1e6ea1f19b2ad38d88fede8dd5c96355a1269009fc +size 58642 diff --git a/assets/voxygen/voxel/figure/hair/orc/female-1.vox b/assets/voxygen/voxel/figure/hair/orc/female-1.vox new file mode 100644 index 0000000000..1af8813a08 --- /dev/null +++ b/assets/voxygen/voxel/figure/hair/orc/female-1.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43b5e82e7fa965429288b1e6985e4449edc9e6a4b8d7386187d62153fd79d630 +size 58266 diff --git a/assets/voxygen/voxel/figure/hair/orc/female-2.vox b/assets/voxygen/voxel/figure/hair/orc/female-2.vox new file mode 100644 index 0000000000..cf5f854aef --- /dev/null +++ b/assets/voxygen/voxel/figure/hair/orc/female-2.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bc1d189819717568b92fc327e98d6c4c096cbe28eeb7595688137a5055a497a +size 58810 diff --git a/assets/voxygen/voxel/figure/hair/orc/female-3.vox b/assets/voxygen/voxel/figure/hair/orc/female-3.vox new file mode 100644 index 0000000000..496c9266d2 --- /dev/null +++ b/assets/voxygen/voxel/figure/hair/orc/female-3.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71ebeb3025d03aa0300a9ce1924932faa5616451e726aa72e573b2aaf2a283b4 +size 59946 diff --git a/assets/voxygen/voxel/figure/hair/orc/female-4.vox b/assets/voxygen/voxel/figure/hair/orc/female-4.vox new file mode 100644 index 0000000000..b38b1b738c --- /dev/null +++ b/assets/voxygen/voxel/figure/hair/orc/female-4.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0032b74cd99c530ff56872324407353fb84b524e03bca1617ed88ab1e61978ba +size 58378 diff --git a/assets/voxygen/voxel/figure/hair/orc/female-5.vox b/assets/voxygen/voxel/figure/hair/orc/female-5.vox new file mode 100644 index 0000000000..c2513264c0 --- /dev/null +++ b/assets/voxygen/voxel/figure/hair/orc/female-5.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f2c75b22f7587adb3960ac15db9841bd249f0fee37fabd3de0859a8e27a0eca +size 60158 diff --git a/assets/voxygen/voxel/figure/hair/orc/female-6.vox b/assets/voxygen/voxel/figure/hair/orc/female-6.vox new file mode 100644 index 0000000000..bbfcfc7b23 --- /dev/null +++ b/assets/voxygen/voxel/figure/hair/orc/female-6.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54950e3b327e36e547467518511baaf04cb99a282488e7da45db88eccba8d7e0 +size 59566 diff --git a/assets/voxygen/voxel/figure/hair/orc/female.vox b/assets/voxygen/voxel/figure/hair/orc/female.vox deleted file mode 100644 index 93e9ab8de6..0000000000 --- a/assets/voxygen/voxel/figure/hair/orc/female.vox +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:db3808a3e095615c2951b7a6e4b3f0263069a3471ecacb92d4cbc49dbff707ce -size 44995 diff --git a/assets/voxygen/voxel/humanoid_head_manifest.ron b/assets/voxygen/voxel/humanoid_head_manifest.ron index c599e1dfbc..9e67fcb95b 100644 --- a/assets/voxygen/voxel/humanoid_head_manifest.ron +++ b/assets/voxygen/voxel/humanoid_head_manifest.ron @@ -27,6 +27,7 @@ Some(("figure.hair.human.male-20", (-3, -4, -7))), ], beard: [ + None, Some(("figure.beard.human.human-0", (4, 6, -2))), Some(("figure.beard.human.human-1", (5, 10, -2))), Some(("figure.beard.human.human-2", (3, 7, -3))), @@ -92,17 +93,24 @@ ], ), (Orc, Female): ( - offset: (-8.0, -3.0, -6.0), - head: ("figure.head.orc.female", (0, 2, 0)), - eyes: ("figure.eyes.orc.female-0", (3, 9, 2)), + offset: (-8.0, -2.5, -6.0), + head: ("figure.head.orc.female", (0, 1, 0)), + eyes: ("figure.eyes.orc.female-0", (3, 8, 2)), hair: [ - Some(("figure.hair.orc.female", (5, -2, 0))), + Some(("figure.hair.orc.female-0", (-2, -8, 0))), + Some(("figure.hair.orc.female-1", (-2, -8, 0))), + Some(("figure.hair.orc.female-2", (-2, -8, 0))), + Some(("figure.hair.orc.female-3", (-2, -8, -4))), + Some(("figure.hair.orc.female-4", (-2, -8, 0))), + Some(("figure.hair.orc.female-5", (-2, -8, -4))), + Some(("figure.hair.orc.female-6", (-2, -8, -4))), ], beard: [None], accessory: [ None, - Some(("figure.accessory.orc.earring-female-0", (2, 5, 1))), - Some(("figure.accessory.orc.warpaint-female-0", (3, 5, 1))), + Some(("figure.accessory.orc.earring-female-0", (2, 4, 1))), + Some(("figure.accessory.orc.warpaint-female-0", (-2, -4, -7))), + Some(("figure.accessory.orc.warpaint-female-1", (-2, -4, -7))), ], ), (Elf, Male): ( @@ -239,6 +247,7 @@ Some(("figure.hair.danari.male-1", (3, 1, 2))), ], beard: [ + None, Some(("figure.beard.danari.danari-0", (4, 6, -1))), ], accessory: [ diff --git a/assets/voxygen/voxel/npc/eagle/female/head.vox b/assets/voxygen/voxel/npc/eagle/female/head.vox new file mode 100644 index 0000000000..3aeffecc8c --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/female/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b36eeef95b39217885e50d9c33d711187a90b1245a088c54d045ea484ca18491 +size 1608 diff --git a/assets/voxygen/voxel/npc/eagle/female/leg_l.vox b/assets/voxygen/voxel/npc/eagle/female/leg_l.vox new file mode 100644 index 0000000000..38e5e2c5c6 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/female/leg_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6e82c2c806c245f8fdebb830b0763a1aa796593c041ad4ace556c8e413f5aa9 +size 55651 diff --git a/assets/voxygen/voxel/npc/eagle/female/leg_r.vox b/assets/voxygen/voxel/npc/eagle/female/leg_r.vox new file mode 100644 index 0000000000..a2ec2f7233 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/female/leg_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ecb3129efdb691a6b81d691bd34e01920bf0c9703d9e76bd6fafaeac978146f +size 55651 diff --git a/assets/voxygen/voxel/npc/eagle/female/tail.vox b/assets/voxygen/voxel/npc/eagle/female/tail.vox new file mode 100644 index 0000000000..f7bfb10410 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/female/tail.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10fe121790e8434a04bcfc1288693d8ac30171aa991a15e7533fcb62290e2368 +size 55675 diff --git a/assets/voxygen/voxel/npc/eagle/female/torso.vox b/assets/voxygen/voxel/npc/eagle/female/torso.vox new file mode 100644 index 0000000000..c299b03331 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/female/torso.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f2df57bf231b5cdf34ce748f51394bc5fa67fff021244408babd2fbb40ce7f3 +size 56619 diff --git a/assets/voxygen/voxel/npc/eagle/female/wing_l.vox b/assets/voxygen/voxel/npc/eagle/female/wing_l.vox new file mode 100644 index 0000000000..c989207c3c --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/female/wing_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9c4bc7aac5811e9189116501858b5a1cf12187e6e08d6798e6810c04154ffdf +size 56027 diff --git a/assets/voxygen/voxel/npc/eagle/female/wing_r.vox b/assets/voxygen/voxel/npc/eagle/female/wing_r.vox new file mode 100644 index 0000000000..b2aa360724 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/female/wing_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65369f781827ace2267b450a5c40027748f1077a1245d5493c166571349af727 +size 56027 diff --git a/assets/voxygen/voxel/npc/eagle/male/head.vox b/assets/voxygen/voxel/npc/eagle/male/head.vox new file mode 100644 index 0000000000..3aeffecc8c --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b36eeef95b39217885e50d9c33d711187a90b1245a088c54d045ea484ca18491 +size 1608 diff --git a/assets/voxygen/voxel/npc/eagle/male/leg_l.vox b/assets/voxygen/voxel/npc/eagle/male/leg_l.vox new file mode 100644 index 0000000000..38e5e2c5c6 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/male/leg_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6e82c2c806c245f8fdebb830b0763a1aa796593c041ad4ace556c8e413f5aa9 +size 55651 diff --git a/assets/voxygen/voxel/npc/eagle/male/leg_r.vox b/assets/voxygen/voxel/npc/eagle/male/leg_r.vox new file mode 100644 index 0000000000..a2ec2f7233 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/male/leg_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ecb3129efdb691a6b81d691bd34e01920bf0c9703d9e76bd6fafaeac978146f +size 55651 diff --git a/assets/voxygen/voxel/npc/eagle/male/tail.vox b/assets/voxygen/voxel/npc/eagle/male/tail.vox new file mode 100644 index 0000000000..f7bfb10410 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/male/tail.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10fe121790e8434a04bcfc1288693d8ac30171aa991a15e7533fcb62290e2368 +size 55675 diff --git a/assets/voxygen/voxel/npc/eagle/male/torso.vox b/assets/voxygen/voxel/npc/eagle/male/torso.vox new file mode 100644 index 0000000000..c299b03331 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/male/torso.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f2df57bf231b5cdf34ce748f51394bc5fa67fff021244408babd2fbb40ce7f3 +size 56619 diff --git a/assets/voxygen/voxel/npc/eagle/male/wing_l.vox b/assets/voxygen/voxel/npc/eagle/male/wing_l.vox new file mode 100644 index 0000000000..c989207c3c --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/male/wing_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9c4bc7aac5811e9189116501858b5a1cf12187e6e08d6798e6810c04154ffdf +size 56027 diff --git a/assets/voxygen/voxel/npc/eagle/male/wing_r.vox b/assets/voxygen/voxel/npc/eagle/male/wing_r.vox new file mode 100644 index 0000000000..b2aa360724 --- /dev/null +++ b/assets/voxygen/voxel/npc/eagle/male/wing_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65369f781827ace2267b450a5c40027748f1077a1245d5493c166571349af727 +size 56027 diff --git a/assets/voxygen/voxel/quadruped_medium_central_manifest.ron b/assets/voxygen/voxel/quadruped_medium_central_manifest.ron index 6afce36256..8e3d3b12d6 100644 --- a/assets/voxygen/voxel/quadruped_medium_central_manifest.ron +++ b/assets/voxygen/voxel/quadruped_medium_central_manifest.ron @@ -386,7 +386,7 @@ central: ("npc.lion.male.ears"), ), tail: ( - offset: (-0.5, -1.0, -8.0), + offset: (-0.5, -1.0, -1.0), central: ("npc.lion.male.tail"), ), ), @@ -417,7 +417,7 @@ ), tail: ( offset: (-0.5, -1.0, -1.0), - central: ("npc.lion.male.tail"), + central: ("npc.lion.female.tail"), ), ), (Tarasque, Male): ( diff --git a/assets/world/structure/dungeon/meso_sewer_temple.vox b/assets/world/structure/dungeon/meso_sewer_temple.vox index a4b07531d5..212170d4ed 100644 --- a/assets/world/structure/dungeon/meso_sewer_temple.vox +++ b/assets/world/structure/dungeon/meso_sewer_temple.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b8245d680ce679cbbe9c88fce5111151a22922623824007a95ca95f382de62e7 +oid sha256:c4c8d26d1273cff385a660bb3d8aaeda94263e77c9fdcda63ceaac7366d9de03 size 1384956 diff --git a/chat-cli/src/main.rs b/chat-cli/src/main.rs index b74c1ea87f..312094231c 100644 --- a/chat-cli/src/main.rs +++ b/chat-cli/src/main.rs @@ -51,7 +51,9 @@ fn main() { println!("Players online: {:?}", client.get_players()); client - .register(comp::Player::new(username, None), password) + .register(username, password, |provider| { + provider == "https://auth.veloren.net" + }) .unwrap(); let (tx, rx) = mpsc::channel(); diff --git a/client/Cargo.toml b/client/Cargo.toml index a67b2db65d..9d649f0b01 100644 --- a/client/Cargo.toml +++ b/client/Cargo.toml @@ -15,3 +15,4 @@ log = "0.4.8" specs = "0.15.1" vek = { version = "0.9.9", features = ["serde"] } hashbrown = { version = "0.6.2", features = ["rayon", "serde", "nightly"] } +authc = { git = "https://gitlab.com/veloren/auth.git", rev = "65571ade0d954a0e0bd995fdb314854ff146ab97" } diff --git a/client/src/error.rs b/client/src/error.rs index 154387e16c..b81e806286 100644 --- a/client/src/error.rs +++ b/client/src/error.rs @@ -1,3 +1,4 @@ +use authc::AuthClientError; use common::net::PostError; #[derive(Debug)] @@ -7,11 +8,18 @@ pub enum Error { ServerTimeout, ServerShutdown, TooManyPlayers, - InvalidAuth, + AlreadyLoggedIn, + AuthErr(String), + AuthClientError(AuthClientError), + AuthServerNotTrusted, //TODO: InvalidAlias, Other(String), } impl From for Error { - fn from(err: PostError) -> Self { Error::Network(err) } + fn from(err: PostError) -> Self { Self::Network(err) } +} + +impl From for Error { + fn from(err: AuthClientError) -> Self { Self::AuthClientError(err) } } diff --git a/client/src/lib.rs b/client/src/lib.rs index 90ecb651c6..6d7b6f7405 100644 --- a/client/src/lib.rs +++ b/client/src/lib.rs @@ -5,6 +5,7 @@ pub mod error; // Reexports pub use crate::error::Error; +pub use authc::AuthClientError; pub use specs::{ join::Join, saveload::{Marker, MarkerAllocator}, @@ -13,10 +14,13 @@ pub use specs::{ use byteorder::{ByteOrder, LittleEndian}; use common::{ - comp::{self, ControlEvent, Controller, ControllerInputs, InventoryManip}, + comp::{ + self, ControlEvent, Controller, ControllerInputs, InventoryManip, InventoryUpdateEvent, + }, + event::{EventBus, SfxEvent, SfxEventItem}, msg::{ validate_chat_msg, ChatMsgValidationError, ClientMsg, ClientState, PlayerListUpdate, - RequestStateError, ServerError, ServerInfo, ServerMsg, MAX_BYTES_CHAT_MSG, + RegisterError, RequestStateError, ServerInfo, ServerMsg, MAX_BYTES_CHAT_MSG, }, net::PostBox, state::State, @@ -39,11 +43,11 @@ use vek::*; // The duration of network inactivity until the player is kicked // @TODO: in the future, this should be configurable on the server // and be provided to the client -const SERVER_TIMEOUT: Duration = Duration::from_secs(20); +const SERVER_TIMEOUT: f64 = 20.0; // After this duration has elapsed, the user will begin getting kick warnings in // their chat window -const SERVER_TIMEOUT_GRACE_PERIOD: Duration = Duration::from_secs(14); +const SERVER_TIMEOUT_GRACE_PERIOD: f64 = 14.0; pub enum Event { Chat { @@ -63,8 +67,8 @@ pub struct Client { postbox: PostBox, - last_server_ping: Instant, - last_server_pong: Instant, + last_server_ping: f64, + last_server_pong: f64, last_ping_delta: f64, tick: u64, @@ -85,13 +89,13 @@ impl Client { let mut postbox = PostBox::to(addr)?; // Wait for initial sync - let (state, entity, server_info, world_map) = match postbox.next_message() { - Some(ServerMsg::InitialSync { + let (state, entity, server_info, world_map) = match postbox.next_message()? { + ServerMsg::InitialSync { entity_package, server_info, time_of_day, world_map: (map_size, world_map), - }) => { + } => { // TODO: Display that versions don't match in Voxygen if server_info.git_hash != common::util::GIT_HASH.to_string() { log::warn!( @@ -104,6 +108,8 @@ impl Client { ); } + log::debug!("Auth Server: {:?}", server_info.auth_provider); + // Initialize `State` let mut state = State::default(); let entity = state.ecs_mut().apply_entity_package(entity_package); @@ -128,9 +134,7 @@ impl Client { (state, entity, server_info, (world_map, map_size)) }, - Some(ServerMsg::Error(ServerError::TooManyPlayers)) => { - return Err(Error::TooManyPlayers); - }, + ServerMsg::TooManyPlayers => return Err(Error::TooManyPlayers), _ => return Err(Error::ServerWentMad), }; @@ -151,8 +155,8 @@ impl Client { postbox, - last_server_ping: Instant::now(), - last_server_pong: Instant::now(), + last_server_ping: 0.0, + last_server_pong: 0.0, last_ping_delta: 0.0, tick: 0, @@ -171,16 +175,40 @@ impl Client { } /// Request a state transition to `ClientState::Registered`. - pub fn register(&mut self, player: comp::Player, password: String) -> Result<(), Error> { - self.postbox - .send_message(ClientMsg::Register { player, password }); + pub fn register( + &mut self, + username: String, + password: String, + mut auth_trusted: impl FnMut(&str) -> bool, + ) -> Result<(), Error> { + // Authentication + let token_or_username = self.server_info.auth_provider.as_ref().map(|addr| + // Query whether this is a trusted auth server + if auth_trusted(&addr) { + Ok(authc::AuthClient::new(addr) + .sign_in(&username, &password)? + .serialize()) + } else { + Err(Error::AuthServerNotTrusted) + } + ).unwrap_or(Ok(username))?; + + self.postbox.send_message(ClientMsg::Register { + view_distance: self.view_distance, + token_or_username, + }); self.client_state = ClientState::Pending; + loop { - match self.postbox.next_message() { - Some(ServerMsg::StateAnswer(Err((RequestStateError::Denied, _)))) => { - break Err(Error::InvalidAuth); + match self.postbox.next_message()? { + ServerMsg::StateAnswer(Err((RequestStateError::RegisterDenied(err), state))) => { + self.client_state = state; + break Err(match err { + RegisterError::AlreadyLoggedIn => Error::AlreadyLoggedIn, + RegisterError::AuthError(err) => Error::AuthErr(err), + }); }, - Some(ServerMsg::StateAnswer(Ok(ClientState::Registered))) => break Ok(()), + ServerMsg::StateAnswer(Ok(ClientState::Registered)) => break Ok(()), _ => {}, } } @@ -194,10 +222,7 @@ impl Client { } /// Send disconnect message to the server - pub fn request_logout(&mut self) { - self.postbox.send_message(ClientMsg::Disconnect); - self.client_state = ClientState::Pending; - } + pub fn request_logout(&mut self) { self.postbox.send_message(ClientMsg::Disconnect); } /// Request a state transition to `ClientState::Registered` from an ingame /// state. @@ -377,13 +402,14 @@ impl Client { } } } + // Handle new messages from the server. frontend_events.append(&mut self.handle_new_messages()?); // 3) Update client local data // 4) Tick the client's LocalState - self.state.tick(dt, add_foreign_systems); + self.state.tick(dt, add_foreign_systems, true); // 5) Terrain let pos = self @@ -479,9 +505,9 @@ impl Client { } // Send a ping to the server once every second - if Instant::now().duration_since(self.last_server_ping) > Duration::from_secs(1) { + if self.state.get_time() - self.last_server_ping > 1. { self.postbox.send_message(ClientMsg::Ping); - self.last_server_ping = Instant::now(); + self.last_server_ping = self.state.get_time(); } // 6) Update the server about the player's physics attributes. @@ -526,16 +552,14 @@ impl Client { // Check that we have an valid connection. // Use the last ping time as a 1s rate limiter, we only notify the user once per // second - if Instant::now().duration_since(self.last_server_ping) > Duration::from_secs(1) { - let duration_since_last_pong = Instant::now().duration_since(self.last_server_pong); + if self.state.get_time() - self.last_server_ping > 1. { + let duration_since_last_pong = self.state.get_time() - self.last_server_pong; // Dispatch a notification to the HUD warning they will be kicked in {n} seconds - if duration_since_last_pong.as_secs() >= SERVER_TIMEOUT_GRACE_PERIOD.as_secs() { - if let Some(seconds_until_kick) = - SERVER_TIMEOUT.checked_sub(duration_since_last_pong) - { + if duration_since_last_pong >= SERVER_TIMEOUT_GRACE_PERIOD { + if self.state.get_time() - duration_since_last_pong > 0. { frontend_events.push(Event::DisconnectionNotification( - seconds_until_kick.as_secs(), + (self.state.get_time() - duration_since_last_pong).round() as u64, )); } } @@ -546,10 +570,8 @@ impl Client { if new_msgs.len() > 0 { for msg in new_msgs { match msg { - ServerMsg::Error(e) => match e { - ServerError::TooManyPlayers => return Err(Error::ServerWentMad), - ServerError::InvalidAuth => return Err(Error::InvalidAuth), - //TODO: ServerError::InvalidAlias => return Err(Error::InvalidAlias), + ServerMsg::TooManyPlayers => { + return Err(Error::ServerWentMad); }, ServerMsg::Shutdown => return Err(Error::ServerShutdown), ServerMsg::InitialSync { .. } => return Err(Error::ServerWentMad), @@ -589,11 +611,10 @@ impl Client { ServerMsg::Ping => self.postbox.send_message(ClientMsg::Pong), ServerMsg::Pong => { - self.last_server_pong = Instant::now(); + self.last_server_pong = self.state.get_time(); - self.last_ping_delta = Instant::now() - .duration_since(self.last_server_ping) - .as_secs_f64(); + self.last_ping_delta = + (self.state.get_time() - self.last_server_ping).round(); }, ServerMsg::ChatMsg { message, chat_type } => { frontend_events.push(Event::Chat { message, chat_type }) @@ -669,8 +690,26 @@ impl Client { self.state.write_component(entity, character_state); } }, - ServerMsg::InventoryUpdate(inventory) => { - self.state.write_component(self.entity, inventory) + ServerMsg::InventoryUpdate(inventory, event) => { + match event { + InventoryUpdateEvent::CollectFailed => { + frontend_events.push(Event::Chat { + message: String::from( + "Failed to collect item. Your inventory may be full!", + ), + chat_type: ChatType::Meta, + }) + }, + _ => { + self.state.write_component(self.entity, inventory); + }, + } + + self.state + .ecs() + .read_resource::>() + .emitter() + .emit(SfxEventItem::at_player_position(SfxEvent::Inventory(event))); }, ServerMsg::TerrainChunkUpdate { key, chunk } => { if let Ok(chunk) = chunk { @@ -687,10 +726,6 @@ impl Client { self.client_state = state; }, ServerMsg::StateAnswer(Err((error, state))) => { - if error == RequestStateError::Denied { - warn!("Connection denied!"); - return Err(Error::InvalidAuth); - } warn!( "StateAnswer: {:?}. Server thinks client is in state {:?}.", error, state @@ -698,13 +733,14 @@ impl Client { }, ServerMsg::Disconnect => { frontend_events.push(Event::Disconnect); + self.postbox.send_message(ClientMsg::Terminate); }, } } } else if let Some(err) = self.postbox.error() { return Err(err.into()); // We regularily ping in the tick method - } else if Instant::now().duration_since(self.last_server_pong) > SERVER_TIMEOUT { + } else if self.state.get_time() - self.last_server_pong > SERVER_TIMEOUT { return Err(Error::ServerTimeout); } Ok(frontend_events) diff --git a/common/Cargo.toml b/common/Cargo.toml index f28f688c43..f70c8c1b6c 100644 --- a/common/Cargo.toml +++ b/common/Cargo.toml @@ -30,9 +30,10 @@ hashbrown = { version = "0.6.2", features = ["rayon", "serde", "nightly"] } find_folder = "0.3.0" parking_lot = "0.9.0" crossbeam = "=0.7.2" -notify = "5.0.0-pre.1" +notify = "5.0.0-pre.2" indexmap = "1.3.0" sum_type = "0.2.0" +authc = { git = "https://gitlab.com/veloren/auth.git", rev = "65571ade0d954a0e0bd995fdb314854ff146ab97" } [dev-dependencies] criterion = "0.3" diff --git a/common/src/comp/body/bird_medium.rs b/common/src/comp/body/bird_medium.rs index 477250c767..6447925f3a 100644 --- a/common/src/comp/body/bird_medium.rs +++ b/common/src/comp/body/bird_medium.rs @@ -31,6 +31,7 @@ pub enum Species { Chicken = 1, Goose = 2, Peacock = 3, + Eagle = 4, } /// Data representing per-species generic data. @@ -42,6 +43,7 @@ pub struct AllSpecies { pub chicken: SpeciesMeta, pub goose: SpeciesMeta, pub peacock: SpeciesMeta, + pub eagle: SpeciesMeta, } impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies { @@ -54,15 +56,17 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies Species::Chicken => &self.chicken, Species::Goose => &self.goose, Species::Peacock => &self.peacock, + Species::Eagle => &self.eagle, } } } -pub const ALL_SPECIES: [Species; 4] = [ +pub const ALL_SPECIES: [Species; 5] = [ Species::Duck, Species::Chicken, Species::Goose, Species::Peacock, + Species::Eagle, ]; impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies { diff --git a/common/src/comp/body/humanoid.rs b/common/src/comp/body/humanoid.rs index 3239141073..557956e790 100644 --- a/common/src/comp/body/humanoid.rs +++ b/common/src/comp/body/humanoid.rs @@ -131,10 +131,10 @@ pub const DANARI_HAIR_COLORS: [(u8, u8, u8); 11] = [ //(228, 208, 147), // Gold Blonde //(228, 223, 141), // Platinum Blonde (199, 131, 58), // Summer Blonde - (107, 76, 51), // Oak Brown - //(203, 154, 98), // Light Brown - (64, 32, 18), // Chocolate Brown - (86, 72, 71), // Ash Brown + (107, 76, 51), // Oak Skin4 + //(203, 154, 98), // Light Skin4 + (64, 32, 18), // Skin7 Skin4 + (86, 72, 71), // Ash Skin4 (57, 56, 61), // Raven Black (101, 83, 95), // Matte Purple (101, 57, 90), // Witch Purple @@ -148,10 +148,10 @@ pub const DWARF_HAIR_COLORS: [(u8, u8, u8); 20] = [ (228, 208, 147), // Gold Blonde (228, 223, 141), // Platinum Blonde (199, 131, 58), // Summer Blonde - (107, 76, 51), // Oak Brown - (203, 154, 98), // Light Brown - (64, 32, 18), // Chocolate Brown - (86, 72, 71), // Ash Brown + (107, 76, 51), // Oak Skin4 + (203, 154, 98), // Light Skin4 + (64, 32, 18), // Skin7 Skin4 + (86, 72, 71), // Ash Skin4 (57, 56, 61), // Raven Black (101, 83, 95), // Matte Purple (101, 57, 90), // Witch Purple @@ -172,10 +172,10 @@ pub const ELF_HAIR_COLORS: [(u8, u8, u8); 23] = [ (228, 208, 147), // Gold Blonde (228, 223, 141), // Platinum Blonde (199, 131, 58), // Summer Blonde - (107, 76, 51), // Oak Brown - (203, 154, 98), // Light Brown - (64, 32, 18), // Chocolate Brown - (86, 72, 71), // Ash Brown + (107, 76, 51), // Oak Skin4 + (203, 154, 98), // Light Skin4 + (64, 32, 18), // Skin7 Skin4 + (86, 72, 71), // Ash Skin4 (57, 56, 61), // Raven Black (101, 83, 95), // Matte Purple (101, 57, 90), // Witch Purple @@ -195,10 +195,10 @@ pub const HUMAN_HAIR_COLORS: [(u8, u8, u8); 21] = [ (228, 208, 147), // Gold Blonde (228, 223, 141), // Platinum Blonde (199, 131, 58), // Summer Blonde - (107, 76, 51), // Oak Brown - (203, 154, 98), // Light Brown - (64, 32, 18), // Chocolate Brown - (86, 72, 71), // Ash Brown + (107, 76, 51), // Oak Skin4 + (203, 154, 98), // Light Skin4 + (64, 32, 18), // Skin7 Skin4 + (86, 72, 71), // Ash Skin4 (57, 56, 61), // Raven Black (101, 83, 95), // Matte Purple (101, 57, 90), // Witch Purple @@ -215,11 +215,11 @@ pub const HUMAN_HAIR_COLORS: [(u8, u8, u8); 21] = [ ]; pub const ORC_HAIR_COLORS: [(u8, u8, u8); 10] = [ (66, 66, 59), // Wise Grey - //(107, 76, 51), // Oak Brown - //(203, 154, 98), // Light Brown - (64, 32, 18), // Chocolate Brown - (54, 30, 26), // Dark Chocolate - (86, 72, 71), // Ash Brown + //(107, 76, 51), // Oak Skin4 + //(203, 154, 98), // Light Skin4 + (64, 32, 18), // Skin7 Skin4 + (54, 30, 26), // Dark Skin7 + (86, 72, 71), // Ash Skin4 (57, 56, 61), // Raven Black (101, 83, 95), // Matte Purple (101, 57, 90), // Witch Purple @@ -232,10 +232,10 @@ pub const UNDEAD_HAIR_COLORS: [(u8, u8, u8); 21] = [ (228, 208, 147), // Gold Blonde //(228, 223, 141), // Platinum Blonde (199, 131, 58), // Summer Blonde - (107, 76, 51), // Oak Brown - (203, 154, 98), // Light Brown - (64, 32, 18), // Chocolate Brown - (86, 72, 71), // Ash Brown + (107, 76, 51), // Oak Skin4 + (203, 154, 98), // Light Skin4 + (64, 32, 18), // Skin7 Skin4 + (86, 72, 71), // Ash Skin4 (57, 56, 61), // Raven Black (101, 83, 95), // Matte Purple (101, 57, 90), // Witch Purple @@ -261,30 +261,59 @@ pub const DANARI_SKIN_COLORS: [Skin; 4] = [ Skin::DanariThree, Skin::DanariFour, ]; -pub const DWARF_SKIN_COLORS: [Skin; 5] = [ - Skin::Pale, - Skin::White, - Skin::Tanned, +pub const DWARF_SKIN_COLORS: [Skin; 14] = [ + Skin::Skin1, + Skin::Skin2, + Skin::Skin3, + Skin::Skin4, + Skin::Skin5, + Skin::Skin6, + Skin::Skin7, + Skin::Skin8, + Skin::Skin9, + Skin::Skin10, + Skin::Skin11, + Skin::Skin12, Skin::Iron, Skin::Steel, ]; -pub const ELF_SKIN_COLORS: [Skin; 7] = [ - Skin::Pale, +pub const ELF_SKIN_COLORS: [Skin; 14] = [ + Skin::Skin1, + Skin::Skin2, + Skin::Skin3, + Skin::Skin5, + Skin::Skin6, + Skin::Skin7, + Skin::Skin8, + Skin::Skin9, + Skin::Skin10, + Skin::Skin11, + Skin::Skin12, Skin::ElfOne, Skin::ElfTwo, Skin::ElfThree, - Skin::White, - Skin::Tanned, - Skin::TannedBrown, ]; -pub const HUMAN_SKIN_COLORS: [Skin; 5] = [ - Skin::Pale, - Skin::White, - Skin::Tanned, - Skin::TannedBrown, - Skin::TannedDarkBrown, +pub const HUMAN_SKIN_COLORS: [Skin; 18] = [ + Skin::Skin1, + Skin::Skin2, + Skin::Skin3, + Skin::Skin4, + Skin::Skin5, + Skin::Skin6, + Skin::Skin7, + Skin::Skin8, + Skin::Skin9, + Skin::Skin10, + Skin::Skin11, + Skin::Skin12, + Skin::Skin13, + Skin::Skin14, + Skin::Skin15, + Skin::Skin16, + Skin::Skin17, + Skin::Skin18, ]; -pub const ORC_SKIN_COLORS: [Skin; 4] = [Skin::OrcOne, Skin::OrcTwo, Skin::OrcThree, Skin::Brown]; +pub const ORC_SKIN_COLORS: [Skin; 4] = [Skin::OrcOne, Skin::OrcTwo, Skin::OrcThree, Skin::OrcFour]; pub const UNDEAD_SKIN_COLORS: [Skin; 3] = [Skin::UndeadOne, Skin::UndeadTwo, Skin::UndeadThree]; // Eye colors @@ -293,22 +322,31 @@ pub const DANARI_EYE_COLORS: [EyeColor; 3] = [ EyeColor::LoyalBrown, EyeColor::ViciousRed, ]; -pub const DWARF_EYE_COLORS: [EyeColor; 3] = [ +pub const DWARF_EYE_COLORS: [EyeColor; 4] = [ EyeColor::CuriousGreen, EyeColor::LoyalBrown, EyeColor::NobleBlue, + EyeColor::CornflowerBlue, ]; -pub const ELF_EYE_COLORS: [EyeColor; 3] = [ +pub const ELF_EYE_COLORS: [EyeColor; 4] = [ EyeColor::NobleBlue, + EyeColor::CornflowerBlue, EyeColor::CuriousGreen, EyeColor::LoyalBrown, ]; -pub const HUMAN_EYE_COLORS: [EyeColor; 3] = [ +pub const HUMAN_EYE_COLORS: [EyeColor; 4] = [ EyeColor::NobleBlue, + EyeColor::CornflowerBlue, EyeColor::CuriousGreen, EyeColor::LoyalBrown, ]; -pub const ORC_EYE_COLORS: [EyeColor; 2] = [EyeColor::LoyalBrown, EyeColor::ExoticPurple]; +pub const ORC_EYE_COLORS: [EyeColor; 5] = [ + EyeColor::LoyalBrown, + EyeColor::ExoticPurple, + EyeColor::AmberOrange, + EyeColor::PineGreen, + EyeColor::CornflowerBlue, +]; pub const UNDEAD_EYE_COLORS: [EyeColor; 5] = [ EyeColor::ViciousRed, EyeColor::PumpkinOrange, @@ -365,7 +403,7 @@ impl Race { self.skin_colors() .get(val as usize) .copied() - .unwrap_or(Skin::Tanned) + .unwrap_or(Skin::Skin3) } pub fn num_skin_colors(self) -> u8 { self.skin_colors().len() as u8 } @@ -389,7 +427,7 @@ impl Race { (Race::Elf, BodyType::Male) => 4, (Race::Human, BodyType::Female) => 19, (Race::Human, BodyType::Male) => 17, - (Race::Orc, BodyType::Female) => 1, + (Race::Orc, BodyType::Female) => 7, (Race::Orc, BodyType::Male) => 8, (Race::Undead, BodyType::Female) => 4, (Race::Undead, BodyType::Male) => 3, @@ -406,7 +444,7 @@ impl Race { (Race::Elf, BodyType::Male) => 1, (Race::Human, BodyType::Female) => 1, (Race::Human, BodyType::Male) => 1, - (Race::Orc, BodyType::Female) => 3, + (Race::Orc, BodyType::Female) => 4, (Race::Orc, BodyType::Male) => 5, (Race::Undead, BodyType::Female) => 1, (Race::Undead, BodyType::Male) => 1, @@ -534,6 +572,10 @@ pub enum EyeColor { MagicPurple = 7, ToxicGreen = 8, ExoticPurple = 9, + SulfurYellow = 10, + AmberOrange = 11, + PineGreen = 12, + CornflowerBlue = 13, } impl EyeColor { pub fn light_rgb(self) -> Rgb { @@ -548,6 +590,10 @@ impl EyeColor { EyeColor::MagicPurple => Rgb::new(137, 4, 177), EyeColor::ToxicGreen => Rgb::new(1, 223, 1), EyeColor::ExoticPurple => Rgb::new(95, 32, 111), + EyeColor::SulfurYellow => Rgb::new(235, 198, 94), + EyeColor::AmberOrange => Rgb::new(137, 46, 1), + EyeColor::PineGreen => Rgb::new(0, 78, 56), + EyeColor::CornflowerBlue => Rgb::new(18, 66, 90), } } @@ -563,6 +609,10 @@ impl EyeColor { EyeColor::MagicPurple => Rgb::new(110, 3, 143), EyeColor::ToxicGreen => Rgb::new(1, 185, 1), EyeColor::ExoticPurple => Rgb::new(69, 23, 80), + EyeColor::SulfurYellow => Rgb::new(209, 176, 84), + EyeColor::AmberOrange => Rgb::new(112, 40, 1), + EyeColor::PineGreen => Rgb::new(0, 54, 38), + EyeColor::CornflowerBlue => Rgb::new(13, 47, 64), } } @@ -580,12 +630,12 @@ pub const ALL_ACCESSORIES: [Accessory; 2] = [Accessory::Nothing, Accessory::Some #[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)] #[repr(u32)] pub enum Skin { - Pale = 0, - White = 1, - Tanned = 2, - Brown = 3, - TannedBrown = 4, - TannedDarkBrown = 5, + Skin1 = 0, + Skin2 = 1, + Skin3 = 2, + Skin4 = 3, + Skin5 = 4, + Skin6 = 5, Iron = 6, Steel = 7, DanariOne = 8, @@ -601,16 +651,41 @@ pub enum Skin { UndeadOne = 18, UndeadTwo = 19, UndeadThree = 20, + Skin7 = 21, + Skin8 = 22, + Skin9 = 23, + Skin10 = 24, + Skin11 = 25, + Skin12 = 26, + Skin13 = 27, + Skin14 = 28, + Skin15 = 29, + Skin16 = 30, + Skin17 = 31, + Skin18 = 32, + OrcFour = 33, } impl Skin { pub fn rgb(self) -> Rgb { let color = match self { - Self::Pale => (252, 211, 179), - Self::White => (253, 195, 164), - Self::Tanned => (222, 181, 151), - Self::Brown => (123, 80, 45), - Self::TannedBrown => (135, 70, 50), - Self::TannedDarkBrown => (116, 61, 43), + Self::Skin1 => (255, 229, 200), + Self::Skin2 => (255, 218, 190), + Self::Skin3 => (255, 206, 180), + Self::Skin4 => (255, 195, 170), + Self::Skin5 => (240, 184, 160), + Self::Skin6 => (225, 172, 150), + Self::Skin7 => (210, 161, 140), + Self::Skin8 => (195, 149, 130), + Self::Skin9 => (180, 138, 120), + Self::Skin10 => (165, 126, 110), + Self::Skin11 => (150, 114, 100), + Self::Skin12 => (135, 103, 90), + Self::Skin13 => (120, 92, 80), + Self::Skin14 => (105, 80, 70), + Self::Skin15 => (90, 69, 60), + Self::Skin16 => (75, 57, 50), + Self::Skin17 => (60, 46, 40), + Self::Skin18 => (45, 34, 30), Self::Iron => (135, 113, 95), Self::Steel => (108, 94, 86), Self::DanariOne => (104, 168, 196), @@ -623,6 +698,7 @@ impl Skin { Self::OrcOne => (61, 130, 42), Self::OrcTwo => (82, 117, 36), Self::OrcThree => (71, 94, 42), + Self::OrcFour => (97, 54, 29), Self::UndeadOne => (240, 243, 239), Self::UndeadTwo => (178, 178, 178), Self::UndeadThree => (145, 135, 121), @@ -632,12 +708,24 @@ impl Skin { pub fn light_rgb(self) -> Rgb { let color = match self { - Self::Pale => (255, 227, 193), - Self::White => (255, 210, 180), - Self::Tanned => (239, 197, 164), - Self::Brown => (150, 104, 68), - Self::TannedBrown => (148, 85, 64), - Self::TannedDarkBrown => (132, 74, 56), + Self::Skin1 => (255, 229, 200), + Self::Skin2 => (255, 218, 190), + Self::Skin3 => (255, 206, 180), + Self::Skin4 => (255, 195, 170), + Self::Skin5 => (240, 184, 160), + Self::Skin6 => (225, 172, 150), + Self::Skin7 => (210, 161, 140), + Self::Skin8 => (195, 149, 130), + Self::Skin9 => (180, 138, 120), + Self::Skin10 => (165, 126, 110), + Self::Skin11 => (150, 114, 100), + Self::Skin12 => (135, 103, 90), + Self::Skin13 => (120, 92, 80), + Self::Skin14 => (105, 80, 70), + Self::Skin15 => (90, 69, 60), + Self::Skin16 => (75, 57, 50), + Self::Skin17 => (60, 46, 40), + Self::Skin18 => (45, 34, 30), Self::Iron => (144, 125, 106), Self::Steel => (120, 107, 99), Self::DanariOne => (116, 176, 208), @@ -650,6 +738,7 @@ impl Skin { Self::OrcOne => (83, 165, 56), Self::OrcTwo => (92, 132, 46), Self::OrcThree => (84, 110, 54), + Self::OrcFour => (97, 54, 29), Self::UndeadOne => (254, 252, 251), Self::UndeadTwo => (190, 192, 191), Self::UndeadThree => (160, 151, 134), @@ -659,12 +748,24 @@ impl Skin { pub fn dark_rgb(self) -> Rgb { let color = match self { - Self::Pale => (229, 192, 163), - Self::White => (239, 179, 150), - Self::Tanned => (208, 167, 135), - Self::Brown => (106, 63, 30), - Self::TannedBrown => (122, 58, 40), - Self::TannedDarkBrown => (100, 47, 32), + Self::Skin1 => (242, 217, 189), + Self::Skin2 => (242, 207, 189), + Self::Skin3 => (242, 197, 172), + Self::Skin4 => (242, 186, 162), + Self::Skin5 => (212, 173, 150), + Self::Skin6 => (212, 163, 142), + Self::Skin7 => (196, 151, 132), + Self::Skin8 => (181, 139, 121), + Self::Skin9 => (168, 129, 113), + Self::Skin10 => (153, 117, 103), + Self::Skin11 => (138, 105, 92), + Self::Skin12 => (122, 93, 82), + Self::Skin13 => (107, 82, 72), + Self::Skin14 => (92, 70, 62), + Self::Skin15 => (77, 59, 51), + Self::Skin16 => (61, 47, 41), + Self::Skin17 => (48, 37, 32), + Self::Skin18 => (33, 25, 22), Self::Iron => (124, 99, 82), Self::Steel => (96, 81, 72), Self::DanariOne => (92, 155, 183), @@ -677,6 +778,7 @@ impl Skin { Self::OrcOne => (55, 114, 36), Self::OrcTwo => (70, 104, 29), Self::OrcThree => (60, 83, 32), + Self::OrcFour => (84, 47, 25), Self::UndeadOne => (229, 231, 230), Self::UndeadTwo => (165, 166, 164), Self::UndeadThree => (130, 122, 106), diff --git a/common/src/comp/inventory/item.rs b/common/src/comp/inventory/item.rs index da958ee9b9..dd25ef9e4f 100644 --- a/common/src/comp/inventory/item.rs +++ b/common/src/comp/inventory/item.rs @@ -90,7 +90,7 @@ pub enum Armor { Necklace, } -#[derive(Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)] +#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)] pub enum Consumable { Apple, Cheese, diff --git a/common/src/comp/inventory/mod.rs b/common/src/comp/inventory/mod.rs index f6833ff923..6861e59d01 100644 --- a/common/src/comp/inventory/mod.rs +++ b/common/src/comp/inventory/mod.rs @@ -1,12 +1,16 @@ pub mod item; // Reexports -pub use item::{Debug, Item, ItemKind, Tool}; +pub use item::{Consumable, Debug, Item, ItemKind, Tool}; use crate::assets; -use specs::{Component, HashMapStorage, NullStorage}; +use specs::{Component, FlaggedStorage, HashMapStorage}; +use specs_idvs::IDVStorage; use std::ops::Not; +// The limit on distance between the entity and a collectible (squared) +pub const MAX_PICKUP_RANGE_SQR: f32 = 64.0; + #[derive(Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)] pub struct Inventory { pub slots: Vec>, @@ -136,12 +140,38 @@ impl Component for Inventory { type Storage = HashMapStorage; } -// ForceUpdate +#[derive(Copy, Clone, Debug, Hash, Eq, PartialEq, Serialize, Deserialize)] +pub enum InventoryUpdateEvent { + Init, + Used, + Consumed(Consumable), + Gave, + Given, + Swapped, + Dropped, + Collected, + CollectFailed, + Possession, + Debug, +} + +impl Default for InventoryUpdateEvent { + fn default() -> Self { Self::Init } +} + #[derive(Copy, Clone, Debug, Default, Serialize, Deserialize)] -pub struct InventoryUpdate; +pub struct InventoryUpdate { + event: InventoryUpdateEvent, +} + +impl InventoryUpdate { + pub fn new(event: InventoryUpdateEvent) -> Self { Self { event } } + + pub fn event(&self) -> InventoryUpdateEvent { self.event } +} impl Component for InventoryUpdate { - type Storage = NullStorage; + type Storage = FlaggedStorage>; } #[cfg(test)] mod test; diff --git a/common/src/comp/mod.rs b/common/src/comp/mod.rs index 24b1be9efb..1c49afab0b 100644 --- a/common/src/comp/mod.rs +++ b/common/src/comp/mod.rs @@ -28,7 +28,9 @@ pub use controller::{ }; pub use energy::{Energy, EnergySource}; pub use inputs::CanBuild; -pub use inventory::{item, Inventory, InventoryUpdate, Item, ItemKind}; +pub use inventory::{ + item, Inventory, InventoryUpdate, InventoryUpdateEvent, Item, ItemKind, MAX_PICKUP_RANGE_SQR, +}; pub use last::Last; pub use location::{Waypoint, WaypointArea}; pub use phys::{ForceUpdate, Gravity, Mass, Ori, PhysicsState, Pos, Scale, Sticky, Vel}; diff --git a/common/src/comp/player.rs b/common/src/comp/player.rs index 2078b0efb8..b7a6aa1a3d 100644 --- a/common/src/comp/player.rs +++ b/common/src/comp/player.rs @@ -1,3 +1,4 @@ +use authc::Uuid; use specs::{Component, FlaggedStorage, NullStorage}; use specs_idvs::IDVStorage; @@ -7,20 +8,26 @@ const MAX_ALIAS_LEN: usize = 32; pub struct Player { pub alias: String, pub view_distance: Option, + uuid: Uuid, } impl Player { - pub fn new(alias: String, view_distance: Option) -> Self { + pub fn new(alias: String, view_distance: Option, uuid: Uuid) -> Self { Self { alias, view_distance, + uuid, } } - pub fn is_valid(&self) -> bool { - self.alias.chars().all(|c| c.is_alphanumeric() || c == '_') - && self.alias.len() <= MAX_ALIAS_LEN + pub fn is_valid(&self) -> bool { Self::alias_is_valid(&self.alias) } + + pub fn alias_is_valid(alias: &str) -> bool { + alias.chars().all(|c| c.is_alphanumeric() || c == '_') && alias.len() <= MAX_ALIAS_LEN } + + /// Not to be confused with uid + pub fn uuid(&self) -> Uuid { self.uuid } } impl Component for Player { diff --git a/common/src/event.rs b/common/src/event.rs index 919ca04c45..0ba59b7274 100644 --- a/common/src/event.rs +++ b/common/src/event.rs @@ -1,5 +1,5 @@ use crate::{comp, sync::Uid}; -use comp::item::Tool; +use comp::{item::Tool, InventoryUpdateEvent}; use parking_lot::Mutex; use serde::Deserialize; use specs::Entity as EcsEntity; @@ -9,22 +9,26 @@ use vek::*; pub struct SfxEventItem { pub sfx: SfxEvent, pub pos: Option>, + pub vol: Option, } impl SfxEventItem { - pub fn new(sfx: SfxEvent, pos: Option>) -> Self { Self { sfx, pos } } + pub fn new(sfx: SfxEvent, pos: Option>, vol: Option) -> Self { + Self { sfx, pos, vol } + } - pub fn at_player_position(sfx: SfxEvent) -> Self { Self { sfx, pos: None } } + pub fn at_player_position(sfx: SfxEvent) -> Self { + Self { + sfx, + pos: None, + vol: None, + } + } } #[derive(Copy, Clone, Debug, PartialEq, Deserialize, Hash, Eq)] pub enum SfxEvent { Idle, - PlaceBlock, - RemoveBlock, - OpenChest, - ChatTellReceived, - OpenBag, Run, Roll, Climb, @@ -36,10 +40,9 @@ pub enum SfxEvent { Fall, ExperienceGained, LevelUp, - LightLantern, - ExtinguishLantern, - Attack(Tool), - AttackWolf, + Wield(Tool), + Unwield(Tool), + Inventory(InventoryUpdateEvent), } pub enum LocalEvent { diff --git a/common/src/msg/client.rs b/common/src/msg/client.rs index b4022483ad..2b2ec63f33 100644 --- a/common/src/msg/client.rs +++ b/common/src/msg/client.rs @@ -4,8 +4,8 @@ use vek::*; #[derive(Debug, Clone, Serialize, Deserialize)] pub enum ClientMsg { Register { - player: comp::Player, - password: String, + view_distance: Option, + token_or_username: String, }, Character { name: String, @@ -35,4 +35,5 @@ pub enum ClientMsg { key: Vec2, }, Disconnect, + Terminate, } diff --git a/common/src/msg/mod.rs b/common/src/msg/mod.rs index 1baee67e15..1c04fece94 100644 --- a/common/src/msg/mod.rs +++ b/common/src/msg/mod.rs @@ -6,7 +6,7 @@ pub mod server; pub use self::{ client::ClientMsg, ecs_packet::EcsCompPacket, - server::{PlayerListUpdate, RequestStateError, ServerError, ServerInfo, ServerMsg}, + server::{PlayerListUpdate, RegisterError, RequestStateError, ServerInfo, ServerMsg}, }; #[derive(Debug, Clone, Copy, PartialEq, Serialize, Deserialize)] diff --git a/common/src/msg/server.rs b/common/src/msg/server.rs index a9244b15f6..c517eec665 100644 --- a/common/src/msg/server.rs +++ b/common/src/msg/server.rs @@ -4,23 +4,17 @@ use crate::{ terrain::{Block, TerrainChunk}, ChatType, }; +use authc::AuthClientError; use hashbrown::HashMap; use vek::*; -#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)] -pub enum RequestStateError { - Denied, - Already, - Impossible, - WrongMessage, -} - #[derive(Debug, Clone, Serialize, Deserialize)] pub struct ServerInfo { pub name: String, pub description: String, pub git_hash: String, pub git_date: String, + pub auth_provider: Option, } #[derive(Debug, Clone, Serialize, Deserialize)] @@ -71,24 +65,37 @@ pub enum ServerMsg { entity: u64, character_state: comp::CharacterState, }, - InventoryUpdate(comp::Inventory), + InventoryUpdate(comp::Inventory, comp::InventoryUpdateEvent), TerrainChunkUpdate { key: Vec2, chunk: Result, ()>, }, TerrainBlockUpdates(HashMap, Block>), - Error(ServerError), Disconnect, Shutdown, + TooManyPlayers, } -#[derive(Debug, Clone, Serialize, Deserialize)] -pub enum ServerError { - TooManyPlayers, - InvalidAuth, +#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)] +pub enum RequestStateError { + RegisterDenied(RegisterError), + Denied, + Already, + Impossible, + WrongMessage, +} + +#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)] +pub enum RegisterError { + AlreadyLoggedIn, + AuthError(String), //TODO: InvalidAlias, } +impl From for RegisterError { + fn from(err: AuthClientError) -> Self { Self::AuthError(err.to_string()) } +} + impl ServerMsg { pub fn chat(message: String) -> ServerMsg { ServerMsg::ChatMsg { diff --git a/common/src/net/post2.rs b/common/src/net/post2.rs index bae88d25f2..ee9e7303e5 100644 --- a/common/src/net/post2.rs +++ b/common/src/net/post2.rs @@ -119,16 +119,16 @@ impl PostBox { pub fn send_message(&mut self, msg: S) { let _ = self.send_tx.send(msg); } - pub fn next_message(&mut self) -> Option { - if self.error.is_some() { - return None; + pub fn next_message(&mut self) -> Result { + if let Some(e) = self.error.clone() { + return Err(e); } - match self.recv_rx.recv().ok()? { - Ok(msg) => Some(msg), + match self.recv_rx.recv().map_err(|_| Error::ChannelFailure)? { + Ok(msg) => Ok(msg), Err(e) => { - self.error = Some(e); - None + self.error = Some(e.clone()); + Err(e) }, } } diff --git a/common/src/state.rs b/common/src/state.rs index c657785b25..0fbd3202d0 100644 --- a/common/src/state.rs +++ b/common/src/state.rs @@ -286,8 +286,35 @@ impl State { } } + // Run RegionMap tick to update entity region occupancy + pub fn update_region_map(&self) { + self.ecs.write_resource::().tick( + self.ecs.read_storage::(), + self.ecs.read_storage::(), + self.ecs.entities(), + ); + } + + // Apply terrain changes + pub fn apply_terrain_changes(&self) { + let mut terrain = self.ecs.write_resource::(); + let mut modified_blocks = std::mem::replace( + &mut self.ecs.write_resource::().blocks, + Default::default(), + ); + // Apply block modifications + // Only include in `TerrainChanges` if successful + modified_blocks.retain(|pos, block| terrain.set(*pos, *block).is_ok()); + self.ecs.write_resource::().modified_blocks = modified_blocks; + } + /// Execute a single tick, simulating the game state by the given duration. - pub fn tick(&mut self, dt: Duration, add_foreign_systems: impl Fn(&mut DispatcherBuilder)) { + pub fn tick( + &mut self, + dt: Duration, + add_foreign_systems: impl Fn(&mut DispatcherBuilder), + update_terrain_and_regions: bool, + ) { // Change the time accordingly. self.ecs.write_resource::().0 += dt.as_secs_f64() * DAY_CYCLE_FACTOR; self.ecs.write_resource::