7.1 KiB
7.1 KiB
Crop Boost Scenarios
Shared setup
- Use one beehive in range of a crop/farmland.
- Keep distance fixed inside full-distance zone (
PlantsFullBoostDistanceToHive) unless the scenario says otherwise. - Enable both boosts when validating both paths:
SpeedBoost=true,YieldBoost=true. - Use non-zero bonuses to make differences visible:
GrowthSpeedBonus=0.2,YieldMultiplier=1.2.
Shared config commands (copy/paste)
/beehives YieldBoost true
/beehives SpeedBoost true
/beehives GrowthSpeedBonus 0.2
/beehives YieldMultiplier 1.2
/beehives BeehiveRadius 35
/beehives PlantsFullBoostDistanceToHive 20
/beehives MinBeesForPlantBoost 1000
/beehives MaxBeePopulation 50000
/beehives PopulationPercentForMaxBoost 100
/beehives MultipleBeehivesBoostCombination Max
1) Full mode keeps legacy behavior
- Config:
BoostCalculation=Full - Set hive population below
MinBeesForPlantBoost - Expected: no crop boost from that hive.
- Raise population to
MinBeesForPlantBoost - Expected: hive contributes full population factor (
100%) immediately (same as old behavior).
Commands
/beehives BoostCalculation Full
2) LinearPopulation starts at 0% at min
- Config:
BoostCalculation=LinearPopulation,PopulationPercentForMaxBoost=100,MaxBeePopulation=50000,MinBeesForPlantBoost=1000 - Set hive population to
1000 - Expected: population factor is
0%.
Commands
/beehives BoostCalculation LinearPopulation
/beehives PopulationPercentForMaxBoost 100
/beehives MaxBeePopulation 50000
/beehives MinBeesForPlantBoost 1000
3) LinearPopulation reaches 100% at configured max percent
- Same config as scenario 2
- Set hive population to
50000(100%ofMaxBeePopulation) - Expected: population factor is
100%.
Commands
/beehives BoostCalculation LinearPopulation
/beehives PopulationPercentForMaxBoost 100
/beehives MaxBeePopulation 50000
/beehives MinBeesForPlantBoost 1000
4) LinearPopulation midpoint check
- Same config as scenario 2
- Set hive population to midpoint between min and target max (
25500) - Expected: population factor is about
50%.
Commands
/beehives BoostCalculation LinearPopulation
/beehives PopulationPercentForMaxBoost 100
/beehives MaxBeePopulation 50000
/beehives MinBeesForPlantBoost 1000
5) NormalizedLogk10Population starts at 0% and ends at 100%
- Config:
BoostCalculation=NormalizedLogk10Population, same thresholds as scenario 2 - At
MinBeesForPlantBoost, expected0%. - At configured target max, expected
100%.
Commands
/beehives BoostCalculation NormalizedLogk10Population
/beehives PopulationPercentForMaxBoost 100
/beehives MaxBeePopulation 50000
/beehives MinBeesForPlantBoost 1000
6) NormalizedLogk10Population is front-loaded vs linear
- Compare
LinearPopulationvsNormalizedLogk10Populationat same midpoint population - Expected: log mode gives a higher factor than linear at midpoint.
- Formula reference:
f(x)=ln(1+10x)/ln(11)wherexis normalized[0..1]between min and configured max.
Commands
/beehives PopulationPercentForMaxBoost 100
/beehives MaxBeePopulation 50000
/beehives MinBeesForPlantBoost 1000
7) PopulationPercentForMaxBoost lower than 100
- Config:
PopulationPercentForMaxBoost=50,MaxBeePopulation=50000 - Target max population for full factor becomes
25000. - Expected: factor reaches
100%at25000and stays clamped at100%above it.
Commands
/beehives BoostCalculation LinearPopulation
/beehives PopulationPercentForMaxBoost 50
/beehives MaxBeePopulation 50000
/beehives MinBeesForPlantBoost 1000
8) PopulationPercentForMaxBoost = 0 boundary
- Config:
PopulationPercentForMaxBoost=0, non-Full mode - Expected: implementation falls back to immediate full factor once min threshold is met (avoids divide-by-zero / inverted range).
Commands
/beehives BoostCalculation LinearPopulation
/beehives PopulationPercentForMaxBoost 0
9) Distance and population multiply together
- Use non-Full mode with population factor around
50%. - Move crop just outside full-distance zone so distance effectiveness is also around
50%. - Expected: per-hive contribution is about
25%(0.5 * 0.5).
Commands
/beehives BoostCalculation LinearPopulation
/beehives PopulationPercentForMaxBoost 100
/beehives MaxBeePopulation 50000
/beehives MinBeesForPlantBoost 1000
/beehives PlantsFullBoostDistanceToHive 20
/beehives BeehiveRadius 35
10) Multi-hive accumulation still clamps at 100%
- Place multiple valid hives in range.
- Expected: summed effectiveness does not exceed
100%total.
Commands
/beehives BoostCalculation Full
/beehives YieldBoost true
/beehives SpeedBoost true
/beehives MultipleBeehivesBoostCombination Additive
10b) Multi-hive combination: Max mode
- Place multiple valid hives in range with noticeably different effectiveness.
- Expected: final effectiveness equals the highest single-hive effectiveness (no additive stacking).
Commands
/beehives MultipleBeehivesBoostCombination Max
10c) Multi-hive combination: Additive mode
- Place multiple valid hives in range with partial effectiveness.
- Expected: effectiveness is additive across hives and capped at
100%.
Commands
/beehives MultipleBeehivesBoostCombination Additive
11) Yield and speed consumers are consistent
- Verify beehive info text and actual growth/drop behavior under same setup.
- Expected: displayed boost trend matches runtime trend for growth speed and yield bonus when population changes.
Commands
/beehives YieldBoost true
/beehives SpeedBoost true
/beehives GrowthSpeedBonus 0.2
/beehives YieldMultiplier 1.2
12) Verbosity 1 uses level words (no percentages, no parentheses)
- Config: effective InformationVerbosity =
1 - Expected beehive block info line:
Crop boost effectiveness: Low|Medium|High - Expected: no
%and no(...)details.
Commands
/beehives InformationVerbosityServerSideType ServerForced
/beehives InformationVerbosityServer 1
/beehives YieldBoost true
/beehives SpeedBoost true
13) Verbosity > 1 shows detailed percentages and details
- Config: effective InformationVerbosity =
2(or higher) - Expected beehive block info line format:
Crop boost effectiveness: X% (+Y% yield, +Z% speed).
Commands
/beehives InformationVerbosityServerSideType ServerForced
/beehives InformationVerbosityServer 2
/beehives YieldBoost true
/beehives SpeedBoost true
14) Crop boost line hidden when boost is disabled
- Config:
YieldBoost=false,SpeedBoost=false - Expected on beehive block info: no
Crop boost effectivenessline and noPopulation too low for a crop boostwarning.
Commands
/beehives YieldBoost false
/beehives SpeedBoost false
15) Low-population warning appears in yellow when boost is enabled
- Config: boost enabled, nearby hive population below
MinBeesForPlantBoost - Expected on beehive block info: yellow line
Population too low for a crop boost.
Commands
/beehives YieldBoost true
/beehives SpeedBoost true
/beehives MinBeesForPlantBoost 1000