Commit Graph

1610 Commits

Author SHA1 Message Date
Sam
56d2afc0dc Added keyframe support to basic beam state. Addressed some comments. 2020-09-29 19:48:15 -05:00
Sam
a8f31cbe6f Beam tick rate now more responsive when aiming. 2020-09-29 19:48:14 -05:00
Sam
506ad1e80e Improvements to beam collision. 2020-09-29 19:48:14 -05:00
Sam
ffe456c703 Fixed what broke after rebasing. 2020-09-29 19:48:13 -05:00
Sam
37fcfb8b6f Created manifest for database to filepath for items. 2020-09-29 19:48:12 -05:00
Sam
3d6c26a3c7 Fully separated sceptres from staves. 2020-09-29 19:48:12 -05:00
Sam
3e2e06f2f8 Projectile effects are now drained, so that the same projectile can't trigger it's effects on multiple enemies. 2020-09-29 19:48:11 -05:00
Sam
67eafdabd0 Separated out energy cost for healing so it's not based off of the energy regen from dealing damage. 2020-09-29 19:48:11 -05:00
Monty Marz
3734fafcd8 doubled energy consumption for M1 healing 2020-09-29 19:48:10 -05:00
Sam
5bd6f0e26f Addressed feedback in sceptre branch 2020-09-29 19:48:09 -05:00
Sam
de45784596 Addressed round of testing feedback. 2020-09-29 19:48:09 -05:00
Sam
18c2b850d3 Added healing healthsource logic to beam system. 2020-09-29 19:48:08 -05:00
Monty Marz
13d9b814ab separate sceptres from staffs, show values below 1.0 as decimals in the SCT, add starting sceptre
remove firebolt from starting sceptre
2020-09-29 19:48:07 -05:00
Sam
7e95a93434 Energy no longer regens when heal target is at full health. 2020-09-29 19:48:07 -05:00
Sam
07fd9ac023 Re-added necessary functionality to beam (heal, lifesteal, energy regen). 2020-09-29 19:48:06 -05:00
Sam
095433abcc Addressed comments. 2020-09-29 19:48:06 -05:00
Sam
799a6c1d1e Tweaked beam collision logic to be more accurate. 2020-09-29 19:48:05 -05:00
Sam
a679a34a7b Reverted changes to melee system that were added to when beam was initially in melee system. 2020-09-29 19:48:04 -05:00
Sam
46563e7008 Added beam system. Added collision code for spherical wedge/cylinder detection. 2020-09-29 19:48:04 -05:00
Sam
03b5cac2f9 Beams now have spherical hit detection. 2020-09-29 19:48:02 -05:00
Sam
6bb680f372 M1 now only regens stamina when healing allies if they are not at full health. 2020-09-29 19:48:02 -05:00
Sam
8f7d45100d Tick rate now exposed as a variable. 2020-09-29 19:48:01 -05:00
Monty Marz
a2d74b71c4 change tick rate 2020-09-29 19:48:01 -05:00
Monty Marz
2b8d1e6fb9 test values 2020-09-29 19:48:00 -05:00
Sam
bcda944af9 Fixed energy cost for playtesting purposes. 2020-09-29 19:48:00 -05:00
Sam
6b23af6e0b Tweaked particles. Added skill icons. 2020-09-29 19:47:58 -05:00
Sam
8b9202710f New sceptre M2 is functional. 2020-09-29 19:47:57 -05:00
Sam
921d224ef6 Lifesteal now works. Added particles to healing beam. 2020-09-29 19:47:57 -05:00
Sam
f20134d7ea Initial implementation for beam attack. 2020-09-29 19:47:56 -05:00
Joshua Yanovski
69f68ddf29 Reduce chunks / chonk by trimming the ends.
This improves the defragment operation for chonks by letting them remove
chunks at the top that match above, and bottom that match below.  This
reduces the chunks / chonk from around 5.9 to around 3.4 at origin. From
my investigations, adding something for water would probably get us a
full 50% reduction, if we could collapse intermediate chunks; block
types other than rock / air / water never appear to have full chunks of
the same block, so any additional optimization will require changes to
the subchunk compression format or changes to the actual chunks we
generate.
2020-09-29 19:08:45 +02:00
Forest Anderson
25ab132d73 Merge branch 'xvar/add-clone-on-ref-ptr-clippy-lint' into 'master'
Added #![deny(clippy::clone_on_ref_ptr)] to all crates and fixed resulting lint errors

