diff --git a/config/bobby.conf b/config/bobby.conf
new file mode 100644
index 0000000..a8dbf08
--- /dev/null
+++ b/config/bobby.conf
@@ -0,0 +1,31 @@
+# Delete regions from the cache when they have not been loaded for X days.
+# 
+# The cache for a given world is cleaned up whenever you disconnect from the server.
+# Entire worlds are cleaned up when the game starts and you have not visited them for X days.
+# 
+# Set to -1 to disabled.
+# Set to 0 to clean up everything after every disconnect.
+delete-unused-regions-after-days=-1
+enabled=true
+# Changes the maximum value configurable for Render Distance.
+# 
+# Requires Sodium.
+max-render-distance=64
+# Do not load block entities (e.g. chests) in fake chunks.
+# These need updating every tick which can add up.
+# 
+# Enabled by default because the render distance for block entities is usually smaller than the server-view distance anyway.
+no-block-entities=true
+# Reduces the light levels in fake chunks so you can tell the difference from real ones.
+taint-fake-chunks=false
+# Delays the unloading of chunks which are outside your view distance.
+# Saves you from having to reload all chunks when leaving the area for a short moment (e.g. cut scenes).
+# Does not work across dimensions.
+unload-delay-secs=60
+# Overwrites the view-distance of the integrated server.
+# This allows Bobby to be useful in Singleplayer.
+# 
+# Disabled when at 0.
+# Bobby is active in singleplayer only if this is enabled.
+# Requires re-log to en-/disable.
+view-distance-overwrite=0
diff --git a/config/craftpresence.json b/config/craftpresence.json
deleted file mode 100644
index 6c4fc8b..0000000
--- a/config/craftpresence.json
+++ /dev/null
@@ -1,394 +0,0 @@
-{
-  "_README": "https://gitlab.com/CDAGaming/CraftPresence/-/wikis/home",
-  "_schemaVersion": 3,
-  "_lastMCVersionId": 762,
-  "generalSettings": {
-    "detectATLauncherInstance": true,
-    "detectCurseManifest": true,
-    "detectMultiMCManifest": true,
-    "detectMCUpdaterInstance": true,
-    "detectTechnicPack": true,
-    "detectBiomeData": true,
-    "detectDimensionData": true,
-    "detectWorldData": true,
-    "clientId": "450485984333660181",
-    "defaultIcon": "grass",
-    "enableJoinRequests": false,
-    "partyPrivacyLevel": 1,
-    "preferredClientLevel": 3,
-    "resetTimeOnInit": false,
-    "autoRegister": false
-  },
-  "biomeSettings": {
-    "fallbackBiomeIcon": "unknown",
-    "biomeData": {
-      "default": {
-        "textOverride": "Playing in {biome.name}",
-        "data": {
-          "enabled": true,
-          "useAsMain": false,
-          "details": "",
-          "gameState": "",
-          "largeImageKey": "",
-          "largeImageText": "",
-          "smallImageKey": "",
-          "smallImageText": "",
-          "startTimestamp": "",
-          "endTimestamp": "",
-          "buttons": {
-            "default": {
-              "label": "Example Text",
-              "url": "https://google.com"
-            }
-          }
-        }
-      }
-    }
-  },
-  "dimensionSettings": {
-    "fallbackDimensionIcon": "unknown",
-    "dimensionData": {
-      "default": {
-        "textOverride": "In the {dimension.name}",
-        "data": {
-          "enabled": true,
-          "useAsMain": false,
-          "details": "",
-          "gameState": "",
-          "largeImageKey": "",
-          "largeImageText": "",
-          "smallImageKey": "",
-          "smallImageText": "",
-          "startTimestamp": "",
-          "endTimestamp": "",
-          "buttons": {
-            "default": {
-              "label": "Example Text",
-              "url": "https://google.com"
-            }
-          }
-        }
-      }
-    }
-  },
-  "serverSettings": {
-    "fallbackServerIcon": "default",
-    "fallbackServerName": "Minecraft Server",
-    "fallbackServerMotd": "A Minecraft Server",
-    "serverData": {
-      "default": {
-        "textOverride": "Playing on {server.motd.raw}",
-        "data": {
-          "enabled": true,
-          "useAsMain": false,
-          "details": "",
-          "gameState": "",
-          "largeImageKey": "",
-          "largeImageText": "",
-          "smallImageKey": "",
-          "smallImageText": "",
-          "startTimestamp": "",
-          "endTimestamp": "",
-          "buttons": {
-            "default": {
-              "label": "Example Text",
-              "url": "https://google.com"
-            }
-          }
-        }
-      }
-    }
-  },
-  "statusMessages": {
-    "mainMenuData": {
-      "textOverride": "In the Main Menu",
-      "data": {
-        "enabled": true,
-        "useAsMain": false,
-        "details": "",
-        "gameState": "",
-        "largeImageKey": "",
-        "largeImageText": "",
-        "smallImageKey": "",
-        "smallImageText": "",
-        "startTimestamp": "",
-        "endTimestamp": "",
-        "buttons": {
-          "default": {
-            "label": "Example Text",
-            "url": "https://google.com"
-          }
-        }
-      }
-    },
-    "loadingData": {
-      "textOverride": "Loading...",
-      "data": {
-        "enabled": true,
-        "useAsMain": false,
-        "details": "",
-        "gameState": "",
-        "largeImageKey": "",
-        "largeImageText": "",
-        "smallImageKey": "",
-        "smallImageText": "",
-        "startTimestamp": "",
-        "endTimestamp": "",
-        "buttons": {
-          "default": {
-            "label": "Example Text",
-            "url": "https://google.com"
-          }
-        }
-      }
-    },
-    "lanData": {
-      "textOverride": "Playing on a LAN Server",
-      "data": {
-        "enabled": true,
-        "useAsMain": false,
-        "details": "",
-        "gameState": "",
-        "largeImageKey": "",
-        "largeImageText": "",
-        "smallImageKey": "",
-        "smallImageText": "",
-        "startTimestamp": "",
-        "endTimestamp": "",
-        "buttons": {
-          "default": {
-            "label": "Example Text",
-            "url": "https://google.com"
-          }
-        }
-      }
-    },
-    "singleplayerData": {
-      "textOverride": "Playing Singleplayer",
-      "data": {
-        "enabled": true,
-        "useAsMain": false,
-        "details": "",
-        "gameState": "",
-        "largeImageKey": "",
-        "largeImageText": "",
-        "smallImageKey": "",
-        "smallImageText": "",
-        "startTimestamp": "",
-        "endTimestamp": "",
-        "buttons": {
-          "default": {
-            "label": "Example Text",
-            "url": "https://google.com"
-          }
-        }
-      }
-    }
-  },
-  "advancedSettings": {
-    "enablePerGui": false,
-    "enablePerItem": false,
-    "enablePerEntity": false,
-    "renderTooltips": true,
-    "formatWords": true,
-    "debugMode": false,
-    "verboseMode": false,
-    "refreshRate": 2,
-    "roundSize": 3,
-    "includeExtraGuiClasses": false,
-    "allowPlaceholderPreviews": false,
-    "guiSettings": {
-      "fallbackGuiIcon": "unknown",
-      "guiData": {
-        "default": {
-          "textOverride": "In {screen.name}",
-          "data": {
-            "enabled": true,
-            "useAsMain": false,
-            "details": "",
-            "gameState": "",
-            "largeImageKey": "",
-            "largeImageText": "",
-            "smallImageKey": "",
-            "smallImageText": "",
-            "startTimestamp": "",
-            "endTimestamp": "",
-            "buttons": {
-              "default": {
-                "label": "Example Text",
-                "url": "https://google.com"
-              }
-            }
-          }
-        },
-        "GuiReplayOverlay": {
-          "textOverride": "{player.name} is editing a replay",
-          "data": {
-            "enabled": true,
-            "useAsMain": false,
-            "details": "",
-            "gameState": "",
-            "largeImageKey": "",
-            "largeImageText": "",
-            "smallImageKey": "",
-            "smallImageText": "",
-            "startTimestamp": "",
-            "endTimestamp": "",
-            "buttons": {
-              "default": {
-                "label": "Example Text",
-                "url": "https://google.com"
-              }
-            }
-          }
-        },
-        "GuiReplayViewer": {
-          "textOverride": "{player.name} is browsing replays",
-          "data": {
-            "enabled": true,
-            "useAsMain": false,
-            "details": "",
-            "gameState": "",
-            "largeImageKey": "",
-            "largeImageText": "",
-            "smallImageKey": "",
-            "smallImageText": "",
-            "startTimestamp": "",
-            "endTimestamp": "",
-            "buttons": {
-              "default": {
-                "label": "Example Text",
-                "url": "https://google.com"
-              }
-            }
-          }
-        },
-        "GuiVideoRenderer": {
-          "textOverride": "{player.name} is exporting a replay ({replaymod.frames.current}/{replaymod.frames.total} frames)",
-          "data": {
-            "enabled": true,
-            "useAsMain": false,
-            "details": "",
-            "gameState": "",
-            "largeImageKey": "",
-            "largeImageText": "",
-            "smallImageKey": "",
-            "smallImageText": "",
-            "startTimestamp": "",
-            "endTimestamp": "",
-            "buttons": {
-              "default": {
-                "label": "Example Text",
-                "url": "https://google.com"
-              }
-            }
-          }
-        }
-      }
-    },
-    "itemMessages": {
-      "default": "Holding {item.message.holding}"
-    },
-    "entitySettings": {
-      "fallbackEntityIcon": "unknown",
-      "targetData": {
-        "default": {
-          "textOverride": "Targeting {entity.target.name}",
-          "data": {
-            "enabled": true,
-            "useAsMain": false,
-            "details": "",
-            "gameState": "",
-            "largeImageKey": "",
-            "largeImageText": "",
-            "smallImageKey": "",
-            "smallImageText": "",
-            "startTimestamp": "",
-            "endTimestamp": "",
-            "buttons": {
-              "default": {
-                "label": "Example Text",
-                "url": "https://google.com"
-              }
-            }
-          }
-        }
-      },
-      "ridingData": {
-        "default": {
-          "textOverride": "Riding {entity.riding.name}",
-          "data": {
-            "enabled": true,
-            "useAsMain": false,
-            "details": "",
-            "gameState": "",
-            "largeImageKey": "",
-            "largeImageText": "",
-            "smallImageKey": "",
-            "smallImageText": "",
-            "startTimestamp": "",
-            "endTimestamp": "",
-            "buttons": {
-              "default": {
-                "label": "Example Text",
-                "url": "https://google.com"
-              }
-            }
-          }
-        }
-      }
-    },
-    "allowEndpointIcons": true,
-    "serverIconEndpoint": "https://api.mcsrvstat.us/icon/{server.address.short}",
-    "playerSkinEndpoint": "https://mc-heads.net/avatar/{getOrDefault(player.uuid.short, player.name)}"
-  },
-  "accessibilitySettings": {
-    "tooltipBackgroundColor": "0xF0100010",
-    "tooltipBorderColor": "0x505000FF",
-    "guiBackgroundColor": "minecraft:textures/gui/options_background.png",
-    "buttonBackgroundColor": "minecraft:textures/gui/widgets.png",
-    "languageId": "en_us",
-    "showBackgroundAsDark": true,
-    "stripTranslationColors": false,
-    "showLoggingInChat": false,
-    "stripExtraGuiElements": false,
-    "configKeyCode": 96
-  },
-  "displaySettings": {
-    "presenceData": {
-      "enabled": true,
-      "useAsMain": false,
-      "details": "{getFirst(menu.message)}",
-      "gameState": "{getOrDefault(server.message)}",
-      "largeImageKey": "{getFirst(menu.icon, dimension.icon)}",
-      "largeImageText": "{getFirst(menu.message, dimension.message)}",
-      "smallImageKey": "{getFirst(server.icon, pack.icon)}",
-      "smallImageText": "{getOrDefault(server.message)} {getOrDefault(pack.name)}",
-      "startTimestamp": "{data.general.time}",
-      "endTimestamp": "",
-      "buttons": {
-        "default": {
-          "label": "Example Text",
-          "url": "https://google.com"
-        }
-      }
-    },
-    "dynamicIcons": {
-      "default": "https://via.placeholder.com/256.png",
-      "Xnor50": "https://mc-heads.net/avatar/390b74455d17404ba85653235a3b185e",
-      "hypixel.net": "https://api.mcsrvstat.us/icon/hypixel.net"
-    },
-    "dynamicVariables": {
-      "default": "Example Text",
-      "mods": "{general.mods} Mod(s)",
-      "player_info_coordinate": "At {player.position.x}, {player.position.z}",
-      "players": "{server.players.current} / {server.players.max} Players",
-      "player_info_in": "({custom.player_info.health})",
-      "player_info_items": "Items: {item.main_hand.message}",
-      "player_info_out": "As {player.name}",
-      "player_info_health": "Health: {player.health.current}/{player.health.max}",
-      "world_info": "On {world.name}",
-      "pack": "{pack.name}"
-    }
-  }
-}
\ No newline at end of file
diff --git a/config/defaultoptions/keybindings.txt b/config/defaultoptions/keybindings.txt
index d8e1ab9..69dfd6d 100755
--- a/config/defaultoptions/keybindings.txt
+++ b/config/defaultoptions/keybindings.txt
@@ -23,15 +23,15 @@ key_key.swapOffhand:key.keyboard.k:NONE
 key_key.saveToolbarActivator:key.keyboard.unknown:NONE
 key_key.loadToolbarActivator:key.keyboard.unknown:NONE
 key_key.advancements:key.keyboard.l:NONE
