RealOverride 0.8.6.7 (beta)
=====================
Graphics settings editor for Unreal Engine games, with an optional live mode.

- Engine.ini mode (always available): writes your choices to the game's Engine.ini
  ([SystemSettings]). Never modifies game files. Changes apply on the next launch.
- Live mode (optional, per game): installs UE4SS plus a small RealOverride Lua mod
  ("UETunerBridge") in the game's folder. Changes then apply while you play, the
  app shows whether each one actually took effect, and your saved settings are
  re-applied on every load so they stick after relaunch.

FIRST RUN
1. Right-click the downloaded zip > Properties > tick "Unblock" > OK. Then extract it.
2. Double-click "RealOverride.exe".
   If Windows shows "Windows protected your PC", click More info > Run anyway
   (the app isn't code-signed yet).
   If your antivirus blocks RealOverride.exe, "Start RealOverride.bat" starts the same
   app with Windows PowerShell instead.
3. For The Blood of Dawnwalker: launch the game once, reach the main menu, then quit,
   so it creates its config folder.

USING IT
- Compact panel: drag the top bar to move it, and any edge or corner to resize it. The pin
  button keeps it above the game (windowed or borderless; Windows can't draw over
  exclusive fullscreen). Gear = settings. Position and size are remembered.
- Background opacity: gear > Appearance (35-100%, default 100%). Only the background
  fades; text and controls stay solid.
- Click the game card's arrow to switch games, and the "i" for notes about the game.
- PRESETS: "My settings" is your own saved settings and is highlighted by default. A dot
  on it means unsaved changes; clicking it goes back to your saved settings. The other
  presets fill in a set of values; press Save to keep them.
- SETTINGS GROUPS: the icons down the left side are the groups (Stutter, Image, Lighting,
  Shadows, ...). Click one to show its settings, or press the Up / Down arrow keys. Hover
  an icon for its name and what it does. A blue number on an icon = settings you changed
  there and haven't saved yet. The top icon lists every unsaved change from all groups.
- Each setting is a slider. Moving it (or clicking it) means RealOverride sets that value
  (blue). The circular-arrow button next to it hands the setting back to the game (grey).
- Hover a setting's name for a short explanation and its console name. Bars = GPU cost
  (taller and warmer = more cost: green low, amber medium, orange-red high).
- "Save" writes Engine.ini (and the Lua mod's profile if live mode is installed). It says
  what it will do, e.g. "Save 2 changes"; hover it for the list. After saving it shows
  "Changes saved" for a moment, then "All saved" (greyed out) until you change something.
  "Revert" undoes your unsaved changes. Closing RealOverride or switching games with
  unsaved changes asks inside the panel: Save, Don't save or Cancel. With the game running, Save stores the Lua mod
  profile only; Engine.ini is written when you Save with the game closed.

OVERLAY SHORTCUT
- Press Insert (default) while playing: RealOverride appears over the game. Press it again
  to hide it. Change it in gear > Overlay shortcut (click it, then press the keys you
  want; Esc cancels). The shortcut only works while the game is running, so the key
  behaves normally in other apps.
- The shortcut also works in games that block normal shortcuts while they are in front
  (for example Crisol: Theater of Idols). While the game runs, the game itself does not
  receive that key.
- While hidden, RealOverride stays in the tray (bottom-right of the taskbar). Click the
  icon to show it; right-click for Exit. Starting RealOverride again also brings it back
  (only one copy runs at a time).
- RealOverride opens the game you used last. If a game is already running, it opens that
  one, and it switches by itself when you start a different game (only when nothing
  is unsaved).
- Use the game in borderless / windowed fullscreen. Windows can't show other windows
  over exclusive fullscreen; there, the shortcut switches away from the game.
- gear > Don't take focus from the game (on by default): you can click and drag in UE
  Tuner while the game stays the active window, so it keeps its full FPS (Windows and
  your CPU driver favour the active window). Open the game's pause menu or any screen
  with a free mouse cursor, then use the panel. Keyboard input keeps going to the game;
  RealOverride takes focus only for a moment when you set a new shortcut.
- gear > Keep the game running (on by default): the game keeps full speed while UE
  Tuner has focus (live mode), and keeps full sound volume from the next game launch
  (written to Engine.ini when you Save). If the game has its own "pause / mute in
  background" option in its menu, turn that off too.

LIVE MODE
1. With the game closed, click "Install live mode" on the game card. RealOverride downloads
   UE4SS from its official GitHub release (or you can pick a UE4SS zip you already
   have) and adds the bridge mod. If RealOverride can't find the game, click the folder button
   on the game card (or "Choose..." under the game name) and pick the game's .exe.
2. Start the game. The dot turns blue when the bridge connects (first launch can take
   up to a minute while UE4SS scans the game).
3. Under each slider, "game: ..." is the value the game is using; settings the game
   decides follow it. Changes apply within about a second, and a badge shows the result:
   green check = applied, red x = not accepted (try Save + restart; if it stays red,
   this game doesn't support it), yellow "=" = already set (the game had 0 already; confirmed
   automatically once the setting shows any other value, remembered per game).
   After you close the game, "last seen: ..." shows values from the last session.
4. Press Save to keep them. Settings tagged GAME RESTART are read at game start: Save, then restart the game.
5. In-game, press F10 to re-apply your saved settings (use it after changing the
   game's own graphics menu, which can overwrite them). This tip is also shown under
   the game card's "i" button.
- Updating RealOverride updates the bridge mod automatically (with the game closed).
- Gear > Uninstall live mode removes exactly the files RealOverride added. If UE4SS was
  already installed by you, only the bridge mod is removed.
- If the game crashes at startup after installing, uninstall and send the UE4SS log
  (gear > UE4SS log) for a fix.
- Live mode refuses to install in games with anti-cheat (Easy Anti-Cheat, BattlEye).
- UE4SS comes with sample mods switched on (cheat manager, developer console, Blueprint
  mod loader). RealOverride doesn't need them and some can crash games or take over F10, so
  it switches them off in installs it made (in ue4ss\Mods\mods.txt and mods.json).
  A UE4SS you installed yourself is left as it is.

UNDO
- Every save keeps an Engine.ini backup in %LOCALAPPDATA%\RealOverride\backups\<game>.
- Gear > Restore original Engine.ini puts it back exactly as it was before RealOverride's first
  save, and clears your RealOverride settings for that game (live mode too). It asks first,
  and keeps a copy of the Engine.ini it replaces in the backups folder, so it can be undone.

LICENSES
- See THIRD_PARTY_NOTICES.txt (also under gear > About & licenses).
  UE4SS is MIT-licensed open-source software by the UE4SS-RE team.

WHAT'S NEW IN 0.8.6.7
- Smooth play: RealOverride's helper in the game no longer causes a small stutter every second
  (panel open) or every 10 seconds (panel hidden or RealOverride closed). It now does nothing
  while it isn't needed, and reads settings a few at a time (quality levels first).
- Each game's own list of settings: read once (right after the first load, on the main menu or a
  loading screen), and again after a game update. Settings a game doesn't have are hidden
  ("N settings hidden: not in this game. Show them"). One you set earlier stays visible, greyed,
  with "NOT IN THIS GAME" and a Remove button.
- Settings that belong together are linked:
  - some only appear when another one is on ("shown because ...");
  - one setting can keep another (Reflex stays on with frame generation); choosing the other
    value asks first, it's never blocked;
  - a yellow note says when another setting cancels this one.
- New settings: Frame generation and Frames generated (2x to 6x), NVIDIA Reflex (Image &
  Upscaling); Keep compiled shaders and Fixed texture memory (Stutter & Streaming); Gentler
  occlusion (Advanced); Render resolution, Temporal upscaling and Upscaling filter in a new
  "Without DLSS" part (only for games without DLSS).
- FPS cost: if the reading jumps around, it measures again by itself (up to 2 times). If it's
  still unsteady, click "measure again": RealOverride compares the old and new value, 5 seconds
  each, and always ends on your value.
- Settings read only at game start are marked GAME RESTART: "Save, then restart the game for
  this setting to take effect (no need to close RealOverride)."

WHAT'S NEW IN 0.8.6.6
- New:
  - Eye button in the top bar (live mode): hides the game's HUD with one click; it lights up
    while the HUD is hidden. The switch in the gear menu stays and always matches it.
  - GPU cost is shown as three rising bars, coloured by cost (green, amber, orange-red),
    instead of three yellow dots.
  - The FPS change after a setting is measured longer (3 s to settle, then 5 s), and shows
    "unsteady, try again" when the frame rate jumps around. Keep the camera still for the
    most accurate number.
  - Escape closes RealOverride's menus (folder menu, game list, gear menu), also while the
    game keeps the keyboard ("Don't take focus from the game"). When no menu is open,
    Escape goes to the game as usual.
- Fixes:
  - A hidden HUD stays hidden when RealOverride hides (Insert or minimize), so you get a clean
    screen. It comes back when you switch it off, a level loads, or RealOverride closes.
  - RealOverride's helper in the game now updates by itself as soon as the game closes (no
    need to reopen RealOverride). The "helper was updated" note only shows for that game.
  - Folder menu: the end of a long path is always shown in full ("...\Win64"); the game
    folder's Open in Explorer opens the folder shown (Binaries\Win64, where UE4SS is); the
    menu closes when RealOverride hides.
  - Restore original: the message points to gear > Backups, mentions a copy only when one
    was made, and says plainly when there was no Engine.ini to restore.

WHAT'S NEW IN 0.8.6.5
- Fixes:
  - Messages inside the panel with a single OK button now appear (before, they failed
    silently or showed an error; this included the Restore original confirmation).
  - Games whose install folder isn't known no longer show "Something went wrong" when
    selected; the game card explains how to pick the game's .exe.
  - Games whose program has another name than their settings folder (The Sinking City 2:
    "TSC2" and "PlayGround") are now recognised while they run, so live mode connects and
    the overlay shortcut works. If the install folder isn't known while an Unreal game runs,
    RealOverride offers that game's folder (you confirm it).
  - The circular arrow puts back the level the game really used, also in games that apply
    their menu levels late (helper 0.7.1).
  - The outline on a quality level moves when the game's menu changes it; the yellow note
    says when RealOverride's level isn't saved yet.
  - No dotted focus line around the settings list after a jump; README backup path fixed.
- New:
  - Folder menu in the panel's dark style: green/orange status for the game folder and the
    settings folder, readable paths with a copy button, Open in Explorer for both.
  - gear > Hide the game's HUD (live mode, experimental): for screenshots and videos. It is
    never saved: the HUD comes back on the next load, when you switch it off, or when
    RealOverride closes.
  - Occlusion culling (Advanced, experimental): Off can stop objects popping in and out, at
    an FPS cost.
  - The helper saves the game's own list of settings once (when the game provides it), so
    setting names can be checked for that exact game.
  - The Quality levels note matches the game; DLSS preset and HUD brightness tips updated.

WHAT'S NEW IN 0.8.6.4
- Quality levels you set say what's going on:
  - Games that save their menu levels in a file: "game menu: High" under the buttons, and
    the outline always marks the game menu's level.
  - Games that keep them elsewhere (The Blood of Dawnwalker, for example): "RealOverride
    controls this". The game's menu can't change a level RealOverride sets.
- After the circular arrow hands a setting back to the game in live mode, the row shows a
  quiet BACK TO GAME label (no longer a circled arrow that looked like a button). The game's
  menu takes over again after you restart the game.
- Restore original Engine.ini warns that your settings for the game will be cleared (also
  when it waits for the game to close), keeps a copy of the file it replaces, and confirms
  inside the panel when it's done.
- Games without a store name get a readable one from their install folder or exe
  ("Crisol - Theater of Idols" instead of "CRToiPrototype"). Your own names still win.
- Smaller fixes: game values that aren't one of the choices show their unit ("1600 MB");
  the blue outline after clicking a link stays for its full time.

WHAT'S NEW IN 0.8.6.3
- Quality levels: a new first group with the game menu's quality sliders (View distance,
  Anti-aliasing, Shadows, Light, Reflections, Post-processing, Textures, Effects, Foliage,
  Shading), from Low to Cinematic, one level above Ultra. Grey = the game decides; the
  outlined step is the game's own level.
  - Changed in the game's menu while RealOverride controls that level: a yellow note asks
    which one to keep. gear > Quality levels changed in the game's menu: Ask me (default),
    Always keep RealOverride's, or Follow the game's menu.
  - Changed by the game itself (for example after loading): put back without asking, with
    a line on the game card and a "Keep" link in case it was you.
  - Under each level, "Includes N detailed settings" opens the list of detailed settings it
    also changes; click one to go to it. Your detailed settings always win over a level.