See merge request veloren/veloren!1411
2020-09-28 19:32:03 +00:00
Joshua Yanovski
7d6aebb316 Fix hacky solution with proper defragmentation.
After generating a chonk, we now find the highest frequency block (in
terms of the number of groups that uniformly consist of that block) and
replace the chunk's default with that one.  We also resort the data in
the process to be in the same order as the original array index.  This
improves our memory savings from 3x to almost 7x, and brings us within a
factor of 3 or so of what I hope a true average will be.

The defragmentation is not totally optimal and can probably be improved
from a performance perspective, but given how much of a hard bottleneck
RAM is this seems worthwhile.  Also, this doesn't suffer from the issues
the previous solution did.
2020-09-28 16:56:26 +02:00
Joshua Yanovski
b9528da8f6 Improve chunk space consumption by a lot.
3x - 5x depending on terrain.  We can do a lot better but this is a good
start.

Also, added chunk group count to metrics.  This correlates with memory
usage specifically by chunk voxel data in a much more direct way than
chonk or chunk count do, so this should provide extra useful information
(especially for our average overhead per chonk / chunk).
2020-09-28 13:35:49 +02:00
Joshua Yanovski
443f3287e4 Merge branch 'sharp/remove-spurious-vox' into 'master'
Remove spurious uses of Vox.

See merge request veloren/veloren!1406
2020-09-27 16:41:29 +00:00
Ben Wallis
b3dd8e8a02 Added #![deny(clippy::clone_on_ref_ptr)] to all crates and fixed resulting lint errors 2020-09-27 17:25:33 +01:00
Joshua Yanovski
5af5ceb1f9 Address review comments. 2020-09-27 17:06:46 +02:00
Ben Wallis
11fc74642e Refactored crafting to use ItemDef instead of Item 2020-09-27 14:55:31 +01:00
Joshua Yanovski
529533466c Fix collision detection in liquid. 2020-09-26 16:53:49 +02:00
Joshua Yanovski
938039a56e Remove spurious uses of Vox.
In the process, also try to address a few edge cases related to block
detection, such as adding back previously solid sprites and removing
filters that may be vestiges of earlier logic.
2020-09-26 16:30:40 +02:00
Marcel Märtens
b7dc17c11f switch version to pre-alpha-2020-09-22 vs pre-alpha-v0.7.0 2020-09-22 12:04:07 +02:00
Marcel Märtens
8eec46424f switching veloren naming scheme, to either one of the following:
`stable-0.7.0 (<hash>-<datetime>)` for release versions.
And
`nightly-<date> (<hash>)` for nightly and master versions

Reason is, many players only give information that they are running `0.x.0` but are not giving us the information which day, or commit they are running. So we should make master builds less confusing.
2020-09-22 11:47:18 +02:00
Snowram
fa2dd28587 Fixed various issues from better-things branch 2020-09-21 23:57:10 -04:00
Joshua Barretto
2f2e766ebb Merge branch 'zesterer/better-block-format' into 'master'
Stopped all blocks being explodable