-key_key.hotbar.1:key.keyboard.e:NONE
-key_key.hotbar.2:key.keyboard.r:NONE
-key_key.hotbar.3:key.keyboard.f:NONE
-key_key.hotbar.4:key.keyboard.t:NONE
-key_key.hotbar.5:key.keyboard.y:NONE
-key_key.hotbar.6:key.keyboard.u:NONE
-key_key.hotbar.7:key.keyboard.i:NONE
-key_key.hotbar.8:key.keyboard.o:NONE
-key_key.hotbar.9:key.keyboard.p:NONE
+key_key.hotbar.1:key.keyboard.1:NONE
+key_key.hotbar.2:key.keyboard.2:NONE
+key_key.hotbar.3:key.keyboard.3:NONE
+key_key.hotbar.4:key.keyboard.4:NONE
+key_key.hotbar.5:key.keyboard.5:NONE
+key_key.hotbar.6:key.keyboard.6:NONE
+key_key.hotbar.7:key.keyboard.7:NONE
+key_key.hotbar.8:key.keyboard.8:NONE
+key_key.hotbar.9:key.keyboard.9:NONE
 key_key.fabrishot.screenshot:key.keyboard.f9:NONE
 key_key.dynamicfps.toggle_forced:key.keyboard.unknown:NONE
 key_key.dynamicfps.toggle_disabled:key.keyboard.unknown:NONE
diff --git a/config/inventoryprofilesnext/inventoryprofiles.json b/config/inventoryprofilesnext/inventoryprofiles.json
deleted file mode 100755
index 0b3ce41..0000000
--- a/config/inventoryprofilesnext/inventoryprofiles.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
-    "ModSettings": {
-        "highlight_foused_items": {
-            "value": false
-        },
-        "enable_profiles": {
-            "value": false
-        },
-        "enable_auto_refill": {
-            "value": false
-        },
-        "villager_trading_enable": {
-            "value": false
-        },
-        "first_run": false
-    },
-    "GuiSettings": {
-        "enable_inventory_editor_button": {
-            "value": false
-        },
-        "enable_inventory_settings_button": {
-            "value": false
-        },
-        "enable_profiles_ui": {
-            "value": false
-        },
-        "show_continuous_crafting_checkbox": {
-            "value": false
-        }
-    },
-    "LockedSlotsSettings": {
-        "locked_slots_allow_pickup_into_empty": {
-            "value": true
-        },
-        "locked_slots_empty_hotbar_as_semi_locked": {
-            "value": false
-        }
-    }
-}
\ No newline at end of file
diff --git a/config/isxander-main-menu-credits.json b/config/isxander-main-menu-credits.json
deleted file mode 100644
index cf1e2c1..0000000
--- a/config/isxander-main-menu-credits.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-  "main_menu": {
-    "top_left": [],
-    "top_right": [],
-    "bottom_left": [
-      "Evan's Modpack"
-    ],
-    "bottom_right": [],
-    "mod_blacklist": []
-  },
-  "pause_menu": {
-    "top_left": [],
-    "top_right": [],
-    "bottom_left": [
-      "Evan's Modpack"
-    ],
-    "bottom_right": [],
-    "mod_blacklist": []
-  }
-}
\ No newline at end of file
diff --git a/config/replaymod.json b/config/replaymod.json
deleted file mode 100644
index cbc511a..0000000
--- a/config/replaymod.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-  "core": {
-    "notifications": true
-  },
-  "recording": {
-    "autoStartRecording": false
-  }
-}
\ No newline at end of file
diff --git a/config/roughlyenoughitems/config.json5 b/config/roughlyenoughitems/config.json5
index ccfb950..d6d6770 100755
--- a/config/roughlyenoughitems/config.json5
+++ b/config/roughlyenoughitems/config.json5
@@ -5,7 +5,7 @@
 		"displayHistory": [],
 		// Declares whether cheating mode is on.
 		"cheating": false,
