Occultism

Occultism

19M Downloads

FPS lag when using the storage controller to open the storage itself

SaikoTSP opened this issue ยท 10 comments

commented

Describe the bug:
FPS lag when using the storage controller to open the storage itself.

Steps to reproduce the behavior:
Not really sure how to reproduce it. I tried in an instance with just occultism and dependencies and since there's nothing in the actuator it doesn't happen. It started to happen roughly when I got to 600/700 items in the storage.
I don't have to much yet in my world, this is in a modpack I created for me and 3 friends and I only have 749 slots used as you'll see in the video below.

Expected behavior:
To not have fps lag when using the controller.

Screenshots:
You can see the fps drop in left corner. I go from 80/90 to 16.
https://streamable.com/doo7oz

System:
-Occultism Version: 1.104.1
-OS: Windows 11
-Minecraft Version: 1.20.1
-Modpack Link and Version, or list of mods:
Mouse Tweaks
Cloth Config API (Fabric/Forge/NeoForge)
Architectury API (Fabric/Forge/NeoForge)
Bookshelf
GeckoLib
Searchables
Controlling
AppleSkin
Clumps
Curios API (Forge/NeoForge)
Enchantment Descriptions
Nature's Compass
Iceberg [Forge]
Advancement Plaques [Forge]
Citadel
Alex's Mobs
Allomancy
Apothic Attributes (AttributesLib)
Apotheosis
Obscure API (Forge)
Aquamirae (Forge)
playerAnimator
Aqua Combat
Ars Nouveau
Modonomicon
SmartBrainLib (Forge/Fabric/Quilt)
Ars Ocultas
AttributeFix
Auudio [Forge]
Balm (Forge Edition)
Better Third Person
Better Combat [Fabric & Forge]
Big Swords R
TerraBlender (Forge)
Biomes O' Plenty
Blood Magic
Tome of Blood: Rebirth
CorgiLib
Enhanced Celestials - Blood, Blue, & Harvest (Super) Moons
Kotlin for Forge
Bountiful (Forge)
Cupboard
Brutal Bosses - Custom Bosses[Forge/Fabric]
Caelus API (Forge/NeoForge)
Canary
Carry On
L_Ender 's Cataclysm
Combat Roll [Fabric & Forge]
Cataclysmic Combat
Cave Dweller Evolved
Collective
Colorful Hearts
Comforts (Fabric/Forge/Quilt)
Consecration (Fabric/Forge/Quilt)
Corail Tombstone
Cosmetic Armor Reworked
CraterLib
Create
CreativeCore
Cyclops Core
DarkBlades - End Game Weapons, Armor & Tools (Fabric/Forge)
Deeper and Darker
Divine Weaponry - Better Combat
Domum Ornamentum
Dragon Mounts: Legacy
Structure Essentials[Forge/Fabric]
Dungeons and Taverns
Structure Gel API
Dungeons Enhanced
Durability101 Forge/Fabric 1.12-1.20
Easy Villagers
Elytra Slot (Fabric/Forge/Quilt)
Embeddium
TexTrue's Embeddium Options
Embeddium++
bad packets
Puzzles Lib [Forge & Fabric]
Enchanting Infuser [Forge & Fabric]
Ender Trigon
EnhancedVisuals
Entity Culling
EvilCraft
Explorer's Compass
Explorify โ€“ Dungeons & Structures
Eyes in the Darkness
Falling Leaves (Forge)
FastWorkbench
FerriteCore (Forge)
Framework
FTB Library (Forge)
FTB Teams (Forge)
FTB Chunks (Forge)
Iris/Oculus & GeckoLib Compat
Goblin Traders
The Twilight Forest
The Graveyard (FORGE)
HammerLib
Resourceful Lib
Handcrafted
Harder Spawners
ImmediatelyFast
Immersive Aircraft [Fabric/Forge]
Immersive Armors [Fabric/Forge]
Improvable Skills 3
AtomicStryker's Infernal Mobs
Inventory HUD+
Iron Chests
Iron's Spells 'n Spellbooks
Item Filters
Jade ๐Ÿ”
Just Enough Items (JEI)
JEI Integration
Kambrik
Konkrete [Forge]
Prism [Forge]
Legendary Tooltips [Forge]
Lootr (Forge & NeoForge)
Majrusz Library
Majrusz's Progressive Difficulty
Max Health Fix
Medieval Paintings
Medieval Music[Forge/Fabric]
ModernFix
BlockUI
Structurize
Multi-Piston
Mutant Monsters [Forge & Fabric]
No Chat Reports
Primal Magick
Smooth Boot (Reloaded)
Sophisticated Backpacks
Placebo
Patchouli
Polymorph (Fabric/Forge/Quilt)
Sound Physics Remastered
Sophisticated Core
spark
Starlight (Forge)
Theurgy
Too Fast
Tool Belt
Tool Stats
Tree Harvester
Vampirism - Become a vampire!
Vampires Need Umbrellas
Vampiric Ageing - A Vampirism Addon
Vampirism Integrations
Waystones
Xaero's Minimap & World Map - Waystones Compatibility [Forge]
Werewolves - Become a Beast!
When Dungeons Arise - Forge!
Xaero's Minimap
Xaero's World Map
Oculus
Inventory Sorter
Just Enough Resources (JER)
Gothic Medieval RPG Font
Mandala's GUI - Dark mode
EnhancedVisual Pixelated
xali's Bushy Leaves
Enhanced Boss Bars
Occultism