See merge request veloren/veloren!1402
2020-09-22 00:26:06 +00:00
Sam
2ff59c9f60 Addressed comments 2020-09-21 17:55:29 -05:00
Joshua Barretto
becb58e305 Stopped all blocks being explodable 2020-09-21 23:47:33 +01:00
Sam
b4018e7d42 Made 3rd ability interruptible. Final balance tweaks. 2020-09-21 17:40:16 -05:00
jshipsey
8070a38a89 spin anim 2020-09-21 17:38:57 -05:00
Sam
133e79ffd5 Modified how spin melee functions. 2020-09-21 17:38:56 -05:00
jshipsey
e79cef4824 dash animation 2020-09-21 17:38:55 -05:00
Sam
a8e834e754 Initial implementation of spin attack for sword. 2020-09-21 17:38:54 -05:00
Sam
fe70b7fbce Addressed second round of feedback. 2020-09-21 17:38:53 -05:00
Sam
b06ab250cc Addressed first round of feedback on sword overhaul. 2020-09-21 17:38:52 -05:00
Sam
c99e4c3c18 Added swing duration to dash melee. Added framework for animation to be added. 2020-09-21 17:38:51 -05:00
Sam
6dede05a0e Combo now only increases when landing a hit. 2020-09-21 17:38:51 -05:00
Sam
2aac008b90 Attack speed now scales with combo in combo melee. 2020-09-21 17:38:50 -05:00
Sam
e54483d789 Shifted hit attempt to before swing duration, instead of after. 2020-09-21 17:38:49 -05:00
Sam
b79235b890 Dash melee now works as desired. 2020-09-21 17:38:49 -05:00
Sam
744843d03f Dash now stops when colliding with entity 2020-09-21 17:38:48 -05:00
Sam
04af75bf8d Initial implementation of new dash melee. 2020-09-21 17:38:48 -05:00
Sam
abcd0af1e3 Removed combo duration of combo melee (combo now activated from recover duration). Allowed for forced forward movement in combo melee, and added it to stages 1 and 3). 2020-09-21 17:38:47 -05:00
jshipsey
a18c23025e stage 2 and 3 anim 2020-09-21 17:38:46 -05:00
Sam
847bddbd89 Removed swing_frac, added a swing duration instead to allow for more utility in character state. Moved location of stage_section enum to wielding so it could more easily be used by other character states. 2020-09-21 17:38:46 -05:00
Sam
2ba9d1e54f Added support for different swings in the combo melee having differnt fractions of time buildup duration is split. 2020-09-21 17:38:45 -05:00
jshipsey
2451a64b97 stage 2 animation 2020-09-21 17:38:44 -05:00
Sam
0ba5740265 Added enum for stage section instead of using 4 bools. 2020-09-21 17:38:43 -05:00
Sam
440e45f2bc Did stuff to support addition of keyframes for combo melee animation. 2020-09-21 17:38:43 -05:00
Sam
aab56ea636 Animation time for combo melee now resets between stages. 2020-09-21 17:38:42 -05:00
Sam
cf573a42bd Initial implementation of combo melee attack. 2020-09-21 17:38:41 -05:00
Joshua Barretto
0ca42857fa Addressed review issues 2020-09-21 21:10:32 +01:00
Joshua Barretto
388a899a7f Added make_sprite command 2020-09-21 16:39:20 +01:00
Joshua Barretto
112b11c951 Fixed broken arrow physics 2020-09-20 11:56:57 +01:00
Joshua Barretto
49d1b3df6d Improved docs 2020-09-20 11:46:12 +01:00
Joshua Barretto
ece4a01867 Improved representation of Block for better performance, more features, and better backwards-compatibility 2020-09-20 11:46:12 +01:00
Sam
45fef87f32 Addressed comments 2020-09-19 14:40:21 -05:00
Sam
e39770d1d9 Golem now spawns in dungeon. 2020-09-19 14:40:20 -05:00
Sam
99aba78422 Added healing healthsource logic to shockwave system. 2020-09-19 14:40:19 -05:00
Sam
6a1acd47a1 Added maximum vertical angle for shockwave. 2020-09-19 14:40:19 -05:00
Sam
d0f068ba63 Fixed shockwave and melee crit damage bypassing infinite armor. Made knockback not be applied if infinite armor. 2020-09-19 14:40:18 -05:00
Sam
6327dd18b6 Moved knockback to a server event so that it would actually be applied to the player. 2020-09-19 14:40:17 -05:00
Sam
819fb8ee77 Changed boss from cyclops to stone golem. Added ai specific for boss.
Tweaked shockwave.

Fix rebasing errors.
2020-09-19 14:40:16 -05:00
Sam
3e4615daea Loadouts are now generated with loadout_builder.rs. Creatures spawned naturally and via command are now spawned with the same mechanics. 2020-09-19 14:40:14 -05:00
Sam
f5dad20899 Tweaked shockwave values. Added shockwave damage type. Changed how knockback was handled in shockwaves to make negative knockback work better. 2020-09-19 14:40:13 -05:00
Imbris
829d8a20d1 Add shockwave system to handle shockwaves colliding with other entities 2020-09-19 14:40:10 -05:00
Sam
717142d5ea Started to implement shockwave system. 2020-09-19 14:29:06 -05:00
Sam
68ecfba291 Projectile speed is no longer hard-coded. 2020-09-19 14:29:05 -05:00
Sam
66b0fee3c7 Separated knockback out from basicmelee. Added weapon for cyclops boss to use, and added 1 ability to it. 2020-09-19 14:29:04 -05:00
Imbris
6cd6a96b64 Fix projectile/water interaction 2020-09-19 13:54:05 -04:00
Imbris
017d4a3c16 Increase entity vs entity repulsion factor, add check to ensure entities don't collide with themselves, fix possession projectiles not working on entities in the same group 2020-09-19 13:54:05 -04:00
scott-c
2686598f1f Improve first-person projectile aiming 2020-09-19 19:14:23 +08:00
Monty Marz
5fe79e1c6a new loading screen bgs (part 1)
Add a basic random feature to char creation

