Commit Graph

1570 Commits

Author SHA1 Message Date
jshipsey
266986626d biped_small setup 2021-02-27 01:42:43 -05:00
Samuel Keiffer
a99a78abdb Merge branch 'sam/improve-aura-buffs' into 'master'
Auras now apply a buff only once, instead of applying a buff every second.

See merge request veloren/veloren!1824
2021-02-27 03:21:47 +00:00
Snowram
1172c2f2c3 Merge branch 'Sarrakitty/OceanFlora' into 'master'
added coral reefs, kelp forests, and seagrass

See merge request veloren/veloren!1819
2021-02-27 01:52:33 +00:00
Sam
64a809ee5b Made comments more descriptive 2021-02-26 18:15:24 -05:00
Sam
45dd36be07 Auras now apply a buff only once, instead of applying a buff every second.
Also supports for buffs persisting a period of time after leaving the aura.
Campfire regen slightly buffed.
2021-02-26 17:57:01 -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
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
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
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
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
Avi Weinstock
c3ac8a1b51 Support modular weapon voxel meshes being made by assembling their components. 2021-02-23 00:45:26 +00: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
267e7d8b4c Finalized Retrieve API 2021-02-22 23:59:41 +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
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
18309fe4c6 Added AbilityInfo struct to attack states 2021-02-19 17:30:24 -05:00
Sam
8f0cca074d Dual wielding now uses skillbar abilities from multiple weapons. 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
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
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
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
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
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
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
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
Sam
252e421692 Roll is no longer free. 2021-02-06 15:20:08 -05: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
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
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
edcfcc31f6 Attacks can now deal poise damage. 2021-02-02 13:07:04 -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
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
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
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
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
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
Scott Williams
c7baf1fd86 General NPC Hitbox Adjustments 2021-01-24 04:00:57 +00:00
Samuel Keiffer
39d1c9e885 Merge branch 'sam/skill-balancing-1' into 'master'
Skill balancing

See merge request veloren/veloren!1716
2021-01-23 21:12:35 +00:00
Samuel Keiffer
97f0413307 Merge branch 'sam/fix-dash' into 'master'
Dash now ticks damage based off distance rather than duration.

See merge request veloren/veloren!1715
2021-01-23 04:42:56 +00:00
Sam
5e4b6809ca Sceptre nerfs. 2021-01-22 22:46:18 -05:00
Sam
d6be67e0a0 Dash now ticks damage based off distance rather than duration. Fix for golem no longer being able to melee. 2021-01-22 18:10:47 -05:00
Sam
4014b28d19 Removed body from stats component as there is already a body component. 2021-01-22 16:50:22 -05:00
Scott Williams
2a9c4f6f2e Swilliams/golem hitbox fix 2021-01-22 16:30:35 +00:00
Sam
b5a3b3442c Addressed comments. 2021-01-21 17:45:03 -05:00
Sam
c888ec0535 Golems are now lactose tolerant. 2021-01-20 11:54:57 -05:00
Sarra Kitty
e7d852835c Sarrakitty/rotsys item sprites 2021-01-19 18:23:44 +00:00
Samuel Keiffer
b04158c5f9 Merge branch 'sam/combat-skill-trees' into 'master'
Sam/combat skill trees

See merge request veloren/veloren!1680
2021-01-19 14:18:07 +00:00
Monty Marz
ac60bf5794 Better visuals for skill button labels, don't show "0 EXP" in the SCT
Made functions that were called every frame significantly cheaper.

Final UI fixes.
2021-01-19 08:08:29 -05:00
Sam
eaa41c7dea Skills are now factored into combat rating. New formula for exp scaling per SP.
Adjust lvl up msg fade

Add female humanoid names WIP

Changed text formatting when skill is max level. Added message to show you have 0 skill points available.

Addressed a lot of comments.

various changes to UI

- fix skillbar offset
- remove CR indicators for group members
- add CR indicators to group member frames
- use unified CR indicator icon

Exp reward tweaks.

Fixed flamethrower range skill description.
2021-01-19 08:08:26 -05:00
jshipsey
0b156542e4 roll keyframes
Changed roll to have non-fixed acceleration.
2021-01-19 08:08:21 -05:00
jshipsey
5d1993009f keyframed axe spin
Fixed error in converting FK to entity_id from character_id.

Giant match statements in persistence.

Tweaked roll.

Changed how skills and skill groups were assigned in the skillset builder so it's format more closely followed loadout builder.
2021-01-19 08:08:18 -05:00
Monty Marz
de5c5702b3 stats display
Addressed comments.

Addressed comments.
2021-01-19 08:08:11 -05:00
Sam
c809569f6b Added level up sound to skill point gain. Fixed tests.
Fixed duplicate roll description.
2021-01-19 08:08:08 -05:00
jiminycrick
3d44ac2c35 Humanoid skill config and AI skill check
updated axe skill with correct icons
2021-01-19 08:08:05 -05:00
Noé
acbd965e65 implemented en translation for Hammer, Bow, Scepter and Staff skills
skill tree translation

Clamped earning SP to avoid u16 overflow.

translation fixes

Fixed exp scaling function

Fixed exp scaling function

remove debug combat rating display

Update overhead.rs

implemented en translation for Axe
2021-01-19 08:08:02 -05:00
Sam
a606313856 Added scaling exp costs per skill point.
Fix tooltip being red.

multiple fixes, started translation

change exp giving items
adjust loot tables
adjust combat rating indicators
fix group frame offsets
2021-01-19 08:07:57 -05:00
Sam
6ce422748c Added SkillSetConfig to specify skill sets for npcs. 2021-01-19 08:07:55 -05:00
Sam
968b66260e Levling health gives you health. Added combat scaling to UI. 2021-01-19 08:07:54 -05:00
Sam
83fdc8806d Added function to automatically generate a combat rating. Currently, it is used to calculate exp. 2021-01-19 08:07:54 -05:00
Sam
4f552a736e Added skill point costs to tooltips. 2021-01-19 08:07:53 -05:00
Sam
ae8c8b47f1 Added tooltips with numbers. Balancing on some skills.
Added experience scaling for tougher enemies.
2021-01-19 08:07:51 -05:00
Sam
986c05621a Wired up skill UI to check for prerequisites being met and sufficient skill points.
available SP check in general HUD, more skill icons

Trimmed 2000 lines from a file.

UI tweaks
2021-01-19 08:07:45 -05:00
Sam
4b52574750 Skill point gains are displayed in hud.
level up message visuals and functionality

Handles simultaneous skill point gains in UI.
2021-01-19 08:07:41 -05:00
Sam
1d90b64898 Added function to get the max amount of skill points that can be spent in a tree. 2021-01-19 08:07:39 -05:00
Sam
b6d2d48ead Exp floaters.
You load in with correct energy and health values now.
2021-01-19 08:07:36 -05:00
Monty Marz
48bd921d0a EXP bar and available points UI
fix overhead UI

Add WIP overhead difficulty indicator

readd commented out exp counter for later use

Wired skill information into UI.
2021-01-19 08:07:25 -05:00
Sam
c0c45a1996 Purged stats, including level and experience 2021-01-19 08:07:23 -05:00
Sam
48c98b11cf General combat skill tree.
UI for general skill tree
2021-01-19 08:07:20 -05:00
Monty Marz
3f436079e8 Skill-Tree UI
switchable tabs
rework icons, fix cursor toggle
auto slot placing

Bow leap skill changed to bow glide skill.
2021-01-19 08:07:06 -05:00
Sam
0ccbdc3b8c Sceptre skill tree. 2021-01-19 08:07:03 -05:00
Sam
5c7705f874 Staff skill tree. 2021-01-19 08:07:03 -05:00
Sam
662a08defc Implemented bow skill tree. 2021-01-19 08:07:02 -05:00
Sam
4dfe14c103 Hammer skill tree complete. 2021-01-19 08:07:02 -05:00
Sam
72604e8a4e Axe skill tree functional. 2021-01-19 08:07:01 -05:00
Sam
cc60ca58be Added sword skill tree 2021-01-19 08:06:59 -05:00
Sam
0e84ba18c2 Moved skill max level and skill prerequisites into ron files. 2021-01-19 08:06:59 -05:00
Sam
5a23f063a0 Ron file now used for skills belonging to each skill group. 2021-01-19 08:06:58 -05:00
Sam
fa073bceff Skills can now optionally have levels. Max level prevents adding skill of higher level. Support for skills having a prerequisite of a particular level. 2021-01-19 08:06:57 -05:00
Sam
5d474974b9 Skills can now have prerequisite skills. Skills can now cost different amounts of skill points. 2021-01-19 08:06:57 -05:00
Sam
cbfe064e4f You now gain skill points after a threshold of xp within a particular skill group.
Skills can now unlock skill groups. Temp method of using chat to unlock skills.
2021-01-19 08:06:52 -05:00
Jesus Bracho
42679201b0 Set up aura filtering 2021-01-18 22:58:56 +00:00
Sam
63eb71ed5b Exp is now awarded to specific skill groups. It's automatically split between a general pool and weapon pools based on if you have the weapon in your loadout and if you've unlocked the weapon pools. 2021-01-18 17:54:03 -05:00
Jesus Bracho
ec79890335 Provide buff information on killed entities 2021-01-18 05:46:53 +00:00
Ben Wallis
c785e75e60 Follow-up fixes from review of inventory MR 2021-01-10 11:27:09 +00:00
Ben Wallis
d7cbf479e3 Fixed a bug which prevented picking up stackable items with a full inventory 2021-01-08 23:34:35 +00:00
Ben Wallis
aef2637288 Refactored loadout to have public functions for each slot instead of requiring callers to use the _INDEX consts 2021-01-08 19:12:09 +00:00
Joshua Barretto
a4b9230f03 fixed Cargo.lock conflict
Fixed `crossbeam-queue` being referenced  twice in the lockfile
2021-01-07 20:25:12 +00:00
unknown
3c1e1c6733 Converts npcs names file to ron 2020-12-23 00:58:25 +01:00
Frinksy
53d5a9373e fixing #881
- Multiple buffs make the UI icons flicker
2020-12-22 15:40:57 +00:00
Justin Shipsey
3466d638fe Merge branch 'gliding-energy-cost' into 'master'
Glider mid-air deploy and gliding energy-cost

See merge request veloren/veloren!1626
2020-12-18 21:18:32 +00:00
Ludvig Böklin
8f9db19a4a Glider mid-air deploy and gliding energy-cost 2020-12-18 19:16:06 +01:00
Benoît du Garreau
1ace001fde Fix debug items 2020-12-18 18:11:48 +01:00
Benoît du Garreau
989683d2d3 Improve world::Index 2020-12-17 12:08:04 +01:00
Benoît du Garreau
1c4e334cd4 Apply suggestion
- Remove default value for CharacterAbility
- Put back accidentally removed comment
2020-12-17 12:06:32 +01:00
Benoît du Garreau
ce9d706ed4 Fix clippy lints 2020-12-17 12:06:28 +01:00
Benoît du Garreau
7b4aa6d4cc cargo fmt 2020-12-17 12:06:22 +01:00
Benoît du Garreau
d090eefb00 Move the asset module to a single file 2020-12-17 12:06:13 +01:00
Benoît du Garreau
0cf164f33a Use assets_manager to load assets 2020-12-17 12:06:07 +01:00
jiminycrick
60d5d62eef Switched to hashbrown everywhere 2020-12-17 10:31:35 +01:00
Marcel
24a840bc6b Merge branch 'xMAC94x/dependencies' into 'master'
update chrossbeam, tracy, prometheus (and reduce server deps to crossbeam-channel)

