Commit Graph

1685 Commits

Author SHA1 Message Date
Avi Weinstock
c199d12f2d Address MR 2207 review comments.
- Add metrics for which branch of the compression heuristic was taken.
- Reduce the threshold for the heuristic.
- Deduplicate code for dealing with lazy messages.
- Make jpeg dependency only scoped to the compression benchmark.
- Remove commented code.
2021-05-03 00:09:24 -04:00
Avi Weinstock
30cae40b82 Add a bandwidth-based heuristic for chunk compression. 2021-05-03 00:09:24 -04:00
Avi Weinstock
cdc2eccda8 Improve quadpng by adding WidePacking, which makes a wider image, which is faster due to PNG compressing by row. Heuristically switch between quadpng and deflate based on chunk height to reduce variance. 2021-05-03 00:09:24 -04:00
Avi Weinstock
f81539cb00 Get PngPngPngJpeg terrain working in the actual game. 2021-05-03 00:09:24 -04:00
Daniel Mizerski
7faa0d3cd9 Add fundamentals for wiring system. 2021-05-02 22:38:44 +02:00
Ben Wallis
d7582efad0 Moved character creation to use character_updater instead of character_loader. Changed character_loader to use a read-only database connection. 2021-05-02 16:08:39 +01:00
Sam
d500a00414 Made naming of fields more explicit. 2021-05-01 09:25:56 -04:00
Sam
3cb0ee98c8 Removed all unique and simple tool kinds. 2021-05-01 09:25:51 -04:00
Sam
a35b8b4aad Removed ability set as field on items. 2021-05-01 09:25:49 -04:00
Joshua Barretto
b29e2b0017 Fixed admin physics check exemption 2021-04-30 14:06:07 +01:00
Samuel Keiffer
4f5f15979a Merge branch 'sam/deduplicate-items' into 'master'
Sam/deduplicate items

See merge request veloren/veloren!2225
2021-04-29 20:11:43 +00:00
Sam
7870109856 Deduplicated stuff in npc_armor. 2021-04-29 15:45:14 -04:00
Sam
91bb6392bb Removed old 2h variants of 1h weapons. 2021-04-29 13:18:04 -04:00
Ben Wallis
e2d6326615 Made admins exempt from the server-side position and velocity checks 2021-04-29 17:46:40 +01:00
Marcel Märtens
760c382ed9 protocoladdr change for listen and connect
(remove a loop in quic protocol which wasnt a actual loop)
2021-04-29 15:58:34 +02:00
Ben Wallis
c16bf51ab2 Merge branch 'xvar/reduce-timeofday-sync-frequency' into 'master'
Reduced frequency of TimeOfDay message being sent to clients

See merge request veloren/veloren!2218
2021-04-29 13:50:08 +00:00
Ben Wallis
3c20e8ed4e Reduced sync of TimeOfDay to once per 100 ticks 2021-04-29 12:34:27 +01:00
James Melkonian
2fafcded93 Set bird default to not flying and give non-strafing NPCs a larger attack angle 2021-04-28 02:31:51 +00:00
James Melkonian
24095187c7 Partially fixes wolf AI 2021-04-27 17:57:31 +00:00
Ludvig Böklin
34660462e9 Glider physics 2021-04-27 14:41:48 +00:00
Sam
1a7779beb3 Added angle check for new npcs. 2021-04-25 22:19:30 -04:00
Sam
9084e93f8b Added an angle check to all agent attacks. 2021-04-25 22:02:31 -04:00
Marcel
991ccf0033 Merge branch 'aweinstock/deflate-downgrade-20210425' into 'master'
Downgrade deflate from level 5 to level 1 in the terrain system to match LZ4's...

See merge request veloren/veloren!2199
2021-04-25 23:35:43 +00:00
holychowders
5488f9f525 Prevent safezoned villagers from spamming messages upon seeing an enemy 2021-04-25 21:24:06 +00:00
Avi Weinstock
57aee57d82 Downgrade deflate from level 5 to level 1 in the terrain system to match LZ4's worst-case encoding time. 2021-04-25 16:18:57 -04:00
Marcel
ecb176158c Merge branch 'tormeh/rtsim-first' into 'master'
Tormeh/rtsim first