loading screen bg (part 2)

loading screen changes, random button graphics
Random appearance also pick a random npc name
2020-09-18 23:17:47 +00:00
Snowram
f9fada87cf Addresses comments 2020-09-18 18:45:03 +02:00
jshipsey
8330d087e6 clippy 2020-09-17 22:58:02 -04:00
jshipsey
90e5bbaac0 rebase 2020-09-17 22:41:40 -04:00
jshipsey
5bb45a4861 spawn tweaks, improved odonto 2020-09-17 22:32:11 -04:00
Snowram
fecc40ad8e Better quadmed legs/feet ratio 2020-09-17 22:32:11 -04:00
Snowram
62f6a5799a Initial quadmed feed animation 2020-09-17 22:32:10 -04:00
jshipsey
06b39b9072 species specific improvement 2020-09-17 22:32:10 -04:00
jshipsey
b781a1765b theropod run 2020-09-17 22:32:10 -04:00
Snowram
9308cabeb8 add deer, beaver and porcupine npcs 2020-09-17 22:32:10 -04:00
jshipsey
cd6e1ad45f haul out the critter skele, add theropod 2020-09-17 22:32:10 -04:00
jshipsey
ecae71c016 gliders as items. anim improvements 2020-09-17 22:32:09 -04:00
jshipsey
412495e5fc assets/manifests 2020-09-17 22:18:49 -04:00
jshipsey
bd1984bf28 golem addition, fix for axe attack 2020-09-17 22:18:49 -04:00
Ben Wallis
712f2e9c97 * Moved migrations to beginning of server initialisation
* Added migrations for entity ID changes to existing tables
2020-09-17 23:02:14 +00:00
Marcel Märtens
3c58b64689 add detailed information on state tick timings 2020-09-16 18:24:18 +02:00
Joshua Yanovski
19485b6a00 Add a DisconnectReason enum. 2020-09-14 08:16:09 +02:00
tylerlowrey
2b0c1e89f3 Refactored kicking the player into its own function + ran fmt on project 2020-09-14 07:54:05 +02:00
tylerlowrey
30c3146682 Added main menu kick message with kick reason after player is kicked 2020-09-14 07:52:31 +02:00
tylerlowrey
fee79720ee Added ban message with reason when banned user attempts to login to server 2020-09-14 07:52:31 +02:00
tylerlowrey
07e33286ad Changed reason field for kick & ban from Any to Message 2020-09-14 07:52:31 +02:00
tylerlowrey
c55a66d5ba Added ban, unban, kick usage information and invocation aliases 2020-09-14 07:52:31 +02:00
Imbris
3fbf8d7ca0 Remove chunk from mesh todo if neighbour is deleted, be more careful with z_start and z_end in terrain meshing 2020-09-12 21:02:00 -04:00
Imbris
c3ae641fbb Merge branch 'imbris/tracy' into 'master'
Add more tracing instrumentation and tracy support

See merge request veloren/veloren!1359
2020-09-10 05:07:51 +00:00
Matthew Martin
57c6160b72 * Set the KillType to Other for HealthSource::Healing
* Extend logic to projectiles and explosions
2020-09-09 23:34:10 +02:00
Matthew Martin
a9086b27a0 Do not make healing items deal damage 2020-09-09 23:22:49 +02:00
TheThirdSpartan
7fd673ecb2 Added localization config options for new death messages 2020-09-09 20:26:20 +00:00
Imbris
f39d1e9bb5 Use less verbose span names when the tracy feature is off 2020-09-07 00:59:16 -04:00
Imbris
7efbc74551 remove duplicate tracing filter code, fix compiling voxygen with the
tracy feature
2020-09-06 22:28:14 -04:00
Imbris
0683a40741 Use finish_continuous_frame directly 2020-09-06 22:28:14 -04:00
Imbris
63d60c212c Add spans to server systems 2020-09-06 22:28:14 -04:00
Imbris
4f68a6df27 Update tracy crates, reduce overhead of timing, add more misc instrumentation 2020-09-06 22:28:14 -04:00
Imbris
e37a01be9d Sprinkle instrumentation in common crate,in particular in the ecs systems 2020-09-06 22:28:14 -04:00
Imbris
50ceb1c93e Add workaround for spans with winit loop, configure filtering when the tracy feature is on, spinkle some spans in the codebase 2020-09-06 22:28:14 -04:00
Imbris
d95e539495 Intial setup of tracy 2020-09-06 22:28:14 -04:00
Marcel Märtens
961b8a4d7c Implement the Player Timeout as config 2020-09-06 23:34:57 +02:00
TheThirdSpartan
6dbd1bc132 adding feature requested in issue #153 - displaying your alias in game as 'you' 2020-09-06 19:42:32 +00:00
Joshua Barretto
49c713a071 Merge branch 'zesterer/rtsim' into 'master'
Beehives, Fireflies, and minor worldsim/lighting adjustments