- Fits more games:
  - Presets now work on UE4 games too; each preset's tooltip says how many of its
    settings apply to the game. Max visuals sizes its Nanite pool to your card.
  - Xbox app / Game Pass games are found (WinGDK settings, XboxGames folders).
  - Install live mode picks UE4SS's own setup for the game when one exists with exactly the
    game's name (folder button > UE4SS setup shows which). The UE4SS download is reused
    for 7 days, and used offline.
  - The exact engine version (e.g. UE 5.4) is read once from the game's exe, in the
    background and never while the game runs.
- Live mode repairs itself: if it doesn't connect, the game card says so with one
  suggested fix (Try the standard setup / Try the setup made for... / Save logs for sending)
  and Turn live mode off. If a game closes right after starting twice in a row with live
  mode on, RealOverride turns UE4SS off for that game (Turn it back on undoes it).
- Smoother play: the in-game helper now does all its file work on a background thread and
  writes its status only when something changed (or every 5 s). Tip: hide RealOverride
  with your shortcut while you play; on top of the game it can make frames less smooth.
- No more Windows pop-ups: every question and message is inside the panel. "Close the game
  first" now offers "Do it when the game closes".

WHAT'S NEW IN 0.8.6.2
- The version number now sits under the RealOverride name, so it no longer gets in the way
  of the FPS counter on a narrow panel.