See merge request veloren/veloren!2053
2021-04-25 18:53:39 +00:00
Sam
372eff2a02 Initial SCT implementation to display blocks. 2021-04-25 13:09:09 -04:00
Sam
288a6f3a82 Blocking now works if no weapon is equipped in main hand.
Added temp sfx for blocking and parrying.
Added temp particles for successful parry.
Tweaked values of default block ability.
2021-04-25 13:09:02 -04:00
Sam
91c6288213 Melee weapons can now block. 2021-04-25 13:08:42 -04:00
Snowram
8f54a0bf31 More phoenix AI work
More phoenix AI work
2021-04-25 04:07:12 +02:00
James Melkonian
0cf7e7114f Phoenix AI pass 2021-04-25 04:07:11 +02:00
Snowram
8cf8e51962 Phoenix npc + AI (WIP) 2021-04-25 04:07:11 +02:00
Snowram
bd84677906 Day period dependant wildlife spawns 2021-04-25 02:14:51 +02:00
Snowram
bc95484863 Swaps bird_small skeleton to a new bird_large 2021-04-25 02:14:49 +02:00
Avi Weinstock
95d32b40bb Remove redundant terrain message per MR 2166 comment. 2021-04-20 23:48:15 -04:00
Avi Weinstock
308ad4d81e Cleanup errors introduced in rebase. 2021-04-20 23:34:17 -04:00
Avi Weinstock
15e32e5655 Move terrain compression code to common_net and disable redundant LZ4 compression on the terrain stream. 2021-04-20 23:24:24 -04:00
Avi Weinstock
6d9de520f3 Compress terrain chunks with deflate. Includes a benchmark showing that this makes them around 70% smaller, and is the same speed as LZ4. 2021-04-20 23:23:53 -04:00
Imbris
e17477979f Remove extra chunk cloning and parallelize serialization in the server terrain sys 2021-04-20 15:25:05 -04:00
Imbris
9e0fbd392d Remove some of the spans in the agent system 2021-04-20 15:25:05 -04:00
Imbris
110165de3a Add more profiling spans to the agent system and add timing notes 2021-04-20 15:25:04 -04:00
Imbris
e750c9d570 Switch agent target search to use a spatial grid, add convience method for querying the aabr of a circle 2021-04-20 15:25:04 -04:00
Imbris
26222a0a2d Rename common-sys to common-systems and rearrange common-state slightly 2021-04-20 15:25:04 -04:00
Ludvig Böklin
762c68cfbb Basic fluid dynamics and physical properties for entities 2021-04-20 17:38:19 +02:00
Joshua Barretto
36e95e0c03 Cleaned up client-side recipe handling 2021-04-20 12:33:22 +01:00
Monty
a1b4e0bdaf remove old craftsman hammer, add migration 2021-04-20 03:34:11 +02:00
Joshua Barretto
1a0f6f03ef Prevent crafting without station 2021-04-20 02:46:05 +02:00
Monty
a1fe7c12c3 fmt, add sprites 2021-04-20 02:46:04 +02:00
Joshua Barretto
5598d07944 Added crafting stations 2021-04-20 02:45:59 +02:00
Marcel Märtens
7348e399e0 only have 1 Fn passed to tick fn 2021-04-20 01:49:45 +02:00
Marcel Märtens
485a477503 include origin into system name 2021-04-20 01:30:27 +02:00
Marcel Märtens
425063e24e remove authc from common::net 2021-04-20 01:30:23 +02:00
Marcel Märtens
5862920f32 seperate sys/state 2021-04-20 01:30:17 +02:00
James Melkonian
ef38d9778f Fix bow AI 2021-04-19 12:17:31 -07:00
Joshua Barretto
cd0a65da81 Added minimum chunk unload distance to make chunk reload cheesing harder 2021-04-19 11:29:20 +01:00
Marcel
ba55a46db1 Merge branch 'UMR1352/fix#1077' into 'master'
fix issue #1077: show kill msg only to group members and nearby players if...

Closes #1077

See merge request veloren/veloren!2135
2021-04-18 20:46:17 +00:00
Enrico Marconi
a941833ff1 fix issue #1077: show kill msg only to group members and nearby players if... 2021-04-18 20:46:16 +00:00
Samuel Keiffer
60d38cc03b Merge branch 'aweinstock/dodgesplosion' into 'master'
Unlock dodge roll iframes and staff explosion by default.

See merge request veloren/veloren!2146
2021-04-18 20:46:15 +00:00
Avi Weinstock
0404250300 Unlock dodge roll iframes and staff explosion by default. 2021-04-18 16:16:06 -04:00
Samuel Keiffer
1892ec571d Merge branch 'sam/permanent-spawn-safezone' into 'master'
Safezone is now permanently in existence at spawn.

See merge request veloren/veloren!2144
2021-04-17 23:44:10 +00:00
Sam
c8d4c4ff84 Gated safe zone behind a server setting, removed unneeded function. 2021-04-17 17:54:11 -04:00
Sam
416fe5c2af Safezone is now permanently in existence at spawn. 2021-04-17 17:33:54 -04:00
Ben Wallis
a4cdb89987 Implemented inventory sorting 2021-04-17 22:04:08 +01:00
Avi Weinstock
af47c0dc21 Added /server_physics admin command. 2021-04-17 13:44:22 -04:00
Avi Weinstock
513c7ff068 Make physics anticheat less aggressive. 2021-04-16 18:07:54 -04:00
Imbris
85ee4c8cd1 Merge branch 'aweinstock/server-authoritative-physics' into 'master'
Aweinstock/server authoritative physics

See merge request veloren/veloren!2126
2021-04-15 22:24:00 +00:00
Avi Weinstock
2fb7575d60 Address MR 2126 comments. 2021-04-15 15:17:39 -04:00
Ben Wallis
95d7a3d761 Fixed cargo test-server. Removed -Z package-features from .cargo/config as it is no longer required 2021-04-15 19:07:46 +01:00
Avi Weinstock
bf6ac56eb0 Add teleport/speedhack mitigation. 2021-04-15 08:50:17 -04:00
Avi Weinstock
50d0314a75 Add a toggle to negotiate the use of server-authoritative physics. 2021-04-15 08:50:17 -04:00
Avi Weinstock
d6f4537d39 Minimal implementation of server-authoritative physics. 2021-04-15 08:26:15 -04:00
Ben Wallis
b6cd1f836e Merge branch 'xvar/rework-char-deletes' into 'master'
Character deletes are now processed by CharacterUpdater and clear any pending...