See merge request veloren/veloren!1357
2020-09-05 17:16:08 +00:00
Monty Marz
a70567b644 make dummy cmd an admin cmd to avoid exp cheesing and entity spamming 2020-09-05 16:12:35 +02:00
Imbris
fb33a5e519 Merge branch 'termac/inventory_collect_when_full_fix' into 'master'
Fix bug collecting items into full inventory

See merge request veloren/veloren!1333
2020-09-05 06:51:22 +00:00
Joshua Yanovski
66f49d5386 Merge branch 'sharp/default-shadows' into 'master'
Create (segment, offset) just once per figure.

See merge request veloren/veloren!1360
2020-09-04 15:54:55 +00:00
Joshua Barretto
0c0f150140 fmt 2020-09-04 11:48:57 +01:00
Joshua Barretto
afe42e0b86 Fixed projectiles reorienting once stickied 2020-09-04 11:48:56 +01:00
Joshua Barretto
032ec9ef41 Added bee hives 2020-09-04 11:48:56 +01:00
Joshua Barretto
88add8456f Added fireflies, reeds near rivers 2020-09-04 11:48:56 +01:00
Joshua Barretto
4405227ffb Made light attenuation nicer, fixed campfire light offset 2020-09-04 11:48:54 +01:00
Monty Marz
821c7e5881 made npcs decline invites until we have a better recruitment system 2020-09-04 00:46:32 +02:00
termac
f05c120fab Fix bug collecting items into full inventory
When the inventory is full and a player tries to reclaim an item from a
block, collecting always failed. If the item is stackable and already
present inside the inventory it should be collected though.
The collect case now behaves more like the pickup case, using
inventory's 'push' method to add the item and implicitly check for
available space.
2020-09-02 12:47:56 +02:00
Joshua Yanovski
4eeb131f4b Create (segment, offset) just once per figure. 2020-09-01 11:23:19 +02:00
Joshua Yanovski
7e6975d881 Merge branch 'sharp/typed-body' into 'master'
Further generalize the typed module.

See merge request veloren/veloren!1346
2020-09-01 06:29:35 +00:00
Songtronix
11730f2136 change(common): remove find_folder 2020-08-31 16:43:16 +02:00
Songtronix
abaf6ee53e fix: locate assets in almost all cases 2020-08-31 10:25:45 +02:00
Joshua Yanovski
6f3d5da6f3 Further generalize the typed module.
This enables us to automatically create configuration formats from enums
or structs.  For enums, we create a structure with a field for each
case, representing a pattern match; the configuration format can then
enter a different expression for each case.  For structs, we create an
enum with a variant for each field, representing projecting by that
field; the configuration format selects the field to project from, and
then can write a further expression on that field (for instance, it can
perform another pattern match).

So far we don't actually have anything that *uses* this functionality;
I decided to finish it for the purpose of specifying a default
lantern offset, only to discover that we already return a lantern offset
from the animation crate.  So I fixed it there instead.
2020-08-31 05:59:44 +02:00
Joshua Yanovski
8be3648a4d Move sprite data to a config file. 2020-08-28 09:23:43 +02:00
Joshua Yanovski
3a96b73b2c Move figure meshing to a background thread. 2020-08-28 05:25:31 +02:00
Imbris
4790373ab3 Add State::read_component_copied 2020-08-26 20:47:41 -04:00
Monty Marz
6946de2682 fixed nametag height
fmt

fmt
2020-08-25 21:54:47 +02:00
Joshua Barretto
bf7afcf5c9 Merge branch 'zesterer/small-fixes' into 'master'
Better world colours, better projectiles, better aiming, many other small improvements

See merge request veloren/veloren!1332
2020-08-25 15:59:05 +00:00
notoria
2be4202d01 Corrected some spelling errors 2020-08-25 12:21:25 +00:00
Joshua Barretto
24780e4f58 Handled 3d/2d sanity check bug 2020-08-25 12:54:30 +01:00
Joshua Barretto
37b45ba5f4 Addressed review issues 2020-08-25 11:01:17 +01:00