feat(perf): ship client perf defaults via Default Options, add perf mods

Pack-side half of the client performance work (analysis/client-perf/).

- Add Default Options 21.1.8 (client). It copies config/defaultoptions/
  options.txt and extra/** into place only when the target is absent, so
  player changes are never clobbered. It is also client-only. packwiz
  `preserve` would also land these files in this repo's server config, which
  matters for DistantHorizons.toml [server]/[common] and SSRD's COMMON config.
- Seed provisional mid-tier defaults generated by
  analysis/client-perf/proposed-configs/build.py --ship: render distance 8,
  DH LOD radius 128 / SSAO off / 2 threads, EMF animation LOD 12, Flywheel
  TRI_LINEAR lighting, LambDynamicLights fast, SSRD 16 chunks, Sound Physics
  16 rays / 2 bounces plus per-tick caps on noisy Create sounds. All values
  are unmeasured; Phase 2 (BENCH-MATRIX.md) replaces them. ModernFix
  dynamic_resources is held back until bench block B6 passes.
- Add Sodium Extra 0.9.4, Reese's Sodium Options 2.2.4, BadOptimizations
  2.4.1 and Particle Core 0.3.3 (all client-side). Their declared ranges match
  the pins (Sodium 0.8.13, fzzy_config, Kotlin for Forge).
- Bump Puzzles Lib 21.1.62 -> 21.1.64 as a bugfix: 21.1.63 restores dropped
  access transformers. The event-cache change in 21.1.64 is Fabric-only.
This commit is contained in:
logan committed 2026-10-14 18:05:45 -04:00
1 parent aa1d2739f1
commit a01bc3b2f1
18 files changed
+1325 -6

No files matched your search

+5
View File
@@ -3,3 +3,8 @@ cache/
# Immersive Paintings player-upload cache (regenerated at runtime; see .packwizignore) # Immersive Paintings player-upload cache (regenerated at runtime; see .packwizignore)
immersive_paintings_cache/ immersive_paintings_cache/
# Large or regenerable local artifacts
*.tar.gz
analysis/raw/
analysis/client-perf/proposed-configs/out/
+4
View File
@@ -63,3 +63,7 @@ config/paxi/*
config/paxi/datapacks/* config/paxi/datapacks/*
!config/paxi/datapacks/onion-fixes !config/paxi/datapacks/onion-fixes
!config/paxi/datapacks/onion-fixes/** !config/paxi/datapacks/onion-fixes/**
# Client perf defaults (analysis/client-perf/proposed-configs/build.py --ship).
# Default Options copies them into place client-side, only when the target is absent.
!config/defaultoptions
!config/defaultoptions/**
@@ -0,0 +1,980 @@
_version = 4
[server]
#
# Defines the distance the player will receive updates around.
realTimeUpdateDistanceRadiusInChunks = 256
#
# Prefix of the level keys sent to the clients.
# If the mod is running behind a proxy, each backend should use a unique value.
# If this value is empty, level key will be based on the server's seed hash.
levelKeyPrefix = ""
#
# Defines the distance allowed to be synchronized around the player.
# Should be the same or larger than maxGenerationRequestDistance in most cases.
maxSyncOnLoadRequestDistance = 4096
#
# If true, clients will receive updated LODs when joining or loading new LODs.
synchronizeOnLoad = true
#
# Custom server key used which can be used to always reuse the same LOD data folder,
# for cases when the server doesn't have a static IP for some reason.
# If this value is empty, the client itself decides which folder name to use.
# Requires rejoining the server to apply after changing.
serverKey = ""
#
# Defines the distance allowed to generate around the player.
maxGenerationRequestDistance = 4096
#
# Makes the server send level keys for each world.
# Disable this if you use alternative ways to send level keys.
sendLevelKeys = true
#
# DO NOT CHANGE UNLESS YOU KNOW WHAT YOU'RE DOING.
# Autogenerated ID used to prevent multiple independent servers from accidentally
# writing over each other's LODs when the same serverKey is set on both.
#
# How many LOD generation requests per second should a client send?
# Also limits the number of client requests allowed to stay in the server's queue.
generationRequestRateLimit = 20
#
# How many LOD sync requests per second should a client send?
# Also limits the amount of player's requests allowed to stay in the server's queue.
syncOnLoadRateLimit = 50
#
# If true, clients will receive real-time LOD updates for chunks outside the client's render distance.
enableRealTimeUpdates = true
#
# Maximum global speed for uploading LODs to the clients, in KB/s.
# Value of 0 disables the limit.
globalBandwidthLimit = 0
#
# Maximum per-player speed for uploading LODs to the clients, in KB/s.
# Value of 0 disables the limit.
playerBandwidthLimit = 500
#
# Enables adaptive transfer speed based on client performance.
# If true, DH will automatically adjust transfer rate to minimize connection lag.
# If false, transfer speed will remain fixed.
enableAdaptiveTransferSpeed = false
[common.lodBuilding]
#
# How should block data be compressed when creating LOD data?
# This setting will only affect new or updated LOD data,
# any data already generated when this setting is changed will be
# unaffected until it is modified or re-loaded.
#
# MERGE_SAME_BLOCKS
# Every block/biome change is recorded in the database.
# This is what DH 2.0 and 2.0.1 all used by default and will store a lot of data.
# Expected Compression Ratio: 1.0
#
# VISUALLY_EQUAL
# Only visible block/biome changes are recorded in the database.
# Hidden blocks (IE ores) are ignored.
# Expected Compression Ratio: 0.7
worldCompression = "VISUALLY_EQUAL"
#
# Requires a level restart to apply.
#
# Setting this to a less strict mode increases DB read/write
# speed at the cost of potential data loss/corruption if
# the computer looses power
# (unexpected program shutdown should be safe for all options).
#
# FULL
# ACID - data will never be lost or corrupted
# Slow
# At max throughput: ~2k saves per sec, ~70% disk usage
#
# NORMAL
# May not be durable - some data may be lost on power loss, but DB should be safe from corruption
# Fast
# At max throughput: ~14k saves per sec, ~40% disk usage
#
# OFF
# Not consistent - database may be corrupted during power loss
# Very Fast
# At max throughput: ~16k saves per sec, ~6% disk usage
databaseSyncMode = "NORMAL"
dataCompression = "Z_STD_BLOCK"
#
# Enabling this will drastically speed up chunk processing time
# if you are CPU limited.
# Disabling it will drastically speed up chunk processing time
# if you are disk speed/IO limited.
#
# Normally DH will attempt to skip creating LODs for chunks it's already seen
# and that haven't changed.
#
# Disabling this option can also fix a rare bug where
# modified chunks are skipped due to being too similar to
# their saved hash.
disableUnchangedChunkCheck = false
[common.multiThreading]
#
# How many threads should be used by Distant Horizons?
numberOfThreads = 2
#
# A value between 1.0 and 0.0 that represents the percentage
# of time each thread can run before going idle.
#
# This can be used to reduce CPU usage if the thread count
# is already set to 1 for the given option, or more finely
# tune CPU performance.
threadRunTimeRatio = "1.0"
#
# What Java thread priority should DH's primary thread pools run with?
#
# You probably don't need to change this unless you are also
# running C2ME and are seeing thread starvation in either C2ME or DH.
threadPriority = 5
[common.logging]
#
# If enabled, the mod will log information about the renderer setup, cleanup, and any issues it may encounter.
# This can be useful for debugging.
logRendererEventToFile = "INFO"
#
# If enabled, the mod will log information about the world generation process.
# This can be useful for debugging.
logWorldGenEventToFile = "INFO"
#
# If enabled, the mod will log information about the renderer OpenGL process.
# This can be useful for debugging.
logRendererGLEventToChat = "ERROR"
#
#
globalChatMaxLevel = "ERROR"
#
# If enabled, the mod will log information about the world generation process.
# This can be useful for debugging.
logWorldGenChunkLoadEventToFile = "INFO"
#
# If enabled, the mod will log information about the renderer OpenGL process.
# This can be useful for debugging.
logRendererGLEventToFile = "INFO"
#
# If enabled, the mod will log information about network operations.
# This can be useful for debugging.
logNetworkEventToFile = "INFO"
#
# If enabled, config changes sent by the server will be logged.
logConnectionConfigChangesToFile = "WARN"
#
#
globalFileMaxLevel = "INFO"
[common.logging.warning]
#
# If enabled, a message will be displayed in chat if explicit garbage collection
# is disabled.
# This is known to cause out-of-memory issues
# and is better solved with a concurrent garbage collector.
showExplicitGcDisabledWarning = false
#
# If enabled, a chat message will be displayed when DH has too many chunks
# queued for updating.
showSlowWorldGenSettingWarnings = true
#
# If enabled, a chat message will be displayed when DH has too many chunks
# queued for updating.
showUpdateQueueOverloadedChatWarning = false
#
# If enabled, a message will be logged if explicit garbage collection
# is disabled.
# This is known to cause out-of-memory issues
# and is better solved with a concurrent garbage collector.
logExplicitGcDisabledWarning = false
#
# If enabled, a chat message will be displayed if Java doesn't have enough
# memory allocated to run DH well.
showLowMemoryWarningOnStartup = true
#
# If enabled, a chat message will be displayed when a replay is started
# giving some basic information about how DH will function.
showReplayWarningOnStartup = true
#
# If enabled, a chat message will be displayed when a potentially problematic
# mod is installed alongside DH.
showModCompatibilityWarningsOnStartup = true
#
# If enabled, a chat message will be displayed if vanilla MC's
# render distance is higher than the recommended amount.
showHighVanillaRenderDistanceWarning = true
#
# If enabled, a chat message will be displayed if DH detects
# that any pooled objects have been garbage collected.
showPoolInsufficientMemoryWarning = true
#
# If enabled, a message will be logged if the garbage
# collector Java is currently using is known
# to cause frame stuttering and/or other issues.
logGarbageCollectorWarning = true
#
# If enabled, a chat message will be displayed in chat if the garbage
# collector Java is currently using is known
# to cause frame stuttering and/or other issues.
showGarbageCollectorWarning = true
[common.worldGenerator]
#
# How should distant generator progress be displayed?
#
# OVERLAY: may be the same as CHAT for some Minecraft versions
# CHAT
# LOG
# DISABLED
showGenerationProgress = "DISABLED"
#
# If the SURFACE_THEN_CHUNKS generator plan is
# in use, this percentage can be defined to reduce how far the
# second high-quality generation pass will go
# as a percentage of your total render distance:
# -1.0 = Infinity
# 0.0 = 0%
# 0.5 = 50%
# 1.0 = 100%
# 2.0 = 200%
#
# Does nothing on a dedicated server.
surfaceRegenMaxDistancePercent = "-1.0"
#
# The max radius in chunks around the central point where world generation is allowed.
# If this value is set to 0, generation bounds are disabled and the render distance will be used.
#
# This should only be set if you have a pre-generated world that has a very limited size.
# Setting this on a normal MC world will prevent the world generator from filling
# out your render distance.
generationMaxChunkRadius = 0
#
# If the Minecraft server thread is taking too long
# Distant Horizons will pause world gen to reduce server stuttering/lag.
limitIfServerUnhealthy = true
#
# How often should the distant generator progress be displayed?
generationProgressDisplayIntervalInSeconds = 2
#
# When logging generation progress also include the rate at which chunks
# are being generated.
# This can be useful for troubleshooting performance.
generationProgressIncludeChunksPerSecond = true
#
# How detailed should LODs be generated outside the vanilla render distance?
#
# PRE_EXISTING_ONLY
# Only create LOD data for already generated chunks.
#
# FEATURES
# Generate everything except structures.
# Note: This may cause world generator bugs or instability when paired with certain world generator mods.
#
# INTERNAL_SERVER
# Ask the local server to generate/load each chunk.
# This is the most compatible and will generate structures correctly,
# but may cause server/simulation lag.
# Note: unlike other modes this option DOES save generated chunks to
# Minecraft's region files.
chunkGeneratorMode = "FEATURES"
#
# Defines how LODs will be generated
# outside the vanilla render distance.
# In multiplayer, this may be overridden by the server.
#
# SURFACE_THEN_CHUNKS
# The rough surface will be generated first
# then chunks will be generated to fill in
# missing features (ie trees and villages).
#
# Recommended for modded or vanilla worlds.
#
# SURFACE_ONLY
# Only the rough surface will be generated.
# Chunk features like trees and villages
# won't be generated.
#
# Recommended for computers that don't have
# enough CPU power or RAM space to handle
# the chunk generator.
#
# CHUNKS_ONLY
# Slower than either surface options,
# but provides more accurate terrain.
#
# Recommended for custom worlds
# where the surface generator would
# generate incorrect terrain.
#
# DISABLED
# No distant terrain will be generated.
generatorPlan = "SURFACE_THEN_CHUNKS"
#
# If true and the player/camera is moving quickly
# Distant Horizons will pause world gen to improve loading speed
# and reduce CPU load.
pauseIfMovingQuickly = true
#
# For how many seconds should instructions for disabling the distant generator progress be displayed?
# Setting this to 0 hides the instructional message so the world gen progress is shown immediately when it starts.
generationProgressDisableMessageDisplayTimeInSeconds = 20
#
# The center Z chunk position that the world gen max radius is centered around.
generationCenterChunkZ = 0
#
# The center X chunk position that the world gen max radius is centered around.
generationCenterChunkX = 0
[client]
#
# Should Distant Horizon's config button appear in Minecraft's options screen next to the fov slider?
showDhOptionsButtonInMinecraftUi = true
[client.advanced.autoUpdater]
#
# If DH should use the nightly (provided by Gitlab), or stable (provided by Modrinth) build.
# If [AUTO] is selected DH will update to new stable releases if the current jar is a stable jar
# and will update to new nightly builds if the current jar is a nightly jar (IE the version number ends in '-dev').
updateBranch = "AUTO"
#
# Automatically check for updates on game launch?
enableAutoUpdater = true
#
# Should Distant Horizons silently, automatically download and install new versions?
# This setting is force disabled on dedicated servers for stability reasons.
enableSilentUpdates = false
[client.advanced.debugging]
#
# If enabled this will disable (most) vanilla Minecraft rendering.
#
# NOTE: Do not report any issues when this mode is on!
# This setting is only for fun and debugging.
# Mod compatibility is not guaranteed.
lodOnlyMode = false
#
# What renderer is active?
#
# DEFAULT: Default lod renderer
# DEBUG_TRIANGLE: Debug testing renderer
# DISABLED: Disable rendering
rendererMode = "DEFAULT"
#
# If true overlapping quads will be rendered as bright red for easy identification.
# If false the quads will be rendered normally.
showOverlappingQuadErrors = false
#
# If true OpenGL Buffer garbage collection will be logged
# this also includes the number of live buffers.
logBufferGarbageCollection = false
#
# Should specialized colors/rendering modes be used?
#
# OFF: LODs will be drawn with their normal colors.
# SHOW_DETAIL: LODs' color will be based on their detail level.
# SHOW_BLOCK_MATERIAL: LODs' color will be based on their material.
# SHOW_OVERLAPPING_QUADS: LODs will be drawn with total white, but overlapping quads will be drawn with red.
debugRenderingColors = "OFF"
#
# Stops vertex colors from being passed.
# Useful for debugging shaders
enableWhiteWorld = false
#
# If enabled the LODs will render as wireframe.
renderWireframe = false
#
# If true several keys can be used to toggle debug states.
# F6 - enable/disable LOD rendering
# F7 - enable/disable LOD only rendering
# F8 - cycle through the different debug rendering modes
enableDebugKeybindings = false
[client.advanced.debugging.debugWireframe]
#
# Render LOD section status?
showRenderSectionStatus = false
#
# Render queued network sync on load tasks?
showNetworkSyncOnLoadQueue = false
#
# Render full data update/lock status?
showFullDataUpdateStatus = false
#
# Render queued world gen tasks?
showWorldGenQueue = false
#
# Render Quad Tree Rendering status?
showQuadTreeRenderStatus = false
#
# If enabled, various wireframes for debugging internal functions will be drawn.
#
# NOTE: There WILL be performance hit!
# Additionally, only stuff that's loaded after you enable this
# will render their debug wireframes.
enableRendering = false
[client.advanced.debugging.openGl]
#
# Defines how OpenGL errors are handled.
# Requires rebooting Minecraft to change.
# Will catch OpenGL errors thrown by other mods.
overrideVanillaGLLogger = true
#
# Defines how OpenGL errors are handled.
# May incorrectly catch OpenGL errors thrown by other mods.
#
# IGNORE: Do nothing.
# LOG: write an error to the log.
# LOG_THROW: write to the log and throw an exception.
# Warning: this should only be enabled when debugging the LOD renderer
# as it may break Minecraft's renderer when an exception is thrown.
glErrorHandlingMode = "IGNORE"
#
# If true each Open GL error will only be logged once.
# Enabling this may cause some error logs to be missed.
# Does nothing if overrideVanillaGLLogger is set to false.
#
# Generally this can be kept as 'true' to prevent log spam.
# However, Please set this to 'false' if a developer needs your log to debug a GL issue.
onlyLogGlErrorsOnce = true
[client.advanced.debugging.exampleConfigScreen]
shortTest = "69"
mapTest = "{}"
byteTest = "8"
longTest = "42069"
listTest = ["option 1", "option 2", "option 3"]
boolTest = false
doubleTest = "420.69"
floatTest = "0.42069"
linkableTest = 420
intTest = 69420
stringTest = "Test input box"
[client.advanced.debugging.f3Screen]
#
# Shows info about the render thread tasks.
showRenderThreadTasks = false
#
# Shows how many chunks are queued for processing and the max count that can be queued.
showQueuedChunkUpdateCount = true
#
# Shows the memory use and array counts for each DH object pool.
showSeparatedObjectPools = false
#
# Shows the player's LOD position.
showPlayerPos = true
#
# Shows the combined memory use and array counts for all DH pooled objects.
showCombinedObjectPools = false
#
# Defines what internal detail level the player position will be shown as.
# Internal detail level means: 6 = 1x1 block, 7 = 2x2 blocks, etc.
playerPosSectionDetailLevel = 6
#
# Only show levels that DH is actively rendering.
onlyShowRenderingLevels = true
#
# Shows info about each thread pool.
showThreadPools = true
#
# Shows what levels are loaded and world gen/rendering info about those levels.
showLevelStatus = true
[client.advanced.debugging.positionFinderDebugging]
positionFinderEnable = false
positionFinderMinBlockY = -64
positionFinderZPos = 0
positionFinderXPos = 0
positionFinderMaxBlockY = 125
positionFinderDetailLevel = 6
positionFinderMarginPercent = "0.0"
[client.advanced.graphics]
#
# Enabling Anti-Aliasing smooths edges and reduces flickering when moving.
enableAntiAliasing = true
#
# Enable Screen Space Ambient Occlusion
enableSsao = false
#
# If true some vanilla graphics settings will be automatically changed
# during DH setup to provide a better experience.
#
# IE disabling vanilla clouds (which render on top of DH LODs),
# and chunk fading (DH already fades MC chunks)
overrideVanillaGraphicsSettings = true
[client.advanced.graphics.culling]
#
# Determines how far from the camera Distant Horizons will start rendering.
# Measured as a percentage of the vanilla render distance.
#
# -1 = auto, overdraw will change based on the vanilla render distance.
#
# Higher values will prevent LODs from rendering behind vanilla blocks at a higher distance,
# but may cause holes in the world.
# Holes are most likely to appear when flying through unloaded terrain.
#
# Increasing the vanilla render distance increases the effectiveness of this setting.
overdrawPrevention = "-1.0"
#
# Identical to the other frustum culling option
# only used when a shader mod is present using the DH API
# and the shadow pass is being rendered.
#
# Disable this if shadows render incorrectly.
disableShadowPassFrustumCulling = false
#
# A comma separated list of block resource locations that will be replaced by water
# if they're visible on the water's surface.
waterSubSurfaceBlockReplacementCsv = "minecraft:kelp,minecraft:tall_seagrass,minecraft:seagrass"
#
# A comma separated list of block resource locations that won't be rendered by DH.
# Air is always included in this list.
#
# Note:
# If you see gaps, or holes you may have to change
# worldCompression to [MERGE_SAME_BLOCKS] and re-generate the LODs.
ignoredRenderBlockCsv = "minecraft:barrier,minecraft:structure_void,minecraft:light,minecraft:tripwire,minecraft:brown_mushroom"
#
# A comma separated list of block resource locations that will be removed
# when on top of water.
waterSurfaceBlockReplacementCsv = "minecraft:lily_pad"
#
# Defines what blocks should be rendered as LODs.
#
# NONE: Include all blocks in the LODs
# NON_COLLIDING: Only render solid blocks in the LODs (tall grass, torches, etc. will be ignored)
blocksToIgnore = "NON_COLLIDING"
#
# If true LODs outside the player's camera
# aren't drawn, increasing GPU performance.
#
# If false all LODs are drawn, even those behind
# the player's camera, decreasing GPU performance.
#
# Disable this if you see LODs disappearing at the corners of your vision.
disableFrustumCulling = false
#
# If false all beacons near the camera won't be drawn to prevent vanilla overdraw.
# If true all beacons will be rendered.
#
# Generally this should be left as true. It's main purpose is for debugging
# beacon updating/rendering.
disableBeaconDistanceCulling = true
#
# Should the blocks underneath avoided blocks gain the color of the avoided block?
#
# True: a red flower will tint the grass below it red.
# False: skipped blocks will not change color of surface below them.
tintWithAvoidedBlocks = true
#
# If enabled caves won't be rendered.
#
# Note: for some world types this can cause
# overhangs or walls for floating objects.
# Tweaking the caveCullingHeight, can resolve some
# of those issues.
enableCaveCulling = true
#
# At what Y value should cave culling start?
# Lower this value if you get walls for areas with 0 light.
caveCullingHeight = 60
#
# A comma separated list of block resource locations that shouldn't be rendered
# if they are in a 0 sky light underground area.
# Air is always included in this list.
#
# Defaults to an empty list since most cave blocks will be automatically ignored due to being:
# transparent, non-solid, or liquids, but new blocks can be added here if needed.
ignoredRenderCaveBlockCsv = ""
#
# If set to true the overdraw prevention radius will get closer
# to the camera when flying/moving quickly.
#
# This helps reduce issues where Minecraft can't load or
# generate chunks fast enough to keep up with DH.
reduceOverdrawWithFastMovement = true
[client.advanced.graphics.texture]
#
# A comma separated list of block resource locations
# that DH will render their sides using the bottom texture.
# Partial matches/incomplete resource locations will also match.
#
# Example: "minecraft:grass_block,nylium"
#
# Changes require a restart.
blocksDontUseSideTextureCsv = "grass_block,mycelium,nylium,dirt_path,grass"
#
# The highest detail level number that can render with block textures.
# At higher detail levels each LOD covers multiple blocks,
# which can essentially make textures smaller than a pixel and therefore invisible.
#
# Larger numbers texture more distant LODs
# but increase memory usage.
maxTexturedLodDetailLevel = 2
#
# If true nearby and zoomed-in LODs will render with their block's
# actual texture instead of a single flat color.
#
# Only applies to high detail LODs where the texture is actually visible,
# distant LODs always use flat colors.
# Some shader packs nay not have an affect.
enableTexturedLods = true
#
# A comma separated list of block resource locations
# that DH won't render textures on.
# Partial matches/incomplete resource locations will also match.
#
# Example: "minecraft:grass_block,nylium"
#
# Changes require a restart.
blocksDontRenderTextureCsv = "minecraft:bamboo"
#
# A comma separated list of tag names
# that DH will render their sides using the bottom texture.
#
# Example: "grass_blocks,nylium"
#
# Changes require a restart.
blockTagsDontUseSideTextureCsv = "grass_blocks,nylium"
#
# A comma separated list of block resource locations
# that DH will use rasterization to determine
# the face textures.
#
# Can be used to fix issues with mods/blocks where
# a side uses just part of a modeled block's texture.
#
# Example: "minecraft:beacon"
#
# Changes require a restart.
blocksAlwaysRasterizeTextureCsv = "minecraft:beacon"
[client.advanced.graphics.noiseTexture]
#
# Should a noise texture be applied to LODs?
#
# This is done to simulate textures and make the LODs appear more detailed.
enableNoiseTexture = true
#
# Defines how far should the noise texture render before it fades away. (in blocks)
# Set to 0 to disable noise from fading away
noiseDropoff = 1024
#
# How many steps of noise should be applied to LODs?
noiseSteps = 4
#
# How intense should the noise should be?
noiseIntensity = "0.05"
[client.advanced.graphics.experimental]
#
# A comma separated list of dimension resource locations where DH won't render.
#
# Example: "minecraft:the_nether,minecraft:the_end"
# For Minecraft 1.12.2 and older:
# Open the F3 screen and copy the dimension_name:ID shown in yellow. Example: "overworld:0"
#
# Note:
# Some DH settings will be disabled and/or changed to improve
# visuals when DH rendering is disabled.
ignoredDimensionCsv = ""
#
# Requires a restart to change.
#
# Options:
# AUTO - changes based on the most likely API for that MC version
# OPEN_GL - The Default for MC 1.21.11 and older (supports Iris shaders)
# BLAZE_3D - The Default for MC 26.1.2 and newer (supports Vulkan)
renderingEngine = "AUTO"
#
# This is the earth size ratio when applying the curvature shader effect.
# Note: Enabling this feature may cause rendering bugs.
#
# 0 = flat/disabled
# 1 = 1 to 1 (6,371,000 blocks)
# 100 = 1 to 100 (63,710 blocks)
# 10000 = 1 to 10000 (637.1 blocks)
#
# Note: Due to current limitations, the min value is [50]
# and the max value is 5000. Any values outside this range
# will be set to 0 (disabled).
earthCurveRatio = 0
[client.advanced.graphics.genericRendering]
#
# A comma separated separated list of dimension resource locations where DH clouds will render.
#
# Example: "minecraft:overworld,minecraft:the_end"
#
# Changes require a world re-load.
dimensionEnabledCloudRenderingCsv = "minecraft:overworld"
#
# If true LOD clouds will be rendered.
enableCloudRendering = true
#
# If true LOD beacon beams will be rendered wider at extreme distances,
# making them easier to see.
# If false all LOD beacon beams will only ever be 1 block wide.
expandDistantBeacons = true
#
# Sets the maximum height beacons will render up to.
#
# Requires a world re-load to take affect.
beaconRenderHeight = 6000
#
# If true LOD beacon beams will be rendered.
enableBeaconRendering = true
#
# If true non terrain objects will be rendered by DH.
# i.e. beacon beams and clouds.
enableGenericRendering = true
#
# False = DH will render a single layer of clouds, like vanilla Minecraft.
# True = DH will render 3 layers of clouds at different heights.
enableMultiLayerClouds = true
[client.advanced.graphics.quality]
#
# What is the maximum detail LODs can render at?
# Higher settings will increase memory and GPU usage.
#
# CHUNK: render 1 LOD for each Chunk.
# HALF_CHUNK: render 4 LODs for each Chunk.
# FOUR_BLOCKS: render 16 LODs for each Chunk.
# TWO_BLOCKS: render 64 LODs for each Chunk.
# BLOCK: render 256 LODs for each Chunk (width of one block).
#
# Fastest: CHUNK
# Fanciest: BLOCK
maxHorizontalResolution = "BLOCK"
#
# If true LODs will fade away as you get closer to them.
# If false LODs will cut off abruptly at a set distance from the camera.
# This setting is affected by the vanilla overdraw prevention config.
ditherDhFade = true
#
# If true DH will try to use the camera position when
# determining LOD quality drop-off.
# If false DH will use the player's position.
#
# Enabling helps free-cam mods render correctly.
# Disabling helps multi-camera mods render correctly (ie Immersive Portals or camera mods).
useCameraPositionForQualityDropOff = true
#
# How bright LOD colors are.
#
# 0 = black
# 1 = normal
# 2 = near white
brightnessMultiplier = "1.0"
#
# How many detail levels zooming in can increase LOD quality by.
# Higher numbers allow stronger zooms to render crisper terrain,
# but will increase memory and GPU usage while zoomed in.
#
# A vanilla spyglass needs 4 detail levels to reach its full quality.
maxZoomQualityIncrease = 4
#
# How should LODs be shaded?
#
# AUTO: Uses the same side shading as vanilla Minecraft blocks.
# ENABLED: Simulates Minecraft's block shading for LODs.
# Can be used to force LOD shading when using some shaders.
# DISABLED: All LOD sides will be rendered with the same brightness.
lodShading = "AUTO"
#
# How saturated LOD colors are.
#
# 0 = black and white
# 1 = normal
# 2 = very saturated
saturationMultiplier = "1.0"
#
# This indicates how well LODs will represent
# overhangs, caves, floating islands, etc.
# Higher options will make the world more accurate, butwill increase memory and GPU usage.
#
# Lowest Quality: HEIGHT_MAP
# Highest Quality: PIXEL_ART
verticalQuality = "MEDIUM"
#
# The radius of the mod's render distance. (measured in chunks)
#
# Note: this is a best effort number.
# The actual render distance may be above or below this number
# depending on your other graphic settings.
lodChunkRenderDistanceRadius = 128
#
# How should the sides and bottom of grass block LODs render?
#
# AS_GRASS: all sides of dirt LOD's render using the top (green) color.
# FADE_TO_DIRT: sides fade from grass to dirt.
# AS_DIRT: sides render entirely as dirt.
grassSideRendering = "FADE_TO_DIRT"
#
# This indicates how far apart drops in LOD quality are.
#
# Higher settings will increase the distance between drops
# but will increase memory and GPU usage.
horizontalQuality = "MEDIUM"
#
# How should LOD transparency be handled.
#
# COMPLETE: LODs will render transparent.
# DISABLED: LODs will be opaque.
transparency = "COMPLETE"
#
# This is the same as vanilla Biome Blending settings for Lod area.
# Note: anything above '0' will slow down LOD loading time.
#
# '0' equals to Vanilla Biome Blending of '1x1' or 'OFF',
# '1' equals to Vanilla Biome Blending of '3x3',
# '2' equals to Vanilla Biome Blending of '5x5'...
lodBiomeBlending = 3
#
# How should vanilla Minecraft fade into Distant Horizons LODs?
#
# NONE: Fastest, there will be a pronounced border between DH and MC rendering.
# SINGLE_PASS: Fades after MC's transparent pass, opaque blocks underwater won't be faded.
# DOUBLE_PASS: Slowest, fades after both MC's opaque and transparent passes, provides the smoothest transition.
vanillaFadeMode = "DOUBLE_PASS"
#
# If true LOD quality will increase when the camera is zoomed in,
# IE when using a spyglass or zoom mod.
#
# Only LODs visible through the camera view are affected.
#
# When zoomed in LODs will load to the same detail level
# they would have if you were close to them.
increaseQualityWhenZoomedIn = true
[client.advanced.graphics.fog]
#
# Should Minecraft's fog render?
# Note: Other mods may conflict with this setting.
enableVanillaFog = false
#
# What is the maximum fog thickness?
#
# 0.0: No fog.
# 1.0: Fully opaque fog.
farFogMax = "1.0"
#
# Determines if fog is drawn on DH LODs.
enableDhFog = true
#
# At what distance should the far fog start?
#
# 0.0: Fog starts at the player's position.
# 1.0: Fog starts at the closest edge of the vanilla render distance.
# 1.414: Fog starts at the corner of the vanilla render distance.
farFogStart = "0.4"
#
# What is the minimum fog thickness?
#
# 0.0: No fog.
# 1.0: Fully opaque fog.
farFogMin = "0.0"
#
# What color should fog use?
#
# USE_WORLD_FOG_COLOR: Use the world's fog color.
# USE_SKY_COLOR: Use the sky's color.
colorMode = "USE_WORLD_FOG_COLOR"
#
# How should the fog thickness should be calculated?
#
# LINEAR: Linear based on distance (will ignore 'density')
# EXPONENTIAL: 1/(e^(distance*density))
# EXPONENTIAL_SQUARED: 1/(e^((distance*density)^2)
farFogFalloff = "EXPONENTIAL_SQUARED"
#
# Used in conjunction with the Fog Falloff.
farFogDensity = "2.5"
#
# Where should the far fog end?
#
# 0.0: Fog ends at player's position.
# 1.0: Fog ends at the closest edge of the vanilla render distance.
# 1.414: Fog ends at the corner of the vanilla render distance.
farFogEnd = "1.0"
[client.advanced.graphics.fog.heightFog]
#
# Where should the height fog start?
#
# ABOVE_CAMERA: Height fog starts at the camera and goes towards the sky
# BELOW_CAMERA: Height fog starts at the camera and goes towards the void
# ABOVE_AND_BELOW_CAMERA: Height fog starts from the camera to goes towards both the sky and void
# ABOVE_SET_HEIGHT: Height fog starts from a set height and goes towards the sky
# BELOW_SET_HEIGHT: Height fog starts from a set height and goes towards the void
# ABOVE_AND_BELOW_SET_HEIGHT: Height fog starts from a set height and goes towards both the sky and void
heightFogDirection = "BELOW_SET_HEIGHT"
#
# What is the minimum fog thickness?
#
# 0.0: No fog.
# 1.0: Fully opaque fog.
heightFogMin = "0.0"
#
# If the height fog is calculated around a set height, what is that height position?
heightFogBaseHeight = "80.0"
#
# What is the maximum fog thickness?
#
# 0.0: No fog.
# 1.0: Fully opaque fog.
heightFogMax = "1.0"
#
# How should the height fog thickness should be calculated?
#
# LINEAR: Linear based on height (will ignore 'density')
# EXPONENTIAL: 1/(e^(height*density))
# EXPONENTIAL_SQUARED: 1/(e^((height*density)^2)
heightFogFalloff = "EXPONENTIAL_SQUARED"
#
# What is the height fog's density?
heightFogDensity = "20.0"
#
# How should height effect the fog thickness?
# Note: height fog is combined with the other fog settings.
#
# SPHERICAL: Fog is calculated based on camera distance.
# CYLINDRICAL: Ignore height, fog is calculated based on horizontal distance.
#
# MAX: max(heightFog, farFog)
# ADDITION: heightFog + farFog
# MULTIPLY: heightFog * farFog
# INVERSE_MULTIPLY: 1 - (1-heightFog) * (1-farFog)
# LIMITED_ADDITION: farFog + max(farFog, heightFog)
# MULTIPLY_ADDITION: farFog + farFog * heightFog
# INVERSE_MULTIPLY_ADDITION: farFog + 1 - (1-heightFog) * (1-farFog)
# AVERAGE: farFog*0.5 + heightFog*0.5
heightFogMixMode = "SPHERICAL"
#
# Should the start of the height fog be offset?
#
# 0.0: Fog start with no offset.
# 1.0: Fog start with offset of the entire world's height. (Includes depth)
heightFogStart = "0.0"
#
# Should the end of the height fog be offset?
#
# 0.0: Fog end with no offset.
# 1.0: Fog end with offset of the entire world's height. (Include depth)
heightFogEnd = "0.6"
[client.advanced.multiplayer]
#
# How should multiplayer save folders should be named?
#
# NAME_ONLY: Example: "Minecraft Server"
# IP_ONLY: Example: "192.168.1.40"
# NAME_IP: Example: "Minecraft Server IP 192.168.1.40"
# NAME_IP_PORT: Example: "Minecraft Server IP 192.168.1.40:25565"NAME_IP_PORT_MC_VERSION: Example: "Minecraft Server IP 192.168.1.40:25565 GameVersion 1.16.5"
serverFolderNameMode = "NAME_ONLY"
@@ -0,0 +1,36 @@
{
"allowedCEM": "ALL",
"logModelCreationData": false,
"debugOnRightClick": false,
"renderModeChoice": "NORMAL",
"vanillaModelHologramRenderMode_2": "OFF",
"modelExportMode": "NONE",
"automaticModelExporting": false,
"attemptPhysicsModPatch_2": "CUSTOM",
"modelUpdateFrequency": "Slow",
"entityRenderModeOverrides": {},
"entityPhysicsModPatchOverrides": {},
"entityVanillaHologramOverrides": {},
"modelsNamesDisabled": [],
"allowEBEModConfigModify": true,
"animationLODDistance": 12,
"retainDetailOnLowFps": true,
"retainDetailOnLargerMobs": true,
"animationFrameSkipDuringIrisShadowPass": true,
"preventFirstPersonHandAnimating": false,
"onlyClientPlayerModel": false,
"doubleChestAnimFix": true,
"enforceOptifineVariationRequiresDefaultModel": false,
"enforceOptifineVariationRequiresDefaultModel_v2": false,
"resetPlayerModelEachRender": true,
"resetPlayerModelEachRender_v2": true,
"onlyDebugRenderOnHover": false,
"enforceOptifineSubFoldersVariantOnly": false,
"enforceOptiFineAnimSyntaxLimits": true,
"allowOptifineFallbackProperties": true,
"showReloadErrorToast": true,
"exportRotations": false,
"asmMaths": true,
"logASM": false,
"parrotShoulderPositionAnimatesByDefault": true
}
@@ -0,0 +1,14 @@
#Select the backend to use. Set to "DEFAULT" to let Flywheel decide.
backend = "DEFAULT"
#Enable or disable instance update limiting with distance.
limitUpdates = true
#The number of worker threads to use. Set to -1 to let Flywheel decide. Set to 0 to disable parallelism. Requires a game restart to take effect.
# Default: -1
# Range: -1 ~ 4
workerThreads = -1
#Config options for Flywheel's built-in backends.
[flw_backends]
#How smooth Flywheel's shader-based lighting should be. May have a large performance impact.
#Allowed Values: FLAT, TRI_LINEAR, SMOOTH, SMOOTH_INNER_FACE_CORRECTED
lightSmoothness = "TRI_LINEAR"
@@ -0,0 +1,16 @@
mode = "fast"
chunk_rebuild_scheduler = "culling"
[adaptive_ticking]
slow = 5
slower = 8
background_sleep = true
[light_sources]
entities = true
self = true
water_sensitive_check = true
beam = true
guardian_laser = true
sonic_boom = true
glowing_effect = true
@@ -0,0 +1,20 @@
# Partial file: SPR merges these over its generated per-sound defaults (-1 = unlimited).
create\:cogs=4
create\:mixing=4
create\:mixing_compounded_1=4
create\:mechanical_press_activation=4
create\:mechanical_press_activation_compounded_1=4
create\:mechanical_press_activation_belt=4
create\:mechanical_press_activation_belt_compounded_1=4
create\:crushing_1=4
create\:crushing_2=4
create\:crushing_3=4
create\:saw_activate_stone=4
create\:saw_activate_wood=4
create\:funnel_flap=4
create\:funnel_flap_compounded_1=4
create\:depot_slide=4
create\:depot_plop=4
create\:steam=4
create\:sanding_short=4
create\:sanding_long=4
@@ -0,0 +1,99 @@
# Enables/Disables all sound effects
enabled=true
# Affects how quiet a sound gets based on distance
# Lower values mean distant sounds are louder
# This setting requires you to be in singleplayer or having the mod installed on the server
# 1.0 is the physically correct value
attenuation_factor=1.0
# The ray distance at which reverb starts
# 0.0 disables reverb attenuation
reverb_attenuation_distance=0.0
# The volume of simulated reverberations
reverb_gain=1.0
# The brightness of reverberation
# Higher values result in more high frequencies in reverberation
# Lower values give a more muffled sound to the reverb
reverb_brightness=1.0
# The distance of reverb relative to the sound distance
reverb_distance=1.5
# The amount of sound that will be absorbed when traveling through blocks
block_absorption=1.0
# Higher values mean smaller objects won't be considered as occluding
occlusion_variation=0.35
# The default amount of sound reflectance energy for all blocks
# Lower values result in more conservative reverb simulation with shorter reverb tails
# Higher values result in more generous reverb simulation with higher reverb tails
default_block_reflectivity=0.5
# The default amount of occlusion for all blocks
# Lower values will result in sounds being less muffled through walls
# Higher values mean sounds will be not audible though thicker walls
default_block_occlusion_factor=1.0
# Minecraft won't allow sounds to play past a certain distance
# This parameter is a multiplier for how far away a sound source is allowed to be in order for it to actually play
# This setting only takes affect in singleplayer worlds and when installed on the server
sound_distance_allowance=4.0
# A value controlling the amount that air absorbs high frequencies with distance
# A value of 1.0 is physically correct for air with normal humidity and temperature
# Higher values mean air will absorb more high frequencies with distance
# 0 disables this effect
air_absorption=1.0
# How much sound is filtered when the player is underwater
# 0.0 means no filter
# 1.0 means fully filtered
underwater_filter=0.9
# Whether sounds like cave, nether or underwater ambient sounds should have sound physics
evaluate_ambient_sounds=false
# The number of rays to trace to determine reverberation for each sound source
# More rays provides more consistent tracing results but takes more time to calculate
# Decrease this value if you experience lag spikes when sounds play
environment_evaluation_ray_count=16
# The number of rays bounces to trace to determine reverberation for each sound source
# More bounces provides more echo and sound ducting but takes more time to calculate
# Decrease this value if you experience lag spikes when sounds play
environment_evaluation_ray_bounces=2
# If sound hits a non-full-square side, block occlusion is multiplied by this
non_full_block_occlusion_factor=0.25
# The maximum amount of rays to determine occlusion
# Directly correlates to the amount of blocks between walls that are considered
max_occlusion_rays=16
# The amount at which occlusion is capped
max_occlusion=64.0
# If enabled, the occlusion calculation only uses one path between the sound source and the listener instead of 9
strict_occlusion=false
# Whether to try calculating where the sound should come from based on reflections
sound_direction_evaluation=true
# Skip redirecting non-occluded sounds (the ones you can see directly)
redirect_non_occluded_sounds=true
# If music discs or other longer sounds should be frequently reevaluated
update_moving_sounds=false
# The interval in ticks that moving sounds are reevaluated
# Lower values mean more frequent reevaluation but also more lag
# This option only takes effect if update_moving_sounds is enabled
sound_update_interval=5
# The maximum distance a sound can be processed
max_sound_processing_distance=512.0
# Disable level clone and cache. This will fall back to original main thread access.
# WARNING! Enabling this will cause instability and issues with other mods.
unsafe_level_access=false
# The radius of chunks to clone for level access
level_clone_range=4
# The maximum number of ticks to retain the cloned level in the cache
level_clone_max_retain_ticks=20
# The maximum distance a player can move from the cloned origin before invalidation
level_clone_max_retain_block_distance=16
# Enables debug logging
debug_logging=false
# Provides more information about occlusion in the logs
occlusion_logging=false
# Provides more information about the environment calculation in the logs
environment_logging=false
# Provides more information about how long computations take
performance_logging=false
# If enabled, the path of the sound will be rendered in game
render_sound_bounces=false
# If enabled, occlusion will be visualized in game
render_occlusion=false
# Enables/Disables sound effects for Simple Voice Chat audio
simple_voice_chat_integration=true
# Enables/Disables hearing your own echo with Simple Voice Chat
simple_voice_chat_hear_self=false
@@ -0,0 +1,12 @@
#The render distance for physics objects (SubLevels) in chunks.
# Default: 128
# Range: 1 ~ 1000000
physicsRenderDistance = 16
#The minimum render distance for physics objects (SubLevels) in chunks.
# Default: 16
# Range: 1 ~ 1000000
minPhysicsRenderDistance = 16
#The maximum render distance for physics objects (SubLevels) in chunks.
# Default: 4096
# Range: 1 ~ 1000000
maxPhysicsRenderDistance = 4096
+11
View File
@@ -0,0 +1,11 @@
version:3955
renderDistance:8
simulationDistance:8
biomeBlendRadius:1
mipmapLevels:2
entityDistanceScaling:0.75
particles:0
entityShadows:true
graphicsMode:1
maxFps:120
enableVsync:true
+58 -1
View File
@@ -4,6 +4,38 @@ hash-format = "sha256"
file = "config/akashictome-common.toml" file = "config/akashictome-common.toml"
hash = "4e479c86ddfec0c5e28f07034f033a10abae404309f38ccc4bfc15da9de2dfa2" hash = "4e479c86ddfec0c5e28f07034f033a10abae404309f38ccc4bfc15da9de2dfa2"
[[files]]
file = "config/defaultoptions/extra/config/DistantHorizons.toml"
hash = "8949bf3c7a43df7a7ae384213db0985425db3559219c29cb63eaef45c7962dcc"
[[files]]
file = "config/defaultoptions/extra/config/entity_model_features.json"
hash = "7650058e21d1eaafc14cc1879bc20c2b510eb9f3095914322b8b08fc31025437"
[[files]]
file = "config/defaultoptions/extra/config/flywheel-client.toml"
hash = "517e16b3dc86f15b5dccd9ff4f70f767b73ebc2166f6ea2891565417d930772a"
[[files]]
file = "config/defaultoptions/extra/config/lambdynlights.toml"
hash = "3876c8b0c49cc8c2a7f500bc5d77429035e4edb25e16d27434e1dd4d546ae510"
[[files]]
file = "config/defaultoptions/extra/config/sound_physics_remastered/sound_rates.properties"
hash = "c4676fcc924cc4bacc187d5364831aac1be170b93a2dc8e11119bff0235353e9"
[[files]]
file = "config/defaultoptions/extra/config/sound_physics_remastered/soundphysics.properties"
hash = "d93803ffc12f4b55f9668dc2b9a4823d733b77f02dfee0879d6507f262ad34c6"
[[files]]
file = "config/defaultoptions/extra/config/ssrd-common.toml"
hash = "9b75828543ed2b8cc5804eabecdc28262297a90d6f0e8e771d64ff779a69e3c9"
[[files]]
file = "config/defaultoptions/options.txt"
hash = "62034e0589087dab02d1a15192ad313a57f907d5ee9ebbf8853151f7831851a1"
[[files]] [[files]]
file = "config/paxi/datapacks/onion-fixes/data/adorablehamsterpets/recipe/cucumber_crate.json" file = "config/paxi/datapacks/onion-fixes/data/adorablehamsterpets/recipe/cucumber_crate.json"
hash = "21b11674b18c3fb0d8292095cf7c12bca82ef4054ec3f1cd8d1e0222d1655629" hash = "21b11674b18c3fb0d8292095cf7c12bca82ef4054ec3f1cd8d1e0222d1655629"
@@ -300,6 +332,11 @@ file = "mods/autowalker.pw.toml"
hash = "c6afe14535bd7876fae5eaf26295143ffa175ac7766c4ee1b7eebd2e71e9fe35" hash = "c6afe14535bd7876fae5eaf26295143ffa175ac7766c4ee1b7eebd2e71e9fe35"
metafile = true metafile = true
[[files]]
file = "mods/badoptimizations.pw.toml"
hash = "dd56ff2bcc4253d1d70c08333632743fb56cdc4cf5518dc6afc024164633145d"
metafile = true
[[files]] [[files]]
file = "mods/baguettelib.pw.toml" file = "mods/baguettelib.pw.toml"
hash = "ad964c7bc216dc509aba7cc617456a340e7746565e79d0cd4fab8a4d31ec95ed" hash = "ad964c7bc216dc509aba7cc617456a340e7746565e79d0cd4fab8a4d31ec95ed"
@@ -450,6 +487,11 @@ file = "mods/curios.pw.toml"
hash = "36debf7653e95a855b4fedacc19027cf2e01960fc0b6d55ef2ffbffbcb455690" hash = "36debf7653e95a855b4fedacc19027cf2e01960fc0b6d55ef2ffbffbcb455690"
metafile = true metafile = true
[[files]]
file = "mods/default-options.pw.toml"
hash = "a6967d761dde867ccc1af53dc9f4e530eb9917a9cb21d0fc15708e8cd2c0f2ba"
metafile = true
[[files]] [[files]]
file = "mods/delight-lib.pw.toml" file = "mods/delight-lib.pw.toml"
hash = "c4fb5bf78ad912a20ff50767f4e5cb64fd84f04d58db0c79bc728b643acc4038" hash = "c4fb5bf78ad912a20ff50767f4e5cb64fd84f04d58db0c79bc728b643acc4038"
@@ -885,6 +927,11 @@ file = "mods/overweight-farming.pw.toml"
hash = "836ffb879311a16e620c05796513395a3b9009c7d27d84c5938f03add120bec6" hash = "836ffb879311a16e620c05796513395a3b9009c7d27d84c5938f03add120bec6"
metafile = true metafile = true
[[files]]
file = "mods/particle-core.pw.toml"
hash = "7333c29c224d843384e26b2c7d9af1d31dada870d776fb1ad8f3d8c3040b313d"
metafile = true
[[files]] [[files]]
file = "mods/patchouli.pw.toml" file = "mods/patchouli.pw.toml"
hash = "d7f360ebb9f009d6dc0b368cd8fa399bdff70c0f6ef931687b2a35137f72715d" hash = "d7f360ebb9f009d6dc0b368cd8fa399bdff70c0f6ef931687b2a35137f72715d"
@@ -947,7 +994,7 @@ metafile = true
[[files]] [[files]]
file = "mods/puzzles-lib.pw.toml" file = "mods/puzzles-lib.pw.toml"
hash = "6b1ee632cee2d75301016eaac99a3446ad605f11fbfda631effac0eb7da59f6c" hash = "0a04f1d0b86262c6dfdbd14e0493d7f4786f24054a95a07ff7b41a7870bb258d"
metafile = true metafile = true
[[files]] [[files]]
@@ -965,6 +1012,11 @@ file = "mods/rechiseled.pw.toml"
hash = "6bee7be8af8f9247fbf84dcd1ec9af2adaa42e55d52ab8a5bfe9b6ff7c94da46" hash = "6bee7be8af8f9247fbf84dcd1ec9af2adaa42e55d52ab8a5bfe9b6ff7c94da46"
metafile = true metafile = true
[[files]]
file = "mods/reeses-sodium-options.pw.toml"
hash = "8690379014fbba53059759936c7deb4d62aabc7a2006da3d45929dc582b119b7"
metafile = true
[[files]] [[files]]
file = "mods/resourceful-lib.pw.toml" file = "mods/resourceful-lib.pw.toml"
hash = "c0b066684294c33972d562e0cb08ea17b2d31bcf86cd1d6c63b8e968f0eac7a2" hash = "c0b066684294c33972d562e0cb08ea17b2d31bcf86cd1d6c63b8e968f0eac7a2"
@@ -1010,6 +1062,11 @@ file = "mods/smartbrainlib.pw.toml"
hash = "6e7ce9c2aee5bb72d2698eb89035c9b2458d20daa0782e1a03cfba7a6647621e" hash = "6e7ce9c2aee5bb72d2698eb89035c9b2458d20daa0782e1a03cfba7a6647621e"
metafile = true metafile = true
[[files]]
file = "mods/sodium-extra.pw.toml"
hash = "6ab228a1fa98348b7444c0715e4db592414d2102e441671ac5e79066596a912c"
metafile = true
[[files]] [[files]]
file = "mods/sodium.pw.toml" file = "mods/sodium.pw.toml"
hash = "2a001cdb3d5ac4970d422914083c27380eba8ebd40dfd435754fe6566ba78beb" hash = "2a001cdb3d5ac4970d422914083c27380eba8ebd40dfd435754fe6566ba78beb"
+13
View File
@@ -0,0 +1,13 @@
name = "BadOptimizations"
filename = "BadOptimizations-2.4.1-1.21.1.jar"
side = "client"
[download]
url = "https://cdn.modrinth.com/data/g96Z4WVZ/versions/S2qthD5S/BadOptimizations-2.4.1-1.21.1.jar"
hash-format = "sha512"
hash = "2b66428bd98bd5ec0e09f2ec6af801cefb7b9b99cc4f0993daeaffe8d0ccc5ee0c2a73e9f38d4f92540ead0181704d2c9e946837ec05cf710fc3b20fce3b0cac"
[update]
[update.modrinth]
mod-id = "g96Z4WVZ"
version = "S2qthD5S"
+13
View File
@@ -0,0 +1,13 @@
name = "Default Options"
filename = "defaultoptions-neoforge-1.21.1-21.1.8.jar"
side = "client"
[download]
url = "https://cdn.modrinth.com/data/WEg59z5b/versions/1zt17WsC/defaultoptions-neoforge-1.21.1-21.1.8.jar"
hash-format = "sha512"
hash = "29f66777068d92b1e149630d569441e5176ac40ec5cb4ee6c63c565aa7d475587a5097f59c433d69a39fd238b64902e2ba742b30c26419de901c86a3300b848e"
[update]
[update.modrinth]
mod-id = "WEg59z5b"
version = "1zt17WsC"
+13
View File
@@ -0,0 +1,13 @@
name = "Particle Core"
filename = "particle_core-0.3.3+1.21+neoforge.jar"
side = "client"
[download]
url = "https://cdn.modrinth.com/data/RSeLon5O/versions/2QF4NhZD/particle_core-0.3.3%2B1.21%2Bneoforge.jar"
hash-format = "sha512"
hash = "bf14200f4f279c2c5f5a50e09ef561f34463848fde507cb5930e4f4dbfed107697387ce030593be37a14da73cc459b0901928466fb44b2c2a387c584f38ec489"
[update]
[update.modrinth]
mod-id = "RSeLon5O"
version = "2QF4NhZD"
+4 -4
View File
@@ -1,13 +1,13 @@
name = "Puzzles Lib" name = "Puzzles Lib"
filename = "puzzleslib-v21.1.62-mc1.21.1+neoforge.jar" filename = "puzzleslib-v21.1.64-mc1.21.1+neoforge.jar"
side = "both" side = "both"
[download] [download]
url = "https://cdn.modrinth.com/data/QAGBst4M/versions/1TmfTuyw/puzzleslib-v21.1.62-mc1.21.1%2Bneoforge.jar" url = "https://cdn.modrinth.com/data/QAGBst4M/versions/lATqZwtV/puzzleslib-v21.1.64-mc1.21.1%2Bneoforge.jar"
hash-format = "sha512" hash-format = "sha512"
hash = "241ff7229990305fe5f85521b9c11cd8e2e8d01cb94bbca987aae4d3d9ecbd9115a4b66f618a62d73ef1b569ff8c72434bc1354bbfaf2f69c0e997db034c4883" hash = "f60ecfc9fedf9c6967891024711391abdc6ffb45c09030f221e9bf061a5a99323a612cecf19af4b0d86b7a3dd4c49f273e2a9b2d2b61bbc867f85d9f3034f5b7"
[update] [update]
[update.modrinth] [update.modrinth]
mod-id = "QAGBst4M" mod-id = "QAGBst4M"
version = "1TmfTuyw" version = "lATqZwtV"
+13
View File
@@ -0,0 +1,13 @@
name = "Reese's Sodium Options"
filename = "reeses-sodium-options-neoforge-2.2.4+mc1.21.1.jar"
side = "client"
[download]
url = "https://cdn.modrinth.com/data/Bh37bMuy/versions/XjF2IkL8/reeses-sodium-options-neoforge-2.2.4%2Bmc1.21.1.jar"
hash-format = "sha512"
hash = "a99d41a41ca83376c4fa29ed22a99e98288a7e9a4749fbf6d3724b9804b8e66648e267c6851a53d040069fdc2d889f8205cbb444bee10a35be840d13fc9ed477"
[update]
[update.modrinth]
mod-id = "Bh37bMuy"
version = "XjF2IkL8"
+13
View File
@@ -0,0 +1,13 @@
name = "Sodium Extra"
filename = "sodium-extra-neoforge-0.9.4+mc1.21.1.jar"
side = "client"
[download]
url = "https://cdn.modrinth.com/data/PtjYWJkn/versions/ufpcXU9c/sodium-extra-neoforge-0.9.4%2Bmc1.21.1.jar"
hash-format = "sha512"
hash = "b930a9c6364bdbac42da7175f9fa71360053cd046d2f1e9a99d712e5942299882bfb585e5b661490b791e219b5dd6b9f064fb94f169d7a32a9934c1dc2b85edf"
[update]
[update.modrinth]
mod-id = "PtjYWJkn"
version = "ufpcXU9c"
+1 -1
View File
@@ -6,7 +6,7 @@ pack-format = "packwiz:1.1.0"
[index] [index]
file = "index.toml" file = "index.toml"
hash-format = "sha256" hash-format = "sha256"
hash = "32a433d7d5bc07fc2cf3a4da8b213a94470b746290c8f82a52d37602ed5b6f12" hash = "50d97b070e620b4e850df2feb7a07b11bf7a90cab87efa96219a217b9586446d"
[versions] [versions]
minecraft = "1.21.1" minecraft = "1.21.1"