See merge request veloren/veloren!2128
2021-04-15 00:39:17 +00:00
Ben Wallis
378561598e Character deletes are now processed by CharacterUpdater and clear any pending logout updates for the deleted character 2021-04-14 22:30:53 +01:00
Monty
ed233efc53 Temporarily remove death messages 2021-04-14 20:31:34 +02:00
Samuel Keiffer
435b5d5912 Merge branch 'holychowders/resolve_issue_#978_extract_skillset_into_own_component' into 'master'
Resolve Issue #978 - Extract SkillSet Into Its Own Component

Closes #1065 and #978

See merge request veloren/veloren!2116
2021-04-14 15:35:35 +00:00
holychowders
568a8d9666 Resolve Issue #978 - Extract SkillSet Into Its Own Component 2021-04-14 15:35:34 +00:00
Ben Wallis
d6b3eb3784 Fixed initial creation of saves directory. Added path of old singleplayer saves directory to information logged when it is moved to the new userdata directory 2021-04-14 07:15:51 +01:00
Ben Wallis
1de94a9979 * Replaced diesel with rusqlite and refinery
* Added "migration of migrations" to transfer the data from the __diesel_schema_migrations table to the refinery_schema_history table
* Removed all down migrations as refinery does not support down migrations
* Changed all diesel up migrations to refinery naming format
* Added --sql-log-mode parameter to veloren-server-cli to allow SQL tracing and profiling
* Added /disconnect_all_players admin command
* Added disconnectall CLI command
* Fixes for several potential persistence-related race conditions
2021-04-13 22:05:47 +00:00
Samuel Keiffer
879b3e0133 Merge branch 'UMR1352/fix#1065' into 'master'
fix issue #1065: admin bag and other admin items inside a container doesn't disappear when dropped

Closes #1065

See merge request veloren/veloren!2114
2021-04-13 05:55:36 +00:00
Marcel
5b8842fac3 Merge branch 'deny-trade-on-exit' into 'master'
Denies any active trades on exit to char select.

See merge request veloren/veloren!2111
2021-04-12 23:00:38 +00:00
Rickey Chamblee
883977a42f Denies any active trades on exit to char select. 2021-04-12 23:00:38 +00:00
Vincent Foulon
a4bd47f340 Support quantity + use Enum for autocompletion + Address comments 2021-04-12 20:07:34 +02:00
Vincent Foulon
0692562533 New Command: "kit" + Removed Command: "debug"
Update CHANGELOG.md

Update CHANGELOG.md
2021-04-12 18:53:36 +02:00
Enrico Marconi
bfd23a9828 fix issue #1065: admin bag and other admin items inside a container doesn't disappear when dropped 2021-04-12 16:21:10 +02:00
Joshua Yanovski
dd1e06115e Inverted admin check. 2021-04-12 12:44:19 +02:00
Avi Weinstock
ddf6a26577 Give NPCs the ability to use potions. 2021-04-11 23:47:29 +00:00
Joshua Yanovski
90c3923119 Fix players being able to pick up other players. 2021-04-11 15:52:55 +02:00
Marcel
db8c167797 Merge branch 'UMR1352/fix#1059' into 'master'
fix issue #1059: Debug items should disappear when dropped

Closes #1059

See merge request veloren/veloren!2088
2021-04-10 17:41:43 +00:00
Joshua Yanovski
af94753ad9 Remove panics and unwraps, part 1.
Also fixes various other miscellaneous bugs.
2021-04-10 10:03:21 +02:00
Enrico Marconi
4c5de60d0d fix issue #1059: Debug items should disappear when dropped 2021-04-09 13:46:43 +02:00
Marcel Märtens
1a9425526b remove spamming of the logs 2021-04-08 23:55:13 +02:00
Imbris
0eecc61ddf Merge branch 'vfoulon80/behavior-component' into 'master'
New Component: Behavior

See merge request veloren/veloren!2033
2021-04-08 19:16:28 +00:00
Vincent Foulon
d80db38bc9 Remove TRADE capability, use trade_site attribute instead 2021-04-08 19:06:57 +02:00
Vincent Foulon
bc1797a240 Address comments 2021-04-08 18:33:00 +02:00
Louis Pearson
4c9eede9fd Document Travel enum 2021-04-08 05:40:56 -06:00
Louis Pearson
85de7d130c Use distance_squared to speed up calculations 2021-04-08 05:10:22 -06:00
Louis Pearson
5cbdf1850c Fix travellers stuck in town
There was an off by one error in the code that negates the progress
along paths that are reversed.
2021-04-08 05:10:04 -06:00
Louis Pearson
126b7efa92 Tries to implement npcs only travelling by paths
Unfortunately, there's a degenerate case where npcs can get stuck in a
town. Not sure why
2021-04-08 04:19:02 -06:00
Louis Pearson
29a3fda7ef Refine airship pathing 2021-04-08 04:19:02 -06:00
Louis Pearson
be67ba1e63 Add CustomPath to Travel enum
Defines a custom path to follow, instead of using one from the World.
Airships use this to slightly adjust their course to reduce collisions.
2021-04-08 04:19:02 -06:00
Louis Pearson
7f9ec9e19b Convert rtsim pathfinding logic to a FSM 2021-04-08 04:19:02 -06:00
Louis Pearson
99c6e57c1f Resolve comments 2021-04-08 04:19:02 -06:00
Louis Pearson
3c7898fe8e Expect instead of unwrap 2021-04-08 04:19:02 -06:00
Louis Pearson
58274db3e3 Make rtsim entities ensure sanity of track 2021-04-08 04:19:02 -06:00
Louis Pearson
c281fb32cc First pass at rtsim following paths 2021-04-08 04:19:02 -06:00
Vincent Foulon
dbee13f9be Finally Behavior isn't good enough as a component, Remove it from ECS and include it onto Agent directly 2021-04-07 22:02:57 +02:00
Vincent Foulon
45fb9f3211 Address comments
- make Behavior's capabilities and state private
 - Typo in a comment
 - add basic tests