-		"favoritesEnabled": true,
+		"favoritesEnabled": false,
 		"keyBindings": {
 			"recipeKeybind": {
 				"keyCode": "key.keyboard.r",
@@ -16,8 +16,8 @@
 				"modifier": 0
 			},
 			"hideKeybind": {
-				"keyCode": "key.keyboard.o",
-				"modifier": 2
+				"keyCode": "key.keyboard.unknown",
+				"modifier": 0
 			},
 			"previousPageKeybind": {
 				"keyCode": "key.keyboard.unknown",
@@ -32,11 +32,11 @@
 				"modifier": 0
 			},
 			"copyRecipeIdentifierKeybind": {
-				"keyCode": "key.mouse.middle",
+				"keyCode": "key.keyboard.unknown",
 				"modifier": 0
 			},
 			"favoriteKeybind": {
-				"keyCode": "key.keyboard.a",
+				"keyCode": "key.keyboard.unknown",
 				"modifier": 0
 			},
 			"exportImageKeybind": {
@@ -132,7 +132,7 @@
 		}
 	},
 	"appearance": {
-		"recipeScreenType": "ORIGINAL",
+		"recipeScreenType": "COMPOSITE",
 		// Declares the appearance of REI windows.
 		"theme": "LIGHT",
 		"layout": {
@@ -141,7 +141,7 @@
 			// Declares the position of the config button.
 			"configButtonLocation": "LOWER",
 			// Declares whether the craftable filter button is enabled.
-			"showCraftableOnlyButton": true
+			"showCraftableOnlyButton": false
 		},
 		// Declares the appearance of recipe's border.
 		"recipeBorder": "DEFAULT",
@@ -161,10 +161,10 @@
 		// Declares whether REI should remove the recipe book.
 		"disableRecipeBook": true,
 		// Declares whether mob effects should be on the left side instead of the right side.
-		"leftSideMobEffects": false,
+		"leftSideMobEffects": true,
 		// Declares whether subsets is enabled.
-		"isSubsetsEnabled": false,
-		"allowInventoryHighlighting": true,
+		"isSubsetsEnabled": true,
+		"allowInventoryHighlighting": false,
 		"itemCheatingMode": "REI_LIKE"
 	}
 }
\ No newline at end of file
diff --git a/config/shulkerboxtooltip.json5 b/config/shulkerboxtooltip.json5
new file mode 100644
index 0000000..4ab0af2
--- /dev/null
+++ b/config/shulkerboxtooltip.json5
@@ -0,0 +1,161 @@
+{
+	"preview": {
+		/* Toggles the shulker box preview.
+		   (default value: true)
+		*/
+		"enable": true,
+		/* Swaps the preview modes.
+		   If true, pressing the preview key will show the full preview instead.
+		   (default value: false)
+		*/
+		"swapModes": true,
+		/* If on, the preview is always displayed, regardless of the preview key being pressed.
+		   (default value: false)
+		*/
+		"alwaysOn": true,
+		/* In compact mode, how should items with the same ID but different NBT data be compacted?
+		   IGNORE: Ignores NBT data
+		   FIRST_ITEM: Items are displayed as all having the same NBT as the first item
+		   SEPARATE: Separates items with different NBT data
+		   (default value: SEPARATE)
+		*/
+		"compactPreviewNbtBehavior": "SEPARATE",
+		/* The max number of items in a row.
+		   May not affect modded containers.
+		   (default value: 9)
+		*/
+		"defaultMaxRowSize": 9,
+		/* If on, the client will try to send packets to servers to allow extra preview information such as ender chest previews.
+		   (default value: true)
+		*/
+		"serverIntegration": true,
+		/* The theme to use for preview windows.
+		   SHULKERBOXTOOLTIP: ShulkerBoxTooltip's default look and feel.
+		   VANILLA: Mimics the style of vanilla bundle previews.
+		   (default value: SHULKERBOXTOOLTIP)
+		*/
+		"theme": "SHULKERBOXTOOLTIP",
+		/* The position of the preview window.
+		   INSIDE: Inside the item's tooltip.
+		   OUTSIDE: Outside the item's tooltip, moves depending on the screen borders.
+		   OUTSIDE_TOP: Always at the top of the item's tooltip.
+		   OUTSIDE_BOTTOM: Always at the bottom of the item's tooltip.
+		   (default value: INSIDE)
+		*/
+		"position": "INSIDE",
+		/* If on, large item counts in compact previews will be shortened.
+		   (default value: true)
+		*/
+		"shortItemCounts": true
+	},
+	"tooltip": {
+		/* Controls whether the key hints in the container's tooltip should be displayed.
+		   (default value: true)
+		*/
+		"showKeyHints": false,
+		/* The tooltip to use.
+		   VANILLA: The vanilla tooltip (shows the first 5 items)
+		   MOD: The mod's tooltip
+		   NONE: No tooltip
+		   (default value: MOD)
+		*/
+		"type": "MOD",
+		/* Shows info about the current loot table of the item if present.
+		   Visible only when Tooltip Type is set to Modded.
+		   HIDE: No loot table info, default.
+		   SIMPLE: Displays whether the stack uses a loot table.
+		   ADVANCED: Shows the loot table used by the item.
+		   (default value: HIDE)
+		*/
+		"lootTableInfoType": "HIDE",
+		/* If on, the mod hides the custom text on shulker box tooltips.
+		   Use this option when a server-side preview data pack clashes with the mod.
+		   (default value: false)
+		*/
+		"hideShulkerBoxLore": false
+	},
+	"colors": {
+		/* Controls whether the preview window should be colored.
+		   (default value: true)
+		*/
+		"coloredPreview": false,
+		"colors": {
+			"shulkerboxtooltip:shulker_boxes": {
+				// (default value: 0x976797)
+				"shulker_box": 0x976797,
+				// (default value: 0xf9fffe)
+				"white_shulker_box": 0xf9fffe,
+				// (default value: 0xf98026)
+				"orange_shulker_box": 0xf98026,
+				// (default value: 0xc74ebd)
+				"magenta_shulker_box": 0xc74ebd,
+				// (default value: 0x3ab3da)
+				"light_blue_shulker_box": 0x3ab3da,
+				// (default value: 0xfed83d)
+				"yellow_shulker_box": 0xfed83d,
+				// (default value: 0x80c726)
+				"lime_shulker_box": 0x80c726,
+				// (default value: 0xf38baa)
+				"pink_shulker_box": 0xf38baa,
+				// (default value: 0x474f52)
+				"gray_shulker_box": 0x474f52,
+				// (default value: 0x9d9d97)
+				"light_gray_shulker_box": 0x9d9d97,
+				// (default value: 0x269c9c)
+				"cyan_shulker_box": 0x269c9c,
+				// (default value: 0x8932b8)
+				"purple_shulker_box": 0x8932b8,
+				// (default value: 0x3c44aa)
+				"blue_shulker_box": 0x3c44aa,
+				// (default value: 0x835432)
+				"brown_shulker_box": 0x835432,
+				// (default value: 0x5e7c26)
+				"green_shulker_box": 0x5e7c26,
+				// (default value: 0xb02e26)
+				"red_shulker_box": 0xb02e26,
+				// (default value: 0x262626)
+				"black_shulker_box": 0x262626
+			},
+			"shulkerboxtooltip:default": {
+				// (default value: 0xffffff)
+				"default": 0xffffff,
+				// (default value: 0xb4b41)
+				"ender_chest": 0xb4b41
+			}
+		}
+	},
+	"controls": {
+		/* Press this key when hovering a container stack to open the preview window.
+		   (default value: key.keyboard.left.shift)
+		*/
+		"previewKey": {
+			"code": "key.keyboard.unknown"
+		},
+		/* Press this key when hovering a container stack to open the full preview window.
+		   (default value: key.keyboard.left.alt)
+		*/
+		"fullPreviewKey": {
+			"code": "key.keyboard.unknown"
+		},
+		/* Hold this key when previewing a stack to lock the tooltip.
+		   (default value: key.keyboard.left.control)
+		*/
+		"lockTooltipKey": {
+			"code": "key.keyboard.left.control"
+		}
+	},
+	"server": {
+		/* If on, the server will be able to provide extra information about containers to the clients with the mod installed.
+		   Disabling this option will disable all the options below.
+		   (default value: true)
+		*/
+		"clientIntegration": true,
+		/* Changes the way the ender chest content preview is synchronized.
+		   NONE: No synchronization, prevents clients from seeing a preview of their ender chest.
+		   ACTIVE: Ender chest contents are synchronized when changed.
+		   PASSIVE: Ender chest contents are synchronized when the client opens a preview.
+		   (default value: ACTIVE)
+		*/
+		"enderChestSyncType": "ACTIVE"
+	}
+}
\ No newline at end of file
diff --git a/config/visuality.json b/config/visuality.json
deleted file mode 100644
index bdc10d2..0000000
--- a/config/visuality.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
-  "slimeEnabled": false,
-  "chargeEnabled": false,
-  "sparkleEnabled": false,
-  "soulEnabled": false,
-  "waterCircles": {
-    "density": 10,
-    "radius": 16,
-    "enabled": true,
-    "colored": true
-  },
-  "hitParticlesEnabled": false,
-  "hitParticleEntries": [
-    "minecraft:skeleton/visuality:bone",
-    "minecraft:skeleton_horse/visuality:bone",
-    "minecraft:stray/visuality:bone",
-    "minecraft:wither_skeleton/visuality:wither_bone",
-    "minecraft:chicken/visuality:feather",
-    "minecraft:villager/visuality:emerald"
-  ],
-  "shinyArmorEnabled": false,
-  "shinyArmorEntries": [
-    "minecraft:golden_helmet",
-    "minecraft:golden_chestplate",
-    "minecraft:golden_leggings",
-    "minecraft:golden_boots",
-    "minecraft:diamond_helmet",
-    "minecraft:diamond_chestplate",
-    "minecraft:diamond_leggings",
-    "minecraft:diamond_boots"
-  ],
-  "shinyBlocksEnabled": false,
-  "shinyBlockEntries": [
-    "minecraft:gold_ore",
-    "minecraft:deepslate_gold_ore",
-    "minecraft:nether_gold_ore",
-    "minecraft:diamond_ore",
-    "minecraft:deepslate_diamond_ore",
-    "minecraft:emerald_ore",
-    "minecraft:deepslate_emerald_ore"
-  ]
-}
\ No newline at end of file
diff --git a/config/xaerominimap.txt b/config/xaerominimap.txt
index 318006d..d394ae0 100755
--- a/config/xaerominimap.txt
+++ b/config/xaerominimap.txt
@@ -7,7 +7,7 @@ debugEntityIcons:false
 debugEntityVariantIds:false
 radarHideInvisibleEntities:true
 #INGAME SETTINGS (DO NOT EDIT!)