See merge request veloren/veloren!1641
2020-12-16 09:33:34 +00:00
Justin Shipsey
e7249210f6 accel based run 2020-12-16 08:07:38 +00:00
Marcel Märtens
107fd432f5 update further crates 2020-12-16 08:56:21 +01:00
Joshua Barretto
023888f560 Updated changelog, fmt and clippy fixes 2020-12-13 17:40:15 +00:00
Joshua Barretto
f8c8e342e6 Moved common networking code to common/net, clippy fixes 2020-12-13 17:23:45 +00:00
Pfauenauge90
6d1bae67d0 adjust mindflayer strength, fix en translation, update es_la translation, fix undead eyes 2020-12-10 18:06:31 +01:00
Monty Marz
f2ba7cc297 add baobabs, fix map difficulty, make mushrooms lootable 2020-12-10 18:06:29 +01:00
Marcel Märtens
ccb01e1898 adjust fmt and clippy after toolchain upgrade 2020-12-10 14:53:01 +01:00
Snowram
6713ac935f Addressed comments 2020-12-08 23:04:21 +01:00
Snowram
f94a4ec90d Improves fish_small, new npc 2020-12-08 23:03:39 +01:00
Snowram
72d73ecd38 Initial fish work 2020-12-08 23:03:38 +01:00
Sam
490915d384 Modified how most abilites that could scale were scaled. 2020-12-07 22:00:24 -06:00
James Melkonian
71303fecfd Aura System and Campfire Health Regen 2020-12-04 22:24:56 +00:00
Marcel Märtens
add7922653 Move Systems out of common into common_sys
This requires to move `State` into a own crate called `common_state` which depends on `common` and `common_sys`
2020-12-01 13:44:07 +01:00
Samuel Keiffer
352917d9cb Graying out skills with insufficient energy no longer dependent on hard-coded values 2020-11-27 16:27:09 +00:00
Sam
6a6260daa1 Weapon combat fixes:
- Modified energy and speed scaling of sword, axe, and hammer combo melees.
 - Nerfed bow basic attack knockback. Buffed bow damage and energy regen.
 - Corrected xp values for theropods. Removed unnecessary function for xp increase per level.
 - Guards no longer flee at low health.
 - Buffed sword spin.
 - Nerfed axe spin and sword dash moderately.
 - Dash now takes a little time to reach full speed. Sword M2 and hammer M1 damage values tweaked.
2020-11-26 09:15:45 +01:00
Joshua Barretto
867ca911e5 Parallelised agent code for some sweet performance gains 2020-11-25 22:47:16 +00:00
Sam
5461f002fe Correct beam offsets used. Fix scaling damage on hammer M1. Add can_strafe function to body. 2020-11-24 17:56:39 -06:00
jiminycrick
aad9734055 Agent tactic refactoring
Lower theropods spawns

clippy, changelog

review response
2020-11-24 17:49:00 -06:00
jiminycrick
1cf0aff5ef More ai work
balance

Lavadrake AI tweaks

feedback tweaks
2020-11-24 17:48:54 -06:00
jshipsey
d10dd83e5f theropods in world, small tweaks 2020-11-24 17:48:51 -06:00
jshipsey
f411ff7e04 bunch of animations and more attacks 2020-11-24 17:48:51 -06:00
jshipsey
6f72e68ad6 hoof attack, tweaks 2020-11-24 17:48:50 -06:00
jshipsey
a27b086401 placeholder for charge animal, animated leapmelee, small fixes 2020-11-24 17:48:49 -06:00
jiminycrick
a1aa3efd29 Moved hit timer to charged melee and adjusted for tail slap 2020-11-24 17:48:48 -06:00
jshipsey
1f59ef92d8 species specific speeds, more animation 2020-11-24 17:48:48 -06:00
jshipsey
c07d8df58b assigning weapons, building animations
ability mapping
2020-11-24 17:48:43 -06:00
jshipsey
e3e513cc11 initial quadlow ranged work 2020-11-24 17:48:27 -06:00
jshipsey
ae06016e9a Wolf attacks and ai.
initial wolf dash testing

tool.rs

Wolf attack AI
2020-11-24 17:48:20 -06:00
Joshua Barretto
26fd40c0e3 Fmt, make clippy happy 2020-11-23 15:39:03 +00:00
Joshua Barretto
7850b0bcaf Added site names, dungeon difficulty, better explosions 2020-11-23 10:57:55 +00:00
Joshua Barretto
22fb71905b Added rtsim entities moving when unloaded, better generation 2020-11-23 10:45:01 +00:00
Odd-Harald Lillestø Myhren
56e37a4846 Fix bug that caused campfires and other stuff to duplicate 2020-11-22 21:03:06 +00:00
Sam
e62960e75d Rolling can now interrupt any attack. 2020-11-20 11:30:48 -06:00
Snowram
d98bfa72ad Improves bipedlarge and theropod anims, balance tweaks 2020-11-19 00:56:50 +01:00
Snowram
b48de84f8c Adds 3 new npcs 2020-11-19 00:53:17 +01:00
Snowram
44fe398ba3 Adds 2 new npcs, some models tweaks 2020-11-19 00:53:13 +01:00
Snowram
42d2108c39 Adds mindflayer npc 2020-11-19 00:53:09 +01:00
Snowram
9bfccd42d3 Adds new animals 2020-11-19 00:53:02 +01:00
Snowram
950eb1976d Addressed more comments 2020-11-17 23:54:01 +01:00
Snowram
83b2640e02 Makes basic beam Y offset depend on body scale 2020-11-17 23:27:13 +01:00
Snowram
93642428f2 Move eye sight and scale in body.rs, mounts tweaks 2020-11-17 23:27:13 +01:00
Imbris
cbb701f30d Temp fix for the home command 2020-11-15 20:40:12 -05:00
Knarkzel
917ae5a0b5 added persist combo counter on roll when mid-combo 2020-11-15 23:08:14 +01:00
Imbris
1952785af2 Remove randomization of species and body_type with the randomize button in char creation 2020-11-13 19:43:32 -05:00
Sam
b5f59f9cf3 Fixed tests. Addressed comments. 2020-11-13 10:41:34 -06:00
Sam
e2fe2fd532 Speed and power on weapons are now able to modify abilities after they are loaded from ron files. 2020-11-12 21:24:36 -06:00
Imbris
37e4ea4669 Remove ability map from top level functions 2020-11-12 21:24:35 -06:00
Sam
9b4fa4e961 Started moving loading of ability manifest to an ecs variable. 2020-11-12 21:24:34 -06:00
Sam
050ad82e55 Abilities are now loaded from .ron files. 2020-11-12 21:24:34 -06:00
Sam
770aaf6b93 Added projectile constructor. Removed a bunch of cloning. 2020-11-12 21:24:32 -06:00
Sam
abf7301a89 Changed how buffs were constructed on projectiles. 2020-11-12 21:24:32 -06:00
Sam
f4244ecbaf Added ron files for unique and WIP tools. 2020-11-12 21:24:31 -06:00
Snowram
bed3a5c70a Adds a speed variable to charged states 2020-11-11 22:06:05 +01:00
Snowram
af346806de Addressed comments 2020-11-11 22:03:54 +01:00
Snowram
fe977f0a6c Adds a speed stat to weapons 2020-11-11 22:03:53 +01:00
Imbris
cd1a134c26 Fix bug in body.validate(), add sliders to iced char creation screen, make char selection screen more closely resemble the master version in style 2020-11-11 03:02:22 -05:00
James Melkonian
6085edaa34 Improve NPC aiming and humanoid hitboxes 2020-11-11 04:36:40 +00:00
Monty Marz
0e072f72cc frost cleaver
velorite mage set

offsets
armor stats
2020-11-10 21:43:45 +00:00
jshipsey
cd188fd32b tweaks 2020-11-09 18:32:23 -05:00
Sam
9b0e1c8dfc Slight balance tweaks. 2020-11-08 19:33:24 -06:00
Sam
8fa7e246e9 Minor tweaks. 2020-11-08 18:11:53 -06:00
jshipsey
0618de138e rebase 2020-11-08 19:02:48 -05:00
jshipsey
20efc692fd ranged 2020-11-08 18:52:22 -05:00
Sam
edff3a75c3 Made bow stay in BasicRanged state while autofiring. 2020-11-08 18:51:36 -05:00
jshipsey
92aa6a1b12 axe basic 2020-11-08 18:51:35 -05:00
jiminycrick
33e87de17e Initial combo melee for axe M1 2020-11-08 18:48:48 -05:00
AlKabir
6535deae9c added two meat assets for mobs to drop 2020-11-07 23:34:20 -06:00
Imbris
133ba82a9b Use item_definition_id for weapon asset mapping 2020-11-07 16:44:11 -06:00
Sam
a4046872b2 Yeeted from code files. 2020-11-07 15:53:10 -06:00
AlKabir
77f3c7e3c5 Minor combat fixes (see issue 785) 2020-11-07 18:00:07 +00:00
TheBoredProgrammer64
b2ec207979 Revert "Removed toolCategory"
This reverts commit 5b0ff408176ff00408cc90f2516a90d5cd303e56.
2020-11-06 15:33:20 +00:00
Samuel Keiffer
44f676d90c Merge branch 'sam/make-roll-great-again' into 'master'
Roll overhaul

See merge request veloren/veloren!1484
2020-11-06 03:25:18 +00:00
Sam
37ecb165ef Addressed comments. Roll now only provides i-frames to melee attacks. It also reduces height of hitbox. 2020-11-05 20:40:20 -06:00
Snowram
262ceac060 fmt 2020-11-06 01:08:35 +01:00
Monty Marz
642ad805a1 potion buff 2020-11-06 01:08:34 +01:00
Snowram
0d92f02deb Buff stonegolem, nerf giants, add missing sfxs 2020-11-06 01:08:33 +01:00
Monty Marz
ca932f6c15 easier to get minor potions
increase cost of a minor potion to 4 apples
2020-11-06 01:08:32 +01:00
Snowram
a52f83e92c Addresses some comments 2020-11-06 01:08:31 +01:00
Snowram
ce96af4363 Allow for an arbitrary array of effects and buffs for consumables 2020-11-06 01:08:30 +01:00
Sam
4a1a3f3ecc Roll now gives i-frames. 2020-11-05 16:48:04 -06:00
Sam
860c766d62 Changed roll movement. 2020-11-05 14:22:30 -06:00
Sam
55e75adec0 Created new fields in roll. Centralized generation of abilities. Added builder function for rolls since they are not yet tied to equipment. 2020-11-05 12:28:18 -06:00
Marcel
121364821a Merge branch 'xMAC94x/FeuerzeugBierflasche' into 'master'
xMAC94x/feuerzeugBierflasche

