Phantom Forces FPS Guide: What Actually Helps

I queued into a 32-player Metro lobby last week on Phantom Forces and my FPS tanked from a steady 140 down into the 80s the moment the round loaded. Same rig that handles Warzone fine. I’ve been playing PF since 2018, and this exact scenario (certain maps, certain player counts) is where most people first realize their PC has a Phantom Forces problem rather than a general Roblox problem.

I’m Alex Park. Ryzen 5 5600, RTX 3060, 144Hz 1440p. I’m going to break down what actually moves your FPS in Phantom Forces, what doesn’t, and why Metro and Warehouse specifically are such problem maps.

PF isn’t a typical Roblox game

Phantom Forces runs on a heavily custom version of the Roblox engine. StyLiS Studios rebuilt a lot of systems (hit registration, recoil, weapon mechanics) on top of the base platform. That means PF is generally heavier than an average Roblox experience, and it responds differently to settings changes.

In practice that means:

  • Some Roblox-wide FastFlags don’t behave the same in PF as in other games
  • Map geometry and lighting varies a lot across the rotation
  • Player count matters more than in most Roblox experiences because of the bullet physics

I’d put PF’s GPU load in the medium-heavy bracket for Roblox overall. Not as bad as some ray-traced showcase games, but definitely more than Adopt Me or Brookhaven.

Why Metro and Warehouse tank harder

Metro and Warehouse are two of the worst performing maps in my experience. Here’s my theory after running dozens of sessions on both:

  • Metro: Lots of dynamic lighting, fluorescent-style strip lights, reflective surfaces, and tight sightlines that force the engine to render more geometry close to camera. Smoke grenades kill it further.
  • Warehouse: Heavy particle effects (debris, dust), dense prop clutter, and a lot of overlapping translucent surfaces.

Compare these to Crane Site or Desert Storm, which are open maps with simpler lighting. Those run noticeably better on my rig. The lesson: it’s not just your PC, it’s the map. If you’re consistently frustrated by certain maps, map-vote for cleaner ones while you tweak settings.

Graphics slider vs FastFlag override

The in-game graphics slider in PF (which is really just the Roblox-wide setting) affects a bunch of things bundled together: lighting quality, shadow distance, texture LOD. Lower it and you get more frames. Raise it and the map looks prettier.

FastFlags give you finer control. They’re internal Roblox client flags that Bloxstrap lets you edit. Some FastFlags affect specific rendering features that the slider bundles together. For example, you can potentially reduce shadow quality without touching overall lighting fidelity.

I want to be careful here. FastFlags change between Roblox client updates. A flag that boosts FPS in April 2026 might do nothing or crash the client in July 2026. Don’t treat any specific flag list as permanent. I’ve got a general primer in my FastFlag FPS cap article that explains what to look for.

Should I lower my graphics slider all the way to 1?

Probably not. There’s a sweet spot around 5-7 where visuals are still usable for identifying enemies at range, but most of the expensive lighting is dialed back. Dropping to 1 strips so much detail that you actually lose tactical information (enemy outlines against dark backgrounds, for instance). I run 7 on my RTX 3060 and it looks fine while leaving GPU headroom for 141 FPS cap.

On weaker hardware (GTX 1050, integrated graphics) 3 to 5 is more realistic. Below 3 the game starts looking genuinely rough.

[IMAGE: Phantom Forces Metro map rendered at graphics level 7 showing the main subway platform with fluorescent lighting, FPS counter visible at 141 in top-right]

PF-specific FastFlags that help

I’ll name categories rather than specific flag IDs because those change. What I’d investigate in Bloxstrap’s FastFlag editor for Phantom Forces:

  • Shadow-related flags: reducing shadow resolution or range has a real GPU impact in Metro specifically
  • Particle density flags: smoke and debris particles are surprisingly expensive
  • Rendering thread flags: some allow the engine to use more CPU threads for rendering
  • Material quality flags: PVC and metal material rendering can be dialed down

When I’ve tweaked these on my rig, the gains on Metro were meaningful. I’m not going to throw a specific percentage because server load, player count, and time of day all swing the number. Qualitatively: Metro went from “feels bad in firefights” to “feels fine in firefights.”

Don’t paste a 50-flag list from a 2023 Reddit thread. Try two or three flags, test, revert if they don’t help or cause visual bugs.

NVIDIA Control Panel settings for PF

This is where I’d focus before even touching FastFlags. The global settings that have made the biggest difference for me:

  • Power Management Mode: Prefer Maximum Performance. Stops your GPU from downclocking between frames.
  • Low Latency Mode: Ultra.
  • Texture Filtering Quality: High Performance (this is fine for Roblox; the visual difference is minimal).
  • Threaded Optimization: On.
  • Vertical Sync: Off (let your FPS cap handle this, plus G-Sync if available).
  • Shader Cache Size: Unlimited.

