Mod

Francium

Quick rating

Francium

No reviews yet

Replace traditional Random with ThreadLocalRandom in minecraft codes for better performance and higher fps.

No Theme
No Genre
Performance & Optimization
Mod Loaders
Forge
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Dev Environment
Client Optional
Server Optional

About

Project Details

Type
Mod
License
GNU Lesser General Public License v3.0 or later
Latest Version
francium-1.18.2-1.0.1.jar
Authors

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

Source Issues Wiki Discord

About

Description

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: img.png

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 img.png

Without Francium Installed

Average FPS: 630 ~ 650 img.png

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!

image

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: img.png

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 img.png

Without Francium Installed

Average FPS: 630 ~ 650 img.png

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!

image

Screenshots

Gallery

This project has no gallery images yet.

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

~380,000
Total Downloads
CurseForge
~330,000
Modrinth
~42,000
Last Updated
CurseForge
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched and imported data for this project from CurseForge or Modrinth. High-traffic and active projects are checked more often.
Next pipeline sync