See merge request veloren/veloren!1478
2020-11-05 09:22:50 +00:00
Sam
a0af315930 Addressed comments. 2020-11-04 19:22:08 -06:00
Sam
bda7fefdc0 Removed Damages struct. Added GroupTarget enum. Changed RadiusEffect to use Effect instead of Daamges. Added Damage variant to Effect Eenum. 2020-11-04 19:22:07 -06:00
Sam
87bff41a66 Addressed comments. 2020-11-04 19:22:05 -06:00
Sam
c48c022f7e Separated out health from stats component. 2020-11-04 19:22:04 -06:00
Sam
b8f722af8d Removed most hardcoded ability keys. 2020-11-04 19:22:02 -06:00
Sam
f1f5c2b21b Added energy change server event. 2020-11-04 19:22:01 -06:00
Sam
e0cbbf52ed Changed explosions to take a vec of RadiusEffects. Changed Damage to a struct of DamageSource and value. Added interpolation function to damage. 2020-11-04 19:22:00 -06:00
Marcel Märtens
a7123c6e14 put cache in ECS to get rid of allocations 2020-11-04 14:19:28 +01:00
jshipsey
28cde31bbb setup for staff, more anim conversions 2020-11-04 01:48:05 +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
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
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
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
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
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
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
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
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
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
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
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
22d8792c4b adjustments to chargedmelee, repeater 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
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
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
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
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
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
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
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
Sam
de45784596 Addressed round of testing feedback. 2020-09-29 19:48:09 -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
07fd9ac023 Re-added necessary functionality to beam (heal, lifesteal, energy regen). 2020-09-29 19:48:06 -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
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
Ben Wallis
11fc74642e Refactored crafting to use ItemDef instead of Item 2020-09-27 14:55:31 +01:00
Snowram
fa2dd28587 Fixed various issues from better-things branch 2020-09-21 23:57:10 -04:00
Sam
2ff59c9f60 Addressed comments 2020-09-21 17:55:29 -05: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
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
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
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
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
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
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
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
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
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
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
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
4405227ffb Made light attenuation nicer, fixed campfire light offset 2020-09-04 11:48:54 +01: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
3a96b73b2c Move figure meshing to a background thread. 2020-08-28 05:25:31 +02: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
37b45ba5f4 Addressed review issues 2020-08-25 11:01:17 +01:00
Joshua Barretto
e4de32ac25 Fixed quadruped hitboxes 2020-08-24 21:46:08 +01:00
Joshua Barretto
2b9d5ee4a2 Fixed bad hitbox radii and adjusted field colour 2020-08-24 20:52:18 +01:00
Joshua Barretto
7e571c10cf Corrected hitbox mistake 2020-08-24 18:29:59 +01:00
Joshua Barretto
6a4c5a05d0 Fixed projectile collisions, hitboxes, better aiming 2020-08-24 18:24:44 +01:00
Monty Marz
abeba460be fix filepath 2020-08-23 13:36:11 +02:00
Monty Marz
c9438c0947 Fixes
Fix Cave NPCs only spawning very deep inside caves

Increase twig density

Adjust armour values and ingredients for starter sword

fix healing rod using the wrong model

Hung up the lianas again
2020-08-22 23:37:45 +00:00
Monty Marz
ce929d2924 Address comments, clippy and minor adjustments
first bunch of comments addressed

change order or scatter, paths and caves being applied in worldgen to avoid floating scatter objects

campfire adjustments, reduced grass density due to FPS issues

readded item descriptions to the crafting window, item desc for craftable armour

address comments
happy clippy, happy life
clippy

clippy

more clippy
fmt

revert cargo.toml formatting
remove "allow unreachable pattern"
fmt
2020-08-21 22:37:08 +02:00
Monty Marz
e3eb34085f craftable starting set
velorite staff update

ore_nature_longbow

model fix
humanoid colours

Update agent.rs

improve rng (according to zesterer)

slower fleeing

More adjustments

fix cult leader name

more loot tables

all kinds of adjustments

smöl adjustments
2020-08-21 19:36:21 +02:00
Sam
9d2fe79a78 Changes to how critical hits function for melee attacks. Removed ability for explosions to crit. Velorite sceptre now functions as healing staff. 2020-08-21 19:36:20 +02:00
Monty Marz
55d126861f fix tooltips in char selection, more balancing
fix talking animals

fix critter exp, stronger villagers

biped large balancing

more villager balancing, mushroom spawning rate

more balancing

fix rebase

multiple loottables

Add tarasque and bonerattler armour

Added loot tables for different groups of weapons and armor based off relative strength. Added loot table for cultist boss.

Added loot tables for consumables and food. Trimmed down default loot table.

remove male and female sign from char creation

chest loot tables

fix loot tables

lootable crates

lantern keybinding display

more loot tables

loot table changes

fixed loot tables

fix typo
more grass

rebase fix, better lantern

re-add sprite rotation for grass

crafting window alignment fix, new streetlamps, new shopsigns, new healing staff

height change
2020-08-21 19:36:19 +02:00
Sam
924d09e46c balancing
more specific stats

Update body.rs

more balancing

non hostile catoblepas and mouflons

quad low
more adjustments
Animals with enemy alignment now deal correct damage. Made health scaling species-specific.
2020-08-21 19:36:17 +02:00
Monty Marz
7ab80ef367 sprite spawning rules 2020-08-21 19:36:16 +02:00
Monty Marz
b930c34d89 agent changes, sprite spawning changes, alignment changes 2020-08-21 19:36:16 +02:00
Forest Anderson
a68fc077ce Merge branch 'songtronix/fixes' into 'master'
Fix: Various fixes

Closes #726

See merge request veloren/veloren!1306
2020-08-20 23:25:13 +00:00
Forest Anderson
69463ab912 Merge branch 'T-Dark-invuln-armor-makes-you-invuln' into 'master'
Fixed debug armor letting some damage through

Closes #703

See merge request veloren/veloren!1309
2020-08-20 23:22:50 +00:00
Joshua Yanovski
2dfd3b13d1 (See sharp/lod-history) LOD, shadows, greedy meshing, new lighting, perf
---

Pretty much a Veloren fork at this point.  Here's a high level overview of the changes (will be added to CHANGELOG just before merge).

At a high level this MR incorporates roughly two groups of changes.

The first group consists of new game features: more flexible map sizes, level of detail terrain, shadow maps, and a new lighting
engine.  This is "feature work" that (mostly)  only adds new things to Veloren, and mostly shouldn't affect old stuff.

