Have you ever made a detailed game, but worried about low-end users not being able to play the game because of the lag? Well, worry not, because this module was made for you!
Perclean is an simple, easy-to-use module focused on a seamless implementation of low-quality mode and other game-performant functions!
You can disable numerous effects with a few lines of code!
Functionality:
This module contains two main functions:
EnableLowQuality
DisableLowQuality
You can select over 4 total effects, each one changing and optimizing a specific thing. Here are all of them:
This can be done very easy, so idea: make a DisableLowQualityLighting() and a DisableLowQualityRendering(). other then that, Keep up the good work, good job!
I don’t get it how does it work, maybe try putting it to ServerScriptService, ReplicatedStorage, ReplicatedFirst, or any Service that you think is a good idea to put on?
Put the module inside ReplicatedStorage, then require the module from a script and try:
while true do
percleanModule.EnableLowQualityLighting()
percleanModule.EnableLowQualityRendering()
task.wait(2.5)
percleanModule.DisableLowQualityLighting()
percleanModule.DisableLowQualityRendering()
task.wait(2.5)
end
Ah okay, I have made this script and I don’t see any difference at all, my game is using Voxel Lighting Technology and I use Graphics Quality 1, Please help, thanks
Script:
local percleanModule = game:GetService("ReplicatedStorage").PercleanModule
while true do
percleanModule.EnableLowQualityLighting()
percleanModule.EnableLowQualityRendering()
task.wait(2.5)
percleanModule.DisableLowQualityLighting()
percleanModule.DisableLowQualityRendering()
task.wait(2.5)
end
If you noticed, when you use Perclean’s functions, it disables CastShadow and GlobalShadow. Plus, all the effects inside lighting have been removed (You can undo this by the way).
You could also try Future lighting, the difference is more visible. Especially with large games.
Sorry, and I tried the script, and worked very well! It even works on my TopbarPlus Settings and I am happy that this worked very nicely, I’ll give a rating of 8/10! Thank you for creating and solving my problems and have a great day sir!
Pretty much, that’s how you make it “low-quality”. I don’t think there’s anything else you could do to make it a game less performance-intensive than just disabling shadows and light effects (and some other tweaks).
And if you ask, “why do I need this module, I could just script this on my own”. Well I mean, sure you can. But the module just saves you time because you would only have to practically type 2 lines of code to add a "low-quality’ functionality to your game.
But hey, if you have any suggestions or things I should add. I would appreciate it!
Take for example, games that on-join let you pick PC or Mobile performance.
If you were using a phone (which can’t handle the heavy game), you would probably wanna get the best optimization for your phone to handle a heavy game. So it’s easier to just toggle all effects rather than toggle lots of options.
And plus, you’re missing the point. It’s fine if you want to make a settings GUI with multiple options, go ahead! But I made this for people who want to make a single low-quality button.
NEW FUNCTION! You can now implement a RenderDistance system to your game (with optional part whitelists)
Completely rewrote the entire module
Put everything in two functions ( EnableLowQuality() & DisableLowQuality())
Optimized the module (removed useless functions and made the code cleaner)
Better enable/disable system for easier implementation of new toggleable effects
Made a GitHub documentation for the module
For this update, I completely went from scratch, rewriting the entire module. I wrote Perclean a pretty long time ago, and back then I wasn’t as good of a programmer as I am now. And plus, the code was pretty messy so yeah.
I’ll probably add more documentation for each and every single toggleable effect included in the module.
Anyways yeah, this may or may not be the last update (unless I think of something else to add in this module, feel free to suggest!)