Skip to content

A Forge mod full of Vanilla bug fixes, Quality of Life improvements, and performance enhancements.

License

Notifications You must be signed in to change notification settings

Polyfrost/PolyPatcher

 
 

Repository files navigation

PolyPatcher

oneconfig logo Dev Workflow Status

PolyPatcher is a Forge mod for 1.8.9 & 1.12.2 created to improve your all-around Minecraft experience, bringing tons of Quality of Life additions, performance improvements, and tons of Vanilla bug fixes.

This work, "PolyPatcher", is adapted from "Patcher" by Sk1erLLC, used under CC BY-NC-SA 4.0. "PolyPatcher" is licensed under CC BY-NC-SA 4.0 by Polyfrost. This is a fork of Sk1erLLC's original mod, adding various changes and improvements as well as using OneConfig instead of Essential. For the original, please go here to download the mod.

Feature List

Bug Fixes

Bug Fixes

  • Keep Shaders on Perspective Change - Resolve Vanilla shaders being cleared when changing perspective. *default
  • Parallax Fix - Resolve the camera being too far back, seemingly making your eyes be in the back of your head. (Currently makes the F3 crosshair disappear.) MC-1846.
  • Culling Fix - Resolve false negatives in frustum culling, creating invisible chunks in some cases. (Can negatively impact performance.) MC-63020 & MC-70850
  • Layers In Tab - Resolve players sometimes not having a hat layer in Tab. *default
  • Player Void Rendering - Resolve the black box around the player while in the void. *default
  • Alex Arm Position - Resolve Alex-model arms being shifted down further than Steve-model arms. *default
  • Add Background to Book GUI (not in original) - Adds the dark background to the book GUI like all other containers/menus.
  • Resource Exploit Fix - Resolve an exploit in 1.8 allowing servers to look through directories. *default
  • Forge Chest Behavior - Resolve forge changing vanilla chest behavior. *default
  • Vanilla Held Item Lighting (not in original) - Amends a Forge bug causing item sides to have incorrect lighting compared to Vanilla 1.8. *default
  • OptiFine Custom Sky Fix (toggle not in original) - Resolve OptiFine creating a "black box" effect at the bottom of the sky when using custom skies. Changes the rendering of the normal sky. *default
Experimental

Experimental

  • Entrypoint Caching (not in original) - Cache Forge mod entry points, improving startup time as Forge no longer needs to walk through every class to find the @Mod annotation. Requires two restarts to take full effect. *default
  • Improved Skin Rendering (not in original) - Remove transparent pixels on skins instead of turning them black.
  • HUD Caching - Reuse frames from the HUD instead of constantly recreating them every frame, as most HUD elements will stay the same for a long amount of time. (This may cause stuff with animations to feel "choppy".)
  • Cache FPS (not in original) - The amount of frames to cache for the HUD.
Miscellaneous