commented

@SaikoTSP these types of things are sadly super hard to track because it could be something in occultism, something in one of the mods that adds items that you have in storage, or a combination of both.

Can you try to install https://www.curseforge.com/minecraft/mc-mods/spark and run it on your client? (not the server in this case).

It works roughly like this:

  1. Install the mod client-side (I am not sure if the server needs it too, most likely not)
  2. Enter the server (or your singleplayer world if it shows the same issue)
  3. Go stand in front of your storage
  4. run /spark profiler start
  5. Open the storage and reproduce the issue
  6. run /spark profiler stop

You should then receive a link with the performance output, please send me this link.
The link does not contain any personal information, it simply shows how long minecraft takes for each task. That may help us track the issue down

commented

@SaikoTSP thank you! However I must apologize, it was the wrong command - turns out spark has a specific one for the client side / GUI: /sparkclient profiler start and stop, can you run that too?

commented

Sure, here it is: https://spark.lucko.me/QT6oEe5adq
I tried another thing in the mean time, I deleted my controller, picked up one in creative, bound it to my storage. My fps still lowers a bit (to 50), not to 16 tho.

commented

And I've come across another issue as well. Whenever I try to take a single item from the storage, the item disappears from the storage as it gets to my mouse or inventory, as it should, but when I try to take a stack, the value in the storage won't change.
Imagine, I take a stack of iron out of 447 ingots, the value won't change in the storage, and if I take all 447 ingots, an "afterimage" will stay within the storage as well, as if I haven't pick up any of the iron.

commented

Sure thing, another question, to use the the storage remotely, the chunk (where the storage is) needs to be loaded? And if so, the storage itself forces chunk loading?

commented

Sure, here it is: https://spark.lucko.me/QT6oEe5adq I tried another thing in the mean time, I deleted my controller, picked up one in creative, bound it to my storage. My fps still lowers a bit (to 50), not to 16 tho.

It's odd there is nothing obvious. Almost all of the time spent rendering is from minecraft's builtin item renderer, the remainder is almost exclusively JEI for the sidebar. So the problem is either the amount of items drawn, or that one or more of the items takes a long time to render.

I will investigate it further but lacking an obvious culprit it might be hard to track down

commented

Sure thing, another question, to use the the storage remotely, the chunk (where the storage is) needs to be loaded? And if so, the storage itself forces chunk loading?

That is correct it needs to be loaded. The storage does not chunk load itself - please use a chunk loading mod, e.g. the chunk management from FTB is useful.

The reason is simply to avoid players abusing occultism chunkloading to bypass server limits

commented

Thank you so much for the support :)

commented

This patch may not solve the issue, but it optimizes the item rendering on my end.
All further item rendering is done by minecraft so I have limited (= no) influence on what happens, so I hope this helps at least a little