Apply 1 suggestion(s) to 1 file(s)

Remove comments in agent.rs
2021-04-07 22:02:42 +02:00
Vincent Foulon
993ae8fff7 address mutability comment 2021-04-07 17:39:12 +02:00
Vincent Foulon
a0157ac5f5 use bitflags instead of HashSet 2021-04-07 17:37:21 +02:00
Vincent Foulon
211ab02897 Use Behavior::CanTrade instead of Agent::trade_for_site + addressed comments 2021-04-07 17:26:42 +02:00
Vincent Foulon
51ef3547a1 cleanup old code 2021-04-07 17:26:27 +02:00
Vincent Foulon
a483817fc2 Change check for trading NPC 2021-04-07 17:26:19 +02:00
Vincent Foulon
18694b30ad Use Behavior into Agent 2021-04-07 17:26:12 +02:00
Vincent Foulon
41314e9098 Create Behavior component 2021-04-07 17:21:53 +02:00
Vincent Foulon
5e23c164e6 Add missing translations + Add "enemy_killed" text for villagers 2021-04-07 13:26:15 +02:00
Tormod G. Hellen
083a1b054f Make randoms use green lantern. 2021-04-06 21:16:56 +02:00
Tormod G. Hellen
188096a20f Remove dead code. 2021-04-06 21:15:49 +02:00
Louis Pearson
f5bc6b43c9 Add default world build AABB 2021-04-05 07:39:09 -06:00
Marcel
69891f0b70 Merge branch 'login-trim-username' into 'master'
login trim username, improve validation, social ordering #1040

Closes #1040

See merge request veloren/veloren!2042
2021-04-04 22:09:16 +00:00
DaforLynx
6734198104 Adds on-hit combat sfx 2021-04-04 03:04:02 +00:00
Sam
27f178286d Removed all rng matches in code to determine loot tables, and moved to loot tables specific for each sprite, creature, or dungeon. 2021-04-02 23:24:55 -04:00
Sam
9ad5b0f6b7 Changelog. Fixed a few qualities. 2021-04-02 23:04:36 -04:00
Sam
a2906168a6 Moved materials into their own loot tables. 2021-04-02 23:04:33 -04:00
Sam
cb638180f8 Moved food items into their own loot tables. 2021-04-02 23:04:32 -04:00
Sam
31e69021cb Switched loot tables from declaring each weapon individually to just referencing a different loot table. 2021-04-02 23:04:31 -04:00
Sam
833f1f3309 Converted all armor in loot tables to reference armor set loot tables. 2021-04-02 23:04:28 -04:00
Sam
96b354c178 Consolidated loot tables by switching to CreatureMaterial where possible 2021-04-02 23:04:27 -04:00
Sam
ab2fca21cf Fixed trading 2021-04-02 23:04:26 -04:00
Sam
cbca2a66b6 Support for creature specific materails and materials having a quantity. 2021-04-02 23:04:25 -04:00
Sam
247004d180 Loot tables can now recursively specify loot tables. Mercahnts broken. 2021-04-02 23:04:25 -04:00
Marcel
3b7e3f8e74 Merge branch 'vfoulon80/trading-dialogues' into 'master'
Add dialogue when the Merchant is busy and randomize some trading dialogues

See merge request veloren/veloren!2038
2021-04-01 18:08:44 +00:00
Vincent Foulon
dcde8df365 address review comments 2021-04-01 19:13:08 +02:00
aljazerzen
08146f6a3a login trim username, improve validation, social ordering 2021-04-01 16:43:27 +02:00
aljazerzen
8ac879e4c1 after leaving group, issue warning instead of changing chat mode 2021-04-01 15:43:50 +02:00
aljazerzen
dae8515590 after leaving a group, set chat mode to world 2021-04-01 15:43:05 +02:00
Vincent Foulon
c2a8feada5 Add dialogue when the Merchant is busy and randomize some trading dialogues 2021-03-31 19:06:41 +02:00
Avi Weinstock
0122dca3c3 Allow fast stacking into and out of a trade with {ctrl,shift} click.
Shift click goes 1 at a time, Ctrl click automatically balances the trade w.r.t. that quantity.
2021-03-30 18:39:10 -04:00
Marcel
895de16dd6 Merge branch 'james/fix-merchant-wander' into 'master'
Fix merchant wandering

See merge request veloren/veloren!2035
2021-03-30 10:52:42 +00:00
Marcel
5ccbfba8fe Merge branch 'xMAC94x/terrainoptimisation' into 'master'
if more than 1 player is in the area of a newly created chunk, skip additional copies

See merge request veloren/veloren!2030
2021-03-30 08:27:13 +00:00
James Melkonian
8e522596a5 Fixed merchant wandering 2021-03-29 17:27:56 -07:00
Samuel Keiffer
12ec46c572 Merge branch 'sam/mindflayer-balancing' into 'master'
Mindflayer balance tweaks.