Miscellaneous

  • Remove Ground Foliage - Stop plants/flower from rendering.
  • 1.12 Farm Selection Boxes - Replace the selection box for crops with the 1.12 variant. (Only works on Hypixel & Singleplayer) *default
  • Exclude Cacti from 1.12 Boxes (not in original) - Exclude cacti from the 1.12 selection box changes, as it would actually shrink rather than increase in size. *default
  • Remove Water FOV (not in original) - Remove FOV change when underwater. *default
  • FOV Modifier - Allow for modifying FOV change states.
  • Sprinting FOV - Modify your FOV when sprinting.
  • Flying FOV (not in original) - Modify your FOV when flying.
  • Bow FOV - Modify your FOV when pulling back a bow.
  • Speed FOV - Modify your FOV when having the speed effect.
  • Slowness FOV - Modify Your FOV when having the slowness effect.
  • Better Keybind Handling - Makes keys re-register when closing a GUI, like in 1.12+. (Does not work on macOS due to LWJGL issues) *default
  • Separate Sound & Texture Reloading - Separate reloading resources into reloading sounds (F3+S) and reloading textures (F3+T).
  • Disable Hotbar Scrolling - Remove the ability to scroll through your hotbar.
  • Invert Hotbar Scrolling (not in original) - Change the direction of scrolling in your hotbar.
  • Prevent Overflow Hotbar Scrolling (not in original) - Prevent from directly scrolling between the first and last hotbar slot.
  • Crosshair Perspective - Remove the crosshair when in third person. (replaced by PolyCrosshair)
  • Unfocused Sounds - Change the volume of sounds when you're not tabbed into the window.
  • Unfocused FPS - Toggle changing your FPS to whatever Unfocused FPS is set to when not tabbed into the window.**
  • Unfocused FPS Amount - Change the maximum FPS when you're not tabbed into the window, saving resources.
  • Log Optimizer - Delete all files in the logs folder, as these can usually take up a lot of space. (These files are not recoverable once deleted)
  • Log Optimizer Amount - Choose how many days old a file must be before being deleted.
  • Better Camera - Stop tall grass, plants, reeds, etc. from affecting your FOV as done in 1.14+. *default
  • Better F1 - Hide nametags when in F1 mode. *default
  • Remove Screen Bobbing - While using View Bobbing, only remove the view aspect but have the hand still bounce around.
  • Remove Map Bobbing - While using View Bobbing, remove the hand bobbing when holding a map.
  • Static Items - Stop items from bobbing up and down when dropped on the ground.
  • Modify Every Sound - Open a separate GUI allowing you to mute or amplify individual sounds.
  • Natural Capes (not in original) - Changes some physics in capes to fix rotation bugs and look more natural.
  • Smooth Scrolling (not in original) - Smoothly scrolls through vanilla Minecraft GUIs.
  • Zoom Adjustment - Scroll when using OptiFine's zoom to adjust the zoom level. *default
  • Remove Smooth Camera While Zoomed - Remove the smooth camera effect when using zoom.
  • Render Hand While Zoomed - Keep your hand on screen when you zoom in.
  • Zoom Sensitivity - Use a custom mouse sensitivity value when zoomed in. This is a percentage of your normal sensitivity.
  • Dynamic Zoom Sensitivity - Reduce your mouse sensitivity the more you zoom in.
  • Smooth Zoom Animation - Add a smooth animation when you zoom in and out.
  • Smooth Scroll-to-Zoom Animation - Add a smooth animation when you scroll in and out while zoomed.
  • Smooth Zoom Function - Change the smoothing function used in the smooth zooming animation.
  • Toggle to Zoom - Make OptiFine's zoom key a toggle instead of requiring you to hold it.
  • Simplify FPS Counter - Remove the additions OptiFine L5 and above makes to the debug screen fps counter. *default
  • Use Vanilla Metrics Renderer - Replace OptiFine's ALT+F3 metrics renderer with the Vanilla renderer. *default
  • Distortion Effects (not in original) - Changes the distortion effects (e.g. Nausea and nether portal distortion).
  • Disable Achievements - Remove achievement notification.
  • Fire Overlay Height - Change the height of the fire overlay.
  • Fire Overlay Opacity - Change the opacity of the fire overlay.
  • Hide Fire Overlay with Fire Resistance - Hide the fire overlay when you have fire resistance active. The overlay will blink 5 seconds before your fire resistance is about to run out.
  • Pumpkin Overlay Opacity (not in original) - Change the opacity of the pumpkin overlay.
  • Remove Water Overlay - Remove the water texture overlay when underwater.
  • Remove Inverted Colors from Crosshair - Remove the inverted color effect on the crosshair. (replaced by PolyCrosshair)
  • Fullbright - Remove lighting updates, increasing visibility. (Can positively impact performance. May conflict with minimaps) *default
  • Smart Fullbright - Automatically Disable the Fullbright Effect when using OptiFine Shaders. (Requires Fullbright) *default
  • Disable Night Vision (not in original) - Completely disables the effects of night vision.
  • Cleaner Night Vision (not in original) - Makes the night vision effect fade out instead of a flashing effect.
  • Show Own Nametag - See your nametag in third person. (replaced by PolyNametag)
  • Clean Projectiles - Show projectiles 2 ticks after they're shot up to stop them from obstructing your view. (Includes eggs, snowballs, and fishing hooks)
  • Ridden Horse Opacity - Change the opacity of the horse you're currently riding for visibility.
  • Water Fog Density (not in original) - Changes the fog density in water to improve visibility.
  • Hide Aura on Invisible Withers - Don't render the aura around a wither when it is invisible.
  • Numerical Enchantments - Use readable numbers instead of Roman numerals on enchants.
  • Translate Unknown Roman Numerals - Generate Roman Numeral from enchantment/potion level instead of using language file. *default
  • Clean View - Stop rendering your potion effect particles. (replaced by OverflowParticles)
  • Disable Breaking Particles - Remove block-breaking particles for visibility. (replaced by OverflowParticles)
  • Disable Lightning Bolts - Stop lightning bolts from rendering.
  • Alternate Text Shadow - Change the text-shadow to only move down rather than move to the side.
  • Add Text Shadow to Nametags - Render nametag with shadowed text. (replaced by PolyNametag)
  • Add Text Shadow to Actionbar - Render actionbar messages with shadowed text. (replaced by VanillaHUD)
  • Add Background to Actionbar - Render a background behind the actionbar. (replaced by VanillaHUD)
  • Disable Text Shadow - Remove shadows from text. (Can positively impact performance).
  • Left Hand in First Person - Render the first-person hand on the left of the screen.
  • Toggle Tab - Hold tab open without needing to hold down the tab key. (replaced by VanillaHUD)
  • Number Ping - Show a readable ping number in tab instead of bars. (replaced by VanillaHUD)
  • Disable Titles - Stop titles from appearing. (replaced by VanillaHUD)
  • Title Scale - Set the scale for titles. (replaced by VanillaHUD)
  • Automatically Scale Title - Automatically scale titles if the title goes over the screen.
  • Title Opacity - Change the opacity of titles. (replaced by VanillaHUD)
  • Windowed Fullscreen - Implement Windowed Fullscreen in Minecraft, allowing you to drag your mouse outside the window.
  • Instant Fullscreen - Instant switching between fullscreen and non-fullscreen modes.
  • Fix Action Bar Overlap - Prevents action bar text from overlapping with armor or health bars. (replaced by VanillaHUD)