- Support RealOverride: the first row of the gear menu opens a small card with "Support on
  Ko-fi" and "Donate with PayPal". It only opens the page in your browser. RealOverride stays
  free, with no ads, reminders or locked features.
- Gear > About & licenses is now a card inside the panel (no Windows pop-up), with the
  version, the credits, and links to the license notices and the website.
- Rename game: folder button > Rename game (or right-click the game's name). This changes
  only the name RealOverride shows, for example "Crisol" instead of "CRToiPrototype". No game
  files change. "Back to the original name" undoes it. Names are kept in game-names.json.
- New tray menu (right-click the RealOverride icon near the clock): dark and rounded like the
  panel, with the version and current game at the top, Show/Hide with your shortcut,
  Settings, Support RealOverride, Restart as administrator (only when the game needs it) and
  Exit RealOverride.

WHAT'S NEW IN 0.8.6.1
- If live mode's helper is switched off in a game (its enabled.txt file renamed or removed),
  the game card says so instead of waiting forever, with a "Turn the helper back on" button
  (game closed). It renames enabled.off / enabled.txt.off back, or creates enabled.txt.
- When a game runs as administrator and RealOverride doesn't, the game card offers
  "Restart as admin", with a short note on why (your shortcut and exact FPS). RealOverride
  remembers which games run as administrator, so it can tell you before you start them.
  With live mode connected, the shortcut already works, so the note only offers exact FPS.
- Clicking the close button again while RealOverride is closing no longer causes an error.
- RealOverride.exe now links Windows PowerShell's engine directly, like other PowerShell
  apps, which should look less unusual to antivirus programs that guess with AI.

WHAT'S NEW IN 0.8.6
- RealOverride.exe: start RealOverride like any other app, with its icon, and no command
  window. It runs RealOverride's scripts inside itself using the PowerShell engine that is
  part of Windows, so no separate PowerShell window or process is started. The keyboard
  shortcut and FPS helpers are built into it, so nothing is compiled when it starts.
- "Restart as administrator" and gear > Desktop shortcut now use RealOverride.exe.
- If RealOverride.exe can't start, it says why and writes
  %LOCALAPPDATA%\RealOverride\launcher.log.
- Its source is included: app\launcher\Launcher.cs.

WHAT'S NEW IN 0.8.5
- Settings groups in a side rail (one group at a time, no long scrolling). The panel is
  60 px wider to make room.
- Clearer Save button: "Save 2 changes", "Changes saved", "All saved", with icons.
- Choose a game's settings folder when it keeps Engine.ini somewhere unusual.

NEW NAME (0.8.4)
- UE Tuner is now RealOverride. Start it with "Start RealOverride.bat" (gear > Desktop
  shortcut makes one with the new icon). Your settings, backups and logs move from
  %LOCALAPPDATA%\UETuner to %LOCALAPPDATA%\RealOverride by themselves the first time.
  Live mode installs keep working: the in-game helper keeps its folder name
  (UETunerBridge).

FINDING GAMES
- RealOverride looks in %LOCALAPPDATA%, in Documents\My Games, and in each installed
  game's own folder (Steam, GOG, Epic).
- Auto-detected games show their real name from your Steam library when possible
  (for example "Crisol: Theater of Idols" instead of its internal name).
- Missing a game? Game list (arrow on the game card) > Add a game... and pick its .exe.
  RealOverride finds its settings folder and remembers it.

DLSS PRESETS
- "DLSS model preset" is a row of buttons: one click per model. Hover a letter for what
  it does. The letters shown match the game's DLSS file: DLSS 4 and later show Default,
  J, K, L, M; older DLSS 2/3 games show A to F instead.
- In live mode RealOverride also checks the game's DLSS plugin. If it is older than 8.5,
  L and M only work through the NVIDIA App's DLSS override, and the row says so.
- "Ray Reconstruction model" (Default, D, E, F) appears when DLSS Ray Reconstruction is On.

VALUES OUTSIDE THE LIST
- If a game uses a value that isn't one of the choices, it is added to the slider in its
  right place by number (never in the orange risky end by mistake).

GAME KEEPS FOCUS (0.8.3.1)
- Questions while you play (allow risky values, save untried risky values, switch game,
  restart as administrator) now appear inside the RealOverride panel with their own buttons,
  so the game never loses focus.
- Any Windows pop-up or file picker that still appears gives focus straight back to the
  game when you close it. (Before, the game could run as a background app, with lower
  FPS and stutter, until you clicked it or pressed Alt+Tab.)
- The Lua mod in the game is now idle while RealOverride is hidden or closed: it measures
  nothing and only checks one small file a second. FPS, live changes and the free mouse
  run only while the RealOverride panel is open.

UE4 AND UE5
- RealOverride works with Unreal Engine 5 and Unreal Engine 4 games. It works out the engine
  version (from the game's settings folder, and exactly from live mode) and shows it on
  the game card, e.g. "UE 5.5".
- Settings a game's engine doesn't have are hidden. gear > "Show settings this game
  doesn't have" shows them greyed out, with a tag like "UE5 only" or "Needs 5.1+".
- UE4 games get five settings of their own: shadow resolution, shadow cascades,
  screen-space reflections, ambient occlusion and anti-aliasing quality.
- Settings for NVIDIA cards only (DLSS) are hidden on other cards.

RISKY VALUES
- gear > Allow risky values (off by default) unlocks an orange zone at the end of some
  sliders (for example texture memory above half your VRAM, or very sharp shadows).
  The row turns orange with a "Risky" badge and a note on what can go wrong.
- Try first: with the game running (live mode), a risky value is used right away but only
  saved after the game has run 5 minutes without a crash. If the game closes before that,
  RealOverride puts the old value back. Save keeps the old value meanwhile.
- Values that always crash (for example Nanite memory 2048 MB or more) stay locked:
  the slider ends at "max". Hover the setting's name for the reason.

FRAME CAP
- "Game's frame cap" takes any whole number from 30 to 360, or no cap. Drag the slider
  (it snaps to 60, 120, 165, 240 and your screen's refresh rate), click a quick choice
  (including the best cap for your screen with G-Sync), or click the number and type.
  Only digits can be typed. Enter applies, Esc cancels, the arrow keys change it by 1.

VALUES
- Values show as a word plus the number, e.g. "On (1)" or "Lumen (1)", so the game's own
  number is always visible for anyone who types console commands.

RE-CHECK AFTER LOADING (live mode)
- 15 seconds after each load, RealOverride checks your saved settings once more. Any that the
  game or another mod changed back are put back (one per frame, so no big hitch), and a
  short note appears under the game card. A setting the game keeps refusing is left alone
  after 3 loads. Turn it off in gear > Re-check settings after loading.

FREE THE MOUSE (experimental, live mode)
- While RealOverride is open over the game, the mouse (or a laptop touchpad) moves a pointer
  instead of the camera, using the game's own menu mode. Controllers keep working. When
  RealOverride hides, the game gets the mouse back (also within 3 s if RealOverride closes).
  Turn it off in gear > Free the mouse while open.

SWITCHES AND TWO-CHOICE SETTINGS
- On/Off settings are switches (right = On). Settings with two named choices (like
  Screen-space vs Lumen reflections) use a two-part button, faster choice on the left.
  Everything with 3+ choices stays a slider. A grey switch means the game decides;
  clicking it makes it yours (blue).

FPS
- While a game runs, the top bar shows FPS and frame time. Hover it for the 1% low
  (the worst moments: a good measure of stutter) and a 30-second graph.
- After you change a setting, RealOverride compares FPS a few seconds before and after and
  shows the result next to it ("-12 FPS", "+9 FPS", "+/- 0 FPS" = no clear change).
  It fades after a minute; hover the setting's name to see it again. For a fair result,
  change settings with the game running and in view (not on a paused menu).
- Exact FPS: gear > "Exact FPS: get PresentMon" downloads Intel's free PresentMon tool.
  It needs RealOverride running as administrator. Without it, live mode gives an estimate.

GAME FOLDER AND SETTINGS FOLDER
- The folder button on the game card shows two folders:
  - Game folder (where the game is installed, used for live mode): Change, Open in Explorer.
  - Settings folder (where Engine.ini is): Choose another (advanced), Open in Explorer,
    and "Back to the automatic folder" if you chose one.
- If a game's settings folder isn't found, the card says "Settings folder not found -
  Choose...". Most games create it the first time they start: start the game once (to
  the main menu), then come back. For games that keep it somewhere unusual, choose the
  folder: open it and pick Engine.ini or GameUserSettings.ini. A folder without either
  file is not accepted, so your settings can't end up in the wrong place.
- Adding a game whose settings aren't found asks the same question, with the folders
  RealOverride checked.

GEAR MENU SAVES BY ITSELF
- Everything in the gear menu is kept right away. The Save button (and its counter) is
  only for the settings in the main list. "Make Engine.ini read-only" switches at once.
  "Keep the game running" writes its sound line to Engine.ini at once, or when you close
  the game if it is running.

ADMINISTRATOR
- If the game runs as administrator (common with some installs), Windows hides your
  key presses from programs that don't. RealOverride detects this and tells you.
  - With live mode, the overlay shortcut still works: RealOverride's Lua mod sees the key
    inside the game.
  - gear > Restart as administrator fixes it completely. gear > Always start as
    administrator does it every time (Windows asks for permission each time).

TROUBLESHOOTING
- Live mode says "Helper switched off": close the game and click "Turn the helper back on"
  on the game card.
- Live mode didn't connect: use the fix the game card suggests. "Try the standard setup"
  undoes a UE4SS setup made for the game; "Turn live mode off" stops UE4SS from loading
  (renames dwmapi.dll to dwmapi.dll.off in the game's Binaries\Win64 folder). Your saved
  settings still apply each time the game starts.
- For the smoothest play, hide RealOverride with your shortcut while you play.
- RealOverride.exe won't start or your antivirus blocks it: use "Start RealOverride.bat"
  (same app), and send %LOCALAPPDATA%\RealOverride\launcher.log.
- gear > RealOverride log opens RealOverride's own log (shortcut presses, game detection,
  errors). gear > UE4SS log is the game-side log for live mode.
- gear > Save logs for sending puts both logs and RealOverride's settings into one zip on
  your Desktop, ready to share. It contains no personal files.
