-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathFps
More file actions
228 lines (196 loc) · 7.05 KB
/
Copy pathFps
File metadata and controls
228 lines (196 loc) · 7.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
-- ============================================
-- S23 Ultra FPS Booster + 120Hz Uncap
-- Optimized for Blox Fruits & High Refresh Phones
-- ============================================
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Lighting = game:GetService("Lighting")
local Workspace = game:GetService("Workspace")
local player = Players.LocalPlayer
-- ============================================
-- STEP 1: UNCAPPED FPS (120Hz+)
-- ============================================
-- Remove 60 FPS cap (set to 0 for unlimited, or 120/144/165 for your display)
if setfpscap then
setfpscap(120) -- Change to 144 or 165 if your display supports it
print("✅ FPS Cap Set to 120")
else
print("⚠️ setfpscap not available in this executor")
end
-- ============================================
-- STEP 2: LIGHTING OPTIMIZATIONS
-- ============================================
-- Aggressive lighting settings for max FPS
Lighting.GlobalShadows = false
Lighting.Technology = Enum.Technology.Compatibility
Lighting.FogEnd = 500 -- Reduce fog distance
Lighting.Brightness = 1.5 -- Slightly brighter to compensate for no shadows
-- Disable expensive lighting effects
for _, effect in pairs(Lighting:GetChildren()) do
if effect:IsA("BlurEffect") or effect:IsA("SunRaysEffect") or effect:IsA("ColorCorrectionEffect") or effect:IsA("BloomEffect") then
effect.Enabled = false
end
end
-- ============================================
-- STEP 3: WORKSPACE OPTIMIZATIONS
-- ============================================
-- LOD settings
Workspace.LevelOfDetail = Enum.ModelLevelOfDetail.Disabled
-- Terrain optimization
if Workspace:FindFirstChildOfClass("Terrain") then
local terrain = Workspace:FindFirstChildOfClass("Terrain")
terrain.WaterWaveSize = 0
terrain.WaterWaveSpeed = 0
terrain.WaterReflectance = 0
terrain.WaterTransparency = 1
end
-- ============================================
-- STEP 4: MASSIVE PARTICLE/ EFFECTS CLEANUP
-- ============================================
local function optimizeObject(obj)
-- Disable all heavy visual effects
if obj:IsA("ParticleEmitter") then
obj.Rate = 0
obj.Enabled = false
elseif obj:IsA("Smoke") or obj:IsA("Fire") or obj:IsA("Sparkles") then
obj.Enabled = false
elseif obj:IsA("Trail") then
obj.Enabled = false
elseif obj:IsA("Beam") then
obj.Enabled = false
elseif obj:IsA("Decal") or obj:IsA("Texture") then
-- Keep decals but could remove for extreme FPS
elseif obj:IsA("BasePart") then
-- Optimize materials (keep character parts normal)
if not obj:IsDescendantOf(player.Character or Instance.new("Model")) then
if obj.Material ~= Enum.Material.Neon and obj.Material ~= Enum.Material.ForceField then
obj.Material = Enum.Material.Plastic
obj.Reflectance = 0
end
end
elseif obj:IsA("MeshPart") then
-- Keep mesh parts but disable shadows
obj.CastShadow = false
elseif obj:IsA("UnionOperation") then
obj.CastShadow = false
end
end
-- Apply to existing objects
for _, obj in pairs(Workspace:GetDescendants()) do
local success = pcall(function()
optimizeObject(obj)
end)
end
-- Apply to new objects
Workspace.DescendantAdded:Connect(function(obj)
task.wait(0.1)
pcall(function()
optimizeObject(obj)
end)
end)
-- ============================================
-- STEP 5: CHARACTER OPTIMIZATION
-- ============================================
local function optimizeCharacter(char)
for _, part in pairs(char:GetDescendants()) do
if part:IsA("BasePart") then
part.CastShadow = false
if part.Name ~= "HumanoidRootPart" and part.Name ~= "Head" then
-- Optional: make accessories plastic
if part:FindFirstChildOfClass("SpecialMesh") or part:IsA("MeshPart") then
-- Keep mesh for visibility but disable shadows
end
end
end
if part:IsA("ParticleEmitter") or part:IsA("Trail") then
-- Keep character effects (aura, etc) but reduce
if part.Rate and part.Rate > 20 then
part.Rate = 20
end
end
end
end
-- Optimize current and future characters
if player.Character then
optimizeCharacter(player.Character)
end
player.CharacterAdded:Connect(optimizeCharacter)
-- Optimize other players (less priority)
Players.PlayerAdded:Connect(function(plr)
plr.CharacterAdded:Connect(function(char)
task.wait(1) -- Delay to not lag on spawn
optimizeCharacter(char)
end)
end)
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= player and plr.Character then
optimizeCharacter(plr.Character)
end
end
-- ============================================
-- STEP 6: FPS COUNTER (Top Right Corner)
-- ============================================
local fpsLabel = Instance.new("ScreenGui")
fpsLabel.Name = "FPSCounter"
fpsLabel.Parent = player:WaitForChild("PlayerGui")
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(0, 150, 0, 30)
textLabel.Position = UDim2.new(1, -160, 0, 10)
textLabel.BackgroundTransparency = 0.5
textLabel.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
textLabel.TextColor3 = Color3.fromRGB(0, 255, 0)
textLabel.TextSize = 18
textLabel.Font = Enum.Font.SourceSansBold
textLabel.Text = "FPS: Calculating..."
textLabel.Parent = fpsLabel
local fpsCounter = 0
local lastTime = tick()
RunService.RenderStepped:Connect(function()
fpsCounter += 1
if tick() - lastTime >= 1 then
local fps = fpsCounter
textLabel.Text = "FPS: " .. fps
-- Color code FPS
if fps >= 100 then
textLabel.TextColor3 = Color3.fromRGB(0, 255, 0) -- Green
elseif fps >= 60 then
textLabel.TextColor3 = Color3.fromRGB(255, 255, 0) -- Yellow
else
textLabel.TextColor3 = Color3.fromRGB(255, 0, 0) -- Red
end
fpsCounter = 0
lastTime = tick()
end
end)
-- ============================================
-- STEP 7: OPTIONAL AUTO-BOOST (Every 30 sec)
-- ============================================
task.spawn(function()
while true do
task.wait(30)
-- Re-apply optimizations periodically
for _, obj in pairs(Workspace:GetDescendants()) do
if obj:IsA("ParticleEmitter") and obj.Enabled then
if obj.Rate > 50 then
obj.Rate = 0
end
end
end
end
end)
-- ============================================
-- DONE
-- ============================================
print("========================================")
print("🚀 S23 FPS BOOSTER ACTIVATED")
print("Target: 120 FPS")
print("Features: Uncapped + Optimized")
print("========================================")
-- Notification
if game:GetService("StarterGui") then
game:GetService("StarterGui"):SetCore("SendNotification", {
Title = "FPS Booster",
Text = "120Hz Mode Activated!",
Duration = 3
})
end