Performance

Performance

  • Entity Culling - Check to see if an entity is visible to the player before attempting to render them. *default
  • Entity Culling Interval - The amount of time in ms between occlusion checks for entities. Shorter periods are more costly toward performance but provide the most accurate information. Lower values are recommended in competitive environments.
  • Smart Entity Culling - Disable Entity Culling effect when using OptiFine shaders. (Due to the way OptiFine shaders work, we are unable to make Entity Culling compatible). *default
  • Don't Cull Ender Dragons (not in original) - Continue to render Ender Dragons when the entity is being occluded.
  • Don't Cull Withers (not in original) - Continue to render Withers when the entity is being occluded.
  • Don't Cull Player Nametags - Continue to render Player Nametags when the entity is being occluded. *default
  • Don't Cull Entity Nametags - Continue to render Entity Nametags when the entity is being occluded. *default
  • Don't Cull Armorstand Nametags - Continue to render Armorstand Nametags when the entity is being occluded. *default
  • Check Armorstand Rules - Don't cull armor stands that have a specific rule assigned to them. This will result in a lot of non-occluded armor stands in places like Hypixel Skyblock, but will resolve special entities being occluded when they typically shouldn't be.
  • Entity Back-face Culling - Stop rendering sides of entities that you cannot see. Being inside an entity will cause that body part to be invisible. (Some models may have a transparent face and will cause the back face to not show, such as Wither Skeletons.)
  • Player Back-face Culling - Stop rendering sides of players that you cannot see. Being inside a player will cause that body part to be invisible.
  • Disable Armorstands - Stop armor stands from rendering. (Armor stands are commonly used for NPC nametag rendering. Enabling this will stop those from rendering as well)
  • Disable Semitransparent Players - Stop semitransparent players from rendering.
  • Disable Enchantment Books - Stop enchantment table books from rendering.
  • Disable Item Frames - Stop item frames from rendering.
  • Disable Mapped Item frames - Stop item frames only with maps as their item from rendering.
  • Disable Grounded Arrows - Stop arrows that are in the ground from rendering.
  • Disable Attached Arrows - Stop arrows that are attached to a player from rendering.
  • Disable Skulls - Stop skulls from rendering.
  • Disable Falling Blocks (not in original) - Stops falling blocks from rendering.
  • Disable Nametags Boxes - Remove the transparent box around the nametag. (replaced by PolyNametag)
  • Unstacked Items - Render stacks of items on the ground as just one instead of having up to 5 copies in one stack.
  • Entity Render Distance Toggle - Toggle allowing a custom entity render distance.
  • Tile Entity Render Distance (not in original) - Stop rendering tile entities outside of a specified radius.
  • Hostile Entity Render Distance - Stop rendering hostile entities outside a specified radius.
  • Passive Entity Render Distance - Stop rendering passive entities outside a specified radius.
  • Player Entity Render Distance - Stop rendering player entities outside a specified radius.
  • Global Entity Render Distance - Stop rendering all entities outside a specified radius. This will ignore the distance of other entity render distances if smaller.
  • Disable End Portals - Stop end portals from rendering.
  • Disable Enchantment Glint - Disable the enchantment glint.
  • Static Particle Color - Disable particle lighting checks each frame. *default (replaced by OverflowParticles)
  • Max Particle Limit - Stop additional particles from appearing when there are too many at once. (replaced by OverflowParticles)
  • Downscale Pack Images - Change all pack icons to 64x64 to reduce memory usage. *default
  • Optimized Font Renderer - Use modern rendering techniques to improve font renderer performance. *default (Optimization Test)
  • Cache Font Data - Cache font data, allowing for it to be reused multiple times before needing recalculation. *default (Optimization Test)
  • Optimized World Swapping - Remove unnecessary garbage collection & screen displaying to make world swapping feel nearly instant. *default
  • Limit Chunk Updates - Limit the number of chunk updates that happen a second.
  • Chunk Update Limit - Specify the number of updates that can happen a second.
  • Low Animation Tick - Lowers the number of animations that happen a second from 1000 to 500. *default
  • Batch Model Rendering - Render models in a single draw call. *default