-updateNotification:true
+updateNotification:false
 minimap:true
 caveMaps:2
 caveZoom:1
diff --git a/config/xaeroworldmap.txt b/config/xaeroworldmap.txt
index 862b7f7..6909fed 100755
--- a/config/xaeroworldmap.txt
+++ b/config/xaeroworldmap.txt
@@ -1,5 +1,5 @@
 ignoreUpdate:0
-updateNotification:true
+updateNotification:false
 differentiateByServerAddress:true
 caveMapsAllowed:true
 debug:false
diff --git a/index.toml b/index.toml
index 6bdb085..95b3b5b 100644
--- a/index.toml
+++ b/index.toml
@@ -1,10 +1,10 @@
 hash-format = "sha256"
 
 [[files]]
-file = "config/capes.json5"
+file = "config/bobby.conf"
 
 [[files]]
-file = "config/craftpresence.json"
+file = "config/capes.json5"
 
 [[files]]
 file = "config/defaultoptions/keybindings.txt"
@@ -12,21 +12,9 @@ file = "config/defaultoptions/keybindings.txt"
 [[files]]
 file = "config/defaultoptions/options.txt"
 
-[[files]]
-file = "config/inventoryprofilesnext/inventoryprofiles.json"
-
-[[files]]
-file = "config/isxander-main-menu-credits.json"
-
-[[files]]
-file = "config/replaymod.json"
-
 [[files]]
 file = "config/roughlyenoughitems/config.json5"
 
-[[files]]
-file = "config/visuality.json"
-
 [[files]]
 file = "config/waila/waila.json"
 
@@ -62,10 +50,6 @@ metafile = true
 file = "mods/architectury-api.pw.toml"
 metafile = true
 
-[[files]]
-file = "mods/auth-me.pw.toml"
-metafile = true
-
 [[files]]
 file = "mods/badpackets.pw.toml"
 metafile = true
@@ -78,6 +62,10 @@ metafile = true
 file = "mods/bobby.pw.toml"
 metafile = true
 
+[[files]]
+file = "mods/capes-1-20-4.pw.toml"
+metafile = true
+
 [[files]]
 file = "mods/cloth-config.pw.toml"
 metafile = true
@@ -86,10 +74,6 @@ metafile = true
 file = "mods/default-options.pw.toml"
 metafile = true
 
-[[files]]
-file = "mods/entityculling.pw.toml"
-metafile = true
-
 [[files]]
 file = "mods/fabric-api.pw.toml"
 metafile = true
@@ -99,11 +83,11 @@ file = "mods/fabric-language-kotlin.pw.toml"
 metafile = true
 
 [[files]]
-file = "mods/indium.pw.toml"
+file = "mods/forge-config-api-port.pw.toml"
 metafile = true
 
 [[files]]
-file = "mods/inventory-profiles-next.pw.toml"
+file = "mods/indium.pw.toml"
 metafile = true
 
 [[files]]
@@ -114,16 +98,16 @@ metafile = true
 file = "mods/krypton.pw.toml"
 metafile = true
 
-[[files]]
-file = "mods/libipn.pw.toml"
-metafile = true
-
 [[files]]
 file = "mods/modmenu.pw.toml"
 metafile = true
 
 [[files]]
-file = "mods/optigui.pw.toml"
+file = "mods/mouse-wheelie.pw.toml"
+metafile = true
+
+[[files]]
+file = "mods/open-parties-and-claims.pw.toml"
 metafile = true
 
 [[files]]
@@ -142,6 +126,10 @@ metafile = true
 file = "mods/rei.pw.toml"
 metafile = true
 
+[[files]]
+file = "mods/shulkerboxtooltip.pw.toml"
+metafile = true
+
 [[files]]
 file = "mods/sodium-extra.pw.toml"
 metafile = true
@@ -154,10 +142,6 @@ metafile = true
 file = "mods/sound-physics-remastered.pw.toml"
 metafile = true
 
-[[files]]
-file = "mods/spark.pw.toml"
-metafile = true
-
 [[files]]
 file = "mods/starlight.pw.toml"
 metafile = true
@@ -167,11 +151,11 @@ file = "mods/viafabricplus.pw.toml"
 metafile = true
 
 [[files]]
-file = "mods/worldedit.pw.toml"
+file = "mods/worldedit-cui.pw.toml"
 metafile = true
 
 [[files]]
-file = "mods/worldeditcui-fabric.pw.toml"
+file = "mods/worldedit.pw.toml"
 metafile = true
 
 [[files]]
@@ -203,30 +187,18 @@ file = "resourcepacks/VanillaTweaks_Lower_Shield.zip"
 [[files]]
 file = "resourcepacks/VanillaTweaks_What.zip"
 
-[[files]]
-file = "resourcepacks/bettervanillabuilding.pw.toml"
-metafile = true
-
-[[files]]
-file = "resourcepacks/bettervanillabuildingoverlays.pw.toml"
-metafile = true
-
-[[files]]
-file = "resourcepacks/bushybiomes.pw.toml"
-metafile = true
-
 [[files]]
 file = "resourcepacks/illuminated-shields.pw.toml"
 metafile = true
 