See merge request veloren/veloren!2031
2021-03-29 21:05:49 +00:00
Vincent Foulon
a35fa19409 Implement a basic dialogue system 2021-03-29 14:47:42 +00:00
Sam
71ba9b6a54 Mindflayer balance tweaks. 2021-03-29 10:44:46 -04:00
Marcel Märtens
fdd1eac6ed if more than 1 player is in the area of a newly created chunk, skip additional copies 2021-03-29 12:21:07 +02:00
Snowram
c8e191e138 Merge branch 'snowram/new-scepters-starves' into 'master'
Add new batch of starves and scepter (by Gemu)

See merge request veloren/veloren!2022
2021-03-29 00:08:19 +00:00
Snowram
5295894105 Add new batch of starves and scepter (by Gemu) 2021-03-29 01:27:55 +02:00
Marcel Märtens
6e77028605 make msg::terrain parallel via rayon, we parallelize over the number of clients, so this is a change servers with more than 1 player profit from. 2021-03-28 21:08:40 +02:00
Treeco
8c2a5559d3 Move common code out into function 2021-03-28 18:22:47 +01:00
Treeco
ab596d2ae8 New default world map, default continent scale doubled 2021-03-28 17:07:38 +01:00
Treeco
12cf8847c8 Added command to teleport to sites by name 2021-03-28 17:02:17 +01:00
Treeco
24763972ea Added spawn_town server setting 2021-03-28 17:02:17 +01:00
Joshua Barretto
d8117b3b3d Make caves and rtsim entities scale with map size, more cloud detail 2021-03-28 17:02:16 +01:00
Treeco
8f13750027 Temporarily disable humanoid rtsim entities until their pathfinding is fixed 2021-03-28 14:49:40 +01:00
Sam
f117a57083 Switched to using ForceUpdate to forcefully update the client position after a blink 2021-03-27 21:33:45 -04:00
Sam
b0b114a7f8 Balance tweaks 2021-03-27 21:05:15 -04:00
Sam
6c611d632a Mindflayer now only summons minions at set thresholds of health. 2021-03-27 21:05:11 -04:00
Sam
f9835e78da Pets no longer drop loot on death. Code to determine targeting of pets is less hacky and now takes into account alignment of their owner. 2021-03-27 21:05:07 -04:00
Sam
8e4aeff705 Improved mindflayer AI. Tweake some abilities. 2021-03-27 21:05:07 -04:00
Sam
720482d994 Gave mindflayer AI.
Fixed particles and made them sync across network.
2021-03-27 21:05:06 -04:00
Sam
a5b7477e96 Added summon minions ability to mindflayer 2021-03-27 21:05:05 -04:00
Sam
30da614e89 Added dimensional door ability for mindflayer 2021-03-27 21:05:05 -04:00
Marcel Märtens
c77446a014 fix some tracy only and no default features 2021-03-27 18:24:10 +01:00
Marcel Märtens
88b191dbbb track state tick in a historgram too 2021-03-27 18:24:10 +01:00
Louis Pearson
ad0396d9f4 Use made_valid instead of min/max 2021-03-27 08:17:26 -06:00
Louis Pearson
165065725e Add build_area_list command
* Reworks CanBuild to use HashSet
* Removes player argument from build permission, use sudo instead
2021-03-27 07:54:02 -06:00
Louis Pearson
21f794f84c Use Depot instead of Store for BuildArea 2021-03-27 07:54:02 -06:00
Louis Pearson
f08c4e6585 Add commands to manage build areas 2021-03-27 07:54:02 -06:00
Louis Pearson
77d48657c6 Store build areas outside of CanBuild component 2021-03-27 07:54:02 -06:00
Louis Pearson
120a0cd9a7 Limit build mode to bounding box 2021-03-27 07:54:02 -06:00
Louis Pearson
eade0540b2 Add permit_build command
This commit separates permission to build from building mode, allowing
build to become a NoAdmin command (since players will first need
permission from an Admin to enter build mode)
2021-03-27 07:54:02 -06:00
Marcel
da5c73c84b Merge branch 'refactor-login' into 'master'
refactor handling of duplicate login #1015

Closes #1015

See merge request veloren/veloren!1992
2021-03-27 13:49:09 +00:00
aljazerzen
0e71af92f1 cleanup login provider 2021-03-27 13:29:17 +01:00
aljazerzen
0c8448517e move already-logged-in check to register 2021-03-26 11:41:03 +01:00
Marcel Märtens
01c82b70ab network scheduler and rawmsg cleanup 2021-03-26 08:57:42 +01:00
aljazerzen
0ea102dc9c refactor handling of duplicate login 2021-03-25 12:33:56 +01:00
Avi Weinstock
8d90548331 Get SitePricing information to clients, and use it to display coin-denominated prices in voxygen on tooltips during a trade. Also boost merchant spawn rate slightly. 2021-03-25 02:11:58 -04:00
Marcel
28952f6d7b Merge branch 'aweinstock/agent-retargetting' into 'master'
In `agent::Sys`, perform target selection periodically to avoid agents going...

