Skip to content

Configuration File

QPCrummer edited this page Apr 22, 2024 · 22 revisions

Configuration for the Potatoptimize

You can override the default config via the potatoptimize.properties file found in the config folder

// Enables all optimizations related to entities
mixin.entity = false

// Enables only the specified optimization
mixin.memory.memory_reserve = true

A list of configurations:

  • mixin.block_entity - A collection of tweaks relating to block entities
    • mixin.block.chest_chunk_loading (true) - Prevents double chests from loading chunks
    • mixin.block_entity.sign_ticking (true) - Prevents ticking signs as it is useless

  • mixin.entity - A collection of tweaks relating to entities
    • mixin.entity.armor_stand (true) - Skips underwater breathing calculations
    • mixin.entity.bat (true) - Skips checking light levels if the pre-spawn attempt fails
    • mixin.entity.bee (false) - Prevents bees from loading chunks at their hive (WIP)
    • mixin.entity.collisions (true) - Optimizes large entity collisions in portals by removing very tedious checks (pre 1.20 behavior)
    • mixin.entity.fall_damage (true) - Skips fall damage checks if the entity doesn't take fall damage
    • mixin.entity.halloween (true) - Instead of checking for Halloween every spawn attempt, the check is put on a timer
    • mixin.entity.navigation (true) - Stop checking for blocks to pathfind to if riding a non-controllable entity
    • mixin.entity.pathfinding (true) - Stops pathfinding from spamming errors and stalling the server
    • mixin.entity.spawning (true) - Removes useless distance checks and removes checking for nether fortresses if not in the nether
    • mixin.entity.statistics (true) - Tracks time-based statistics at an interval rather than every tick
    • mixin.entity.ticking (true) - Removes ticking stingers and arrows in mobs that cannot have these projectiles in them
    • mixin.entity.villager (true) - Prevents villagers from loading chunks at their beds
    • mixin.entity.villager_task (true) - Merges all villager tasks and limits how long they can take

  • mixin.fastmath - A collection of tweaks that makes certain math less precise, but faster
    • mixin.fastmath.joml (true) - Enables JOML fast-math
    • mixin.fastmat.rounding (true) - Enables an almost exact rounding alternative that is 1.1x faster

  • mixin.item - A collection of tweaks that optimize different aspects of items
    • mixin.item.map_chunk_loading (true) - Prevents maps from loading unloaded chunks to update colors
    • mixin.item.treasure_map_lookup (true) - Optimizes the treasure map locator

  • mixin.logic - A collection of tweaks that optimize core logic in Minecraft
    • mixin.logic.chunk_query (true) - Allows getting WorldChunks only if they are loaded
    • mixin.logic.data_bits (true) - Optimizes signed integers in PackedIntArrays
    • mixin.logic.fast_bits_blockpos (true) - Inlines many variables and reduces computational load
    • mixin.logic.fast_rotations (true) - Skips a ton of checks that would never be possible anyways
    • mixin.logic.main_thread (true) - Tweaks resource values and Thread type to improve performance
    • mixin.logic.recipe_manager (true) - Makes Recipe Manager use an Array
    • mixin.logic.reduce_ray_casting (true) - Skips ray casting if the block is air
    • mixin.logic.var_int (true) - Sets a specific size of VarInts
    • mixin.logic.worker_thread (true) - Replaces worker threads with a more optimized variant

  • mixin.memory - A collection of tweaks relating to ram usage
    • mixin.memory.map_dedupe (true) - Reduces advancement class allocations
    • mixin.memory.memory_reserve (false) - Removes the MemoryReserve. This sacrifices stability for lower ram usage

      WARNING: Enabling this optimization may lead to crashes if not enough ram is dedicated on startup with -Xms

    • mixin.memory.reduce_alloc (true) - Reduces generic object allocations
    • mixin.memory.reduce_random (false) - Compacts most Random instances into a single static instance. This sacrifices speed for lower ram usage

  • mixin.random - A collection of tweaks relating to random number generation
    • mixin.random.entity (true) - Replaces all references of Random in Entity with my implementation
    • mixin.random.generators (true) - Replaces many RNGs with my implementation of ThreadLocalRandom
    • mixin.random.math (true) - Replaces all references of Random in MathHelper with my implementation
    • mixin.random.unsafe (false) - Enables Unsafe seed setting on ThreadLocalRandom to enable vanilla parity

      WARNING: Enabling this can potentially cause serious issues, crashes, and/or severely hurt performance

    • mixin.random.world (true) - Replaces all references of Random in World with my implementation

  • mixin.remove - A collection of feature removals that deviate from vanilla
    • mixin.remove.profiler (false) - Removes the default JFR and vanilla profiler. This can be enabled if you use an external JFR profiler or Spark

  • mixin.startup - A collection of tweaks relating to startup times
    • mixin.startup.dfu (true) - Slightly optimizes the startup time for the DFU; Credit: astei

  • mixin.threading - A collection of tweaks relating to async or multithreaded methods
    • mixin.threading.client_tick (true) - Moves lots of logic off the Render Thread to reduce load
    • mixin.threading.entity_ticking (false) - Attempts to multithread entity ticking

      WARNING: Enabling this will cause many crashes; This is a WIP!!!

    • mixin.threading.explosions (false) - Attempts to make explosions async

      WARNING: Enabling this will cause the game to crash; This is a WIP!!!


  • mixin.unstream - A collection of tweaks that remove the Stream API from Minecraft's code
    • mixin.unstream.nearest_item (true) - Removes Stream API in nearest item gather
    • mixin.unstream.pathfinding (true) - Removes Stream API in node pathfinding
    • mixin.unstream.player_movement (true) - Removes Stream API from Player movement
    • mixin.unstream.recipe_manager (true) - Removes Stream API from Recipe Manager

  • mixin.world - A collection of tweaks that optimizes different aspects of World
    • mixin.world.biome_access (true) - Uses predictions to improve performance
    • mixin.world.farmland (true) - Optimizes nearby fluid searching
    • mixin.world.explosion (true) - Optimizes the Fluid calculations with explosions
Clone this wiki locally