Commit Graph

2334 Commits

Author SHA1 Message Date
Joshua Barretto
502145a6f9 Cloud movement is more prominent 2022-07-04 18:07:01 +02:00
Joshua Barretto
dc90d637c1 Smoother clouds 2022-07-04 18:07:01 +02:00
IsseW
273c5ed2f0 Temporary noise solution 2022-07-04 18:07:00 +02:00
IsseW
9c84a20cef better sim 2022-07-04 18:06:58 +02:00
IsseW
0c804af773 reasonable delta time 2022-07-04 18:06:58 +02:00
IsseW
78c1de19cf More accurate weather sim 2022-07-04 18:04:39 +02:00
IsseW
6585ef1513 weather dependant music 2022-07-04 18:11:43 +02:00
IsseW
b7c0196129 Server weather sim 2022-07-04 18:11:41 +02:00
Marcel Märtens
50d85940d8 implement a event channel that posts regular information on events for Participants 2022-07-03 21:21:59 +02:00
Joshua Yanovski
957467e114 Fix chunk noise. 2022-07-01 23:57:09 -07:00
Joshua Yanovski
59aacc3fd8 Remove some bottlenecks. 2022-07-01 20:41:59 -07:00
Samuel Keiffer
0bd08b1f9e Merge branch 'socksonme/rework_sct' into 'master'
Rework SCT

See merge request veloren/veloren!3126
2022-07-02 02:42:42 +00:00
Joshua Yanovski
ad5bcf3cd8 Turning "full" chunks back on, deserialization improvements. 2022-06-29 21:52:04 -07:00
James Melkonian
8439f3ef6d Wiring System Documentation and Refactoring 2022-06-29 20:28:09 +00:00
Socksonme
6a355c58f2 Remove instance from PoiseChange 2022-06-29 18:36:05 +03:00
Socksonme
f048600335 Add back old i18n + some small fixes
- Fix .filter() for combo_floater
- Rename sct_inc_dmg_accum_duration to sct_inc_dmg, as it was in the
  wrong place

to rebase
2022-06-29 17:31:58 +03:00
Socksonme
f6189a61f2 Address review - addendum
- `BlockFloater`s and `ComboFloater`s don't store the owner anymore,
  `ExpFloater` still does, however the field is used to prevent
  accumulating old floaters with new ones. This change also makes it so
  that if the client changes entity, they keep the old entity's
  floaters.
- The `combo_floaters` field is now `combo_floater` plus it now uses an
  Option<ExpFloater>.