-[[files]]
-file = "resourcepacks/stefansarmorsnitems.pw.toml"
-metafile = true
-
-[[files]]
-file = "resourcepacks/stefansenchantedbooks.pw.toml"
-metafile = true
-
 [[files]]
 file = "shaderpacks/bsl-shaders.pw.toml"
 metafile = true
+
+[[files]]
+file = "shaderpacks/rethinking-voxels.pw.toml"
+metafile = true
+
+[[files]]
+file = "shaderpacks/shrimple.pw.toml"
+metafile = true
diff --git a/mods/3dskinlayers.pw.toml.disabled b/mods/3dskinlayers.pw.toml.disabled
deleted file mode 100644
index ca010fd..0000000
--- a/mods/3dskinlayers.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "3D Skin Layers"
-filename = "3dskinlayers-fabric-1.5.4-mc1.20.1.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/zV5r3pPn/versions/M8d2bZuk/3dskinlayers-fabric-1.5.4-mc1.20.1.jar"
-hash-format = "sha1"
-hash = "175b3e1978bc210d8981959df651f363eb2852fe"
-
-[update]
-[update.modrinth]
-mod-id = "zV5r3pPn"
-version = "M8d2bZuk"
diff --git a/mods/auth-me.pw.toml b/mods/auth-me.pw.toml
deleted file mode 100644
index 33eb3ee..0000000
--- a/mods/auth-me.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Auth Me"
-filename = "authme-8.0.0+1.20.4.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/yjgIrBjZ/versions/HhWVxCH0/authme-8.0.0%2B1.20.4.jar"
-hash-format = "sha1"
-hash = "e20eea2f28a8cf22fa760f14e74bde48304e956c"
-
-[update]
-[update.modrinth]
-mod-id = "yjgIrBjZ"
-version = "HhWVxCH0"
diff --git a/mods/c2me-fabric.pw.toml.disabled b/mods/c2me-fabric.pw.toml.disabled
deleted file mode 100644
index e64314d..0000000
--- a/mods/c2me-fabric.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Concurrent Chunk Management Engine (Fabric)"
-filename = "c2me-fabric-mc1.20.1-0.2.0+alpha.10.96.jar"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/VSNURh3q/versions/iaC5daGO/c2me-fabric-mc1.20.1-0.2.0%2Balpha.10.96.jar"
-hash-format = "sha1"
-hash = "99cbb40ca891a43db73931a52eae43d3dec8ed14"
-
-[update]
-[update.modrinth]
-mod-id = "VSNURh3q"
-version = "iaC5daGO"
diff --git a/mods/can-i-mine-this-block.pw.toml.disabled b/mods/can-i-mine-this-block.pw.toml.disabled
deleted file mode 100644
index d8aeba3..0000000
--- a/mods/can-i-mine-this-block.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "cAn i MiNe thIS bLOCk?"
-filename = "can-i-mine-this-block-1.4.0.jar"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/fEwSlaoa/versions/lZ1YTSiE/can-i-mine-this-block-1.4.0.jar"
-hash-format = "sha1"
-hash = "61a5201d1e7c277b55fe740159c354a824be3b2e"
-
-[update]
-[update.modrinth]
-mod-id = "fEwSlaoa"
-version = "lZ1YTSiE"
diff --git a/mods/capes-1-20-4.pw.toml b/mods/capes-1-20-4.pw.toml
new file mode 100644
index 0000000..0c03785
--- /dev/null
+++ b/mods/capes-1-20-4.pw.toml
@@ -0,0 +1,7 @@
+name = "capes-1-20-4"
+filename = "capes-1.5.3+1.20.4-fabric.jar"
+
+[download]
+url = "https://github.com/DovydasTEDS/Capes-1.20.4/releases/download/1.20.4/capes-1.5.3+1.20.4-fabric.jar"
+hash-format = "sha256"
+hash = "17f1db48ba5f2be0f61ea634f8de9f85bf7a404fce345be90371890963f6bcd8"
diff --git a/mods/cem.pw.toml.disabled b/mods/cem.pw.toml.disabled
deleted file mode 100644
index 157b9ba..0000000
--- a/mods/cem.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Custom Entity Models"
-filename = "cem-0.7.3.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/YOQCucah/versions/xlUWeQ8T/cem-0.7.3.jar"
-hash-format = "sha1"
-hash = "81f6ad8f2a8cd3b18a81234a30b6bb06674069b8"
-
-[update]
-[update.modrinth]
-mod-id = "YOQCucah"
-version = "xlUWeQ8T"
diff --git a/mods/chat-heads.pw.toml.disabled b/mods/chat-heads.pw.toml.disabled
deleted file mode 100644
index cd27e7b..0000000
--- a/mods/chat-heads.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Chat Heads"
-filename = "chat_heads-0.10.20-fabric-1.20.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/Wb5oqrBJ/versions/CJCClsCd/chat_heads-0.10.20-fabric-1.20.jar"
-hash-format = "sha1"
-hash = "edeabe8ac04275f066b452c0ca86ae465b5fb914"
-
-[update]
-[update.modrinth]
-mod-id = "Wb5oqrBJ"
-version = "CJCClsCd"
diff --git a/mods/cit-resewn.pw.toml.disabled b/mods/cit-resewn.pw.toml.disabled
deleted file mode 100644
index 577379e..0000000
--- a/mods/cit-resewn.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "CIT Resewn"
-filename = "CITResewn-1.1.3+1.20.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/otVJckYQ/versions/c7Lo4vij/CITResewn-1.1.3%2B1.20.jar"
-hash-format = "sha1"
-hash = "53f036ebe51d7d97afaf44d541775c92c4470dad"
-
-[update]
-[update.modrinth]
-mod-id = "otVJckYQ"
-version = "c7Lo4vij"
diff --git a/mods/client-ping.pw.toml.disabled b/mods/client-ping.pw.toml.disabled
deleted file mode 100644
index 23acf1b..0000000
--- a/mods/client-ping.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Client Ping"
-filename = "client_ping-1.2.0+1.20.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/74r5ytO7/versions/HtIrGkYu/client_ping-1.2.0%2B1.20.jar"
-hash-format = "sha1"
-hash = "8857f78477f869f0bbd4b4c77844fa7ecdfd268a"
-
-[update]
-[update.modrinth]
-mod-id = "74r5ytO7"
-version = "HtIrGkYu"
diff --git a/mods/continuity.pw.toml.disabled b/mods/continuity.pw.toml.disabled
deleted file mode 100644
index 3f3b595..0000000
--- a/mods/continuity.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Continuity"
-filename = "continuity-3.0.0-beta.3+1.20.1.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/1IjD5062/versions/xy2co4Rh/continuity-3.0.0-beta.3%2B1.20.1.jar"
-hash-format = "sha1"
-hash = "28fa0bc995fe240d17fcb1b2c8de8b0afd98213e"
-
-[update]
-[update.modrinth]
-mod-id = "1IjD5062"
-version = "xy2co4Rh"
diff --git a/mods/craftpresence.pw.toml.disabled b/mods/craftpresence.pw.toml.disabled
deleted file mode 100644
index 8bf711a..0000000
--- a/mods/craftpresence.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "CraftPresence"
-filename = "CraftPresence-2.2.1+1.20.1.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/DFqQfIBR/versions/WH5EsWqo/CraftPresence-2.2.1%2B1.20.1.jar"
-hash-format = "sha1"
-hash = "c44f9915b71bfa7b1ac5d4fd42d681b7494473aa"
-
-[update]
-[update.modrinth]
-mod-id = "DFqQfIBR"
-version = "WH5EsWqo"
diff --git a/mods/cull-less-leaves.pw.toml.disabled b/mods/cull-less-leaves.pw.toml.disabled
deleted file mode 100644
index 6f5620b..0000000
--- a/mods/cull-less-leaves.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Cull Less Leaves"
-filename = "CullLessLeaves-1.2.0.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/iG6ZHsUV/versions/mafk58Fm/CullLessLeaves-1.2.0.jar"
-hash-format = "sha1"
-hash = "405914c77d3d38e6dad3b2b33fbd44f92c2fba6d"
-
-[update]
-[update.modrinth]
-mod-id = "iG6ZHsUV"
-version = "mafk58Fm"
diff --git a/mods/dcch.pw.toml.disabled b/mods/dcch.pw.toml.disabled
deleted file mode 100644
index 5e471f8..0000000
--- a/mods/dcch.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Don't Clear Chat History"
-filename = "DCCH-2.0+1.17.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/sUbMm93i/versions/2.0%2B1.17/DCCH-2.0%2B1.17.jar"
-hash-format = "sha1"
-hash = "e1fb1682e8d25b024490fc5593db27590b226e29"
-
-[update]
-[update.modrinth]
-mod-id = "sUbMm93i"
-version = "O4vDf8eh"
diff --git a/mods/dynamic-fps.pw.toml.disabled b/mods/dynamic-fps.pw.toml.disabled
deleted file mode 100644
index 728a66c..0000000
--- a/mods/dynamic-fps.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Dynamic FPS"
-filename = "dynamic-fps-2.4.0.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/LQ3K71Q1/versions/Usg995P0/dynamic-fps-2.4.0.jar"
-hash-format = "sha1"
-hash = "8f8dc48343df6bd07aad944f4fe09f33dc737184"
-
-[update]
-[update.modrinth]
-mod-id = "LQ3K71Q1"
-version = "Usg995P0"
diff --git a/mods/ears.pw.toml.disabled b/mods/ears.pw.toml.disabled
deleted file mode 100644
index e6a0e0f..0000000
--- a/mods/ears.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Ears (+ Snouts/Muzzles, Tails, Horns, Wings, and More)"
-filename = "ears-fabric-1.20-1.4.6.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/mfzaZK3Z/versions/Lr5BTYBp/ears-fabric-1.20-1.4.6.jar"
-hash-format = "sha1"
-hash = "26316f8d2ee10a00fc438e068f24accd9f8c0ded"
-
-[update]
-[update.modrinth]
-mod-id = "mfzaZK3Z"
-version = "Lr5BTYBp"
diff --git a/mods/entityculling.pw.toml b/mods/entityculling.pw.toml
deleted file mode 100644
index d5ee1fb..0000000
--- a/mods/entityculling.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "EntityCulling"
-filename = "entityculling-fabric-1.6.3.1-mc1.20.4.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/NNAgCjsB/versions/HSirwtwV/entityculling-fabric-1.6.3.1-mc1.20.4.jar"
-hash-format = "sha1"
-hash = "898794f5fe7051ce2c58c3c32e34d785fec7761d"
-
-[update]
-[update.modrinth]
-mod-id = "NNAgCjsB"
-version = "HSirwtwV"
diff --git a/mods/fabric-api.pw.toml b/mods/fabric-api.pw.toml
index 0aa7e27..507e029 100644
--- a/mods/fabric-api.pw.toml
+++ b/mods/fabric-api.pw.toml
@@ -1,13 +1,13 @@
 name = "Fabric API"
