Commit Graph

2168 Commits

Author SHA1 Message Date
Samuel Keiffer
00937a4e8b Merge branch 'aweinstock/modularforms' into 'master'
Support modular weapon components made from a tagged material using the material as a multiplier.

See merge request veloren/veloren!1815
2021-02-26 00:53:02 +00: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
Sarra
f39f5ab5d3 added coral reefs, kelp forests, and seagrass 2021-02-25 05:33:18 -05:00
Sam
ee5c9d78ca Swords 2021-02-24 18:54:06 -05:00
Marcel
553e8c2195 Merge branch 'sam/torvus-fix-test' into 'master'
Fix for torvus

See merge request veloren/veloren!1816
2021-02-23 20:51:14 +00: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
Sam
3d57db9485 Test fix for torvus 2021-02-23 14:38:58 -05:00
Imbris
da3edf54fb Merge branch 'ccgauche/plugin-retreive' into 'master'
ccgauche/plugin retreive

See merge request veloren/veloren!1788
2021-02-23 16:36:05 +00:00
ccgauche
4b1c033f6e Added scopeguard to protect against unwind 2021-02-23 13:58:13 +01:00
ccgauche
74ec5c652a Added safety section to the EcsAccessManager 2021-02-23 13:58:07 +01:00
Marcel
2fbd382c91 Merge branch 'xMAC94x/physics_followup' into 'master'
physics followup, fix arrow problems

See merge request veloren/veloren!1811
2021-02-23 02:00:40 +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
Marcel
6081ebbe15 Merge branch 'sam/ecs-sys-struct' into 'master'
Sam/ecs sys struct

See merge request veloren/veloren!1813
2021-02-23 00:08:09 +00:00
ccgauche
f85e79af07 Fixed turbofish issues 2021-02-23 00:03:29 +01:00
ccgauche
a12e554266 Removed the unwrap to ensure the WASM instance can't crash the host 2021-02-23 00:03:27 +01:00
ccgauche
387daf8aea Change invalid message in examples and cleanup
Updated changelog + Removed hello plugin from plugins folder
2021-02-23 00:02:58 +01:00
ccgauche
6c991cc2cd Changed to less restrictive memory ordering 2021-02-23 00:02:51 +01:00
ccgauche
267e7d8b4c Finalized Retrieve API 2021-02-22 23:59:41 +01:00
ccgauche
06aa7ab70c Retrieves added + New ECS memory layout for plugins 2021-02-22 23:59:32 +01:00
ccgauche
1597fcc79e Fixed the plugin compilation and added comments
TODO: Remove compilation errors on WASM side (while using common).
2021-02-22 23:59:25 +01:00
ccgauche
8a693d9fde New cleaner safer version 2021-02-22 23:59:15 +01:00
ccgauche
a067a20b69 added basic retreive 2021-02-22 23:59:11 +01:00
Marcel Märtens
6008109413 physics followup, fix arrow problems by adding the vel_dt to the collision boundry 2021-02-22 23:51:01 +01:00
Sam
3f467a32e6 Changed naming from 'immutable data' to 'read data' 2021-02-22 16:02:37 -05:00
Sam
2b5120319d Character behavior system now uses immutable data struct 2021-02-22 15:30:53 -05:00
Sam
fae1db90d5 Controller system now uses immutable data struct 2021-02-22 14:33:54 -05:00
Sam
dcacd82293 Stats system now uses immutable data struct 2021-02-22 14:27:34 -05:00
Sam
27fe1c20ac Aura system now uses immutable data struct 2021-02-22 14:14:10 -05:00
Sam
4c0c06ea4c Buff system now uses immutable data struct 2021-02-22 14:03:18 -05:00
Sam
605513ea56 Beam system now uses immutable data struct 2021-02-22 13:57:56 -05:00
Sam
11a0d67b35 Shockwave system now uses immutable data struct 2021-02-22 13:49:56 -05:00
Sam
b278cad807 Projectile system now uses immutable data struct 2021-02-22 13:37:42 -05:00
Sam
91e982b3ee Melee system now uses immutable data struct 2021-02-22 13:25:21 -05:00
Marcel Märtens
1a7c179bbb share tokio Runtime between Client and Server, name rayon Threadpool 2021-02-22 17:35:06 +01:00
Vincent Glize
4f37c626ea Optimize Entity <> Entity collision check by calculating a entity via sphere. 2021-02-22 12:36:42 +01:00
Justin Shipsey
1f88b87ca4 fix glider crash 2021-02-22 06:31:12 +00:00
Joshua Barretto
e2290783fc Merge branch 'humanoid_ai_glide_when_falling' into 'master'
FIX #956: Humanoid ai glide when falling