Screens

Screens

  • 1.11 Chat Length - Extend the number of characters you can type from 100 to 256 on supported servers. (Supported servers are servers that support 1.11 or above. Some servers may kick you for this despite supporting 1.11 or above) *default
  • Remove Chat Message Limit (not in original) - Remove the limit on how many messages can show up in chat. *default
  • Transparent Chat - Remove the background from chat. (Can positively impact performance). (replaced by Chatting)
  • Transparent Chat Input Field - Remove the background from chat's input field. (Can positively impact performance). (replaced by Chatting)
  • Extend Chat Background - Extend the chat background all the way to the left of the screen. *default (replaced by Chatting)
  • Compact Chat - Clean up the chat by stacking duplicate messages (Does not work with Labymod) *default
  • Consecutive Compact Chat - Only compact messages if they're consecutive.
  • Compact Chat Time - Change the amount of time old messages take to stop being compacted. (Measured in seconds)
  • Remove Blank Messages - Stop messages with no content from showing up in chat.
  • Shift Chat - Keep chat open while sending a message if Shift is held while pressing Enter.
  • Chat Delay - Delay chat messages if they're sent within the selected timeframe after the previous message. (Measured in seconds)
  • Chat Position - Move the chat up 12 pixels to stop it from overlapping the health bar, as done in 1.12+. *default (replaced by Chatting)
  • Chat Timestamps - Add timestamps before a message.
  • Chat Timestamps Style - Choose how Chat Timestamps should appear.
  • Chat Timestamps Format - Change the time format of Chat Timestamps.
  • Show Seconds on Timestamps - Show the seconds on a timestamped message.
  • Safe Chat Clicks - Show the command or link that is run/opened on click.
  • Damage Glance - View the damage value of the currently held item above your hotbar.
  • Item Count Glance - View the total amount of the currently held item above your hotbar.
  • Enchantment Glance - View the enchantments of the currently held item above your hotbar.
  • Protection Percentage - View how much total armor protection you have inside your inventory.
  • Projectile Protection Percentage - View how much total projectile protection you have inside your inventory.
  • Container Background Opacity (not in original) - Change the opacity of the dark background inside a container, or remove it completely.
  • Container Opacity - Change the opacity of supported containers. Includes Chests & Survival inventory.
  • GUI Crosshair - Stop rendering the crosshair when in a GUI. (replaced by PolyCrosshair)
  • Startup Notification - Notify how long the game took to start. *default
  • Clean Main Menu - Remove the Realms button on the main menu as it's useless on 1.8.9. *default
  • Open to LAN Replacement - Modify the Open to LAN button to either redirect to the server list or be removed.
  • Smart Disconnect - Choose between disconnecting or relogging when clicking the disconnect button. (Only works on multiplayer servers)
  • Image Preview - Preview image links when hovering over a supported URL. Press shift to use fullscreen and Control to render in native image resolution. (Currently supported: Imgur, Discord, Badlion screenshots)
  • Image Preview Width - The % of screen width to be used for image preview.
  • Inventory Position - Stop potion effects from shifting your inventory to the right. *default
  • Click Out of Containers - Click outside a container to close the menu.
  • Inventory Scale - Change the scale of your inventory independent of your GUI scale.
  • Tab Opacity - Change the tab list opacity. (replaced by VanillaHUD)
  • Tab Height - Move the tab overlay down the selected amount of pixels when there's an active bossbar. (replaced by VanillaHUD)
  • Set Tab Height - Choose how many pixels tab will move down when there's an active bossbar (replaced by VanillaHUD)
