Commit Graph

2805 Commits

Author SHA1 Message Date
jshipsey
31208e29ee run anim tweaks 2021-02-27 01:42:45 -05:00
unknown
559ece5ede More npcs work 2021-02-27 01:42:45 -05:00
unknown
6f18d16aa2 Add new quadmeds npcs with rough offsets 2021-02-27 01:42:44 -05:00
Snowram
ebfb59f041 Trims skeletal attributes 2021-02-27 01:42:44 -05:00
Snowram
f48fea57f4 Sahagin, Adlet npcs 2021-02-27 01:42:43 -05:00
jshipsey
7cf723bb9d gnome 2021-02-27 01:42:43 -05:00
jshipsey
266986626d biped_small setup 2021-02-27 01:42:43 -05:00
Samuel Keiffer
8e07174c1d Merge branch 'aweinstock/coin-item' into 'master'
Add a coin item and make amounts visible on dropped items.

See merge request veloren/veloren!1821
2021-02-26 04:17:12 +00:00
Samuel Keiffer
6af9e58965 Merge branch 'add-gemu-models' into 'master'
Add sword and bow models from backlog

See merge request veloren/veloren!1818
2021-02-26 02:59:51 +00:00
Avi Weinstock
7d2e8f72eb Add a coin item and make amounts visible on dropped items. 2021-02-25 21:31:30 -05:00
Avi Weinstock
e1484c28c0 Finish plumbing MaterialStatsManifest. Fix issue with speed clamping when recursing through components. Improve statblocks in item tooltips. 2021-02-25 15:26:49 -05:00
Sam
b0b4a07b9e Bows 2021-02-24 20:37:43 -05:00
Sam
ee5c9d78ca Swords 2021-02-24 18:54:06 -05:00
Avi Weinstock
78014d7d3b Put material stats in their own manifest, and multiply a form's stats by the weighted average of the material multipliers. 2021-02-23 15:49:34 -05:00
Avi Weinstock
4e57678f34 Support modular weapon components made from a tagged material using the material as a multiplier. 2021-02-23 15:31:51 -05:00
Snowram
14c252d8b2 Merge branch 'snowram/turret' into 'master'
Object animation, beam fixes, turret implementation