On AMD, the equivalents are in Radeon Software under the game-specific profile. Anti-Lag on, Radeon Boost off (it scales resolution dynamically and can cause weird visuals in PF).

My Metro before-and-after

Here’s what I can say about my rig (RTX 3060, Ryzen 5 5600, 32GB RAM) on a full 32-player Metro server:

Default Roblox settings, graphics at 10, no unlocker: Capped at 60. Feels decent but input lag is noticeable, especially during whip-turns.

rbxfpsunlocker at 141, graphics at 10: Dips into the 80s during firefights with smoke. Playable but uneven frame pacing.

rbxfpsunlocker at 141, graphics at 7, NVIDIA optimized: Holds 141 most of the time, occasional dips in heavy smoke to the 110s. This is where the game feels great.

Bloxstrap with shadow FastFlags toned down, graphics at 7: Very stable 141, no perceptible dips in firefights. This is my current setup.

The jump from stock to the first tweak (unlocker plus graphics 7) is the biggest. Everything after that is diminishing returns. If you only do one thing, install an unlocker and drop graphics to 7.

Things that don’t meaningfully help

I’ve seen a lot of advice online that’s either outdated or never helped much. Things I’ve tested that didn’t move the needle:

  • Running Roblox as administrator. No change in FPS that I can measure.
  • Setting process priority to High via Task Manager. Tiny effect at best.
  • Disabling Windows visual effects. PF doesn’t care.
  • “Game Booster” apps. Most are snake oil. A few are actively harmful because they kill processes Windows needs.
  • Overclocking your GPU for PF specifically. If you’re already hitting your FPS cap, more GPU clock just makes you louder.

Focus on the big rocks: unlocker, in-game graphics, NVIDIA settings, FastFlags in that order. The small stuff is noise.

Does PF have its own FPS cap separate from Roblox’s?

No. PF uses Roblox’s rendering pipeline, so the cap behavior is whatever the client’s doing. If you uncap Roblox, you uncap PF. If you use Roblox’s built-in FPS target (which I cover here), it applies to PF too. There’s no separate PF setting.

That said, PF has its own visual options (crosshair, FOV, recoil camera), and some of those have tiny performance implications. Enabling FOV that’s very wide does increase what the GPU has to render. I run 90 FOV and it’s fine.

CPU vs GPU bottleneck in PF

Roblox is historically single-thread heavy. PF doesn’t change that. If you’ve got a last-gen quad-core and a strong GPU, your CPU is probably the bottleneck in 32-player lobbies.

How to check: open Task Manager’s Performance tab while playing. If one CPU core is pegged at 100% and the GPU is at 60-70%, you’re CPU-bound. Lowering graphics settings won’t help much because the bottleneck is somewhere else.

CPU-bound means upgrading GPU alone won’t fix your PF experience. It also means FastFlags that reduce CPU-side load (physics tick optimizations) help more than graphics tweaks for you.

Are you still capped at 60 after all this?

If you’ve installed an unlocker and your FPS counter is still saying 60 in PF, something’s overriding it. Usually it’s NVIDIA Control Panel’s global VSync setting, or the Xbox Game Bar frame rate limiter, or a leftover setting from a different game. I wrote a full troubleshooting flow for this in my still capped at 60 FPS post. Work through that first if the unlocker seems broken.

Also worth checking: make sure rbxfpsunlocker is actually running in your system tray. The installer doesn’t always set it to auto-start. If the tray icon isn’t there, your cap isn’t lifted.

My Phantom Forces setup summarized

For anyone who wants the cheat sheet:

  • Bloxstrap (for FastFlag access) or rbxfpsunlocker (for simplicity)
  • FPS cap at 141 on a 144Hz monitor
  • In-game graphics: 7
  • NVIDIA: Low Latency Ultra, Prefer Max Performance, Threaded Optimization On
  • Discord overlay off, Chrome closed
  • Map vote away from Metro/Warehouse when possible if you’re on weaker hardware

That’s it. You don’t need a 50-line FastFlag config. You don’t need to overclock. You need sensible settings and the FPS cap removed. PF rewards this more than most Roblox games because its combat is so reaction-time sensitive.

Get your FPS up, get your frame pacing stable, and you’ll notice it the next time you rotate corners on Metro. That’s the whole game.

Alex Park, April 2026. Ryzen 5 5600, RTX 3060, 144Hz 1440p.

Leave a Comment