Screenshots

Screenshots

  • No Feedback - Remove the messages from screenshots entirely.
  • Compact Response - Compact the message given when screenshotting.
  • Favorite Screenshot - Show a text component that allows you to delete a screenshot. *default
  • Delete Screenshot - Show a text component that allows you to delete. *default
  • Upload Screenshot - Show a text component that allows you to upload a screenshot to Imgur. *default
  • Copy Screenshot - Show a text component that allows you to copy a screenshot. *default
  • Open Screenshots Folder - Show a text component that allows you to open the screenshots folder. *default
  • Screenshot Manager - Change the way screenshotting works as a whole, creating a whole new process to screenshotting such as uploading to Imgur, copying to clipboard, etc. *default
  • Auto Copy Screenshot - Automatically copy screenshots to the clipboard when taken.
  • Screenshot Preview - Preview the look of your screenshot when taken in the bottom right corner.
  • Preview Time - Adjust how long the preview should stay on the screen before sliding out. time is measured in seconds.
  • Preview Animation - Select an animation style for the screenshot preview.
  • Preview Scale - Change the scale of the preview.
Changes from original mod

Changes from original mod

PolyPatcher 1.10.1:

  • Add toggle for "OptiFine Custom Sky Fix"
  • Fix compatibility with NormalASM
  • Fix alpha not being set when rendering container slots

PolyPatcher 1.10.0:

  • Boost performance by only rendering special tile entities once instead of twice per frame (e.g beacons)

  • Boost performance by unloading tile entities quicker

  • Boost performance by optimizing adding normals to vertex formats

  • Boost performance by reducing allocations in EnumFacing

  • Fix vanilla log spam with Util class

  • Fix vanilla texture manager memory leak

  • Fix vanilla enchantment memory leak

  • Fix vanilla server list from buffering

  • Fix vanilla light initializing too early

  • Fix vanilla bug where invalid tile entities try to render

  • Fix vanilla bug where entities don't render at certain camera angles below Y=0 and above Y=255

  • Fix vanilla bug where spaces are not trimmed in server address fields

  • Fix vanilla bug where the pumpkin overlay shows in spectator mode

  • Decrease startup time significantly by computing part of FML mod loading asynchronously

  • Decrease startup time by replacing unnecessary regexes during mod loading

  • Decrease startup time by skipping first baking in ModelLoader

  • Boost performance by switching some Forge internals over to FastUtil

  • Boost performance by improving insertion into Forge's inventory wrappers

  • Boost performance of Forge's block state implementation

  • Add micro-optimization in the FML registry

  • Reduce memory usage of Forge model transformations

  • Fix OBJModel-related Forge memory leaks

  • Fix Forge bug by skipping fatal models

  • "Entrypoint Caching" feature

    • Cache Forge mod entry points, improving startup time as Forge no longer needs to walk through every class to find the @Mod annotation.
    • This will only work after your second launch with PolyPatcher 1.10.0, because it needs to cache this data first.
    • This decreases startup time significantly
  • Compact LUT Tables / Fast Math (replaces BetterFPS / OptiFine Fast Math)

  • Add toggle for cacti in "1.12 Farm Selection Boxes"

    • This fixes cacti farming in SkyBlock.
  • New experimental option to improve head rendering by removing black pixels ("Improved Skin Rendering")

  • Add "Background to Book GUI"

  • Add "Flying FOV" to "FOV Modifier"

  • Fix compatibility with CensoredASM

  • Make "Resource Exploit Fix" not do any extra validation other than detecting the exploit

  • Fix "Compact Chat" scrolling

  • Fix entity outline compatibility with "Entity Culling"

  • Fix "HUDCaching" issues with vignette and crosshair color

  • Fix "FOV Modifier" with high speed or slowness

