CurseForge · Minecraft mod
Francium
Replace traditional Random with ThreadLocalRandom in minecraft codes for better performance and higher fps.
Quick answer
Which Francium release should I use?
francium-1.18.2-1.0.1.jar targets 1.18.2 with Forge. The project page does not say whether this file belongs on the client, dedicated server, or both. No extra mods listed for this file.
Where it goes
Is Francium required on the client, server, or both?
The project page does not say whether this file belongs on the client, dedicated server, or both.
The source does not explicitly classify this release as client-only or server-only.
What else does francium-1.18.2-1.0.1.jar need?
francium-1.18.2-1.0.1.jar. Change the file and its required mods may change too.
This file does not list any required mods. Do not add a library just because a different file uses it.
This file does not list any required or optional mods.
Before you install it
Add Francium without breaking your instance.
Built for francium-1.18.2-1.0.1.jar. Pick another file and the loader, install side or required mods may change.
- 01
Stick to this file
Use francium-1.18.2-1.0.1.jar. It targets 1.18.2 with Forge; another release may have different loader, side or dependency requirements.
- 02
Bring the mods it needs
This file does not list any required mods. Do not add a library just because a different file uses it.
- 03
Put it on the correct side
The project page does not say whether this file belongs on the client, dedicated server, or both.
- 04
Pick the file you checked
Use the “Get this file” button beside francium-1.18.2-1.0.1.jar. It opens that exact file at the source.
About this project
What does Francium add?
Francium
Francium is a Forge optimization mod that replaces some Random fields with ThreadLocalRandom for better performance and higher fps.
This is inspired by Faster Random (But Francium doesn't change world generation or other stuff that makes huge difference from vanilla. The only difference so far is the speed of squid tentacle movement speed initialization lol). However, Francium's implementation is wider and more rooted.
ThreadLocalRandom has a property: its setSeed method is not a supported operation, Thus, as long as a Random field is not calling setSeed, Francium can replace it with ThreadLocalRandom.
Client side: Optional
Server side: Optional
Benchmark Info
The below benchmark is outdated due to the security improvement in 1.0.0.
Details: In Francium 1.0.0, To completely avoid the UnsupportedOperationException crash (and this is the only crash Francium may cause) of `ThreadLocalRandom#setSeed`, I did some security improvement so that if a Random field is setSeed, next it will no longer call ThreadLocalRandom.
For players, this security brings down performance improvement for a little bit, in my test my fps improvement dropped to 100 from 150.
Minecraft version: 1.16.5
Java version: Azul Zulu Java 17 (highly recommended, check out ModernFix's wiki!)
Weather: None
Difficulty: Peaceful
Seed: -963323667424106092
Position: -139.746 102.0 -658.997
ModList: 
Entities and item entities have been cleared by Cuneiform commands /killall and /killitems
You can see my play time is 4:29 below, and in these 269 seconds, I have never moved or change my mouse too much (almost completely still).
This has been tested for three times, and the images below are from the third test.
With Francium Installed
Average FPS: 780 ~ 800 
Without Francium Installed
Average FPS: 630 ~ 650 
1.19.2 ~ 1.20.1?
Not currently.
In 1.19.2+, Mojang overhauled random number generation from Java's own Random to a custom RandomSource class.
So if Francium is to support higher versions, it may only be able to undergo simple replacements (Also, the new effects from this replacement is not at all guaranteed to be consistent with vanilla, which is what Francium didn't want.) in specific classes much like Faster Random, and may not be conducive to fundamental reforms like it be in 1.16.5 and 1.18.2, optimization will also be much less effective.
Misc
Join Our discord: https://discord.gg/g8q3UHTpCP!
Project description from CurseForge.
Pick your setup
Francium by Minecraft version and loader
Choose the version and loader you play, then open the matching release.
1.16.5
1 loader buildCheck the dependencies, then try the file in a copied instance before changing a world you care about.
Recent files
Francium versions and loaders
francium-1.18.2-1.0.1.jar
19 Dec 2023
francium-1.16.5-1.0.1.jar
19 Dec 2023
francium-1.16.5-1.0.0.jar
18 Dec 2023
francium-1.18.2-1.0.0.jar
18 Dec 2023
francium-1.18.2-0.0.2.jar
18 Dec 2023
francium-1.16.5-0.0.2.jar
18 Dec 2023
francium-1.18.2-0.0.1.jar
18 Dec 2023
francium-1.16.5-0.0.1.jar
17 Dec 2023
Looking for an older file? The official CurseForge project page is in Resources.