Commit Graph

2810 Commits

Author SHA1 Message Date
Marcel
1b36f6cab3 Merge branch 'aweinstock/forcemove-no-pushback' into 'master'
Don't apply e2e pushback during a forced movement character state.

See merge request veloren/veloren!2429
2021-06-14 14:42:01 +00:00
Marcel
4cafdb3bfd Merge branch 'aweinstock/mining-skill-tree' into 'master'
Mining skill tree.

See merge request veloren/veloren!2406
2021-06-14 14:19:06 +00:00
Marcel
b0702d792a Merge branch 'juliancoffee/asset_entity' into 'master'
EntityInfo assetization.

See merge request veloren/veloren!2382
2021-06-14 12:56:28 +00:00
juliancoffee
d5cbe27612 Responding to review
- make `skillset_builder::Preset` void enum and left comment about how to
extend it
- add `.with_default_equipment()` in case if preset is missing to `basic_summon`
loadout creation to match old `build_loadout()` behaviour
2021-06-14 15:40:02 +03:00
Avi Weinstock
1af9ac568f Move force-movement e2e check so that it doesn't confer immunity to arrows. 2021-06-13 20:38:03 -04:00
Monty Marz
068d78bae8 Merge branch 'pfau/cactus_drink' into 'master'
Cactus Colada

See merge request veloren/veloren!2431
2021-06-13 20:03:58 +00:00
Avi Weinstock
9d4a65e8ac Adjust mining xp numbers and add SkillGroupKind information to Outcome::ExpChange. 2021-06-13 14:34:42 -04:00
Monty Marz
01a04a80fa icons and naming 2021-06-13 14:34:42 -04:00
Avi Weinstock
0e394029de Mining skill tree. 2021-06-13 14:34:42 -04:00
Marcel Märtens
34f5ff62d4 implement a simple roundrobin to assure if multiple are spawned the older one has prio, spelling 2021-06-13 17:42:28 +02:00
Marcel Märtens
e2a9128976 redo slowjobs in order to have a try_run fn 2021-06-13 17:42:21 +02:00
Marcel Märtens
5f2b44002e make test less flanky, try to avoid absolute comparisions and compare jobs relative. 2021-06-13 17:31:34 +02:00
Monty
c17e3ad996 Cactus Colada
Made cacti lootable
Cactus colada recipe and item
price balance
fmt

 "make it 8 and drop it to 20 or 25? Not really sure tbh"
2021-06-13 13:52:56 +02:00
Ben Wallis
f47838ee9d Improved inventory swap 2021-06-12 19:06:39 +01:00
Avi Weinstock
d02ff2db20 Don't apply e2e pushback during a forced movement character state. 2021-06-12 11:10:06 -04:00
Marcel Märtens
4167621f5d Change the version number to 0.10 2021-06-12 10:14:07 +02:00
Joshua Barretto
1b1287f407 Repaired common such that it works for plugin targets 2021-06-11 08:33:32 +01:00
Scott Williams
f336b0e2a8 Fixed biped_small and humanoid hitboxes 2021-06-09 15:23:10 +01:00
juliancoffee
057aa7fecf Move loot tables to entityconfigs
* Moved all entities in dungeons to assets
2021-06-09 15:37:04 +03:00
juliancoffee
a4cc1e24ee Move body to EntityConfig assets
* currently works only for random and random_with, uses FromStr for
NpcKind
2021-06-09 15:37:04 +03:00
juliancoffee
0c9f05b8d1 Load skillsets from assets
Done:
    support loading from assets in skillset_builder.rs
    entity_config field with skillset asset field
    move every SkillSet config to assets
    tests for skillset assets
    tests for assets in entity configs
2021-06-09 15:37:04 +03:00
juliancoffee
37af73b19e SkillSetBuilder pre-refactoring 2021-06-09 15:37:04 +03:00
juliancoffee
c3a120c551 Post refactoring 2021-06-09 15:37:04 +03:00
juliancoffee
45e5554ff5 Fix issue with villagers not having any item 2021-06-09 15:37:04 +03:00
juliancoffee
171c66d53d docs 2021-06-09 15:37:04 +03:00
juliancoffee
f5bf991eb0 Start to load EntityInfo from assets in dungeons
* All enemies in dungeons are now specify loadout_config, name and
main_tool in assets
* Add more variance to the enemies names
2021-06-09 15:37:04 +03:00
juliancoffee
5f3eaddb70 Split LodoutBuilder::build_loadout
LoadoutBuilder::build_loadout is a function which has four parameters
and 3 of them are Option<>, and although fourth (body) isn't Option<>,
it's optional too because it is used only in some combinations of
another arguments.

Because these combinations produces quirky code flow, it will be better
to split it to different methods.

So we did following changes to remove it and rewrite code that was using it
to use better methods.

* Introduce LoadoutPreset as new LoadoutConfig, currently it's only used
in Summon ability, because SummonInfo uses Copy and we can't specify
String for specifying asset path for loadout.
Everything else is rewritten to use asset path to create loadouts.