-filename = "fabric-api-0.95.0+1.20.4.jar"
+filename = "fabric-api-0.95.1+1.20.4.jar"
 side = "both"
 
 [download]
-url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/cXkV2nJO/fabric-api-0.95.0%2B1.20.4.jar"
+url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/TvatZFJI/fabric-api-0.95.1%2B1.20.4.jar"
 hash-format = "sha1"
-hash = "e072a9dd8fccc9ffe61196f3379439788109d048"
+hash = "ffda830e5741660e14e1880e8d6b500acd6f58c5"
 
 [update]
 [update.modrinth]
 mod-id = "P7dR8mSH"
-version = "cXkV2nJO"
+version = "TvatZFJI"
diff --git a/mods/fabrishot.pw.toml.disabled b/mods/fabrishot.pw.toml.disabled
deleted file mode 100644
index 017075a..0000000
--- a/mods/fabrishot.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Fabrishot"
-filename = "fabrishot-1.10.0.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/3qsfQtE9/versions/fLwacDtJ/fabrishot-1.10.0.jar"
-hash-format = "sha1"
-hash = "15cd04a988726aa4f45fe59813c384329f5d8b94"
-
-[update]
-[update.modrinth]
-mod-id = "3qsfQtE9"
-version = "fLwacDtJ"
diff --git a/mods/forge-config-api-port.pw.toml b/mods/forge-config-api-port.pw.toml
new file mode 100644
index 0000000..42f667c
--- /dev/null
+++ b/mods/forge-config-api-port.pw.toml
@@ -0,0 +1,13 @@
+name = "Forge Config API Port"
+filename = "ForgeConfigAPIPort-v20.4.3-1.20.4-Fabric.jar"
+side = "both"
+
+[download]
+url = "https://cdn.modrinth.com/data/ohNO6lps/versions/xbVGsTLe/ForgeConfigAPIPort-v20.4.3-1.20.4-Fabric.jar"
+hash-format = "sha1"
+hash = "d868c7cc72c0d3dc933baa4ef99eb63662a70c90"
+
+[update]
+[update.modrinth]
+mod-id = "ohNO6lps"
+version = "xbVGsTLe"
diff --git a/mods/inspecio.pw.toml.disabled b/mods/inspecio.pw.toml.disabled
deleted file mode 100644
index f792ad4..0000000
--- a/mods/inspecio.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Inspecio"
-filename = "inspecio-1.8.1+1.20.jar"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/a93H3mKU/versions/9fkuAmia/inspecio-1.8.1%2B1.20.jar"
-hash-format = "sha1"
-hash = "54c163318a121848c4b4544a53f81f6cb5d0a67c"
-
-[update]
-[update.modrinth]
-mod-id = "a93H3mKU"
-version = "9fkuAmia"
diff --git a/mods/inventory-profiles-next.pw.toml b/mods/inventory-profiles-next.pw.toml
deleted file mode 100644
index 042c431..0000000
--- a/mods/inventory-profiles-next.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Inventory Profiles Next"
-filename = "InventoryProfilesNext-fabric-1.20.3-1.10.9.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/O7RBXm3n/versions/d8yvXfBk/InventoryProfilesNext-fabric-1.20.3-1.10.9.jar"
-hash-format = "sha1"
-hash = "09be5800d028949bc7b7345b5f0d1149d1c75da7"
-
-[update]
-[update.modrinth]
-mod-id = "O7RBXm3n"
-version = "d8yvXfBk"
diff --git a/mods/libipn.pw.toml b/mods/libipn.pw.toml
deleted file mode 100644
index d0bd0a3..0000000
--- a/mods/libipn.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "libIPN"
-filename = "libIPN-fabric-1.20.3-4.0.1.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/onSQdWhM/versions/2EisczBm/libIPN-fabric-1.20.3-4.0.1.jar"
-hash-format = "sha1"
-hash = "a9a9b97d8e9331144170670fde2981d7c503a758"
-
-[update]
-[update.modrinth]
-mod-id = "onSQdWhM"
-version = "2EisczBm"
diff --git a/mods/light-overlay.pw.toml.disabled b/mods/light-overlay.pw.toml.disabled
deleted file mode 100644
index d280cf5..0000000
--- a/mods/light-overlay.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Light Overlay"
-filename = "light-overlay-8.0.0.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/YfOlc91N/versions/FQVuf0Wz/light-overlay-8.0.0.jar"
-hash-format = "sha1"
-hash = "ba9d6db7b84d9b00b74e4fb04f137c96d080cb0a"
-
-[update]
-[update.modrinth]
-mod-id = "YfOlc91N"
-version = "FQVuf0Wz"
diff --git a/mods/main-menu-credits.pw.toml.disabled b/mods/main-menu-credits.pw.toml.disabled
deleted file mode 100644
index 4774d8a..0000000
--- a/mods/main-menu-credits.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Main Menu Credits"
-filename = "main-menu-credits-1.1.2.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/qJDfP7WN/versions/hWX5REu6/main-menu-credits-1.1.2.jar"
-hash-format = "sha1"
-hash = "771eb704928c6d3e9fdf0e7971ba7d97305e09dd"
-
-[update]
-[update.modrinth]
-mod-id = "qJDfP7WN"
-version = "hWX5REu6"
diff --git a/mods/memoryleakfix.pw.toml.disabled b/mods/memoryleakfix.pw.toml.disabled
deleted file mode 100644
index 21b9ea8..0000000
--- a/mods/memoryleakfix.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Memory Leak Fix"
-filename = "memoryleakfix-fabric-1.17+-1.1.1.jar"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/NRjRiSSD/versions/kLyFtyv2/memoryleakfix-fabric-1.17%2B-1.1.1.jar"
-hash-format = "sha1"
-hash = "2bc5237993e08fd491d410bb646838cda4999bed"
-
-[update]
-[update.modrinth]
-mod-id = "NRjRiSSD"
-version = "kLyFtyv2"
diff --git a/mods/mouse-wheelie.pw.toml b/mods/mouse-wheelie.pw.toml
new file mode 100644
index 0000000..199a987
--- /dev/null
+++ b/mods/mouse-wheelie.pw.toml
@@ -0,0 +1,13 @@
+name = "Mouse Wheelie"
+filename = "mousewheelie-1.13.3+mc1.20.4.jar"
+side = "client"
+
+[download]
+url = "https://cdn.modrinth.com/data/u5Ic2U1u/versions/73ivfwq5/mousewheelie-1.13.3%2Bmc1.20.4.jar"
+hash-format = "sha1"
+hash = "df092b18978ff3f9bae332f8ddf31b29850f2edc"
+
+[update]
+[update.modrinth]
+mod-id = "u5Ic2U1u"
+version = "73ivfwq5"
diff --git a/mods/not-enough-animations.pw.toml.disabled b/mods/not-enough-animations.pw.toml.disabled
deleted file mode 100644
index 8bf3465..0000000
--- a/mods/not-enough-animations.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Not Enough Animations"
-filename = "notenoughanimations-fabric-1.6.4-mc1.20.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/MPCX6s5C/versions/6auoqhMp/notenoughanimations-fabric-1.6.4-mc1.20.jar"
-hash-format = "sha1"
-hash = "8397ccb8afcf16e7f27e5f0d5ca5c2346ee5330d"
-
-[update]
-[update.modrinth]
-mod-id = "MPCX6s5C"
-version = "6auoqhMp"
diff --git a/mods/open-parties-and-claims.pw.toml b/mods/open-parties-and-claims.pw.toml
new file mode 100644
index 0000000..b82ed54
--- /dev/null
+++ b/mods/open-parties-and-claims.pw.toml
@@ -0,0 +1,13 @@
+name = "Open Parties and Claims"
+filename = "open-parties-and-claims-fabric-1.20.4-0.20.4.jar"
+side = "both"
+
+[download]
+url = "https://cdn.modrinth.com/data/gF3BGWvG/versions/yTZcBgLb/open-parties-and-claims-fabric-1.20.4-0.20.4.jar"
+hash-format = "sha1"
+hash = "df430e31ef27704cafa6608ba01b817e24f75dd6"
+
+[update]
+[update.modrinth]
+mod-id = "gF3BGWvG"
+version = "yTZcBgLb"
diff --git a/mods/optigui.pw.toml b/mods/optigui.pw.toml
deleted file mode 100644
index 508f6c5..0000000
--- a/mods/optigui.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "OptiGUI"
-filename = "optigui-2.1.7.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/JuksLGBQ/versions/xpfegZsE/optigui-2.1.7.jar"
-hash-format = "sha1"
-hash = "47040b4c65b6381ca61bc3af61fee4df279b5eec"
-
-[update]
-[update.modrinth]
-mod-id = "JuksLGBQ"
-version = "xpfegZsE"
diff --git a/mods/qsl.pw.toml.disabled b/mods/qsl.pw.toml.disabled
deleted file mode 100644
index e3cf352..0000000
--- a/mods/qsl.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Quilted Fabric API (QFAPI) / Quilt Standard Libraries (QSL)"
-filename = "qfapi-7.1.1_qsl-6.1.1_fapi-0.86.1_mc-1.20.1.jar"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/qvIfYCYJ/versions/ugK6veHN/qfapi-7.1.1_qsl-6.1.1_fapi-0.86.1_mc-1.20.1.jar"
-hash-format = "sha1"
-hash = "6c8117b9f5e502e9dbb2facda1ef4dfcc79f559a"
-
-[update]
-[update.modrinth]
-mod-id = "qvIfYCYJ"
-version = "ugK6veHN"
diff --git a/mods/shulkerboxtooltip.pw.toml b/mods/shulkerboxtooltip.pw.toml
new file mode 100644
index 0000000..35a719d
--- /dev/null
+++ b/mods/shulkerboxtooltip.pw.toml
@@ -0,0 +1,13 @@
+name = "Shulker Box Tooltip"
+filename = "shulkerboxtooltip-fabric-4.0.8+1.20.4.jar"
+side = "client"
+
+[download]
+url = "https://cdn.modrinth.com/data/2M01OLQq/versions/R23hymvz/shulkerboxtooltip-fabric-4.0.8%2B1.20.4.jar"
+hash-format = "sha1"
+hash = "170972b46c2758567f2d3beb93a72b095bf5cafb"
+
+[update]
+[update.modrinth]
+mod-id = "2M01OLQq"
+version = "R23hymvz"
diff --git a/mods/spark.pw.toml b/mods/spark.pw.toml
deleted file mode 100644
index 59e737d..0000000
--- a/mods/spark.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "spark"
-filename = "spark-1.10.58-fabric.jar"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/l6YH9Als/versions/FeV5OquF/spark-1.10.58-fabric.jar"
-hash-format = "sha1"
-hash = "33bbc9f51ae33023edb264b8c4f4259f358703ad"
-
-[update]
-[update.modrinth]
-mod-id = "l6YH9Als"
-version = "FeV5OquF"
diff --git a/mods/visuality.pw.toml.disabled b/mods/visuality.pw.toml.disabled
deleted file mode 100644
index 6fdf46d..0000000
--- a/mods/visuality.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Visuality"
-filename = "visuality-0.7.0+1.20.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/rI0hvYcd/versions/BipSJ05N/visuality-0.7.0%2B1.20.jar"
-hash-format = "sha1"
-hash = "20b7510b37d920890835b5e79b56204367799259"
-
-[update]
-[update.modrinth]
-mod-id = "rI0hvYcd"
-version = "BipSJ05N"
diff --git a/mods/wavey-capes.pw.toml.disabled b/mods/wavey-capes.pw.toml.disabled
deleted file mode 100644
index 88ca0e7..0000000
--- a/mods/wavey-capes.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Wavey Capes"
-filename = "waveycapes-fabric-1.4.0-mc1.20.jar"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/kYuIpRLv/versions/9ppedk6Z/waveycapes-fabric-1.4.0-mc1.20.jar"
-hash-format = "sha1"
-hash = "ead7d081796c4eb5b7b468a14ac8e688c807d009"
-
-[update]
-[update.modrinth]
-mod-id = "kYuIpRLv"
-version = "9ppedk6Z"
diff --git a/mods/worldedit-cui.pw.toml b/mods/worldedit-cui.pw.toml
new file mode 100644
index 0000000..01da2bd
--- /dev/null
+++ b/mods/worldedit-cui.pw.toml
@@ -0,0 +1,13 @@
+name = "WorldEdit CUI"
+filename = "WorldEditCUI-1.20.3+01.jar"
+side = "client"
+
+[download]
+url = "https://cdn.modrinth.com/data/NSLJJooQ/versions/MsivFd3o/WorldEditCUI-1.20.3%2B01.jar"
+hash-format = "sha1"
+hash = "8771aab5954e90800677662e8378e0c5067d03a0"
+
+[update]
+[update.modrinth]
+mod-id = "NSLJJooQ"
+version = "MsivFd3o"
diff --git a/mods/worldedit.pw.toml b/mods/worldedit.pw.toml
index 98c7147..1f622f3 100644
--- a/mods/worldedit.pw.toml
+++ b/mods/worldedit.pw.toml
@@ -1,13 +1,13 @@
 name = "WorldEdit"
 filename = "worldedit-mod-7.3.0-beta-03-dist.jar"