See merge request veloren/veloren!1772
2021-02-22 00:57:25 +00:00
Overblob
370259fe54 CI - Fix clippy errors
Fix trailing whitspace
2021-02-22 00:57:25 +00: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
Snowram
775224983b Initial turret implementation 2021-02-21 18:23:54 +01:00
Samuel Keiffer
3cb6a5592d Merge branch 'aweinstock/speed-floor-quickfix' into 'master'
Change the speed floor to `0.1` (avoiding a division by zero in modular...

See merge request veloren/veloren!1804
2021-02-21 02:49:57 +00:00
Avi Weinstock
3606490308 Change the speed floor to 0.1 (avoiding a division by zero in modular weapons accidentally buffed the Twitching Root). 2021-02-20 19:19:26 -05:00
Sam
f24490dc80 Added functionality for buffs queueing. Saturation now queues. 2021-02-20 17:13:17 -05:00
Avi Weinstock
c489d095df Implement persistence for modular weapons.
This stores the components as children of the item that contains them via the DB's `parent_container_item_id` feature, and ensures that things are loaded in a good order with breadth-first search.

Squahed fixes:

- Fix some constraint violations that occurred when swapping inventory items.
- Comment out recipes for modular weapons.
- Make update_item_at_slot_using_persistence_key and is_modular more idiomatic.
- Add changelog entry.
- Document `defer_foreign_keys` usage.
2021-02-20 14:31:46 -05: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
Snowram
f78170704a Allows some species to be immune to specific buffs 2021-02-20 14:03:15 +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
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
18309fe4c6 Added AbilityInfo struct to attack states 2021-02-19 17:30:24 -05:00
Sam
50cbe42b07 Added one-handed axes. 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
fc01e9ea68 Handedness of weapons affects power and speed. 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
341affdae2 Added hands field to all ron files of weapons.
Removed weapons that were duplicated in weapons and npc_weapons from npc_weapons.
Added migration to convert npc_weapons that ended up in anyone's inventory to weapon version.
Consolidated debug boost and possess sticks into one debug_stick, and renamed the admin sword (with name cultist_purp_2h_boss-0) to admin_sword
2021-02-19 17:30:20 -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
Caelan
dda4931f46 Clean and update dependencies
* Remove tweak feature
 * Remove const-tweaker
 * Update tiny_http
 * Update bitvec to 0.21.0
 * Downgrade euc to avoid conflict with vek 0.12.0
 * Require exactly vek 0.12.0
 * Update all other dependencies automatically based on these changes
 * Update gilrs to latest at the request of Ada Lovegirls
 * Update meshing benchmarks to new criterion API
2021-02-17 01:27:06 -08:00
Joshua Barretto
4d19308612 Merge branch 'lboklin/quat-ori' into 'master'
Redefine Ori as a quaternion

See merge request veloren/veloren!1755
2021-02-16 22:39:11 +00:00
Imbris
1352d7ad9c Merge branch 'quellus/max-name-length' into 'master'
Limit character name length

Closes #528

See merge request veloren/veloren!1774
2021-02-16 21:29:45 +00:00
Quellus
8b4230db61 Limit character name length 2021-02-16 21:29:45 +00:00
Avi Weinstock
03d28f7d93 Implement tags for items, allowing a crafting recipe to take any item with that tag as input.
- Added a recipe that turns any of the cloth equipment dropped by villagers into 1x cloth scraps.
- Animate placeholder items for tagged crafting.
2021-02-16 01:05:54 +00:00
Avi Weinstock
c984035976 MR 1775 review fixes.
- Separate `invite` machinery from `group_manip` into it's own thing (includes renaming `group_invite` to `invite` where applicable).
- Move some invite/trade machinery to `ControlEvent`.
- Make `TradePhase` a proper enum instead of a bunch of bools.
- Make `TradeId` a proper newtype.
- Remove trades from `Trades` on accept (previously was only on decline).
- Typo fixes/misc cleanup.
- Add bullet point for trading to the changelog.
2021-02-14 11:13:56 -05:00
Avi Weinstock
232ddb0860 Polish trading implementation and address review comments.
- Fix item swapping edge case
- Document more assumptions/edge cases
- fmt and clippy
- s/ServerGeneral::GroupInvite/ServerGeneral::Invite/
- Use `Client::current` in `Client::is_dead`
2021-02-14 11:11:35 -05:00
Avi Weinstock
f6db8bb7c4 Implement actual inventory-manipulation part of trading server side. 2021-02-12 18:43:10 -05:00
Avi Weinstock
abb5684883 Trade implementation progress.
- Accept/decline buttons that submit the proper messages
- A phase2 screen that renders the (item, quantity) pairs as text
- More checks in the trade state machine server-side.
2021-02-12 18:43:10 -05:00
Avi Weinstock
e2b55e0706 Implement enough of a trade UI that dragging & dropping items into it round-trips between clients. 2021-02-12 18:43:09 -05:00
Avi Weinstock
aeb2398fc6 Trade implementation progress.
- Server messages now bring up the trade window.
- When a trade is declined, it closes the window on both clients.
2021-02-12 18:43:09 -05:00
Avi Weinstock
ae528124fc Trade implementation progress.
- State machine for modifying trades.
- ServerGeneral/ClientGeneral messages.
2021-02-12 18:43:09 -05:00
Avi Weinstock
e9b811b62b Plumb trade requests through the group invite UI, such that they can be accepted/declined without impacting the counterparty's movement. 2021-02-12 18:43:09 -05:00
DaforLynx
ebbb06a400 Added crickets blocktype, added 3 new cricket sounds, made crickets chirp consistently, made frogs more sporadic 2021-02-12 00:54:42 +00:00
Quellus
63952875d9 Rebase !1447 Chat input color and icon reflect channel message is sent to. 2021-02-10 19:42:59 +00:00
Ludvig Böklin
74badd3dbd Add note about to_quat() being a cheap copy operation 2021-02-10 17:35:20 +01:00
Snowram
477bdfdfe7 Adresses some comments, various visual tweaks 2021-02-10 00:30:23 +01:00
Snowram
02f446fe4b Adds lights to dungeons 2021-02-10 00:30:23 +01:00
Ludvig Böklin
990198cd87 Don't test Dir->Ori correctness because it will fail from floating point errors 2021-02-09 15:44:12 +01:00
Ludvig Böklin
065e260e78 Code quality 2021-02-09 14:06:27 +01:00
Ludvig Böklin
582ddfc3cd Ori: add tests, rename to_vec() => look_vec(); Dir: add methods, normalize on rot 2021-02-09 13:52:03 +01:00
Sam
398fcf7bdd Changing main tool while in wield state moves character back to idle state. 2021-02-08 17:25:40 -05:00
Sam
e033fe6bee Inventory manipulations are now only for input from the client, and are no longer directly sent as a server event. Slot manipulations do that instead. 2021-02-08 13:55:50 -05:00
Sam
1c83c5ee6f Loadout manipulations now emit a separate event from client instead of hackily intercepting inventory manipulations in common. 2021-02-08 12:31:17 -05:00
Sam
f026aeb2dc Server events directly emitted in states now. 2021-02-08 12:01:48 -05:00
Sam
6a1e583d45 Eradicated clones 2021-02-08 12:01:48 -05:00
Sam
9f2255a5de Extended what states inventory manipulations touching the loadout could affect. 2021-02-08 12:01:47 -05:00
Sam
8eebcdfcd2 Inventory changes that modify the loadout now go through a control action instead of a control event. 2021-02-08 12:01:47 -05:00
Ludvig Böklin
46750880eb Add Plane type, Projection trait, fix upright() and add doc tests 2021-02-07 17:16:15 +01:00
Samuel Keiffer
909ed80e9e Merge branch 'sam/fix-roll' into 'master'
Fixes roll being free

See merge request veloren/veloren!1757
2021-02-06 22:15:06 +00:00
Imbris
a5c76a6d36 Merge branch 'trollderim/replace-magic-dr-number' into 'master'
Replace magic dr constant

Closes #915

See merge request veloren/veloren!1756
2021-02-06 20:28:40 +00:00
Sam
252e421692 Roll is no longer free. 2021-02-06 15:20:08 -05:00
Phillipp Mevenkamp
f5e1d446ad Replace magic dr constant 2021-02-06 18:21:58 +01:00
James Melkonian
1d8496ea21 Move agent system to server 2021-02-06 06:15:25 +00:00
Ludvig Böklin
a1ff9ab83f Redefine Ori as a quaternion 2021-02-05 09:33:14 +01:00
Pascal Fuhrmann
9f7637ab21 Converted combat states and other semi-combat-related to use float-values instead of integers to prevent more casts 2021-02-05 01:39:12 +00:00
Sam
be8df9aef6 Addressed comments. 2021-02-02 16:08:09 -05:00
Sam
80954f3ba4 Made attacker entity and uid optional to remove potential for attacks to not be applied and some unwraps. 2021-02-02 13:07:07 -05:00
Sam
af982ec0bb Changed knockback to be an effect on the overall attack, rather than a damage. 2021-02-02 13:07:07 -05:00
Sam
17d1432be0 Outcomes now correctly read if an attack had any healing components. 2021-02-02 13:07:06 -05:00
Sam
5eec915c2e Added support for damage falloff with explosions. 2021-02-02 13:07:06 -05:00
Sam
5c16b0b532 Explosions now use attacks. 2021-02-02 13:07:06 -05:00
Sam
7675e53740 Shockwaves now use attacks. 2021-02-02 13:07:05 -05:00
Sam
e5caef8a54 Effects on attacks can now require energy. 2021-02-02 13:07:05 -05:00
Sam
2b11ae6569 Attacks can now heal. 2021-02-02 13:07:04 -05:00
Sam
edcfcc31f6 Attacks can now deal poise damage. 2021-02-02 13:07:04 -05:00
Sam
fcd89a5d41 Lifesteal now functional on Attack. 2021-02-02 13:07:03 -05:00
Sam
fdef168e82 Beams now use Attack, with limited functionality in some cases. 2021-02-02 13:07:03 -05:00
Sam
59ce8c6843 Projectiles now use attacks. 2021-02-02 13:06:57 -05:00
Sam
46dbb8aef4 Attack effects can now have requirements. 2021-02-02 13:06:34 -05:00
Sam
c77f263cd1 Effects now work when not tied to a damage. 2021-02-02 13:06:34 -05:00
Sam
18aa315f0d Rolling now dodges melee attacks again. 2021-02-02 13:06:34 -05:00
Sam
78879d5189 Attacks can now inflict de/buffs. 2021-02-02 13:06:33 -05:00
Sam
6d509932db Attacks can now reward energy. 2021-02-02 13:06:33 -05:00
Sam
c3408c084c Critical hits are now functional. 2021-02-02 13:06:32 -05:00
Sam
2690e9caa1 Applied basic functionality of attack-effects system to melee. 2021-02-02 13:06:32 -05:00
Sam
d3b75df76f Changed name of Attacking comp to MeleeAttack 2021-02-02 13:06:31 -05:00
Sam
bb019309ea Attack builder implemented. 2021-02-02 13:06:31 -05:00
Sam
78a2459e6d Changed knockback from an enum to a struct. 2021-02-02 13:06:30 -05:00
Pascal Fuhrmann
f4deb08a40 fixing #944 - LeapMelee fall damage fix & adjustments 2021-02-02 16:51:04 +00:00
Blob
5c8fc4f378 Fix projectile explosion being triggered twice. 2021-02-01 15:41:34 +00:00
James Melkonian
23b1df3cdd Add basic NPC interaction and fix NPC chat spamming 2021-01-31 20:29:50 +00:00
jiminycrick
ea13f75427 Quick poise fix 2021-01-29 15:52:40 -08:00
jiminycrick
a02444825d Address some comments
Eliminated extra stagger state

Responding to more comments

Move poise character state changes to character behavior system

Move poise out of JoinTuple/Data

Finish up comments (various fixes)
2021-01-28 17:31:05 -08:00
jiminycrick
46c8c744fa Add migration for starter gear 2021-01-28 17:22:39 -08:00
jshipsey
d456271921 animal stuns
Fix rebase
2021-01-28 17:22:39 -08:00
jiminycrick
661764f4aa Some preliminary balancing
Fix rebase
2021-01-28 17:22:39 -08:00
jshipsey
29732bb763 starting stun anim
stagger anim, mirroring, bettern walk anim

wielding with stuns/stagger

Knockback fix

Added Poise documentation/comments
2021-01-28 17:22:37 -08:00
jiminycrick
0f244bf84b Made stunned state invulnerable to poise damage
Fixing silly error for comp creation
2021-01-28 17:22:35 -08:00
jiminycrick
dd69b5f2bc Poise stats 2021-01-28 17:22:35 -08:00
jiminycrick
af076aa87f Add knockback to poise 2021-01-28 17:22:35 -08:00
jiminycrick
e3965ae0ab Very basic functioning stun 2021-01-28 17:22:35 -08:00
jiminycrick
c83296a4ec Initial broken implementation of poise
Character movement no longer broken.
2021-01-28 17:22:33 -08:00
jiminycrick
8b97199245 Update rand dependency 2021-01-26 20:35:08 -08:00
Sam
680a4e4dde Fixed base energy being 0. 2021-01-26 21:25:00 -05:00
Entropy9s
1f6cf7e155 StaminaPlus buff, modifying stamina via buffs
trying to fix this, coming back to this later

please remember to change potion back future self!

this ALMOST works. maybe MR ready, kinda jank tho

so close, and yet so far...

IT WORKS IT WORKS IT WORKS IT WORKS IT WORKS IT WO

did the same with health, ill fix this garbage l8r

think we're basically done here

whoops forgot to change the food back

fixing and cleaning up part 1

fixed everything part 2 now with buff images

ran clippy + fmt, fixed items that i modified

bracket bulldozing, boldly

hopefully this should be good?

need to rebase real quick

please let me be done

StaminaPlus buff, modifying stamina via buffs

trying to fix this, coming back to this later

please remember to change potion back future self!

this ALMOST works. maybe MR ready, kinda jank tho

so close, and yet so far...

IT WORKS IT WORKS IT WORKS IT WORKS IT WORKS IT WO

did the same with health, ill fix this garbage l8r

think we're basically done here

whoops forgot to change the food back

fixing and cleaning up part 1

fixed everything part 2 now with buff images

ran clippy + fmt, fixed items that i modified

hopefully this should be good?

cargo clippy fmt stuff

deleted an extraneous file?? how did that even...?
2021-01-26 22:47:55 +00:00
Sam
9b7edcf32f Changed how beams determined the energy regen and energy cost. 2021-01-24 23:47:10 -05:00
Snowram
ad6cdcab71 Merge branch 'swilliams/gems' into 'master'
Adds 6 different gems and removes shiny gem.

See merge request veloren/veloren!1729
2021-01-25 01:25:40 +00:00
Samuel Keiffer
0343b57b2b Merge branch 'lboklin/glider-stamina' into 'master'
Glider stamina cost now only when first starting to glide based on fall speed

See merge request veloren/veloren!1727
2021-01-25 00:17:32 +00:00
Samuel Keiffer
c349afc9e9 Merge branch 'sam/speed-beam' into 'master'
Fixed how the speed stat was applied to beams.

See merge request veloren/veloren!1732
2021-01-24 23:23:53 +00:00
Sam
a83baa8243 Fixed how the speed stat was applied to beams. 2021-01-24 16:01:38 -05:00
Sam
6dd740feaa Nerfed bow M1 and M2, slightly buffed bow skillbar ability. 2021-01-24 14:24:59 -05:00
Scott Williams
157e56d8ca Removed Shiny Gem, Added migration to change shiny gems to diamonds. Changed shiny gem recipes to diamonds 2021-01-24 16:40:22 +00:00
Scott Williams
32bbdffc38 Added 6 gems, removed shiny gem from cave, replaced with diamond. 2021-01-24 14:00:49 +00:00