* More builder methods for LoadoutBuilder.
Namely:
    - from_default which is used in server/src/cmd.rs in "/spawn" command.
    - with_default_equipment, with_default_maintool to use default
    loadout for specific body
    - with_preset to use LoadoutPreset

* Add new make_loadout field with `fn (loadout_builder, trading_info) -> loadout_builder`
to EntityInfo which allows to lazily construct loadout without
modifying LoadoutBuilder code

* Fix Merchants not having trade site
We had heuristic that if something has Merchant LoadoutConfig - it's
merchant, which can be false, especially if we create Merchant loadout
lazily
As side note, we do same check for Guards and it fails too.

Too fix it, we introduce new agent::Mark, which explicitly specifies
kind of agent for entity

* `LoadoutBuilder::build_loadout` was written in a such way that depending
on main_tool you will have different loadout. Turns out it was this
way only for Adlets though and this behaviour is reproduced by specifying
different loadouts directly in world code.
2021-06-09 15:37:04 +03:00
juliancoffee
aad65c6159 Move traveler loadout declaration to asset
* New loadout/world/traveler.ron file to specify traveler loadout
* LoadoutBuilder::with_asset_expect now can use passed rng to choose
items
2021-06-09 15:37:03 +03:00
juliancoffee
e153cbe20e Rename LoadoutBuilder::apply_asset_expect
to LoadoutBuilder::with_asset_expect
2021-06-09 15:37:03 +03:00
juliancoffee
102f6d3338 EntityInfo assetization
* Rename skillset_config to skillset_preset
* Rename loadout_config to loadout_preset
* Add skillset_config for asset_specifier of skillset
* Add loadout_config for asset_specifier of loadout
2021-06-09 15:37:03 +03:00
juliancoffee
e832fa86f1 Add entity template and make 'loadouts' singular 2021-06-09 15:37:03 +03:00
Marcel
875b26a93a Merge branch 'aweinstock/recipe-graphviz' into 'master'
Add graphviz diagram generator for crafting recipes.

See merge request veloren/veloren!2401
2021-06-09 09:14:13 +00:00
Marcel
ee5d55f773 Merge branch 'swilliams/collision-balance' into 'master'
NPC Hitbox Adjustments

See merge request veloren/veloren!2403
2021-06-09 08:08:44 +00:00
Scott Williams
2a161abd0a NPC Hitbox Adjustments 2021-06-09 08:08:41 +00:00
juliancoffee
1dd621a56f serialize AssetTweakWrapper<T>, not just T
asset_tweak::tweak_expect_or_create works by writing default data to
file and then read it as asset.
the problem is that it was writing T, and read AssetTweakWrapper<T>
which are different types.

Tests didn't handle case when you will load data back so bug was hidden.
2021-06-08 22:39:51 +03:00
Avi Weinstock
b5ae6227c0 Run clippy for graphviz target in CI and add instructions on how to consume the output. 2021-06-08 15:08:14 -04:00
Avi Weinstock
b5b7de9532 Add graphviz diagram generator for crafting recipes. 2021-06-08 14:42:51 -04:00
Marcel Märtens
37c508d05d add todo for clippy exception 2021-06-08 15:45:46 +02:00
juliancoffee
cb7a41c72d put serde behind feature gate 2021-06-08 14:03:15 +03:00
juliancoffee
df2c3a4950 Fix find_root() search in case if .git isn't dir 2021-06-08 13:34:46 +03:00
juliancoffee
8f86f474e8 place asset_tweak behind a feature 2021-06-08 13:34:41 +03:00
juliancoffee
3c34301947 More tests, support only assets/tweak directory
- Use `serial_test` because tests can't run in parallel as both of them
are accessing fs.
- Take only filename, use hardcoded `assets/tweak` to keep it simple and
support .gitignore
2021-06-08 13:31:27 +03:00
juliancoffee
7533f4d17b add asset_tweak_or_create that will create file 2021-06-08 13:31:27 +03:00
juliancoffee
8a157b8410 New tweak_expect fn to tweak values from .ron
- Function to tweak values via temporary hot-reloaded .ron files
2021-06-08 13:31:27 +03:00
Marcel
39ea9d3aa3 Merge branch 'xMAC94x/ci_bin_features' into 'master'
Add bot tests to CI

See merge request veloren/veloren!2326
2021-06-08 10:04:17 +00:00
Marcel
eecb561838 Merge branch 'slipped/meatfollowup' into 'master'
various fixes to items

See merge request veloren/veloren!2399
2021-06-08 09:57:31 +00:00
Christof Petig
b3956517fc suppress recipes with no cost 2021-06-08 09:17:04 +02:00
jshipsey
fe1cbec37c various fixes to items 2021-06-07 21:21:12 -04:00
Avi Weinstock
3cbf84ddb1 Restore collision data for airships, and add the test that would have caught this. 2021-06-07 18:09:09 -04:00
Marcel Märtens
7185dcee68 switch to hashbrown 0.11 and specs 0.16.2 2021-06-07 13:01:01 +02:00