-side = "both"
+side = "server"
 
 [download]
+url = "https://cdn.modrinth.com/data/1u6JkXh5/versions/rTGh3R1y/worldedit-mod-7.3.0-beta-03-dist.jar"
 hash-format = "sha1"
 hash = "b6438ae8699ed985580abbc98d9b8606ee75051b"
-mode = "metadata:curseforge"
 
 [update]
-[update.curseforge]
-file-id = 4954438
-project-id = 225608
+[update.modrinth]
+mod-id = "1u6JkXh5"
+version = "rTGh3R1y"
diff --git a/mods/worldeditcui-fabric.pw.toml b/mods/worldeditcui-fabric.pw.toml
deleted file mode 100644
index f1415a5..0000000
--- a/mods/worldeditcui-fabric.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "WorldEdit CUI (Fabric)"
-filename = "WorldEditCUI-1.20.3+01.jar"
-side = "both"
-
-[download]
-hash-format = "sha1"
-hash = "8771aab5954e90800677662e8378e0c5067d03a0"
-mode = "metadata:curseforge"
-
-[update]
-[update.curseforge]
-file-id = 4931021
-project-id = 402098
diff --git a/pack.toml b/pack.toml
index ef122de..8e2018b 100644
--- a/pack.toml
+++ b/pack.toml
@@ -1,6 +1,6 @@
 name = "Evan's Pack"
 author = "Evan Pratten"