The second big group of changes are those addressing the fallout from all the new features.  These include performance fixes of
various sorts: the addition of multiple graphics options and optimization of the cheap ones to avoid work, switching all voxel
models to use some variant of greedy meshing, switching over much of our CPU-side vector math to exploit SIMD instructions
(coinciding with a fork of `vek`), and a rewrite of how the UI handles text rendering (coinciding with updates to our fork
of `conrod`).  Making Veloren's hardcoded colors appear correct under the new lighting engine also required considerably
changes (TODO: Fill in this section when it's complete).

The second category of changes often heavily touches code owned by other people, including frequently modified code "owned" by a
handful of people, so I recommend that this code be reviewed particularly carefully.

---

At a high level (each will be described in more detail below):
- The world map has been refactored.
  - The world size is no longer hardcoded (@zesterer).
  - The map generation code was made generic to allow using it outside of the `world` crate (@zesterer).
  - On world creation, we now compute *horizon maps* (@zesterer).
  - The way we pass the world from the server to the client has been updated (@xMAC94x).
  - Artifacts related to image rotation were fixed (@imbris).
  - Multiflow rivers were enabled (@zesterer).
  - In the process of making changes related to the world map, various incidental fixes and optimizations were required.
- The new *level of detail* feature was added (@zesterer wrote part of this and has checked out the rest).
  - A new LOD terrain rendering step was added to the pipeline.
  - The LOD terrain quality was made configurable via a graphics setting.
  - Horizon maps were used to cast shadows from LOD chunks on both LOD and non-LOD terrain.
  - A "voxelization" effect was incorporated into rendered LOD terrain to make it blend better into the world.
  - In the process of making changes related to LOD, various incidental fixes and optimizations were required.
- Veloren's lighting has been completely overhauled (@zesterer has already checked most of this out).
  - A semi-accurate index of refraction was assigned to our materials.
  - A new, more realistic, physically based approach to lighting was used using the *Ashikhmin Shirley* BRDF.
  - We emulate *atmospheric scattering* using equations designed for measuring solar panel light exposure.
  - We attempt to compute *realistic light attenuation* in water using its real material properties.
  - In the process of making changes related to LOD, various incidental fixes and optimizations were required.
- Point and directional lights now cast realistic shadows, using *shadow mapping.* (@imbris, @zesterer, @Treeco, @YuriMomo)
  - Point light shadow maps were added to the rendering pipeline, using geometry shaders and *seamless cube maps*.
  - Directional light shadows were added to the rendering pipeline, using LISPSM together with disabling *depth clamping*.
  - "Shadow-only" chunks and NPCs were added to prevent shadows from models behind you from disappearing.
  - In the process of making changes related to shadow maps, various incidental fixes and optimizations were required.

The addition of shadow maps, LOD terrain, and the new lighting all led to significant performance degradation, on top of other
changes happening in master.  Therefore, a large number of performance improvements were also needed:

- The graphics options were made much more flexible and configurable, and shaders were optimize.
  - New options were provided for how to render lights and shadows  (@Pfauenauge, @zesterer).
  - Graphic setting storage and configuration were overhauled to make adding new features easier (@Pfauenauge, @imbris).
  - Shaders were rewritten to utilize GLSL's preprocessor to avoid overhead (@zesterer, @YuriMomo).
  - In the process of making changes related to providing additional rendering options, various incidental fixes and optimizations were required.
- Voxel model creation was switched to use *greedy meshing.*
  - A new voxel meshing method, greedy meshing, was added (@imbris).
  - Uses of the older meshing methods were migrated to use greedy meshing (@imbris, @jshipsey, @Pfauenauge).
  - New restrictions were added to terrain, figure, and sprites to future proof them for further optimizations (@jshipsey, @Pfauenauge, @zesterer).
  - Most positions are now relative to either chunk or player position for better precision (@imbris, @zesterer, @scottc).
  - In the process of making changes related to greedy meshing, various incidental fixes and optimizations were required.
- Animation and terrain math were switched to use SIMD where possible.
  - Fixes were made to vek to make its SIMD feature usable for us (@zesterer, @imbris).
  - The interface and types used in bone animation were changed in various ways (@jshipsey, @Snowram, @Pfauenauge).
  - Redundant code generation for body animation is now partly taken care of by a macro (@jshipsey, @Snowram, @Pfauenauge).
  - Animation code was modified to to use vek's SIMD representation where possible (@jshipsey, @Snowram, @Pfauenauge).
  - Terrain meshing code and shadow map math were also modified to use vek's SIMD representation (@imbris).
  - SIMD instruction generation was enabled (@YuriMomo, @jshipsey, @Snowram, @imbris, @Angelonfira, @xMAC94x).
  - In the process of making changes related to greedy meshing, various incidental fixes and optimizations were required.
- The way we cache glyphs was completely refactored, fixed, and optimized.
  - Our fork of `conrod` was optimized in various ways (@imbris).
  - Our fork of `conrod` now exposes whether a widget was updated during the current frame (@imbris).
  - Our use of the glyph cache was rewritten for correctness (@imbris).
  - A *text cache* was introduced that lets us skip remeshing glyphs that have not changed (@imbris).
  - Various changes were made to reduce pressure on the glyph cache, with more planned (@imbris, @Pfauenauge).
  - In the process of making changes related to the glyph cache, various incidental fixes and optimizations were required.
- Colors were changed to keep Veloren's look consistent with master.
  - Some older tree models were brought back (@Pfauenauge).
  - TODO(@Sharp): All hardcoded colors were extracted and made hotloadable.
  - TODO(@Treeco, @Pfauenauge, @imbris, @jshipsey): Hardcoded colors were fixed to conform to Veloren's style.
  - TODO(@Treeco, @Pfauenauge, @imbris, @jshipsey): Color models were fixed to conform to Veloren's style.

A detailed description of the involved changes follows.

---

- The world size is no longer hardcoded.  All functions dependent on world size now take a `WorldSizeLg`, which holds the base 2 logarithm of each actual world dimension and is guaranteed to maintain certain properties (outlined in `common/src/terrain/map.rs`).  Additionally, many utility functions that utilize the world size were moved into `common` as well (mostly `common/src/terrain/mod.rs`).  Finally, the world map format was updated in order to store its size explicitly, with a migration path from the old format that should work whenever the old formatted map was a square (practically always).  See `world/src/sim/mod.rs` for these changes.
- The map generation code was made generic to allow using it outside of the `world` crate.  The parts of the map generating code that do not need to query the world were moved over to `common/src/terrain/map.rs`, allowing them to be used from the client without creating a dependency on `world`.  The rest of it was turned into helper functions in `world/src/sim/map.rs`, which can be passed as closures to the generic map generation code to complete its construction.  This also means that colors are now passed in separately to the map generation function.  See <https://veloren.net/devblog-78/> for more details.
- On world creation, we now compute *horizon maps*.  See the function in `world/src/sim/util.rs`.

  Given a height map and a plane intersecting that height map, our horizon maps allow us to encode enough information to reconstruct shadows for each point on the height map using only the *horizon angle* (the angle at which the sun starts to become visible).  As Veloren's sun only covers one plane, this is sufficient for encoding sun shadows for LOD terrain, by encoding two angles per chunk (one for each 90 degrees the sun covers).  We can also use this for the moon, if we want, since the moon follows the same path.  Additionally, we store the *height* of the furthest occluder, to try to make the shadows volumetric; so this means 4 bytes in total for each chunk.

  Support for horizon maps has been merged into the map functionality in common as well.
- The way we pass the world from the server to the client has been updated.  Rather than passing the prerendered map, we instead pass three maps with values for each chunk; one with the color information, a second with altitude information, and a third with horizon map information.  We then reconstruct the map on the client, together with some additional information we send from the server (like the sea level and maximum height).  See `common/src/msg/server.rs` for a detailed description of the format of `WorldMapMsg`, and `server/src/libr.rs` and `client/src/lib.rs` for details of the map construction and parsing.
- Artifacts related to image rotation were fixed.  See the commit message for commit SHA `cf74d55f2e3d2ae7d25fd68d5c73b01a6afde86e` for a detailed explanation.  This involved changes to shaders, the addition of a new type of graphic (also reflected in the graphic cache) that allows specifying a border color (which automatically makes the associated texture immutable), and some related fixes.  I reproduce the first two paragraphs of the MR description as well:

 ```
 Fix map image artifacts and remove unneeded allocations.

 Specifically, we address three concerns (the image stretching during
 rotation, artifacts around the image due to clamping to the nearest
 border color when the image is drawn to a larger space than the image
 itself takes up, and potential artifacts around a rotated image which
 accidentally ended up in an atlas and didn't have enough extra space to
 guarantee the rotation would work).
 ```
- Multiflow rivers were enabled.
  This does not really need to be part of this MR, and would be easy to revert, but since it seemed to provide a nice improvement it's currently packaged with it.
  We already computed multiple outflows from each chunk for erosion purposes long before this MR.
  However, we never modified river rendering to be able to handle this case (just a single downhill river flow is complex enough!) so this was not exposed when deciding which chunks were rivers.
  Now that
- In the process of making changes related to the world map, various incidental fixes and optimizations were required.  Some examples of fixes include making sure terrain is never lowered to below sea level (to make the shadow maps report correct values), fixing map altitudes and colors to understand things like cliffs and "block level" coloring (that doesn'te xist on the column level), and fixing a crashbug when rendering images for the UI where source pixels are strongly rectangular.  Some examples of related performance fixes include avoiding allocating a fresh vector for all the maps (i.e. copying it over to change the format from `[u32; n]` to `DynamicImage` and then copying again to convert to `RgbaImage`), and instead using the `gfx::memory::slice` function to accomplish the same thing.  These sorts of changes are spread all arond the code.

This includes the additon of a new scene, `voxygen/src/scene/lod.rs`, a new pipeline `voxygen/src/render/pipeline/lod_terrain.rs`, and new shaders `assets/vxygen/shaders/lod-terrain-vert.glsl` and `assets/vxygen/shaders/lod-terrain-frag.glsl`, as well as associated changes to the renderer in `voxygen/src/render/renderer.rs`.

The main idea behind our initial approach to LOD was to take the world data we now get from the server (altitude, color, and horizon mapping).

  - Some previously computed values were turned into shader uniforms for better prediction on weak processors. (@zesterer)
  - Calls to power or trig functions were removed or replaced with multiplications, where possible.
  - After some deliberation
  - To properly handle sprite "waving" for nearby sprites,

We explicitly designed the greedy meshing system with figures and sprites in mind.
In both cases, we want to be able to *efficiently* pack many different models into the same texture, especially in cases where we know
we will either not be removing any of the grouped-together from the models from the texture, or will remove all of them at once (so
they can be packed into some specific subtexture).
For sprites, since we know every model in advance and never intend to deallocate them, we currently pack them all as efficiently as
possible into one giant tetxure atlas.  However, in the future we might opt to pack them slightly less efficiently in exchange for
shrinking the sprite vertex size.
For figures, we pack all the textures for each *model* into the same atlas.
is a global texture atlas used for every sprite, and for figures which is why we have the ability to mesh multiple
models to the same texture area (using the simple texture atlas allocator) without requiring intermediate vector allocations.
This is accomplished by delaying the time when we actually write the color and light data to the texture until *after* all the
model vertices have been meshed; then, we can just allocate the whole color/light array at once, making the atlas we use an
exact fit.  In computer science-y terms, we accomplish this delay by, after we perform the initial greedy meshing (without
texture information), not continuing to create the texture data, but instead constructing a *continuation*--that is, a function
that, when called, will execute the rest of the computation.  We push this continuation (which in Rust terms is a `FnOnce` closure
that takes the `ColLightsInfo` that it is supposed to write to as context) onto a

onto a vector

resizing.  To allow for suspended writes to texture data, Rust pointed out to me that the continuation that would eventually write the color and light data to the texture atlas (the one that is shared by all models sharing the same greedy mesher) would have to *own* whatever data it mshed.  Because we often generate the model data to mesh as a temporary in `voxygen/src/load.rs`, the

  - Matrix multiplications in the shader were reduced for figure data (@zesterer).
  - Vertex "waves" for fluid data were removed.
  - Terrain "bending" near edges was removed.
  - Scaling was fixed to make sure empty space was not introduced in a space previously occupied by a block.  It was also changed to take ownership of its voxel data,
    rather than sharing it, to let it be used with meshing.
  - Rust's nightly version was bumped in order to use the `array_map` function, which lets us reuse more code between the simple map and `FigureModelCache`.

- PositionedGlyph::standalone.

---

I tried to cite sources in many cases[^realtime],[^lloyd],[^lispsm],[^pbrt],[^greedy],[^tjunctions]
where I needed features from elsewhere but I am particularly grateful for the following resources,
esepcially where they have accompanying source code.  I linked all of them that are accessible to the public (those that are not were
obtained through legal means).

[^realtime]: Eisemann, Elmar, Michael Schwarz, Ulf Assarsson, Michael Wimmer. Real-Time Shadows. A K Peters/CRC Press (T&F), 20160419.
[^lloyd]: Lloyd,B. 2007. [Logarithmic perspective shadow maps](http://gamma.cs.unc.edu/papers/documents/dissertations/lloyd07.pdf). PhD thesis, University of North Carolina.
[^lispsm]: Wimmer, M., Scherzer, D., and Purgathofer, W. 2004. [Light space perspective shadow maps](http://gamma.cs.unc.edu/papers/documents/dissertations/lloyd07.pdf). In Proceedings of Eurographics Symposium on Rendering 2004, pp. 143– 152.

[^pbrt]: Pharr, Matt, et al. [http://gamma.cs.unc.edu/papers/documents/dissertations/lloyd07.pdf](Physically Based Rendering: From Theory to Implementation). Third edition, Morgan Kaufmann Publishers/Elsevier, 2017.
[^greedy]: mikolalysenko. “Meshing in a Minecraft Game.” 0 FPS, 30 June 2012, <https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/>.
[^tjunctions]: blackflux. “Meshing in Voxel Engines – Part 1.” Blackflux.Com, 23 Feb. 2014, <https://blackflux.wordpress.com/2014/02/23/meshing-in-voxel-engines-part-1/>.

I am also especially grateful to Khronos, Wikiepdia, and stackoverflow for answering many of my specific questions while writing the MR.

---

Squashed commit of the following:

commit 300505e730
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 18:46:25 2020 +0200

    Fixing cargo doc and typo in CHANGELOG.

commit ec0aeb18e8
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 15:38:50 2020 +0200

    Hopefully final commit for the LOD branch.

commit 5e8ea0b1ea
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 10:14:26 2020 +0200

    Falling back to power as stopgap.

commit e44a1cbf46
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 09:25:41 2020 +0200

    Address imbris feedback.

    Temporarily disables shiny water, lowers max VD.

    These restrictions will be lifted soon after merging.

commit 561e25778a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 08:31:13 2020 +0200

    Tweaking shaders a bit.

commit 7d19259078
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 07:59:43 2020 +0200

    Fix view example as well.

commit 051cd4934e
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 07:29:06 2020 +0200

    Fix meshing benchmark.

commit c95e07db3b
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 05:46:22 2020 +0200

    Address MR feedback, fix scene clouds.

commit 1bfb816cab
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 04:39:36 2020 +0200

    Incorporating Pfau's figure color changes.

    New eyes and new humanoid colors.

commit 3f9b89a3ac
Merge: e2f5162e4 62c53963a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 04:29:41 2020 +0200

    Merge remote-tracking branch 'origin/sharp/small-fixes' into sharp/small-fixes

commit e2f5162e4f
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 20 04:28:38 2020 +0200

    World colors are all hotloadable.

    They live in assets/world/style/colors.ron.

    Only a small handful of hardcoed colors remain in World; they are either
    part of the map, or difficult to disentangle from the rest of the
    computation.  Comments are made where appropriate.

commit 62c53963ab
Author: Marcel Märtens <marcel.cochem@googlemail.com>
Date:   Wed Aug 19 15:59:00 2020 +0200

    replace pretty_env_logger with tracing

commit 5b1625f99d
Merge: d71003acd 4942b5b39
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Aug 19 05:15:56 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit d71003acda
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Aug 19 05:14:34 2020 +0200

    Hotloading colors, part 1: colors in common.

    Currently, this just entails humanoid colors.  There are only three
    colors not handled; the light emitter colors in
    common/src/comp/inventory/item/tool.rs.  These don't seem important
    enough to me to warrant making hotloadable, at least not right now, but
    if it's needed later we can always add them to the file.

commit 63b5e0e553
Merge: c32b337a4 6d2c4b9c1
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Aug 17 13:05:37 2020 +0200

    Merge remote-tracking branch 'origin/master' into sharp/small-fixes

commit c32b337a46
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Aug 17 05:52:04 2020 +0200

    Fixing LOD grid, for real.

commit a166ae0360
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Aug 17 05:28:05 2020 +0200

    Addressing imbris's initial feedback.

    Fixes two minor bugs: explosion particles were no longer spawning
    randomly, and LOD grids were not perfectly even.

commit 4cbad004f4
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Aug 16 19:27:58 2020 +0200

    Bumping nightly per request.

commit 548680276a
Merge: acc098604 8f8b20c91
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Aug 16 19:26:06 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit acc0986040
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Aug 15 22:28:32 2020 +0200

    Lower resolution due to lying drivers.

commit d3b878de2a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Aug 15 22:15:38 2020 +0200

    Fix issues msh encountered with Intel 4600.

commit 10245e0c1b
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Aug 15 21:15:02 2020 +0200

    Merge more models into one mesh than we did previously.

commit 3155c31e66
Merge: 7204cc8a7 3c199280e
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 13 22:35:22 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 7204cc8a7a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 13 22:34:43 2020 +0200

    Fix not yet done NPC animations.

    This forces them all to be the idle animation if not specified.

    This fixes issues where you'd have giant NPCs in water.

commit bc83360f2a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 13 19:36:37 2020 +0200

    Try to fix some bugs:

    - Z fighting with LOD terrain and water.
    - Audio SFX not playing.

commit 1fd104aa60
Merge: 862df3c99 7c2c392a3
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 13 12:02:31 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 862df3c997
Merge: 0a4218ed9 75c1d4401
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 13 05:52:56 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 0a4218ed9d
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Aug 12 22:27:14 2020 +0200

    Fix particle depth.

commit f51dfdeb44
Merge: c6251a956 5e6dc0471
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Aug 12 20:19:04 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit c6251a956a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Aug 12 20:15:46 2020 +0200

    Cache figures more intelligently.

    Cache figures for longer, and don't cache character states for the
    player except where they actually affect the rendered model.

commit 0ed801d540
Merge: c11b9bdf0 eea64f78f
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Aug 12 16:32:24 2020 +0200

    Merge remote-tracking branch 'origin/master' into sharp/small-fixes

commit c11b9bdf0a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Aug 12 11:47:15 2020 +0200

    Remove unneeded Clippy annotation.

commit 16aa9ef40a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Aug 8 00:53:02 2020 +0200

    Fix hotloading and Clippy.

commit 3dc973e0be
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Aug 7 23:50:27 2020 +0200

    Major speedups with SIMD.

commit fba64a7d93
Merge: 76429d00e d1e10b178
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Aug 7 13:23:19 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 76429d00ee
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Aug 7 13:23:10 2020 +0200

    Add clippy.toml.

commit c79f512f84
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Aug 7 11:55:20 2020 +0200

    Fix all clippy issues, clean up Rust code.

commit 6f90e010b3
Merge: 77a8c7c26 5929cfa5c
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Aug 7 06:47:30 2020 +0200

    Merge remote-tracking branch 'origin/sharp/small-fixes' into sharp/small-fixes

commit 77a8c7c267
Merge: b44e44232 44febaabd
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Aug 7 06:47:10 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 5929cfa5c7
Author: jshipsey <jshipsey18@gmail.com>
Date:   Thu Aug 6 20:47:27 2020 -0400

    fixed in-hand arrow bug

commit b44e442325
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Aug 6 13:40:35 2020 +0200

    Miscellaneous performance improvements.

commit be37acf287
Merge: 125d7fc6c c11876547
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Aug 3 05:49:27 2020 +0200

    Merge remote-tracking branch 'origin/master' into sharp/small-fixes

commit 125d7fc6c4
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Aug 3 04:55:31 2020 +0200

    Abstract over simd vs. repr_c vectors.

    Also some minor improvements to Event size.

commit d4d4956e92
Merge: 5f3b7294a aced5f979
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Aug 2 20:56:54 2020 +0200

    Merge remote-tracking branch 'origin/master' into sharp/small-fixes

commit 5f3b7294af
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Aug 2 20:43:52 2020 +0200

    Fix formatting issues I missed before.

commit a428a3ebba
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Aug 2 20:41:51 2020 +0200

    Fix clippy warnings, part 1.

    There aer still a bunch of type too complex and
    function takes too many arguments warnings that I'll fix later
    (or ignore, since in the one case I did fix a function takes too
    many arguments warning I think it made the code *less* readable).

commit ba54307540
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Jul 30 13:22:42 2020 +0200

    Fix light animations so they are removed when the light turns off.

commit 7e0f4bcbf0
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Jul 29 21:10:20 2020 +0200

    Fix crash in edge case for pixel art.

commit 56da06f7a3
Merge: cf74d55f2 9f53a4a19
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Jul 29 18:56:52 2020 +0200

    Merge remote-tracking branch 'origin/master' into sharp/small-fixes

commit cf74d55f2e
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Jul 29 18:29:52 2020 +0200

    Fix map image artifacts and remove unneeded allocations.

    Specifically, we address three concerns (the image stretching during
    rotation, artifacts around the image due to clamping to the nearest
    border color when the image is drawn to a larger space than the image
    itself takes up, and potential artifacts around a rotated image which
    accidentally ended up in an atlas and didn't have enough extra space to
    guarantee the rotation would work).

    The first concern was addressed by fixing the dimensions of the map
    images drawn from the UI (so that we always use a square source
    rectangle, rather than a rectangular one according to the dimensions of
    the map).  We also fixed the way rotation was done in the fragment
    shader for north-facing sources to make it properly handle aspect ratio
    (this was already done for north-facing targets).  Together, these fix
    rendering issues peculiar to rectangular maps.

    The second and third concerns were jointly addressed by adding an
    optional border color to every 2D image drawn by the UI.  This turns
    out not to waste extra space even though we hold a full f32 color
    (to avoid an extra dependency on gfx's PackedColor), since voxel
    images already take up more space than Optiion<[f32; 4]> requires.
    This is then implemented automatically using the "border color"
    wrapping method in the attached sampler.

    Since this is implemented in graphics hardware, it only works (at
    least naively) if the actual image bounds match the texture bounds.
    Therefore, we altered the way the graphics cache stores images
    with a border color to guarantee that they are always in their own
    texture, whose size exactly matches their extent.  Since the easiest
    currently exposed way to set a border color is to do so for an
    immutable texture, we went a bit further and added a new "immutable"
    texture storage type used for these cases; currently, it is always
    and automatically used only when there is a specified border color,
    but in theory there's no reason we couldn't provide immutable-only
    images that use the default wrapping mdoe (though clamp to border
    is admittedly not a great default).

    To fix the maps case specifically, we set the border color to a
    translucent version of the ocean border color.  This may need
    tweaking going forward, which shouldn't be hard.

    As part of this process, we had to modify graphics replacement to
    make sure immutable images are *removed* when invalidated, rather
    than just having a validity flag unset (this is normally done by
    the UI to try to reuse allocations in place if images are updated
    in benign ways, since the texture atlases used for Ui do not
    support deallocation; currently this is only used for item images,
    so there should be no overlap with immutable image replacement,
    so this was purely precautionary).

    Since we were already touching the relevant code, we also updated
    the image dependency to a newer version that provides more ways
    to avoid allocations, and made a few other changes that should
    hopefully eliminate redundant most of the intermediate buffer
    allocations we were performing for what should be zero-cost
    conversions.  This may slightly improve performance in some
    cases.

commit ad18ce9399
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue Jul 28 13:21:09 2020 +0200

    Fix continent scale hack.

commit 36b1cb074f
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue Jul 28 12:11:40 2020 +0200

    Enable loading different sized maps without a recompile.

    We may want to tweak the effects of the continent_scale_hack.

commit 13b6d4d534
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue Jul 28 10:55:48 2020 +0200

    Removing WORLD_SIZE, part 1.

    Erased almost every instance of WORLD_SIZE and replaced it with a local
    power of two, map_size_lg (which respects certain invariants; see
    common/src/terrain/map.rs for more details about MapSizeLg).  This also
    means we can avoid a dependency on the world crate from client, as
    desired.

    Now that the rest of the code is not expecting a fixed WORLD_SIZE, the
    next step is to arrange for maps to store their world size, and to use
    that world size as a basis prior to loading the map (as well, probably,
    as prior to configuring some of the noise functions).

commit 30b1d2c642
Merge: 7d56ba31b 1377b369f
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Jul 27 13:16:58 2020 +0200

    Merge remote-tracking branch 'origin/sharp/small-fixes' into sharp/small-fixes

commit 7d56ba31b4
Merge: 2101113b4 598f14b25
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Jul 27 13:16:27 2020 +0200

    Merge remote-tracking branch 'origin/master' into sharp/small-fixes

commit 1377b369f6
Author: Monty Marz <m.marzouq@gmx.de>
Date:   Sun Jul 19 23:25:38 2020 +0200

    more saturated pumpkins

commit ae8d50527f
Author: Monty Marz <m.marzouq@gmx.de>
Date:   Sat Jul 18 20:29:56 2020 +0200

    acacia models

commit 2101113b46
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Jul 18 18:55:25 2020 +0200

    Higher detail LOD.

commit add2cfae04
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Jul 16 01:57:39 2020 +0200

    Revert some irrelevant stuff.

commit 2e2ab3dc1e
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Jul 15 13:30:49 2020 +0200

    Fixing various things about shadows.

    * Correcting optimal LISPSM parameter.
    * Figure shadows are cast when they're not visible.
    * Chunk shadows stay cast until you look away.
    * Seamless cubemaps for point lights.
    * Etc.

commit 6c31e6b562
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Jul 12 19:50:26 2020 +0200

    Fix shadow creation.

commit 6332cbe006
Merge: be438657c 930e0028b
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Jul 12 18:47:00 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit be438657c3
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Jul 12 18:28:08 2020 +0200

    Tweaks to shadows.

    Added shadow map resolution configuration, added seamless cubemaps,
    documented all existing rendering options, and fixed a few Clippy
    errors.

commit 23b4058906
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Jul 8 10:11:19 2020 +0200

    Fix moon, use nonlinear noise for terrain.

    Note that the latter has a bit of performance cost.

commit 7fbe5cbfbb
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Jul 8 02:23:02 2020 +0200

    Address lies about max texture size.

commit bcfc62b5e1
Merge: 75e3626a7 18a08e8fe
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Jul 8 02:22:08 2020 +0200

    Merge remote-tracking branch 'origin/sharp/small-fixes' into sharp/small-fixes

commit 75e3626a78
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Jul 8 02:21:52 2020 +0200

    OpenGL 3.3 minimum.

commit 18a08e8fe2
Author: Monty Marz <m.marzouq@gmx.de>
Date:   Tue Jul 7 23:57:52 2020 +0200

    settings localization

commit 90c5d1ca36
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue Jul 7 21:11:48 2020 +0200

    Lower near distance.

commit 0e66f02b25
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue Jul 7 20:09:01 2020 +0200

    All sprites sway in the wind now.

commit db1401a691
Merge: 69e508d8c e8b4b29d7
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue Jul 7 19:34:17 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 69e508d8c9
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue Jul 7 18:41:37 2020 +0200

    Make it easy to switch to SIMD for math.

commit ffe0f5928c
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Jul 4 21:21:12 2020 +0200

    Fix some issues with underwater rendering.

commit bfda6da42f
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Jul 4 19:17:59 2020 +0200

    Fix some minor display issues.

commit 0ed752e087
Merge: ccc6a06a8 518edcb85
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Jul 4 18:14:21 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit ccc6a06a8d
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Jul 4 18:04:34 2020 +0200

    Some minor changes.

commit 4e02024670
Merge: 50a64d927 e05c9267a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Jul 4 16:17:40 2020 +0200

    Merge remote-tracking branch 'origin/master' into sharp/small-fixes

commit 50a64d927e
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Jul 4 13:07:03 2020 +0200

    Fix far plane.

commit 7dd06da34c
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Jul 2 22:25:35 2020 +0200

    Add shadows.glsl.

commit 618a18c998
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Jul 2 22:10:22 2020 +0200

    Adding shadows, greedy meshing, and more.

commit eaea83fe6a
Merge: 267018495 2f89b863e
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu May 21 22:47:07 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 2670184954
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu May 21 21:20:01 2020 +0200

    Make civsim and sites deterministic.

    For anything in worldgen where you use a HashMap, *please* think
    carefully about which hasher you are going to use!  This is
    especially true if (for some reason) you are depending on hashmap
    iteration order remaining stable for some aspect of worldgen.

commit f8376fd5dc
Merge: 654f7e049 cdee191dd
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu May 21 17:53:57 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 654f7e0492
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed May 20 21:22:30 2020 +0200

    Correct backface culling.

commit 560501df05
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue May 19 17:22:06 2020 +0200

    Greedy messhing for shadows.

commit a4d87e1875
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun May 17 05:59:00 2020 +0200

    Shadow maps work for lantern.

commit 243d0837b8
Merge: 04382dc28 71dd520cd
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri May 15 14:53:13 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 04382dc286
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri May 15 14:22:17 2020 +0200

    WIP: better graphics config, better LOD, shadow maps.

commit 22ddbad3eb
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat May 2 18:54:09 2020 +0200

    Minor shader fixes.

commit 746a10e8d0
Merge: 0f4a0e763 40ab94673
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat May 2 04:02:09 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 0f4a0e763d
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri May 1 23:03:24 2020 +0200

    Switch back to pop-in terrain.

commit dd74fa7e4a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri May 1 22:58:55 2020 +0200

    LOD shading closer to voxel shading.

commit ef67bd58ba
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue Apr 28 20:49:03 2020 +0200

    Experimental underwater lighting.

commit 2c5ad9d076
Merge: 748279835 303967a6f
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Apr 27 22:35:24 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 7482798354
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Apr 27 21:59:55 2020 +0200

    Replace discard in figure-frag.

commit d83b4ae69b
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Apr 27 18:45:57 2020 +0200

    Fix sprite lighting, HDR from focus_pos.

commit 0594238004
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Apr 27 18:14:10 2020 +0200

    Proper HDR from point lights.

commit 48c93d2b41
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Apr 27 14:01:43 2020 +0200

    Brighter ambiance, darker LOD shadows.

commit e0452e895c
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Apr 27 13:13:23 2020 +0200

    More proper HDR.

commit 4c6da3ed16
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Apr 27 00:13:10 2020 +0200

    Trying LOD noise.

commit 682a3d74c8
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Apr 26 23:11:08 2020 +0200

    Fix LOD heights in towns.

commit cc39e5734e
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sun Apr 26 21:01:23 2020 +0200

    More LOD fixes.

commit 8116b21c2e
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Apr 25 23:54:43 2020 +0200

    I like this coloring.

commit bc2560ea90
Merge: 14effdd5d e690efe71
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Apr 25 23:48:33 2020 +0200

    Merge remote-tracking branch 'origin/master' into sharp/small-fixes

commit 14effdd5db
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Apr 25 22:24:35 2020 +0200

    Re-saturate.

commit 48a643955d
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Apr 25 22:23:57 2020 +0200

    Various fixes.

commit f7b497a0c2
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Apr 25 03:22:49 2020 +0200

    Render figures again.

commit 44e4aad48d
Merge: e6f0a5a98 9ec319a18
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Apr 25 02:01:04 2020 +0200

    Merge remote-tracking branch 'origin/master' into sharp/small-fixes

commit e6f0a5a981
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Apr 24 16:12:20 2020 +0200

    Add atmospheric scattering.

commit f2953087f6
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Apr 23 00:01:20 2020 +0200

    Fix shadowing for specular reflections.

commit ddd4a67a97
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Wed Apr 22 22:56:12 2020 +0200

    HDR fixes.

commit 1015e60dee
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Tue Apr 21 18:25:19 2020 +0200

    More lighting changes.

commit 80c264abd1
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Mon Apr 13 00:29:59 2020 +0200

    Lighting experiments.

commit 8414987e58
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Apr 9 02:38:40 2020 +0200

    WIP -- lighting changes and soft shadows.

commit 9cd2b3fb0d
Merge: c7ea687eb 8b149ad11
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Apr 4 02:33:29 2020 +0200

    Merge branch 'sharp/new-lighting' into sharp/small-fixes

commit c7ea687ebb
Merge: 476441531 22f3319b4
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Apr 4 02:33:02 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/small-fixes

commit 8b149ad11a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Sat Apr 4 02:32:39 2020 +0200

    Trying out a new lighting model.

commit b0ac9f36f7
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Apr 3 07:56:11 2020 +0200

    Use bicubic interpolation for terrain.

commit f6fc9307a1
Merge: 33140a295 22f3319b4
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Apr 3 05:01:41 2020 +0200

    Merge remote-tracking branch 'origin/master' into zesterer/lod

commit 4764415312
Merge: ed2d0111d 13388ee6a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Apr 3 04:54:48 2020 +0200

    Merge branch 'sharp/map-colors' into sharp/small-fixes

commit 13388ee6a4
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Apr 2 20:30:08 2020 +0200

    Various fixes (to coloring and to soft shadows).

commit fbd084a94a
Merge: 5a089863b 4fdf6896a
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Apr 2 18:50:38 2020 +0200

    Merge branch 'master' of gitlab.com:veloren/veloren into sharp/map-colors

commit ed2d0111d9
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Apr 2 06:49:27 2020 +0200

    Combining colors and LOD.

commit 88342640c6
Merge: 33140a295 5a089863b
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Apr 2 04:49:20 2020 +0200

    Merge branch 'sharp/map-colors' into sharp/small-fixes

commit 33140a2951
Merge: 4c65a5aed f34d4b379
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Apr 2 04:36:21 2020 +0200

    Merge remote-tracking branch 'origin/master' into zesterer/lod

commit 5a089863be
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Apr 2 03:17:49 2020 +0200

    Making maps brighter.

    This is probably not the right way to do it, but oh well!

commit 32b2c99109
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Thu Apr 2 02:46:36 2020 +0200

    Horizon mapping and "layered" map generation.

    Horizon mapping is a method of shadow mapping specific to height maps.
    It can handle any angle between 0 and 90 degrees from the ground, as
    long as know the horizontal direction in advance, by remembering only a
    single angle (the "horizon angle" of the shadow map).  More is explained
    in common/src/msg/server.rs.  We also remember the approximate height of
    the largest occluder, to try to be able to generate soft shadows and
    create a vertical position where the shadows can't go higher.

    Additionally, map generation has been reworked.  Instead of computing
    everything from explicit samples, we pass in sampling functions that
    return exactly what the map generator needs.  This allows us to cleanly
    separate the way we sample things like altitudes and colors from the map
    generation process.  We exploit this to generate maps *partially* on the
    server (with colors and rivers, but not shading).  We can then send the
    partially completed map to the client, which can combine it with shadow
    information to generate the final map.  This is useful for two reasons:
    first, it makes sure the client can apply shadow information by itself,
    and second, it lets us pass the unshaded map for use with level of
    detail functionality.

    For similar reasons, river generation is split
    out into its own layer, but for now we opt to still generate rivers on
    the server (since the river wire format is more complicated to compress
    and may require some extra work to make sure we have enough precision to
    draw rivers well enough for LoD).

    Finally, the mostly ad-hoc lighting we were performing has been (mostly)
    replaced with explicit Phong reflection shading (including specular
    highlights).  Regularizing this seems useful and helps clarify the
    "meaning" of the various light intensities, and helps us keep a more
    physically plausible basis.  However, its interaction with soft shadows
    is still imperfect, and it's not yet clear to me what we need to do to
    turn this into something useful for LoD.

commit f8926a5737
Merge: a1aee931e 875ae6ced
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Mar 13 13:32:42 2020 +0100

    Merge remote-tracking branch 'origin/master' into sharp/map-colors

commit 4c65a5aed3
Author: Treeco <5021038-Treeco@users.noreply.gitlab.com>
Date:   Mon Feb 24 16:48:05 2020 +0000

    Made LOD setting slider exponential

commit 2fa7b2d20d
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Mon Feb 24 17:49:53 2020 +0000

    Added mist to LoD

commit aab059a450
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Mon Feb 24 15:14:06 2020 +0000

    Added LoD slider

commit 779c36b538
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Mon Feb 24 12:54:55 2020 +0000

    Reduced cost of vertex pushing

commit 9fea150473
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Mon Feb 24 12:38:53 2020 +0000

    Fixed maths, improved LoD resolution

commit 5481df38fe
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Mon Feb 24 11:22:50 2020 +0000

    Dynamically relocate LoD vertices to enhance details

commit a3e36a50ab
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Sun Feb 23 18:13:51 2020 +0000

    Simpler terrain spiral rendering

commit 255f450ae9
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Sun Feb 23 16:53:17 2020 +0000

    Better LoD precision

commit 3d027aebe8
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Sun Feb 23 16:04:03 2020 +0000

    Better falloff

commit be775c9484
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Sun Feb 23 15:30:45 2020 +0000

    Applied good ideas from experimental branch

commit 58587b6854
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Fri Feb 21 16:15:13 2020 +0000

    Minor fixes to LoD merging

commit 7b42aebd70
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Fri Feb 21 15:04:44 2020 +0000

    Capped LoD dragging

commit 8aafc559f8
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Fri Feb 21 14:54:37 2020 +0000

    Better blending between LoD and terrain border

commit edd3455d51
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Fri Feb 21 14:40:19 2020 +0000

    Fixed LoD z depth, added sea level offset

commit b9b0674462
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Fri Feb 21 14:27:43 2020 +0000

    Better LoD smoothing

commit a1aee931e7
Author: Joshua Yanovski <pythonesque@gmail.com>
Date:   Fri Feb 21 14:52:17 2020 +0100

    Adding shadows.

commit 2400786c13
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Fri Feb 21 13:48:40 2020 +0000

    Use world map as LoD source

commit dbf650f504
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Mon Jan 20 00:48:14 2020 +0000

    Better clouds at distance

commit 5e6f81b86c
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Sun Jan 19 23:59:02 2020 +0000

    sync

commit 745e7540dd
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Fri Nov 22 12:40:48 2019 +0000

    Improved cloud falloff mist, faster noise sampling

commit f6a200d0cb
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Fri Nov 22 10:09:00 2019 +0000

    Improved long-range depth precision, removed unnecessary LoD polygons

commit 63d1b2bb22
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Thu Nov 21 20:57:46 2019 +0000

    Working LoD shader

commit f13d98ee3e
Author: Joshua Barretto <joshua.s.barretto@gmail.com>
Date:   Thu Nov 21 11:03:40 2019 +0000

    LoD first attempt (stack overflow issue)
2020-08-20 20:34:59 +02:00
Songtronix
74557bd79d fix: match alias validation to auth 2020-08-19 14:00:18 +02:00
T-Dark
0a1e715fa4 Fixed debug armor letting some damage through 2020-08-18 17:31:28 +02:00
Marcel Märtens
8687740265 fix clippy warnings in new version 2020-08-17 11:10:18 +02:00
Imbris
a763bbe73c Improve the perf of the physics system using par_join as well as removing the trait object closure to allow for the compiler to perform more optimizations 2020-08-13 04:32:05 -04:00
Joshua Barretto
75c1d44010 Merge branch 'zesterer/worldsim' into 'master'
World simulation, generation, and pathfinding improvements (including castles and caves)

See merge request veloren/veloren!1282
2020-08-12 21:40:56 +00:00
Joshua Barretto
50a85853e3 Fmt and clippy lints fixes 2020-08-12 21:16:14 +01:00
Joshua Barretto
6992194ad4 Better surface swimming, no underwater sprites 2020-08-12 21:15:53 +01:00
Joshua Barretto
d7ccb28ea7 Pathfinding improvements 2020-08-12 21:15:53 +01:00
Joshua Barretto
0bad704719 Made agents flee 2020-08-12 21:15:53 +01:00
Joshua Barretto
41229b4665 Added large caves, cave scatter, removed old caves 2020-08-12 21:15:53 +01:00
Monty Marz
fcdd875bff UI fixes, assets update 2020-08-12 18:10:18 +00:00
Monty Marz
6789b7ae27 Add firework hues 2020-08-12 22:29:06 +08:00
scott-c
9aab296264 Add firework item 2020-08-12 22:25:28 +08:00
Imbris
893da3622a Merge branch 'scott-c/particles' into 'master'
Particles

See merge request veloren/veloren!1156
2020-08-09 17:09:43 +00:00
jshipsey
9ff5c23cf0 readd sneak 2020-08-08 13:47:32 -04:00
scott-c
cc36e9c300 fix rebase 2020-08-08 19:26:52 +08:00
scott-c
bb8ba75287 cleanup redundant function 2020-08-08 19:26:52 +08:00
scott-c
bb2a5c885b Add fireball and bomb particle effects 2020-08-08 19:25:00 +08:00
scott-c
4bc373a832 remove particle emitter component 2020-08-08 19:25:00 +08:00
scott-c
3139e85dff allow for col particles 2020-08-08 19:25:00 +08:00
scott-c
803677f0fb Add particle velocity and ability particle emitter 2020-08-08 19:25:00 +08:00
scott-c
da5f4828a5 Add particle lifespan 2020-08-08 19:25:00 +08:00
scott-c
39b676cd8f Add ParticleMgr 2020-08-08 19:24:55 +08:00
scott-c
42a10a6059 Add ParticleEmitter Component 2020-08-08 19:24:22 +08:00
Imbris
af8560ea36 Remove pets from the group exp division calculation but still give them exp, fix bug with group code when pets are deleted 2020-08-08 01:16:35 +02:00
Imbris
390d289d35 Add timeout's to group invites, and configurable limit to group size
Fix a few group bugs, enable invite timeout and group limits in ui
2020-08-08 01:16:35 +02:00
Monty Marz
28a8f847cc timeout visuals, various small fixes and two new items 2020-08-08 01:15:58 +02:00
Monty Marz
1eb671e1a6 Update CHANGELOG.md, german locale 2020-08-08 01:15:58 +02:00
Imbris
3a22b3694d New group UI functions 2020-08-08 01:14:19 +02:00
Imbris
d856c20225 Integrate groups with chat groups 2020-08-08 01:12:35 +02:00
Imbris
0a8f148559 Fixes and tweaks for groups 2020-08-08 01:12:35 +02:00
Monty Marz
d9e3937a82 Basic UI
Basic ui for groups and group window
2020-08-08 01:12:35 +02:00
Imbris
10c3d01466 Add basic group functionality (no voxygen wiring yet) 2020-08-08 01:09:01 +02:00
nepo
cb65070aba nepo/dullahan 2020-08-07 03:56:59 +00:00
Sam
3b1163fa50 Removed commented code 2020-08-06 10:15:24 -05:00
Sam
83a6e08c7a Removed energy refund on M2 attacks. Re-added custom heights on creatures. Tweaked movement on triple strike. 2020-08-06 09:43:50 -05:00
Silentium2318
1c40218de9 More weapon and hit box tweaks 2020-08-06 09:43:47 -05:00
Silentium2318
1de40154c7 Weapon balancing 2020-08-06 09:39:49 -05:00
Silentium2318
a59438e3e4 Dis some distance and attack arc tweaking 2020-08-06 09:39:09 -05:00
Silentium2318
b0f55b3f79 Weapon balancing 2020-08-06 09:38:22 -05:00
Imbris
c2f3e1b47f Revert "Merge branch 'BottledByte/ability_design' into 'master'"
This reverts merge request !1264
2020-08-06 08:04:03 +00:00
Imbris
a0b1259b7e Merge branch 'BottledByte/ability_design' into 'master'
Add ability IDs and use them in GUI

See merge request veloren/veloren!1264
2020-08-06 04:44:51 +00:00
BottledByte
34c87d7a86 Add ability IDs and use them in GUI 2020-08-05 23:00:43 +02:00
BottledByte
ab1c43be84 Dehardcoded LanternKind, Consumable and Ingredient, fixed Sceptre hotbar
Also fixed two wrong asset references and did some .ron formatting
2020-08-05 01:21:42 +02:00
BottledByte
a167ee98ee De-enumerized armor variants 2020-08-03 03:41:32 +00:00
BottledByte
dc91209a7b Removed fine-grained Item enums and replaced them with Strings
This change allows to introduce new weapons and pair them
with graphical assets without need to recompile.
2020-08-02 01:21:32 +00:00
Samuel Keiffer
f930f52df5 Allows for weapons to have different stats. Seperates healing staff out from staffs into its own weapon type: sceptre. Splits bow weapon type into shortbow and longbow. 2020-08-01 20:08:30 +00:00
Snowram
1421517f84 Add frog npc, tweak pig model 2020-08-01 02:19:45 -04:00
jshipsey
5d2be2240e maneater and feed anim 2020-08-01 02:19:45 -04:00
Snowram
90d7485c38 Add troll, truffler and wendigo npcs 2020-08-01 02:19:45 -04:00
jshipsey
8991b60929 catoblepas, bonerattler, rabbit, improved anims 2020-08-01 02:19:44 -04:00
Samuel Keiffer
827b91d691 Bow charged shot attack 2020-07-26 03:06:53 +00:00
Samuel Keiffer
527e7a329e Armor fixes 2020-07-25 23:57:04 +00:00
Monty Marz
31cfc05123 lots of things
animation fixes by slipped
new cultist item
settings option for loading screen tips
loot table adjustments
2020-07-23 12:10:13 +00:00
jshipsey
5b76ed23f4 small fixes 2020-07-20 21:37:13 -04:00
Imbris
db36578f83 Merge branch 'Menko/utility_items_fix_issue_612' into 'master'
#612 Fixed utility items not being removed from inventory/hotbar

See merge request veloren/veloren!1123
2020-07-18 02:41:45 +00:00
Nemanja
5caa6a07b0 #612 Fixed utility items not being removed from inventory/hotbar 2020-07-18 02:41:45 +00:00
Samuel Keiffer
6cce09be85 Added protection stat to admin armor hidden in debug folder. Removed blue cultist armor set from drop table as it is an admin set. 2020-07-18 00:05:28 +00:00
lausek
a3326b5744 fix #611; add distance check when mounting pet 2020-07-15 14:54:53 +02:00
Joshua Barretto
8d6b442193 Crafting 2020-07-14 20:11:39 +00:00
Samuel Keiffer
25c28f26d6 Different body types now have different health values and gain different amounts of healths on leveling. 2020-07-09 00:04:25 +00:00
Samuel Keiffer
fe47a14ba5 Spin attack for axe 2020-07-08 19:58:41 +00:00
Marcel Märtens
c212de00c2 updated dependencies and fixed stuff
- replace serde_derive by feature of serde
   incl. source code modifications to compile
 - reduce futures-timer to "2.0" to be same as async_std
 - update notify
 - removed mio, bincode and lz4 compress in common as networking is now in own crate
   btw there is a better lz4 compress crate, which is newer than 2017
 - update prometheus to 0.9
 - can't update uvth yet due to usues
 - hashbrown to 7.2 to only need a single version
 - libsqlite3 update
 - image didn't change as there is a problem with `image 0.23`
 - switch old directories with newer directories-next
 - no num upgrade as we still depend on num 0.2 anyways
 - rodio and cpal upgrade
 - const-tewaker update
 - dispatch (untested) update
 - git2 update
 - iterations update
2020-07-07 09:43:49 +02:00
Joshua Barretto
3cfd8bdd3c Fixed animal loadouts and /spawn 2020-07-07 02:21:14 +01:00
Joshua Barretto
e626f6255f Prevented pet damage 2020-07-07 01:01:39 +01:00
Joshua Barretto
f77d2f06c6 Fixed staff RMB, bug in ranged weapon code 2020-07-06 23:37:44 +01:00
Joshua Barretto
99a526f702 Made pets healable 2020-07-06 21:18:30 +01:00
Joshua Barretto
55852f9bc7 Made fireballs brighter, animals slightly more effective at combat 2020-07-06 21:02:16 +01:00
Imbris
c2d6d00b00 point to github specs to access PairedStorage type, fix Loadout sync spam 2020-07-06 01:56:02 -04:00
Piotr Korgól
713d0c5e8a Add a test for the loot table's validity 2020-07-05 18:52:36 +02:00
Joshua Barretto
43f75f2f54 Removed bomb timeout 2020-07-05 16:15:51 +01:00
Joshua Barretto
fd39ee97bc Added training dummies 2020-07-05 16:15:51 +01:00
Joshua Barretto
2f6a618d5a Added bombs, throwable items, more block kinds, weaker explosions 2020-07-05 16:15:48 +01:00
Joshua Barretto
8508b5177b Velocity-corrected bezier pathfinding control, swimming control 2020-07-05 09:38:15 -04:00
Joshua Barretto
8a0b7fd173 Smoother pathfinding for fast animals 2020-07-05 09:38:14 -04:00
jshipsey
94ab3665d5 pangolin and special pangolin variable 2020-07-05 09:38:14 -04:00
jshipsey
c5f7a60f3b more run animation work, adjusting pivots 2020-07-05 09:38:14 -04:00
Snowram
648e140be3 Add wolf, frostfang and mouflon npcs 2020-07-05 09:38:14 -04:00
Snowram
c22d543dd2 Add rock snapper mob 2020-07-05 09:38:13 -04:00
Snowram
1be42a8f85 Add tortoise mob 2020-07-05 09:38:13 -04:00
unknown
4b493b196c Add asp mob 2020-07-05 09:38:13 -04:00
Snowram
9fec5f3d14 Add tiger mob 2020-07-05 09:38:12 -04:00
Snowram
c527484597 Add alligator, salamander and monitor npcs 2020-07-05 09:38:12 -04:00
Snowram
00b3301d6a Remove quad_low mobs from quad_medium 2020-07-05 09:38:12 -04:00
Snowram
72eb03ceb5 Add quadruped_low skeleton 2020-07-05 09:38:11 -04:00
Forest Anderson
7ac5876743 Merge branch 'xvar/skills' into 'master'
Initial implementation of skills and skill groups

See merge request veloren/veloren!1135
2020-07-05 00:33:11 +00:00
Forest Anderson
3e830aa0ca Merge branch 'angel/add-spawn-training-dummy' into 'master'
Added spawning test dummy

See merge request veloren/veloren!1142
2020-07-04 19:24:02 +00:00
Forest Anderson
2d12f7c45d Added tests and documentation to skills.rs 2020-07-04 14:32:24 -04:00
Piotr Korgól
27440e16c4 Correctly load the loot table 2020-07-04 18:40:23 +02:00
Ben Wallis
538598eb08 Refactored Skills/SkillGroups structure and implemented JSON persistence 2020-07-04 15:25:21 +01:00
Ben Wallis
60871461ea Moved skills stuff to new skills.rs file 2020-07-04 15:25:20 +01:00
Ben Wallis
4b0e2e45ab Added Skills and Skill Groups for characters 2020-07-04 15:25:04 +01:00
Piotr Korgól
aefa7e2f11 Make chests and enemies use the basic loot table 2020-07-04 14:07:10 +02:00
Piotr Korgól
d101d7f132 Implemented a lottery system 2020-07-04 12:40:27 +02:00
Forest Anderson
954a4857c4 Added proper training dummy model 2020-07-03 16:53:04 -04:00
Samuel Keiffer
85d1d4b3ff Leap now actually works. In addition, leaping while next to an entity no longer interrupts the leap. 2020-07-03 15:40:12 +00:00
Monty Marz
89400264dc Loot ChatType, Update german translation, map zooming 2020-07-01 19:05:44 +00:00
Marcel
f9a7dbaa77 Merge branch 'scott-c/daggers' into 'master'
Scott-c/1h-wielding #185

See merge request veloren/veloren!1095
2020-07-01 12:07:35 +00:00
scott-c
d53b51954b Added ability to use 2 x 1h weapons or shields 2020-07-01 17:51:06 +08:00
Marcel Märtens
e1b27c51f5 fix clippy issues in tests and add it to CI 2020-07-01 00:37:15 +02:00
Forest Anderson
201f513737 Fixed meta chattype error on master 2020-06-28 17:10:01 +00:00
Forest Anderson
9246e34c1b Merge branch 'CapsizeGlimmer/chat_modes' into 'master'
Capsize glimmer/chat modes

Closes #217

See merge request veloren/veloren!1043
2020-06-28 14:35:39 +00:00
Ben Wallis
a9d3f984f0 Implemented loot pickup chat messages and the option for playing different sounds for picked up items
* Added chat message when an item is picked up
* Changed InventoryUpdateEvent::Collected to InventoryUpdateEvent::Collected(Item) to facilitate the client being aware of what was picked up
* Added SfxInventoryEvent enum to allow different sounds to be used based on the item type. The RON mapping/de-serialization doesn't support matching on structs so we have to give it fixed enum values which are determined in TryFrom<&InventoryUpdateEvent> for SfxEvent
* Refactored InventoryManip::Pickup arm of match in inventory_manip::handle_inventory for clarity/better warning messages
* Fixed a bug that prevented the CollectFailed event from being raised when a player's inventory is full
* Added a panic for the situation where an item is pushed into the players inventory and then the deletion of the entity fails as this would indicate an item dupe bug - this could potentially be reworked to pull the item back from the player's inventory but this seems like there's be a more correct transactional way to do this.
* Added two temporary sounds to prove the per-item sound functionality (pickup sounds for Swords and Staffs)
2020-06-28 13:05:28 +01:00
CapsizeGlimmer
3d29c3254a Add setting for displaying character names in chat. Placate cargo clippy. 2020-06-27 17:43:46 -04:00
CapsizeGlimmer
59db2fcd3b Admin status added when registering; cargo fmt 2020-06-27 17:43:45 -04:00
CapsizeGlimmer
b04810cae5 misc chat mode changes 2020-06-27 17:40:03 -04:00
CapsizeGlimmer
5ad212b7ed Add chat types for offline, online. Implement Pfau's fixes 2020-06-27 17:40:03 -04:00
Pfauenauge90
a497fb92d3 icons 2020-06-27 17:20:26 -04:00
Pfauenauge90
f83c58498f bubble colors 2020-06-27 17:20:26 -04:00
CapsizeGlimmer
b7d7696d89 Implement MR!1043 changes suggested by Imbris 2020-06-27 17:20:26 -04:00
CapsizeGlimmer
aabf9d7b21 fix chat-cli name formatting. 2020-06-27 17:20:26 -04:00
CapsizeGlimmer
2a0f0053d4 Added chat mode icons to speech bubbles 2020-06-27 17:03:30 -04:00
CapsizeGlimmer
35ed03aa18 Implement chat mode icons in chat window 2020-06-27 17:03:30 -04:00
CapsizeGlimmer
c984bdcdf1 Implement chat filtering for /say /region /group etc. 2020-06-27 17:03:30 -04:00
CapsizeGlimmer
5cbecb29e6 Implement /join_group and /join_faction commands 2020-06-27 16:42:26 -04:00
CapsizeGlimmer
289ef5d6b2 Move message processing and chat bubbles to the client 2020-06-27 16:42:26 -04:00
CapsizeGlimmer
b08d717eac Rework chat processing 2020-06-27 16:29:03 -04:00
CapsizeGlimmer
702a21302c Base implementation of /group /faction /say /region 2020-06-27 16:26:02 -04:00
Delyth Williams
94164b7839 Welsh pixie/armour 2020-06-26 16:26:00 +00:00
Monty Marz
58bfa4f0ef Merge branch 'WelshPixie/FluffyBunnySlippers' into 'master'
Added fluffy jackalope slippers

See merge request veloren/veloren!1114
2020-06-25 22:07:47 +00:00
WelshPixie
2825b08bee Added fluffy jackalope slippers 2020-06-25 22:47:17 +02:00
WelshPixie
9887e5d45d added seven new shoulder armour types 2020-06-25 18:36:24 +02:00
Kevin Glasson
589254e4ab Convert all other veloren crates to use tracing
- Completely removed both `log` and `pretty_env_logger` and replaced
with `tracing` and `tracing_subscriber` where necessary.

- Converted all `log::info!(...)` et al. statements to just use the
shorthand macro i.e. `info!`. This was mostly to make renaming easier.
2020-06-21 23:19:41 +08:00
Forest Anderson
38af64df51 Expand on documentation 2020-06-19 21:13:00 -04:00
Marcel
babf452686 Merge branch 'xvar/fix-server-crash-on-high-char-lvl-login' into 'master'
Server: Fixed panic on extremely high level character login due to exp overflow (#597)

See merge request veloren/veloren!1091
2020-06-18 20:24:49 +00:00
Ben Wallis
54de646bb3 Server: Fixed panic on extremely high level character login due to exp overflow (#597) 2020-06-18 20:45:37 +01:00
scott-c
88d68df2c0 Remove wield requirement to swap loadout 2020-06-17 21:34:58 +08:00
Justin Shipsey
2f896849d4 Wield glider instead of weapon when attempting glide wield, change behavior when running into walls to not drop out of gliding 2020-06-16 21:32:39 +00:00
Forest Anderson
361952077e Added loadout replace test and documentation
Finished documenting
2020-06-14 16:16:53 -04:00
Forest Anderson
c2beeef600 Added equip documentation and test 2020-06-14 13:56:17 -04:00
Forest Anderson
1649eadcdd Add unequip tests 2020-06-14 13:56:17 -04:00
Imbris
26e53409d8 Merge branch 'xvar/clippy-globally-suppress-option_map_unit_fn' into 'master'
Globally suppressed clippy lint option_map_unit_fn for #587

See merge request veloren/veloren!1071
2020-06-14 16:48:07 +00:00
Ben Wallis
c1c968f479 Globally suppressed clippy lint option_map_unit_fn for #587 2020-06-14 16:48:07 +00:00
Imbris
fb47115695 Merge branch 'xvar/clippy-fixes-redundant_closure_found' into 'master'
Fixed suppressed clippy warnings for #587 - redundant_closure

See merge request veloren/veloren!1065
2020-06-14 16:33:04 +00:00
Justin Shipsey
688f917308 asset
missing fix
2020-06-14 09:22:21 +00:00
Ben Wallis
4d6c553b1b Fixed suppressed clippy warnings for #587 - redundant_closure 2020-06-12 20:47:22 +01:00
Ben Wallis
950c62efc6 Suppressed all existing clippy warnings in preparation for fixes as part of #587 2020-06-10 22:01:42 +01:00
Ben Wallis
de37de7f45 Initial clippy fixes as discussed in #587 2020-06-08 21:27:51 +01:00
Shane Handley
fc8bb427fb Handle TripleStrike stages individually. 2020-06-08 10:19:42 +10:00
Shane Handley
faf04bb4f3 Fix some updated weapon references and an incomplete match after rebasing. 2020-06-08 10:19:42 +10:00
Shane Handley
987a025d36 Introduce a ToolCategory so we can ignore the specific type of weapon
when deciding on the SFX to play when wielding/attacking.
2020-06-08 10:19:42 +10:00
Shane Handley
802bce1698 Target the specific attack types, to handle TripeStrike etc...
Removed the Axe sfx until the animations show the swing
2020-06-08 10:19:41 +10:00
Monty Marz
b34da9b07b More item drops 2020-06-03 17:59:09 +00:00
Monty Marz
f7d6f76a04 Added 36 Swords
I added 36 sword models to the code.
2020-05-29 18:23:00 +00:00
Monty Marz
6d1ec73b47 Merge branch '561-info-popup-for-saved-waypoints-only-appear-for-the-second-time-you-visit-one' into 'master'
Resolve "Info popup for saved waypoints only appear for the second time you visit one"

Closes #561

See merge request veloren/veloren!1014
2020-05-29 11:39:12 +00:00
CapsizeGlimmer
78a06550d0 Only NPCs speak when hit. Farm animal alignment changed from NPC to Tame 2020-05-27 13:49:18 +02:00
CapsizeGlimmer
3cea76b82f NPCs now call for help when you hit them. Redraw speech bubble dark mode. 2020-05-27 13:49:18 +02:00
CapsizeGlimmer
3c07d02218 Add a dark mode to speech bubbles; consistantly use 'speech bubble' instead of 'chat bubble' 2020-05-27 13:49:17 +02:00
CapsizeGlimmer
c65967ccdb Chatting now creates speech bubbles 2020-05-27 13:49:14 +02:00
Justin Shipsey
ea07d744a7 orientation animation 2020-05-27 06:41:55 +00:00
CapsizeGlimmer
2a83e91242 Waypoint notifications have a 10 second cooldown 2020-05-25 02:56:31 -04:00
Joshua Barretto
f1b166d15d Innumerable camera improvements 2020-05-18 23:40:28 +01:00
Justin Shipsey
9e5c0ce601 Merge branch 'silentium/arms-and-armor' into 'master'
Added 2 sets of armour.

See merge request veloren/veloren!951
2020-05-17 19:03:00 +00:00
Silentium
1673a25e8b Added 2 sets of armour. 2020-05-17 19:02:59 +00:00
Monty Marz
ecb7963730 Pfau/0.6 bg 2020-05-16 12:48:29 +00:00
Joshua Barretto
db59a3ca3d Merge branch 'small-fixes' into 'master'
Dungeon Bosses

See merge request veloren/veloren!994
2020-05-15 19:07:11 +00:00
Joshua Barretto
aac28d04d5 Added dungeon bosses, boss loot, boss arenas 2020-05-15 16:05:50 +01:00
Songtronix
c3e1fd8664 Merge branch 'mockersf/fix-doc-generation' into 'master'
fix doc generation

See merge request veloren/veloren!993
2020-05-15 14:18:15 +00:00
Shane Handley
a41576e767 Correctly set the exp target for the next level when spawning a character.
Removed the unwrap_or from the update method for stats persistence, and
have a dedicated method for updating single rows with a new connection.
2020-05-15 13:27:26 +10:00
François Mockers
ae712f77a2 fix iterator type 2020-05-14 22:13:08 +02:00
Imbris
8f857e6e11 Fill in entity_count in metrics 2020-05-12 19:44:27 -04:00
jshipsey
ef70949d5d cyclops 2020-05-11 21:44:21 -04:00
Forest Anderson
28402e2bc1 Merge branch 'CapsizeGlimmer/tab_completion' into 'master'
Capsize glimmer/tab completion

See merge request veloren/veloren!972
2020-05-11 17:49:26 +00:00
Imbris
8aa88b22a5 Fix panic with dragging into the same loadout slot 2020-05-11 00:08:43 -04:00
CapsizeGlimmer
b486de28ac Implement tab completion of enums (/object /time /spawn) and numbers 2020-05-10 19:16:34 -04:00
jshipsey
cf392b5a66 fmt 2020-05-09 18:11:25 -04:00
Snowram
5b77c74497 Add cockatrice 2020-05-09 18:09:27 -04:00
Robin Gilh
40360ff149 Dragon work 2020-05-09 18:07:31 -04:00
S Handley
5a13b54cbf - Load characters after login.
- Make the character screen load with an empty character list from the server, send event to the server for character creation with data, but not yet saving them to the DB.
- Working but messy character saving to DB
- Add the character_data to the client, rather than keep it in the GLobalState.
2020-05-09 15:41:25 +00:00
CapsizeGlimmer
63826d1a50 Add optional argument to /get_items 2020-05-07 18:39:48 +00:00
Monty Marz
b589c3fc71 Fix animals not attacking 2020-05-04 16:59:32 +00:00
CapsizeGlimmer
4e7f8c686a Equipped lanterns now provide an illumination effect. 2020-05-04 15:15:31 +00:00