- Changed `handle_health_change` to change the health even if the entity
  does not have a `Pos` or `Uid`, now uses `emit_now`combo_floater` plus
  it now uses an Option<ExpFloater>.
- Changed `handle_health_change` to change the health even if the entity
  does not have a `Pos` or `Uid`, now uses `emit_now`
- Changed some comments
2022-06-29 17:31:58 +03:00
Socksonme
2c5fd06d0b Address review
- Change hp_pulse to not be framerate dependent
- Change some of the HpFloater checks to be inside the find() function
- Remove unnecessary join
- Add back option for showing incoming damage + add option for
  experience accumulation
- Change `ExpFloater`s to not store the owner, as they are only shown
  for the player (will have to see if the implementation is correct so
  that it may be applied to the other floaters)
- Rename `Outcome::Damage` to `Outcome::HealthChange` and `DamageInfo`
  to `HealthChangeInfo`
- Update some outdated comments/documentation
2022-06-29 17:31:58 +03:00
socksonme
eabbfe6a51 Remove damage batch option + crit_mult 2022-06-29 17:31:54 +03:00
socksonme
3d2dcbf894 Revert some changes 2022-06-29 17:31:43 +03:00
socksonme
559d5ca804 Some changes to DamageSources + various code qual changes 2022-06-29 17:31:43 +03:00
socksonme
5360a7c93e Tons of code quality changes, added damage rounding option 2022-06-29 17:31:37 +03:00
socksonme
64f0f05608 Fixed bug with healing above 5.0 and preparing for options 2022-06-29 17:31:10 +03:00
socksonme
202d558246 Instance number generated inside projectile constructor, remove crit field 2022-06-29 17:31:07 +03:00
socksonme
6c75ad6ef8 Code quality changes and comments 2022-06-29 17:30:54 +03:00
socksonme
c0e78d869e Instance numbers are now based on the AttackDamage struct 2022-06-29 17:30:53 +03:00
socksonme
ac5bf53c42 Instance numbers for HpChanges 2022-06-29 17:30:50 +03:00
socksonme
f8924d6c1a tweaks to damage floaters
Added some comments where stuff needs to be discussed
2022-06-29 17:30:32 +03:00
socksonme
7a1e19d42c Crits now only glob with eachother, now show up like healing
Still a WIP, need to change crits to being non-floating and try implementing crits popping, need to remove some debugging stuff later
2022-06-29 17:30:29 +03:00
socksonme
ce95680df9 Addressed comments, health and damage floaters are now separated
Enemy healing probably needs to be discussed as it doesn't show up as of now and the way crits are handled also needs to be discussed
2022-06-29 17:29:59 +03:00
socksonme
94f193fbe0 Damage outcomes are now emitted with health change events
Being healed and damaged at the same time still leads to issues - needs to be sorted out
2022-06-29 17:29:19 +03:00
Joshua Yanovski
a3b7127de9 Evven zoomier WorldGen, lots of things broken! 2022-06-28 00:24:46 -07:00
Sam
4a5ef6dce3 Poise damage dealt to a target in a stunned state is now no longer universally applied to the target as health damage.
Instead poise damage is only converted to health damage when its source is mitigated crushing damage.
Fixed 'Long Pole' -> 'Longpole'
2022-06-17 21:13:45 -04:00
Imbris
cd503a210e Remove tick_count since we can already get a count of ticks via
`tick_time_hist_count`.
2022-06-16 22:08:54 -04:00
Imbris
d5718fd410 Switch to counter of events and add tick counter 2022-06-15 19:25:00 -04:00
Imbris
950723dd0d Add metrics for counting server events 2022-06-15 00:40:58 -04:00
Samantha W
57ab1c5767 Add a client-side mutelist 2022-06-14 20:35:01 +00:00
Joshua Barretto
b555381677 Added server gameplay settings, ability to toggle explosion burns off 2022-06-14 14:24:08 +01:00
Isse
e03b733ad7 Owned mine loot 2022-06-12 17:56:59 +00:00
Christof Petig
39fafe646c add the missing files outside of world from shredded_economy4 2022-06-07 18:30:05 +02:00
N A
3d24ac79e3 make animal NPC's eat food on spot 2022-06-07 07:25:27 +00:00
terrarier2111
45efdb6602 Implement group owned loot 2022-06-04 17:16:12 +00:00
Ben Wallis
d71f2ff682 Fixed animals picking up non-owned non-consumable loot 2022-05-31 15:57:58 +01:00
Ben Wallis
ec1427d669 Added temporary fix to prevent loot drops causing a server crash in some (currently unknown) circumstances 2022-05-31 13:37:56 +01:00
Sam
5e57eabd11 Code changes and msm 2022-05-30 20:25:31 -04:00
N A
c09f070241 Change animal species to have only one inventory slot 2022-05-29 23:53:00 +00:00
Ben Wallis
34f580dfaa Introduced loot ownership rules to combat loot stealing by players
* Added `LootOwner` component used to indicate that an `ItemDrop` entity is owned by another entity
* A loot winner is now calculated after EXP allocation using the EXP per entity for weighted chance distribution
* Used existing Inventory Full overitem text to show "Owned by {player} for {seconds}secs" when a pickup fails due to a loot ownership check
* Updated agent code to take into account loot ownership when searching for `ItemDrop` targets to pick up
* Added `loot` ECS system to clear expired loot ownerships
2022-05-28 12:06:49 +00:00
StereoJunkie
3015b4a29d Non-humanoid picking up consumables when hungry 2022-05-27 16:57:53 +00:00
N A
d84a26dfd8 Special case taming and mounting. 2022-05-24 02:09:45 +00:00
N A
1f82dab948 NPC itemdrop picking up 2022-05-19 22:06:44 +00:00
Sam
534c7dc8b9 Simplified item key (no assets) 2022-05-18 16:28:06 -04:00
Sam
ed9bb7adae Added comments to persistence code 2022-05-17 19:05:43 -04:00
Sam
72f38068e0 Moved items from 'items.crafting_ing.modular' to 'items.modular.weapon' (no assets). 2022-05-16 15:11:44 -04:00
Sam
bcf36d08b0 Add removed items to migration. 2022-05-16 15:11:43 -04:00
Sam
54a6c31c63 Slight optimization to persistence 2022-05-16 15:11:42 -04:00
Sam
85c2a85817 Addressed review comments 2022-05-16 15:11:42 -04:00
Sam
c0dd748bc7 Addressed second round of balance feedback (no assets). 2022-05-16 15:11:40 -04:00
Sam
95c3fdffa1 Addressed playtest feedback (no assets). 2022-05-16 15:11:39 -04:00
Sam
e9f36b9486 Propagated errors in persistence when accessing mutable parent item for modular componnets. 2022-05-16 15:11:35 -04:00
Sam
64d07d02c4 Changed item definition id to better handle modular items. 2022-05-16 15:11:34 -04:00
Sam
37442b638c Changed component recipe book to generate some stuff automatically to avoid potential for stuff inside to become unsynced (no assets). 2022-05-16 15:11:33 -04:00
Sam
afd2c8730f Addressed most review comments (no assets). 2022-05-16 15:11:32 -04:00
Sam
816c265662 Rebase stuffs 2022-05-16 15:11:26 -04:00
Sam
e69aa8c4ee Fixed items with components having incorrect hashes 2022-05-16 15:11:24 -04:00
Sam
cb04433c14 Fix rebase 2022-05-16 15:11:22 -04:00
Sam
d436362a8d Consolidated crafting UI for the primnary component of modular weapons. 2022-05-16 15:11:21 -04:00
Sam
af50864643 Fixed issue in updating item config when loading persisted items. 2022-05-16 15:11:18 -04:00
Sam
bf348b7f43 Addressed further review. 2022-05-16 15:11:16 -04:00
Sam
94c19735ca Fixed broken stuff during rebase. 2022-05-16 15:11:16 -04:00
Sam
81c83c5e83 Items with components can now have their name modified by the components. Also addressed more review. NO ASSETS 2022-05-16 15:11:15 -04:00
Sam
259db56ca6 Addressed more comments in MR review. 2022-05-16 15:11:14 -04:00
Sam
d7f5b907ff Gave modular items a pseudo item definition id that can be used when serializing ItemBase or when persisting items to the database. ONLY ASSETS 2022-05-16 15:11:14 -04:00
Sam
fa9e034757 Gave modular items a pseudo item definition id that can be used when serializing ItemBase or when persisting items to the database. NO ASSETS 2022-05-16 15:11:13 -04:00
Sam
a9e9a70687 Changed ModularComponent to allow it to be more extensible. Overhauled random modular weapon function so that there is less runtime cost to generate one. NO ASSETS 2022-05-16 15:11:11 -04:00
Sam
b048179c0a Changed Item to have ItemBase instead of ItemDef. ONLY ASSETS. 2022-05-16 15:11:11 -04:00
Sam
08b7bb781f Changed Item to have ItemBase instead of ItemDef. NO ASSETS. 2022-05-16 15:11:10 -04:00
Sam
5bacf526ad Began addressing initial review of modular weapons. 2022-05-16 15:11:10 -04:00
Sam
00649f8ebb Added crafting method for modular weapons. 2022-05-16 15:11:04 -04:00
Sam
b7aa0a7a9f Rebase commit. 2022-05-16 15:11:04 -04:00
Sam
4f466d0523 Modular weapons now work in kits. 2022-05-16 15:11:03 -04:00
Sam
ca644f8f0b Added more interesting ingredients to recipes.
Changed bow main component from held (grip) to damage (limbs).
2022-05-16 15:11:02 -04:00
Sam
3108f02566 Fixed migration to properly run 2022-05-16 15:11:02 -04:00
Sam
01450b7e34 Fixed migration to properly insert components in the correct position. Fixed small error in how names were generated for any modular weapon that used the held component as its main component. 2022-05-16 15:11:01 -04:00
Sam
a908eb5791 Made a few more changes to migration, removed additional weapon. 2022-05-16 15:11:01 -04:00
Sam
9776760f47 Updated stats on components and edited migration for 1 handed weapons to point to new target modular weapon. 2022-05-16 15:11:00 -04:00
Sam
db515f4448 Migration for modular weapons. 2022-05-16 15:11:00 -04:00
Sam
f3bf33506d Added creation of temp table in migration. 2022-05-16 15:10:59 -04:00
Sam
38cb465722 Fixed loading of modular weapons from the loadout to work with nested components.
Modular weapons can now be correctly dispalyed when wielded.
2022-05-16 15:10:57 -04:00
Sam
d380a2dbaf Quality is now propogated through modular items from the quality of the components. 2022-05-16 15:10:55 -04:00
Sam
405b9b2448 Modular weapons now have programmatically generated names. 2022-05-16 15:10:53 -04:00
Sam
4e89bc7485 Added test functions to assist in fixing unit tests that broke from changed functionality. 2022-05-16 15:10:52 -04:00
Sam
511f39c5ae Adds support for loading modular item from database with an arbitrary amount of component nesting. 2022-05-16 15:10:49 -04:00
Marcel Märtens
1b76874342 renamings and using unstable sort according to a code review 2022-05-11 21:50:41 +02:00
Marcel Märtens
637e63fbe2 switch from a Component to a Ressource with an Eventbus
Set CHUNK_SITE to 10 which results in a mean of 13ms per Slowjob. Its good if it stays under 30ms so it has less influence on ticks.
Some performance values measured with a AMD Ryzen 1700X:
 - voxygen and server and swarm (25 clients, 10 vd) on one machine.
 - total runtime was 240s
 - CHUNK_GENERATOR total time is 486s with a mean of 40ms
 - CHUNK_SERIALIZER total time is 18.19s with a mean of 13ms, so in total its a order of magnitude lower
   Trancy confirms this, the Serialize backlog is usually handled within 1-2 ticks.
 - terrain::sys total time 1.2s, mean 188us
 - msg::terrain::sys total time 812ms, mean 125us
 - terrain::sync total time 12ms, mean 1,85us
 - chunk_serialize::sys total time 69ms, mean 10us
 - chunk_send::sys total time 50ms, mean 7us

so all in all total time for serializsation is 20.33 of which 89% are spend outside of the ECS
2022-05-11 21:04:17 +02:00
Marcel Märtens
efe284a673 make the client request a few more chunks to compensate for the delay in serialisation 2022-05-11 20:22:24 +02:00
Marcel Märtens
8e47d02f8d add metrics and trigger slowjobs in chunks of 25 2022-05-11 20:22:23 +02:00
Marcel Märtens
9b53693783 switch to a system where chunk_serialize will start a SlowJow that is then consumed by chunk_send 2022-05-11 20:22:21 +02:00
Marcel Märtens
6c756c2440 first implementation of defering serialisation 2022-05-11 20:22:19 +02:00
Joshua Barretto
d530c29d98 Fixed LoD on test worlds 2022-05-11 19:06:41 +01:00
Joshua Barretto
e02f8aee65 Merge branch 'zesterer/lod-objects' into 'master'
LoD Objects (inc. Trees)

See merge request veloren/veloren!3367
2022-05-11 14:56:12 +00:00