PolyPatcher 1.9.2:

None

PolyPatcher 1.9.1:

  • Reload language-related managers only when selecting a new language in vanilla Minecraft
  • Fix parallax fix making debug crosshair disappear
  • Try-catch sound menu to prevent crashes

PolyPatcher 1.9.0:

  • Replace Essential with OneConfig
  • Boost performance by batch-drawing tile entities
  • Boost performance by reducing quad counts in item models
  • Fix Forge held item lighting to match vanilla
  • Fix vanilla bug where entering an entity in spectator mode while in third person applies shaders
  • Fix vanilla bug where enchantment glint takes up the whole slot
  • Fix vanilla bug where items glitch out when using negative scale
  • Fix vanilla sky lighting calculation
  • Add ability to change HUD Caching FPS
  • Add "Natural Capes" feature
  • Add "Pumpkin Overlay Opacity"
  • Add "Cleaner Night Vision" and "Disable Night Vision"
  • Add Invert Hotbar Scrolling
  • Add Prevent Overflow Hotbar Scrolling
  • Add "Disable Falling Blocks"
  • Replace "Remove Container Background" with "Container Background Opacity"
  • Replace "Nausea Effect" toggle to "Distortion Effects" slider
  • Add ability to change tile entity render distance
  • Add ability not to cull ender dragons and withers from Entity Culling
  • Fix very rare crash on Minecraft's main menu
  • Re-add "Remove Water FOV"
  • Re-add "Remove Chat Message Limit" feature
  • Remove features replaced by various Polyfrost mods
    • Please install VanillaHUD for any title-related, actionbar-related, or tablist-related features
    • Please install PolyCrosshair for any crosshair-related features
    • Please install PolyNametag for any nametag-related features
    • Please install OverflowParticles for any particle-related features ("Clean View," "Disable Breaking Particles," "Static Particle Color," "Max Particle Limit")
    • Please install OverflowAnimations for "Remove Vertical Bobbing"
  • Change all opacity options to percentages
  • Remove Patcher version info from debug HUD


Replacement Mods

Replacement Mods

PolyPatcher reproduces the functionality of these mods and as such, they are no longer needed.

This list may not always be up-to-date. To view an updated list, click here

  • Case Commands
  • Command Patcher
  • Compact Chat
  • Cross Chat
  • Item Optimizations
  • MouseBindFix
  • Resource Exploit Fix
  • Windowed Fullscreen (sk1er_fullscreen)
  • Clean View Replaced by OverflowParticles instead
  • MemoryFix
  • MouseDelayFix
  • NoCloseMyChat
  • Vanilla Enhancements
  • PortalInputFix
  • BetterScaledGUI
  • Void Chat
  • Fullbright
  • InputFix
  • HUDCaching
  • NoScroll
License disclaimers

PolyPatcher uses code from CaffeineMC's lithium mod, licensed under the LGPL-3.0 license.

PolyPatcher uses code from CaffeineMC's hydrogen mod, licensed under the LGPL-3.0 license.

About

A Forge mod full of Vanilla bug fixes, Quality of Life improvements, and performance enhancements.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 99.3%
  • Kotlin 0.7%