Hose pulleys cause extreme amounts of lag
AdalynBlack opened this issue ยท 0 comments
Describe the Bug
It would appear that Hose pulleys have a tendency to cause extreme amounts of lag. My friend and I were using a hose pulley to draw water up from the ocean, and a while later after our framerates were uncomfortably low, I started searching for the culprit. After looking around at a bunch of different potential sources of the lag, I came to the conclusion that it was a result of the hose pulley. After replacing it with an infinite water source, we both gained 20-30 fps, and the game was significantly less stuttery.
I also went through numerous tests to determine the exact cause of the lag. I did 3 tests using an fps overlay with a 15 second averaged fps, and tested 3 times, giving it 17 seconds to settle, using f3+c to check the exact same position, and f3+a to remove artifacts from chunk loading. The table below shows my results, averaged over 3 trials for each test.
15 second average | Minimum | |
---|---|---|
Hose pulley* on, pumps running | 516.33 | 147 |
Hose pulley* off, pumps off | 491.33 | 121 |
Pulling from infinite water source | 564 | 149 |
Connected to infinite water source but not pulling | 573 | 163.67 |
*Hose pulley was placed at y92 pulling from the ocean, whose surface was at y62. The pump's total length was 47 blocks, with the bottom part 2 blocks off of the ocean floor
The raw data is in the attached file
Reproduction Steps
- Open a fresh Minecraft world
- Place a hose pulley at y92
- Lower the end of the pulley into the ocean
- Connect fluid pumps to the hose pulley (I did 9 in my testing, because that is what we have in our world)
- Run the pumps at max rpm into a fluid tank to dispose of the excess water nicely
- Go to a specific spot, press f3+c to copy the coordinates exactly, then record your framerate after your game settles. You may have to uncap your framerate for this if there isn't much else lagging the game
- Remove the hose pulley and replace it with an infinite water source
- Paste the copied teleport command from step 6 to go back to the same spot as before, and record your new framerate
- Observe the difference in framerate between both setups
Expected Result
Framerate should be approximately equal whether a pulley is in use or not, keeping a smooth, consistent experience for players
Screenshots and Videos
Screenshots from testing. If you see the cog in the top left, that means it was a powered test.
Crash Report or Log
No response
Operating System
Windows 11
Mod Version
0.5.1b
Minecraft Version
1.19.2
Forge Version
43.2.3
Other Mods
Not a crash, but here's the full mod list:
adaptive_performance_tweaks_1.19.2-6.8.0.jar
adaptive_performance_tweaks_core_1.19.2-6.9.1.jar
adaptive_performance_tweaks_gamerules_1.19.2-6.8.0.jar
adaptive_performance_tweaks_items_1.19.2-6.8.0.jar
adaptive_performance_tweaks_mods_1.19.2-6.5.2.jar
adaptive_performance_tweaks_player_1.19.2-6.8.0.jar
adaptive_performance_tweaks_spawn_1.19.2-6.9.0.jar
AI-Improvements-1.19.2-0.5.2.jar
aileron-1.19-forge-1.0.2.jar
alternate-current-mc1.19-1.6.0.jar
AmbientEnvironment-forge-1.19.2-8.0+3.jar
Amplified_Nether_1.19.3_v1.2.1.jar
appleskin-forge-mc1.19-2.4.2.jar
architectury-6.5.85-forge.jar
ArmorPoser-forge-1.19.2-1.2.2.jar
ArmorSoundTweak-6.0.0-forge.jar
auto_third_person-forge-1.19.2-2.jar
bbs-1.19.2-1.1.0-forge.jar
bdlmod-1.19.2-1.2.0.jar
BetterAnimationsCollection-v4.0.5-1.19.2-Forge.jar
BetterCompatibilityChecker-1.0.10-build.50+mc1.19.2.jar
BetterF3-4.0.0-Forge-1.19.2.jar
bettersafebed-forge-1.19-4.jar
BetterThirdPerson-Forge-1.19-1.9.0.jar
bettervillage-forge-1.19.2-3.1.0.jar
blueprint-1.19.2-6.1.2.jar
caelus-forge-1.19.2-3.0.0.6.jar
canary-mc1.19.2-0.2.7.jar
carryon-forge-1.19.2-2.0.5.16.jar
catalogue-1.7.0-1.19.2.jar
cloth-config-8.2.88-forge.jar
collective-1.19.2-6.61.jar
configured-2.1.1-1.19.2.jar
convenientnametags-0.2.1.jar
create-1.19.2-0.5.1.b.jar
createdeco-1.3.3-1.19.2.jar
createteleporters1.0.jar
create_enchantment_industry-1.19.2-for-create-0.5.1.b-1.2.4.c.jar
create_jetpack-3.1.1.jar
crittersandcompanions-1.19.2-2.0.1.jar
cullleaves-forge-3.0.1.jar
curios-forge-1.19.2-5.1.4.1.jar
curiouslanterns-1.19.2-1.3.3.jar
CustomPlayerModels-1.19-0.6.8a.jar
dynamiclightsreforged-1.19.2_v1.4.0.jar
EasyAnvils-v4.0.11-1.19.2-Forge.jar
EasyMagic-v4.3.3-1.19.2-Forge.jar
effective_fg-1.3.4.jar
ElytraPhysicsForge-1.1.1.jar
elytraslot-forge-6.1.1+1.19.2.jar
EnchantingInfuser-v4.2.2-1.19.2-Forge.jar
entityculling-forge-1.6.1-mc1.19.2.jar
Entity_Collision_FPS_Fix-forge-1.18.2-1.0.0.jar
fairylights-6.0.0-1.19.2.jar
Fallingleaves-1.19.1-2.0.0-alpha+20221129-2000.jar
FarmersDelight-1.19-1.2.1.jar
Fastload-Reforged-8.2.1+1.19.2.jar
FastSuite-1.19.2-4.1.0.jar
flywheel-forge-1.19.2-0.6.8.a.jar
friendsandfoes-forge-mc1.19.2-1.8.2.jar
geckolib-forge-1.19-3.1.40.jar
guardvillagers-1.19.2-1.5.6.jar
honeystickypistonmod-1.19.2-1.0.0.jar
Iceberg-1.19.2-forge-1.1.4.jar
illuminations-forge-1.19.2-1.10.9.20.jar
ImmersiveFX 1.0.0 1.19.2.jar
immersive_aircraft-0.5.1+1.19.2-forge.jar
incapacitated-1.19.2-1.4.4.1.jar
Incendium_1.19.3_v5.1.6.jar
inventorio-1.19-forge-1.9.1.jar
InventoryProfilesNext-forge-1.19-1.10.5.jar
Jade-1.19.1-forge-8.8.1.jar
jei-1.19.2-forge-11.6.0.1015.jar
kotlinforforge-3.12.0-all.jar
LegendaryTooltips-1.19.2-forge-1.4.0.jar
libIPN-forge-1.19-3.0.2.jar
libraryferret-forge-1.19.2-4.0.0.jar
Map Atlases-forge-1.19.2-3.0.1.jar
MobPlaques-v4.0.1-1.19.2-Forge.jar
modernfix-forge-5.0.1-beta.2mc1.19.2.cb6f595cc3.jar
MouseTweaks-forge-mc1.19-2.23.jar
musicdr-3.0.0-hotfix.jar
neapolitan-1.19.2-4.0.2.jar
nightlights_1.19.2_1.1.jar
notenoughanimations-forge-1.6.2-mc1.19.2.jar
Nullscape_1.19.3_v1.2.1a.jar
okzoomer-forge-1.19-2.1.1.jar
physics-mod-pro-v153-forge-1.19.2.jar
Placebo-1.19.2-7.2.0.jar
pluto-mc1.19.2-0.0.9.jar
Prism-1.19.1-1.0.2.jar
PuzzlesLib-v4.4.3-1.19.2-Forge.jar
radiantgear-forge-2.0.1+1.19.2.jar
ReAuth-1.19-Forge-4.0.7.jar
Retraining-forge-1.19-1.2.0.jar
rubidium-0.6.2b.jar
rubidium_extras-1.19.2_v1.3.2.jar
saturn-mc1.19.2-0.0.4.jar
scaffoldingdropsnearby-1.19.2-3.0.jar
sliceanddice-forge-2.2.0.jar
SmartBrainLib-forge-1.19.2-1.9.jar
smoothboot(reloaded)-mc1.19.2-0.0.2.jar
sophisticatedbackpacks-1.19.2-3.18.50.849.jar
sophisticatedcore-1.19.2-0.5.71.319.jar
soundphysics-forge-1.19.2-1.0.18.jar
spiderstpo-1.19.2-2.0.4.jar
starlight-1.1.1+forge.cf5b10b.jar
Steam_Rails-1.3.5+forge-mc1.19.2.jar
Terralith_1.19.3_v2.3.8.jar
throttle-1.18-1.0.0.0.jar
tia-1.19.2-1.0-forge.jar
toofast-1.19-0.2.2.4.jar
TravelersBackpack-1.19.2-8.2.28.jar
TreeChop-1.19.2-forge-0.17.8a.jar
upgradedcore-1.19.2-4.1.0.1-release.jar
upgradednetherite-1.19.2-5.1.0.9-release.jar
upgradednetherite_items-1.19.2-4.1.0.1-release.jar
upgradednetherite_ultimate-1.19.2-4.1.0.4-release.jar
upgradedtools-1.19.2-2.1.0.2-release.jar
vc_gliders-1.0.2-forge.jar
villagernames-1.19.2-5.2.jar
YungsApi-1.19.2-Forge-3.8.9.jar
YungsBetterDesertTemples-1.19.2-Forge-2.2.2.jar
YungsBetterDungeons-1.19.2-Forge-3.2.2.jar
YungsBetterMineshafts-1.19.2-Forge-3.2.0.jar
YungsBetterNetherFortresses-1.19.2-Forge-1.0.5.jar
YungsBetterOceanMonuments-1.19.2-Forge-2.1.0.jar
YungsBetterStrongholds-1.19.2-Forge-3.2.0.jar
YungsBetterWitchHuts-1.19.2-Forge-2.1.0.jar
YungsBridges-1.19.2-Forge-3.1.0.jar
YungsExtras-1.19.2-Forge-3.1.0.jar
Additional Context
No response