-version = "1.20.4r1"
+version = "1.20.4r2"
 pack-format = "packwiz:1.1.0"
 
 [index]
@@ -12,5 +12,5 @@ fabric = "0.15.6"
 minecraft = "1.20.4"
 
 [options]
-acceptable-game-versions = ["1.20.3", "1.20.4"]
+acceptable-game-versions = ["1.20.2", "1.20.3", "1.20.4"]
 no-internal-hashes = true
diff --git a/resourcepacks/bettervanillabuilding.pw.toml b/resourcepacks/bettervanillabuilding.pw.toml
deleted file mode 100644
index 7edf93c..0000000
--- a/resourcepacks/bettervanillabuilding.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "BetterVanillaBuilding"
-filename = "BetterVanillaBuildingV2.90.zip"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/LBcosBrl/versions/NNRcCdpo/BetterVanillaBuildingV2.90.zip"
-hash-format = "sha1"
-hash = "113453fec6249242973476f78d3a96a16c47d5fe"
-
-[update]
-[update.modrinth]
-mod-id = "LBcosBrl"
-version = "NNRcCdpo"
diff --git a/resourcepacks/bettervanillabuildingoverlays.pw.toml b/resourcepacks/bettervanillabuildingoverlays.pw.toml
deleted file mode 100644
index d74d6da..0000000
--- a/resourcepacks/bettervanillabuildingoverlays.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "BetterVanillaBuilding Overlays"
-filename = "BvBOverlaysV5.2.zip"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/IsCR9XVF/versions/KpWWkuFX/BvBOverlaysV5.2.zip"
-hash-format = "sha1"
-hash = "c1bfd9987c2a8b62d73553e5917ff7e92cb9903b"
-
-[update]
-[update.modrinth]
-mod-id = "IsCR9XVF"
-version = "KpWWkuFX"
diff --git a/resourcepacks/bushybiomes.pw.toml b/resourcepacks/bushybiomes.pw.toml
deleted file mode 100644
index b7d8ba4..0000000
--- a/resourcepacks/bushybiomes.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Bushy Biomes"
-filename = "BushyBiomesV2.5.2.zip"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/FuudQfX7/versions/zkJXNMld/BushyBiomesV2.5.2.zip"
-hash-format = "sha1"
-hash = "4eb2b25474b8fa8e08e8d9c33dd84cc19fe484ae"
-
-[update]
-[update.modrinth]
-mod-id = "FuudQfX7"
-version = "zkJXNMld"
diff --git a/resourcepacks/stefansarmorsnitems.pw.toml b/resourcepacks/stefansarmorsnitems.pw.toml
deleted file mode 100644
index 9107a2b..0000000
--- a/resourcepacks/stefansarmorsnitems.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Stefan's Armors'N'Items"
-filename = "Stefan'sArmors'N'ItemsV1.26.1.zip"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/SoHN1bmW/versions/tXUiv6b1/Stefan%27sArmors%27N%27ItemsV1.26.1.zip"
-hash-format = "sha1"
-hash = "41e4700f809060c6f91209b1ea363194016f50f6"
-
-[update]
-[update.modrinth]
-mod-id = "SoHN1bmW"
-version = "tXUiv6b1"
diff --git a/resourcepacks/stefansenchantedbooks.pw.toml b/resourcepacks/stefansenchantedbooks.pw.toml
deleted file mode 100644
index aa8a60d..0000000
--- a/resourcepacks/stefansenchantedbooks.pw.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Stefan's Enchanted Books"
-filename = "Stefan'sEnchantedBooks 1.20.zip"
-side = "both"
-
-[download]
-url = "https://cdn.modrinth.com/data/apRwIWGw/versions/QGjUpMPX/Stefan%27sEnchantedBooks%201.20.zip"
-hash-format = "sha1"
-hash = "ecda93802ccdadd3817378bbe884ecc8e059e0ec"
-
-[update]
-[update.modrinth]
-mod-id = "apRwIWGw"
-version = "QGjUpMPX"
diff --git a/shaderpacks/bsl-shaders.pw.toml b/shaderpacks/bsl-shaders.pw.toml
index 668c83d..9bf6283 100644
--- a/shaderpacks/bsl-shaders.pw.toml
+++ b/shaderpacks/bsl-shaders.pw.toml
@@ -1,13 +1,13 @@
 name = "BSL Shaders"
-filename = "BSL_v8.2.04.zip"
+filename = "BSL_v8.2.07.1.zip"
 side = "client"
 
 [download]
-url = "https://cdn.modrinth.com/data/Q1vvjJYV/versions/P1eZktJ3/BSL_v8.2.04.zip"
+url = "https://cdn.modrinth.com/data/Q1vvjJYV/versions/1aQAjQxR/BSL_v8.2.07.1.zip"
 hash-format = "sha1"
-hash = "17baebfe70bc4b0639cc8994e303d9e9b4e96fcf"
+hash = "c630cbff74a5f8e7b039c5f06988abe0a0047d94"
 
 [update]
 [update.modrinth]
 mod-id = "Q1vvjJYV"
-version = "P1eZktJ3"
+version = "1aQAjQxR"
diff --git a/shaderpacks/rethinking-voxels.pw.toml b/shaderpacks/rethinking-voxels.pw.toml
new file mode 100644
index 0000000..8b7191c
--- /dev/null
+++ b/shaderpacks/rethinking-voxels.pw.toml
@@ -0,0 +1,13 @@
+name = "Rethinking Voxels"
+filename = "rethinking-voxels_r0.1_beta2.zip"
+side = "client"
+
+[download]
+url = "https://cdn.modrinth.com/data/kmwfVOoi/versions/kxINFUyA/rethinking-voxels_r0.1_beta2.zip"
+hash-format = "sha1"
+hash = "d72d79ba8525ffbe18acc10e07b38b4ea800c51d"
+
+[update]
+[update.modrinth]
+mod-id = "kmwfVOoi"
+version = "kxINFUyA"
diff --git a/shaderpacks/shrimple.pw.toml b/shaderpacks/shrimple.pw.toml
new file mode 100644
index 0000000..fa8e6b5
--- /dev/null
+++ b/shaderpacks/shrimple.pw.toml
@@ -0,0 +1,13 @@
+name = "Shrimple"
+filename = "Shrimple_v0.10.zip"
+side = "client"
+
+[download]
+url = "https://cdn.modrinth.com/data/BS9T99lD/versions/51aLQA1v/Shrimple_v0.10.zip"
+hash-format = "sha1"
+hash = "54435dd65129b35d1a3fd4f78335556e9d13e224"
+
+[update]
+[update.modrinth]
+mod-id = "BS9T99lD"
+version = "51aLQA1v"
diff --git a/shaderpacks/shrimple.pw.toml.disabled b/shaderpacks/shrimple.pw.toml.disabled
deleted file mode 100644
index 3319176..0000000
--- a/shaderpacks/shrimple.pw.toml.disabled
+++ /dev/null
@@ -1,13 +0,0 @@
-name = "Shrimple"
-filename = "Shrimple_v0.8.zip"
-side = "client"
-
-[download]
-url = "https://cdn.modrinth.com/data/BS9T99lD/versions/9q02tWYN/Shrimple_v0.8.zip"
-hash-format = "sha1"
-hash = "570728dd83e0c603f3dd969130c4c60ec8eba304"
-
-[update]
-[update.modrinth]
-mod-id = "BS9T99lD"
-version = "9q02tWYN"