Paper icon indicating copy to clipboard operation
Paper copied to clipboard

Behavior Tick Rates aren't operating as designed

Open TreemanKing opened this issue 2 years ago • 2 comments

Expected behavior

The behaviours tick rates configured to the configurable tick rate in the Paper World Config.

unknown_2023 11 10-13 03 (Recorded using Paper-1.19 Latest with same configuration from 1.20.2)

Observed/Actual behavior

The behaviours tick rates aren't configuring to the configurable tick rate set in the Paper World Config.

unknown_2023 11 10-12 43

Steps/models to reproduce

  1. Set configuration with the following settings in paper-world-defaults-yml
tick-rates:
  behavior:
    villager:
      validatenearbypoi: 300
      aquirepoi: 300
  1. Start up server and make a similar build to build shown in the videos.
  2. Villager is changing POI as soon as lever is pressed rather than 300 ticks after.

Plugin and Datapack List

  • Essentials
  • LuckPerms
  • PlugManX
  • ViaBackwards
  • ViaVersion

Paper version

This server is running Paper version git-Paper-280 (MC: 1.20.2) (Implementing API version 1.20.2-R0.1-SNAPSHOT) (Git: 4675152)

Other

No response

TreemanKing avatar Nov 10 '23 02:11 TreemanKing

I did some testing locally and saw similar behaviour:

On 1.19.1-81 Setting validatenearbypoi to -1 resulted in job changes occurring in about 2 seconds or less. Setting validatenearbypoi to 300 resulted in job changes taking up to 15 seconds.

On 1.20.2-290 (latest) Changing the value of validatenearbypoi had no affect on how long it took the villager to switch jobs. The longest it took was about 2 seconds.

I thought maybe the name of the behaviour had changed as strange as that would be but its still present in the world configuration reference and the default configuration so that seems unlikely.

Both tests were done on fresh profiles with no mods or datapacks and the only value that was changed was validatenearbypoi because I'm not sure that aquirepoi is a valid option.

EDIT: I believe I was mistaken about aquirepoi, it seems to be used by unemployed villagers to find an unclaimed workstation.

Thedysons avatar Nov 13 '23 08:11 Thedysons

I have done some extensive checking and tested multiple versions and returned the following results:

  • 1.20.2-290 - Broken
  • 1.19.3-448 - Broken
  • 1.19.3-429 - Broken
  • 1.19.3-428 - Broken
  • 1.19.3-320 - Broken
  • 1.19.3-308 - Broken
  • 1.19.2-307 - Working
  • 1.19.2-112 - Working
  • 1.19.0-81 - Working

After some research, I believe this may have been caused by the 1.19.3 update where the addition of entity sub-predicate types were introduced, adding the following:

  • variant- values: seevillager_typeregistry
  • Also works for Zombie Villagers
  • Profession and level are separate values and not matched

I would go into looking to fix this but I honestly have no clue where to actually start...

TreemanKing avatar Nov 13 '23 10:11 TreemanKing