See merge request veloren/veloren!1985
2021-03-24 22:22:04 +00:00
Avi Weinstock
650d1709d0 Address MR 1987 review comments. 2021-03-24 16:09:12 -04:00
Avi Weinstock
c4a6875133 Fix airships getting stuck in trees and campfires spawning too close to new-style dungeon stairs. 2021-03-24 15:42:37 -04:00
Avi Weinstock
ebc8e945d4 In agent::Sys, perform target selection periodically to avoid agents going after their target too singlemindedly. 2021-03-23 23:00:05 -04:00
Avi Weinstock
19ea0c3f21 Fix expect-panic on failed UID lookups in inventory_manip. 2021-03-23 19:04:21 -04:00
Avi Weinstock
75f1b0f5e0 Remove level from create_ship and CreateShip. 2021-03-23 10:44:42 +01:00
Avi Weinstock
deb9358c3a Add ServerEvent::CreateShip, and use it instead of CreateNpc for RtSim airships. 2021-03-23 10:44:37 +01:00
Avi Weinstock
49f39fb752 Make more systems work with an optional health component, to allow disabling health on rtsim airships (so that players can't hammer them out of the sky). 2021-03-23 10:44:32 +01:00
Avi Weinstock
e2a74c5e5c Enable RtSim airships. 2021-03-23 10:44:22 +01:00
Marcel
f895b95bbe Merge branch 'aweinstock/fix-agenttrade-acceptspam' into 'master'
Make merchants not virtually spamclick accept.

See merge request veloren/veloren!1976
2021-03-23 09:39:40 +00:00
Avi Weinstock
833ab7f1a8 Make merchants not virtually spamclick accept. 2021-03-22 22:53:53 -04:00
heydabop
0e3f7625a9 Fix #962 - kick old client and add new client on duplicate login 2021-03-22 19:15:24 -05:00
Marcel Märtens
6b23101fac update toolchain to nightly-2021-03-22 2021-03-22 16:41:04 +01:00
Marcel
dc4570def5 Merge branch 'sharp/texture-atlases' into 'master'
Enable allocation of new textures on atlas allocation failure.

See merge request veloren/veloren!1949
2021-03-22 04:35:41 +00:00
Samuel Keiffer
1374900928 Merge branch 'sam/combat-fixes' into 'master'
Fixes gaining combo by shooting loot bag

See merge request veloren/veloren!1953
2021-03-22 02:01:22 +00:00
Joshua Barretto
7ae4230dc8 Merge branch 'zesterer/pick' into 'master'
Pickaxe

See merge request veloren/veloren!1959
2021-03-22 00:19:42 +00:00
Joshua Barretto
6ea5aa796b Faster pick, less vibrant block selection 2021-03-21 20:38:08 +00:00
Joshua Barretto
fb3980e273 Outcome for block destruction, take select_pos from ControllerInputs 2021-03-21 20:10:05 +00:00
Marcel
983523c463 Merge branch 'vfoulon80/climbing-skill' into 'master'
Add climbing speed and cost

See merge request veloren/veloren!1950
2021-03-21 18:35:44 +00:00
Joshua Barretto
b45df7fe10 Switched to BasicMelee 2021-03-21 17:45:01 +00:00
Joshua Barretto
347e1022a0 Initial implementation of pickaxe 2021-03-21 16:09:16 +00:00
Vincent Foulon
e06870702f Add skill for swimming speed 2021-03-21 15:58:38 +01:00
Avi Weinstock
1351b9515c Update fall damage calculations. 2021-03-20 18:46:34 -04:00
Vincent Foulon
8b01abde67 address comments 2021-03-20 22:56:54 +01:00
Sam
92c9e8c477 Fixed gaining combo by shooting loot bags 2021-03-20 16:26:10 -04:00
Vincent Foulon
d0aa68a9d2 Add climbing speed and cost 2021-03-20 17:17:28 +01:00
Joshua Yanovski
866cc79d2e Enable allocation of new textures on atlas allocation failure.
This solves the problem of not being able to set the view distance too
high, especially in pathological cases like giant trees.  For
simplicity, we just freeze any atlas where allocation failed and start
allocating to a new texture and atlas, letting reference counting
destroy the old one when there are no more references to it.  Because of
the spatial locality of chunk allocations, chunks allocated together
will virtually always have similar lifetimes, so the odds of this
causing significant fragmentation are very low, meaning this simple
solution should not do much worse than a much fancier one.
2021-03-20 16:21:41 +01:00
Marcel
eabddd7263 Merge branch 'christof/trading_fix2' into 'master'
fix merchant getting stuck in non-existant trade when declining after accepting

See merge request veloren/veloren!1941
2021-03-19 09:29:45 +00:00
Christof Petig
fb40cd93a9 fix merchant getting stuck in non-existant trade when declining after accepting 2021-03-19 00:43:23 +01:00
Avi Weinstock
a770ef0f4a Fix agent flight by enabling flight mode at the start of each tick of the agent system. 2021-03-18 18:54:23 -04:00
Joshua Barretto
e8b053a09f Reduced rubber-banding and interpolation jerk without significantly impacting upon network usage 2021-03-17 21:31:07 +00:00
Marcel
afa11d03e5 Merge branch 'james/fix-npc-chat-spam' into 'master'
Correct npc chat spam

See merge request veloren/veloren!1921
2021-03-16 23:22:48 +00:00
James Melkonian
ba196c4345 merchants no longer run away while trading
(this time without refactoring)
2021-03-16 23:22:48 +00:00
Sam
18173caefe NPCs no longer target players inside safezones (and consider them to be defeated)
Warding aura no longer sometimes bypasses safezone invulnerability
2021-03-16 15:17:08 -04:00
Marcel
f4fa1e9cd3 Merge branch 'xMAC94x/slowjob' into 'master'
instead of using tokio::Threadpool for CPU bound long running tasks, use rayon, but drip feed and limit the tasks

See merge request veloren/veloren!1912
2021-03-16 15:28:28 +00:00
Joshua Barretto
ac20e57647 Prevent component inserts being immediately invalidated 2021-03-16 14:24:23 +00:00
Marcel Märtens
a286eb084a create a wrapper around rayon, slowjobpool, that spawns on rayon but drop feed it 2021-03-16 13:31:04 +01:00
Joshua Barretto
2d23a89509 Fixed missed component insert bug 2021-03-16 12:19:42 +00:00
Joshua Barretto
6f10a56589 Optimised entity sync code, increased animation throttling distance 2021-03-16 02:49:33 +00:00
Joshua Barretto
bf66886e7c Increased network throttling for reduced network bandwidth 2021-03-16 02:40:56 +00:00
James Melkonian
6ea43cfd75 Various RtSim and Agent Interaction Fixes 2021-03-16 01:30:35 +00:00
Marcel
ad49318a63 Merge branch 'sam/explosion-fix' into 'master'
Explosions now take into account hitbox of entity.

See merge request veloren/veloren!1905
2021-03-15 22:26:28 +00:00
Sam
461ad6e339 Rebalanced explosion strengths 2021-03-15 00:36:07 -04:00
Sam
26f5d40bff Explosions now take into account hitbox of entity. 2021-03-14 23:45:55 -04:00
Avi Weinstock
9304ecab3d Address Imbris's MR 1888 comments, and add changelog entry.
- Use Ori::{new,to_quat} and make the field private.
- Update/capitalize/add various comments.
- Implicitly drop scope guards where applicable.
- Take !Copy colliders by reference instead of cloning.
- s/cylinder_voxel_collision/box_voxel_collision/
- Unindent some physics code with a continue.
2021-03-14 23:21:46 -04:00
Avi Weinstock
bbb11882e2 Add lerping of physics to extrapolated position, and enable sending updates for stopped entities. 2021-03-14 23:20:48 -04:00
Avi Weinstock
a32be4ac5a Address MR 1888 review comments.
- Delete obsolete symbolic links.
- Add suggested comments.
- Remove dead code.
2021-03-14 23:17:28 -04:00
Avi Weinstock
aa56166c80 Fix fmt and clippy, and rename {psdr,psdw} to {read,write} in physics. 2021-03-14 23:17:26 -04:00
Joshua Barretto
3496c356e2 More relative motion changes 2021-03-14 23:14:26 -04:00
Avi Weinstock
5ff72a4a2e /airship angle command and RtSim airships. 2021-03-14 23:14:26 -04:00
Joshua Barretto
e59b68c262 Mountable airships 2021-03-14 23:14:25 -04:00
Joshua Barretto
f4b3d8145b Smooth airship movement 2021-03-14 23:14:21 -04:00
James Melkonian
6ff054099f Allow spawned airships to move 2021-03-14 23:09:52 -04:00
Avi Weinstock
bcd3799395 Airship fixes: figure culling, player hitbox bounds w.r.t. airships, physics state unioning. 2021-03-14 23:09:51 -04:00
Avi Weinstock
5d85775dcf Airship progress: now possessable, and physics kind of works (desyncs from the visuals by a shift + scale, and rotation isn't done at all yet, but the contours are correct). 2021-03-14 23:09:51 -04:00
Avi Weinstock
8b9e84972a Draft of airships (spawn command, visuals, some physics refactoring, no collision yet). 2021-03-14 23:09:49 -04:00
Marcel
5570b57282 Merge branch 'sam/yeet-inputs' into 'master'
Reworked Controller Inputs to use Control Actions

See merge request veloren/veloren!1900
2021-03-15 01:32:02 +00:00
Forest Anderson
8cec35a9af Merge branch 'synis/fix-safezone-mass' into 'master'
Fix safezone entity mass

See merge request veloren/veloren!1902
2021-03-15 00:52:03 +00:00
Sam
ecff675cc4 Wielding now works again
Rolling now resumes combo states correctly again
Cleanup
2021-03-14 17:26:55 -04:00
Sam
ac6e192db4 Completely purged old method of inputs 2021-03-14 17:26:55 -04:00
Sam
b5d501199d Secondary input now fully functional 2021-03-14 17:26:53 -04:00
Sam
21e6f4797c Primary ability fully functional. 2021-03-14 17:26:53 -04:00
Sam
19c81f1528 Support for canceling an input. Boost state hooked up to system. 2021-03-14 17:26:52 -04:00
Sam
c6d8daaae3 Primary input now activated from control actions.
Moved a lot of key_state to a HashSet so that it is handled automatically.
2021-03-14 17:26:51 -04:00
Synis
29d1dca067 Added mass to safezone entity 2021-03-14 22:04:56 +01:00
Snowram
60dd47cdea Theropod charge attack 2021-03-14 18:10:40 +01:00
Christof Petig
15b11d9154 Implement /price_list (work in progress), stub for /buy and /sell
remove outdated economic simulation code

remove old values, document

add natural resources to economy

Remove NaturalResources from Place (now in Economy)

find closest site to each chunk

implement natural resources (the distance scale is wrong)

cargo fmt

working distance calculation

this collection of natural resources seem to make sense, too much Wheat though

use natural resources and controlled area to replenish goods

increase the amount of chunks controlled by one guard to 50

add new professions and goods to the list

implement multiple products per worker

remove the old code and rename the new code to the previous name

correctly determine which goods guards will give you access to

correctly estimate the amount of natural resources controlled

adapt to new server API

instrument tooltips

Now I just need to figure out how to store a (reference to) a closure

closures for tooltip content generation

pass site/cave id to the client

Add economic information to the client structure
(not yet exchanged with the server)

Send SiteId to the client, prepare messages for economy request
Make client::sites a HashMap

Specialize the Crafter into Brewer,Bladesmith and Blacksmith

working server request for economic info from within tooltip

fully operational economic tooltips
I need to fix the id clash between caves and towns though

fix overlapping ids between caves and sites

display stock amount

correctly handle invalid (cave) ids in the request

some initial balancing, turn off most info logging

less intrusive way of implementing the dynamic tool tips in map

further tooltip cleanup

further cleanup, dynamic tooltip not fully working as intended

correctly working tooltip visibility logic

cleanup, display labor value

separate economy info request in a separate translation unit

display values as well

nicer display format for economy

add last_exports and coin to the new economy

do not allocate natural resources to Dungeons (making town so much larger)

balancing attempt

print town size statistics

cargo fmt (dead code)

resource tweaks, csv debugging

output a more interesting town (and then all sites)

fix the labor value logic (now we have meaningful prices)

load professions from ron (WIP)

use assets manager in economy

loading professions works

use professions from ron file

fix Labor debug logic

count chunks per type separately
(preparing for better resource control)

better structured resource data

traders, more professions (WIP)

fix exception when starting the simulation

fix replenish function
TODO:
- use area_ratio for resource usage (chunks should be added to stock, ratio on usage?)
- fix trading

documentation clean up

fix merge artifact

Revise trader mechanic

start Coin with a reasonable default

remove the outdated economy code

preserve documentation from removed old structure

output neighboring sites (preparation)

pass list of neighbors to economy

add trade structures

trading stub

Description of purpose by zesterer on Discord

remember prices (needed for planning)

avoid growing the order vector unboundedly

into_iter doesn't clear the Vec, so clear it manually

use drain to process Vecs, avoid clone

fix the test server

implement a test stub (I need to get it faster than 30 seconds to be more useful)

enable info output in test

debug missing and extra goods

use the same logging extension as water, activate feature

update dependencies

determine good prices, good exchange goods

a working set of revisions

a cozy world which economy tests in 2s

first order planning version

fun with package version

buy according to value/priority, not missing amount

introduce min price constant, fix order priority

in depth debugging

with a correct sign the trading plans start to make sense

move the trade planning to a separate function

rename new function

reorganize code into subroutines (much cleaner)

each trading step now has its own function

cut down the number of debugging output

introduce RoadSecurity and Transportation

transport capacity bookkeeping

only plan to pay with valuable goods, you can no longer stockpile unused options
(which interestingly shows a huge impact, to be investigated)

Coin is now listed as a payment (although not used)

proper transportation estimation (although 0)

remove more left overs uncovered by viewing the code in a merge request

use the old default values, handle non-pileable stocks directly before increasing it
(as economy is based on last year's products)

don't order the missing good multiple times
also it uses coin to buy things!

fix warnings and use the transportation from stock again

cargo fmt

prepare evaluation of trade

don't count transportation multiple times

fix merge artifact

operational trade planning
trade itself is still misleading

make clippy happy

clean up

correct labor ratio of merchants (no need to multiply with amount produced)

incomplete merchant labor_value computation

correct last commit

make economy of scale more explicit

make clippy happy (and code cleaner)

more merchant tweaks (more pop=better)

beginning of real trading code

revert the update of dependencies

remove stale comments/unused code

trading implementation complete (but untested)

something is still strange ...

fix sign in trading

another sign fix

some bugfixes and plenty of debugging code

another bug fixed, more to go

fix another invariant (rounding will lead to very small negative value)

introduce Terrain and Territory

fix merge mistakes
2021-03-14 03:18:32 +00:00
Imbris
fcdd7f1c8b Merge branch 'imbris/tracy-tweaks' into 'master'
Improvements for tracy server analysis and other misc tweaks

See merge request veloren/veloren!1891
2021-03-13 22:26:26 +00:00
Imbris
0127832172 Fix tracy not working in certain areas, add span to chunk gen, missing fmt, remove extra span, make voxygen use INFO level instead of TRACE in tracy mode 2021-03-13 13:30:20 -05:00
Imbris
3c4829bc4a Fix server panic 2021-03-13 03:57:06 -05:00
Imbris
2511b8959c Add tracy entity count plot, span tweaks 2021-03-13 02:59:58 -05:00
Imbris
8d0b776f18 Move server-cli commands to separate file, tracy profiling par_join improvements, misc improvements
- remove overwritten logging setting in server-cli
- add server-cli command to load a random area for testing without a client
- make admin add/remove commands modify ingame players instead of needing to reconnect
- add spans to par_join jobs
- added test command that loads up an area of the world
- add tracy-world-server alias
- set debug directives to info for logging
2021-03-13 02:28:59 -05:00
Marcel Märtens
1cb6101326 lock on streams to allow parallel send 2021-03-12 09:25:12 +01:00
Marcel
5d32690fbf Merge branch 'xMAC94x/server_parallize' into 'master'
handle msg as part of the servers state for best parallelisation. also include agent there

See merge request veloren/veloren!1878
2021-03-11 21:52:18 +00:00