Marcel Märtens
bbe6e8be7c
Improve Phyiscs speed of entity handling.
...
Before we had accessed velocities in a nested loop O(n²).
Now we copy it only once out of the ECS system and store it in a tmp Vec.
As we no longer need to hold a mut and imutable reference, we can iter of `&mut velocities` again in the outer loop.
Also improved many calculations called in the loop to make the check if 2 entities are to far apart as easy as possible
2020-11-04 11:53:09 +01:00
jshipsey
28cde31bbb
setup for staff, more anim conversions
2020-11-04 01:48:05 +01:00
Christof Petig
ac92c8a6af
implement /home to return to home town
2020-11-04 00:55:15 +01:00
Joshua Barretto
6331ad9455
Implemented Flight
2020-11-03 22:46:07 +00:00
Marcel Märtens
00456c8373
extract a Presence Component, which is server
only and has state of Player
and Client
. Presence is only valid for Clients that are in game
2020-11-03 08:56:02 +01:00
Marcel Märtens
6bb74c9c6f
Fix clients are disconnecting GRACEFULLY by removing the Disconnect Request from a client, a client now sends a TERMINATE message directly
2020-11-03 08:55:54 +01:00
ubruntu
8c1e1fdc5c
Fixed sneak toggle, sneaking no longer has sound, rolling can return to sneaking state, sneaking reduces aggro distance
2020-11-03 04:09:38 +00:00
ubruntu
b11041dfa4
10% of bow hits cause bleed debuff
2020-11-01 18:38:57 +00:00
Sam
4d8a635843
Sceptre fix.
2020-10-31 12:57:51 -05:00
Imbris
64def3cde4
Allow interacting with nearby blocks without pointing at them, unify selection of block/entity interactors so that only one is select at once, rearrange pickup and mount range consts
2020-10-29 18:40:11 -04:00
Imbris
74ef766051
Rename running_tps_average -> running_average_delta
2020-10-29 18:30:19 -04:00
Sam
52c93f613e
Addressed comments.
2020-10-28 22:04:15 -05:00
Sam
1a8cf33a60
Transitioned forced movement to an enum.
2020-10-28 18:15:27 -05:00
Sam
981eee5936
Transitioned knockback to an enum.
2020-10-28 18:15:27 -05:00
Sam
1ccbdec35c
Tweaked dash melee some more.
2020-10-28 18:15:26 -05:00
Sam
a7e3e55a12
Transitioned damage and healing from u32/i32s to enums.
2020-10-28 18:15:25 -05:00
Sam
844e6f2b60
Slightly nerfed sword dash. Reduced particle count on fire aoe by factor of 3.
2020-10-28 18:15:25 -05:00
Sam
15286a094a
Leaps now require a non-negative vertical velocity to use.
2020-10-28 18:15:24 -05:00
Sam
555bc559f5
Axe no longer sets vertical velocity to 0, but instead preserves vertical velocity.
2020-10-28 18:15:24 -05:00
Sam
63011241ea
Added keyframes to all states that were lacking them.
2020-10-28 18:15:23 -05:00
Sam
6559df459e
Addressed comments.
2020-10-26 21:32:01 -05:00
Sam
e8f6338eb0
Admin armor now provides immunity to debuffs.
2020-10-26 19:49:40 -05:00
Sam
5d0fd3d9bc
Addressed more comments. Changed how buffs were sorted so that duration was also taken into account.
2020-10-26 19:30:18 -05:00
Adam Whitehurst
f759895d63
add maxhealthmodifier
...
oops variable
2020-10-26 19:30:18 -05:00
Adam Whitehurst
8aad7adab8
add comments
2020-10-26 19:30:17 -05:00
Sam
f60985d733
Transitioned buff storage from a vec to a hashmap. Addressed other comments. Only continuous buff effects are handled right now.
2020-10-26 19:30:17 -05:00
Sam
337cf6e137
Cleaned up UI code. Removed stuff added for testing. Added 10% for melee attacks to inflict a bleeding debuff. Renamed BuffId to BuffKind. Fixed memory leak. Set event emission to false when timer is decremented.
2020-10-26 19:30:10 -05:00
Sam
fdf8decb18
Handled health change over time buff effect better.
2020-10-26 19:28:27 -05:00
Monty Marz
8fa398954d
Initial implementation of buffs UI
...
player buffs animation
more testing debuffs
sorting and display limit fix
overhead buffs
fix
WIP buff removal function
fmt
Update buffs.rs
Now with compiling: WIP group UI buffs
positioning
Update group.rs
Update group.rs
Small optimizations.
Fixed positioning of buffs in group panel. Broke buff tooltips in group panel.
buff frame visuals
added setting for displaying buffs at minimap
2020-10-26 19:28:24 -05:00
Sam
007d3c09ac
Buffs now get removed on death by default. Buffs are now required to have either the 'Buff' or 'Debuff' tag. RemoveByCategory function now has support for blacklisting certain categories. Support for UI stuffs.
2020-10-26 19:28:23 -05:00
Samuel Keiffer
60a5346a0b
Addressed comments.
2020-10-26 19:28:22 -05:00
Sam
0df061a38e
Moved duration to inside BuffId enum to future-proof for when buffs are persisted.
2020-10-26 19:28:20 -05:00
Sam
1a1ceb54bc
Server event used to deal damage/heal with buffs. Buff kills now award xp.
2020-10-26 19:28:20 -05:00
Sam
de7191b985
Added functionality to remove buffs by category.
2020-10-26 19:28:19 -05:00
Sam
ccad1fa0b8
Separated buffs into active and inactive buffs. There can only be 1 active buff at a time of a particular buff id. If a new buff is stronger than an active buff, it moves the active buff to inactive buffs. When active buffs are removed, it checks inactive buffs for any buffs of the same id and moves the strongest one to active buffs.
2020-10-26 19:28:18 -05:00
Sam
19c7ed7885
Added builder function for buffs
2020-10-26 19:28:18 -05:00
Sam
b8690473e4
When buffs expire from duration, now only they expire rather than ending all buffs of the same type.
2020-10-26 19:28:17 -05:00
Sam
125de0b46e
Creatures and playrs now have buffs component, buffs that expire now only end their particular buff instead of every buff with the same type.
2020-10-26 19:28:16 -05:00
Sam
c50063ad0c
Move addition/removal of buffs to server event.
2020-10-26 19:28:15 -05:00
BottledByte
7ab99a3bbf
Initial WIP implementation of the Buff system
2020-10-26 19:28:14 -05:00
Marcel Märtens
1b47913835
fix clippy after toolchain update
2020-10-26 22:30:51 +01:00
Adam Whitehurst
4dcac28f8a
Ensure leap melee swing animation and hit are sync
2020-10-24 20:15:19 +00:00
jiminycrick
b98e2a924d
Fixed hammer AI and added axe AI
2020-10-19 16:20:59 +02:00
Snowram
34ce8bb042
Addressed comments
2020-10-19 16:20:59 +02:00
jiminycrick
64ef7f39d6
Addressed comments on agent code
2020-10-19 16:20:59 +02:00
jshipsey
64d73abdec
roshwalr fix
2020-10-19 16:20:59 +02:00
jshipsey
caa048b1d5
small fixes
2020-10-19 16:20:59 +02:00
Snowram
7a62ddfd3f
Add BeastClaw npc weapontype
2020-10-19 16:20:59 +02:00
Snowram
f9383e4dd8
Add roshwalr npc
2020-10-19 16:20:59 +02:00
jiminycrick
be1596a703
fixed agent code for staff rework
2020-10-19 16:20:59 +02:00
jshipsey
66b1fe67dc
rebase
2020-10-19 16:20:58 +02:00
Snowram
c9985e14cb
Rename Saurok, various anim fixes
2020-10-19 16:20:58 +02:00
jshipsey
6a86567301
fix agent bug
2020-10-19 16:20:58 +02:00
jshipsey
65df398672
werewolf work
2020-10-19 16:20:58 +02:00
jiminycrick
50aac17d94
Added secondary skills to agent code (except bow)
2020-10-19 16:20:58 +02:00
Snowram
6c54e6d8fe
Add sand, snow and wood raptor npcs
2020-10-19 16:20:58 +02:00
Snowram
588f66a1ee
Add treant npc
2020-10-19 16:20:58 +02:00
unknown
d2f91bc3a0
Assigns a ToolKind to bipedlarge weapons
2020-10-19 16:20:58 +02:00
Snowram
0a9ec848a7
add lizardman npcs
2020-10-19 16:20:58 +02:00
Snowram
204fa50de9
Add werewolf npc
2020-10-19 16:20:57 +02:00
Sam
e6684009c2
Made ability key not hardcoded in tool.rs.
2020-10-15 20:05:58 -05:00
Sam
d869f7e430
Moved explsion struct from within comp to common.
2020-10-14 21:06:55 -05:00
Sam
14e4af7ab6
Addressed playtesting feedback.
2020-10-14 21:06:52 -05:00
jshipsey
6a744eed82
anims
2020-10-14 21:06:32 -05:00
Sam
1ba8a6cfb3
Balance tweaks to staff abilities.
2020-10-14 20:57:01 -05:00
Sam
b5091a5891
Ai for staff-wielding enemies. Keyframes for shockwave state.
2020-10-14 20:56:24 -05:00
Sam
1c21362bc3
Fixed shockwaves hitting entities multiple times. Explosions can now regen energy. Staff M1 now has particles instead of using bomb particles.
2020-10-14 20:56:23 -05:00
Sam
7ef73f5981
Added particles for fire shockwave. Added ability key enum so held abilities could differentiate what button they should check. Modified energy fields on basic beam so it could drain energy every second.
2020-10-14 20:56:22 -05:00
Sam
cbb72363af
Reworked explosions. Tweaked staff fireball.
2020-10-14 20:56:21 -05:00
Sam
04dcd012da
Flamethrower particles.
2020-10-14 20:56:21 -05:00
Sam
c80f16ae74
Started to add particles.
2020-10-14 20:56:20 -05:00
Sam
256846a669
Initial implementation of new staff abilities.
2020-10-14 20:56:16 -05:00
jiminycrick
4de42e36fd
Consolidated recover code in repeater_ranged
2020-10-14 17:10:27 -07:00
jiminycrick
512d881cd2
Fixed clippy errors and added SFX
2020-10-14 15:30:58 -07:00
jiminycrick
95c36cc3fb
Skill icons with proper rotation
2020-10-14 12:50:33 -07:00
jiminycrick
1f3bd0e1d2
Responded to testing feedback
2020-10-14 12:50:33 -07:00
jshipsey
3bb59b36cd
energy values, remove hotload
2020-10-14 12:50:33 -07:00
jshipsey
64f72a73f9
axeleap tweaks
2020-10-14 12:50:33 -07:00
jiminycrick
691acd730d
Smoother leap and recovery leap handling
2020-10-14 12:50:33 -07:00
jshipsey
22d8792c4b
adjustments to chargedmelee, repeater
2020-10-14 12:50:33 -07:00
jshipsey
521ffd64ba
cleanup
2020-10-14 12:50:33 -07:00
jshipsey
28eb58ddfa
anims
2020-10-14 12:50:33 -07:00
Sam
fadba23dde
Slight tweaks to leap
2020-10-14 12:50:33 -07:00
jshipsey
281155186f
hammer leap melee anim
2020-10-14 12:50:33 -07:00
Sam
e1634fa83a
Fixed errors from transitioning some states to keyframes.
2020-10-14 12:50:33 -07:00
Sam
21cf1e2168
Added keyframes to leap melee.
2020-10-14 12:50:33 -07:00
Sam
7e0cc2d8e5
Added keyframes to repeater ranged.
2020-10-14 12:50:33 -07:00
Sam
97f580be2b
Added keyframes to charged melee.
2020-10-14 12:50:32 -07:00
jiminycrick
9ebda3c353
Made bow leap more graceful and set energy costs and removed jitter for no leap
2020-10-14 12:50:32 -07:00
jiminycrick
431f99a791
Reducing the amount of data in character state
2020-10-14 12:50:32 -07:00
jiminycrick
05623eb8bd
Addressed comments
2020-10-14 12:50:32 -07:00
jiminycrick
04175bab09
Add skillbar stuff for 3rd skills
2020-10-14 12:50:32 -07:00
jiminycrick
951acfca21
Add 3rd skill for hammer, bow, and axe minus skillbar UI stuff
2020-10-14 12:50:32 -07:00
Imbris
9e7f521489
Fix system data folder name, panic when outside the project dir and there is no env var set
2020-10-13 02:29:32 -04:00
Marcel Märtens
f1c9b959f4
rename a file, fix error msg, dont spam persistence by default
2020-10-13 00:06:24 +02:00
Marcel Märtens
2a7378b4ae
pack together InGame, CharacterScreen and General variant in a single enum, as requested by zesterer.
...
His reason to reqeust that is, that there might not be a perfect disctinction in the future.
Now we need to send ServerGeneral over streams and do additional checking at various places to verify that not the wrong variant is send.
2020-10-12 11:27:21 +02:00
Marcel Märtens
ff374eab59
create a ServerMsg and ClientMsg enum and verify the state when in debug mode to benefit from the transition
2020-10-11 22:59:53 +02:00
Marcel Märtens
e8452fafc6
fix naming, replace NotInGame with CharacterScreen
2020-10-11 22:55:38 +02:00
Marcel Märtens
8b40f81ee2
No longer block the main thread for client connections, new clients will be handled by server without waiting.
...
- Instread we have a dedicated thread that will async wait for new participants to connect and then notify the main thread
- registry no longer sends a view distance with it.
- remove ClientMsg::Command again as it's unused
2020-10-11 22:55:02 +02:00
Marcel Märtens
017e004309
Rename enums to allow a super enum in the future, but i am not yet sure if we want to introduce this yet
...
```
//This is a helper structure, containing all possible data send over
pub enum ClientMsg {
Initial(ClientType),
General(ClientGeneralMsg),
InGame(ClientInGameMsg),
NotInGame(ClientNotInGameMsg),
Register(ClientRegisterMsg),
Ping(PingMsg)
}
```
2020-10-11 22:49:25 +02:00
Marcel Märtens
b1db5ef488
Redo Network Frontend.
...
Rather than having a single Stream to handle ALL data, seperate into multiple streams:
- Ping Stream, for seperate PINGS
- Register Stream, only used till the client is registered, then no longer used!
- General Stream, used for msg that can occur always
- NotInGame Stream, used for everything NOT ingame, e.g. Character Screen
- InGame Stream, used for all GAME data, players, terrain, entities, etc...
This version does compile, and gets the client registered (with auth too) but doesnt get to the char screen yet.
This fixes also the ignoring messages problem we had, as we are not sending data to the register stream!
This fixes also the problem that the server had to sleep for the Stream Creation, as the Server is now creating the streams and client has to sleep.
2020-10-11 22:49:14 +02:00
Monty Marz
e1a77d040d
loot table adjustments
...
- decrease blue glider drop rate
- decrease cloth scaprs drop rate from villagers
- add crafting mats to crates instead
2020-10-11 16:25:35 +00:00
Imbris
71251ca6a6
Change admins from Vec<String> into Hashset<Uuid>, add commands to server-cli-bin for adding and removing admins
2020-10-10 02:10:32 -04:00
Imbris
fb2cf1a292
Fix clippy warnings
2020-10-10 02:10:32 -04:00
Imbris
7c14a3f4a4
New userdata folder that holds voxygen settings and logs and server saves and settings, split up server settings file into parts that are persisted back to their files and parts that are read-only, misc fixes
2020-10-10 02:10:32 -04:00
Imbris
6c43a7cdc5
Change projectiles to not be pushed back by collisions, moved group check into projectile system from physics system
2020-10-10 02:10:31 -04:00
Monty Marz
2b800a2b63
make clippy happy
...
Delete glider.ron
2020-10-07 02:23:20 +00:00
Sam
47abf49751
Addressed comments
2020-09-29 20:48:23 -05:00
Sam
5f889773b5
Addressed comments
2020-09-29 19:48:17 -05:00
Sam
51141b2c1a
Changelog line, final balance tweaks.
2020-09-29 19:48:16 -05:00
Sam
0b80257aa3
Add migration
2020-09-29 19:48:15 -05:00
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