See merge request veloren/veloren!1805
2021-02-23 20:16:56 +00:00
Samuel Keiffer
e1be8dbcd9 Merge branch 'aweinstock/quickfix-sword-spin-speed' into 'master'
Fix description for the sword spin speed skill tree upgrade (previously it was...

See merge request veloren/veloren!1814
2021-02-23 03:14:44 +00:00
Imbris
f33d3873b4 Merge branch 'aweinstock/modular-weapon-rigging' into 'master'
Support modular weapon voxel meshes being made by assembling their components.

See merge request veloren/veloren!1806
2021-02-23 00:45:26 +00:00
Avi Weinstock
c3ac8a1b51 Support modular weapon voxel meshes being made by assembling their components. 2021-02-23 00:45:26 +00:00
Avi Weinstock
ada4ca39f7 Fix description for the sword spin speed skill tree upgrade (previously it was a copy of damage's description). 2021-02-22 19:37:20 -05:00
Marcel
72bd0f42fc Merge branch 'xMAC94x/prot_improvements' into 'master'
xMAC94x/prot_improvements

See merge request veloren/veloren!1796
2021-02-22 22:47:43 +00:00
Marcel Märtens
e3ef4422b6 cleanup ClientConnArgs 2021-02-22 21:07:20 +01:00
Snowram
684961b15c Adds look_dir to anims, humanoid heads pivot fixes 2021-02-22 20:00:06 +01:00
Marcel Märtens
3f5c64bec0 Client::new can now resolve DNS requests, better networking error messages 2021-02-22 17:35:19 +01:00
Marcel Märtens
1a7c179bbb share tokio Runtime between Client and Server, name rayon Threadpool 2021-02-22 17:35:06 +01:00
Marcel Märtens
514d5db038 Update Network Protocol
- now last digit version is compatible 0.6.0 will connect to 0.6.1
 - the TCP DATA Frames no longer contain START field, as it's not needed
 - the TCP OPENSTREAM Frames will now contain the BANDWIDTH field
 - MID is not Protocol internal

Update network
 - update API with Bandwidth

Update veloren
 - introduce better runtime and `async` things that are IO bound.
 - Remove `uvth` and instead use `tokio::runtime::Runtime::spawn_blocking`
 - remove futures_execute from client and server use tokio::runtime::Runtime instead
 - give threads a Name
2021-02-22 17:34:55 +01:00
Snowram
4078eeb877 Various fixes to object animation, cleanup 2021-02-21 19:56:46 +01:00
Snowram
f25b2b1500 Various fixes to beam, body based interp 2021-02-21 19:17:56 +01:00
Sam
11050a05ce Beam particles now determined from beam segment rather than character state. 2021-02-21 19:17:56 +01:00
Snowram
e7bbf3981d Object animation 2021-02-21 19:17:44 +01:00
Avi Weinstock
8bdbf4f7c9 Implement modular weapons.
- Add ItemKind::ModularComponent, Item::components.
- Add tool::StatKind::{Direct,Modular} for the modular weapons themselves.
- Move ItemConfig from ItemDesc to Item, so components' stats can be taken into account.
- Crafting stores into the components field.
- Components/recipes/placeholders are created dynamically.
- Show which components a modular weapon contains in the tooltip in voxygen.

Squashed fixes:
- `Item::duplicate` components in `Item::new_from_item_def`.
- Speed of 1.0 for now.
2021-02-20 14:30:39 -05:00
Marcel
a330d4b05c Merge branch 'clangdo/fix_macos_build' into 'master'
Backdate coreaudio-sys for OSX cross toolchain compatibility

See merge request veloren/veloren!1799
2021-02-20 09:58:59 +00:00
Samuel Keiffer
479cf9fc4e Merge branch 'sam/dual-wielding' into 'master'
Dual wielding backend

See merge request veloren/veloren!1787
2021-02-20 05:12:17 +00:00
Sam
eaf3e02e39 Addressed comments
Fixed audio test
2021-02-19 19:55:23 -05:00
Caelan
82c33d9ccb Backdate coreaudio-sys for OSX cross toolchain compatibility
See https://github.com/RustAudio/coreaudio-sys/issues/48
2021-02-19 15:46:36 -08:00
Sam
d5ccc33abc Factored out duplicate code into closures, consolidated ability handling logic to a single function. 2021-02-19 18:45:48 -05:00
Sam
411b4083b1 Added 1h hammers.
Fixed audio tests.
2021-02-19 17:30:24 -05:00
Sam
12545dd372 Added handedness to weapon tooltips. 2021-02-19 17:30:23 -05:00
Sam
8f0cca074d Dual wielding now uses skillbar abilities from multiple weapons. 2021-02-19 17:30:22 -05:00
Sam
6f6a37faf2 Wielding a 1 handed weapon now correctly uses abilities when the second weapon is not also a 1 handed weapon. 2021-02-19 17:30:22 -05:00
Sam
f50fa25467 ItemConfig now stores AbilitySet directly instead of each individual ability. 2021-02-19 17:30:21 -05:00
Sam
582c3f8459 Check for prerequisite skill in using an ability is no longer hardcoded. 2021-02-19 17:30:21 -05:00
Sam
d4f509b3d0 Added hands field onto weapons. 2021-02-19 17:30:20 -05:00
Avi Weinstock
559ad7b7f5 Client-side trade improvements.
- Add item tooltips in trade.
- More localization support.
- Fix bindings (R for trade, B for bag).
2021-02-19 15:20:27 -05:00
Marcel
c6d69d1196 Merge branch 'xMAC94x/network_tokio' into 'master'
xMAC94x/network_tokio switch from `async_std` to `tokio`

See merge request veloren/veloren!1789
2021-02-17 22:47:11 +00:00
Samuel Keiffer
95fdd0fcc3 Merge branch 'cherry-pick-2ef5fb90' into 'master'
Fix missing controller actions

See merge request veloren/veloren!1786
2021-02-17 21:10:14 +00:00
Ada Lovegirls
96b8a582fe Fixed missing controller actions
(cherry picked from commit 2ef5fb90e89bf3f8f0acc84e269f6948c696c196)
2021-02-17 21:10:14 +00:00
Marcel Märtens
ea8ab1ce7a Great improvements to the codebase:
- better logging in network
 - we now notify the send of what happened in recv in participant.
 - works with veloren master servers
 - works in singleplayer, using a actual mid.
 - add `mpsc` in whole stack incl tests
 - speed up internal read/write with `Bytes` crate
 - use `prometheus-hyper` for metrics
 - use a metrics cache
2021-02-17 16:15:00 +01:00
Marcel Märtens
9884019963 COMPLETE REDESIGN of network crate
- Implementing a async non-io protocol crate
    a) no tokio / no channels
    b) I/O is based on abstraction Sink/Drain
    c) different Protocols can have a different Drain Type
       This allow MPSC to send its content without splitting up messages at all!
       It allows UDP to have internal extra frames to care for security
       It allows better abstraction for tests
       Allows benchmarks on the mpsc variant
       Custom Handshakes to allow sth like Quic protocol easily
 - reduce the participant managers to 4: channel creations, send, recv and shutdown.
   keeping the `mut data` in one manager removes the need for all RwLocks.
   reducing complexity and parallel access problems
 - more strategic participant shutdown. first send. then wait for remote side to notice recv stop, then remote side will stop send, then local side can stop recv.
 - metrics are internally abstracted to fit protocol and network layer
 - in this commit network/protocol tests work and network tests work someway, veloren compiles but does not work
 - handshake compatible to async_std
2021-02-17 12:39:47 +01:00
Marcel Märtens
5aa1940ef8 get rid of async_std::channel
switch to `tokio` and `async_channel` crate.
I wanted to do tokio first, but it doesnt feature Sender::close(), thus i included async_channel
Got rid of `futures` and only need `futures_core` and `futures_util`.

Tokio does not support `Stream` and `StreamExt` so for now i need to use `tokio-stream`, i think this will go in `std` in the future

Created `b2b_close_stream_opened_sender_r` as the shutdown procedure does not need a copy of a Sender, it just need to stop it.

Various adjustments, e.g. for `select!` which now requieres a `&mut` for oneshots.

Future things to do:
 - Use some better signalling than oneshot<()> in some cases.
 - Use a Watch for the Prio propergation (impl. it ofc)
 - Use Bounded Channels in order to improve performance
 - adjust tests coding

bring tests to work
2021-02-17 12:38:53 +01:00