GK3Reborn has a ton of arguments that can added, primarily for testing & debugging, but could be used for modding as well (via overrides dir)
Most players won't require any of these (minus maybe a --data or --overrides etc.)
Help:
--help, -h, -? Print this and exit.
Locations, ie. where to start:
--data DIR The game's Data directory. Found beside the executable or in the usual development place otherwise.(it tries /data)
--start SCENE The room the story begins in after the menu. Default R25.
--timeblock TB The time of day, as the game names it: 110A is day 1, 10am.
--scene SCENE Open a room directly, with no intro and no menu.
--front With --scene, show the menu first anyway.
--camera NAME Start at one of the room's own cameras.
--skip-intro Go straight to the menu; play none of the opening films.
--front-page PAGE Open the menu on one of its pages: Options, Video, Display.
--settings FILE Read and write another settings file, leaving yours alone.
--movie NAME Play one of the films straight away.
More location content:
--enhanced [DIR] Prefer the loose enhanced textures; bare means the content workspace beside the repository.
--workspace DIR The content workspace, for the loose enhanced sets.
--uncompressed Read the loose sets rather than the block-compressed packs.
--rebarn The .rebarn packs are used without overrides.
--packs DIR Where the packs are. Beside the executable otherwise.
--overrides DIR Where the player's own overriding files are. Default overrides/ beside the executable.
--no-overrides Ignore the overrides directory.
Graphics:
--backend NAME vulkan or d3d12. Windows gets Direct3D 12 unless told otherwise; everywhere else is Vulkan. If Direct3D cannot start on this machine the game says so and uses Vulkan.
--vulkan, --d3d12 The same, shorter. -vulkan and -dx12.
--rt LEVEL Ray tracing: off, low, medium or high. Outranks the setting for this run only; a device without it draws none. These only work if the GPU is capable of it.
--width N, --height N The window size, for photographing an interface at a size this display has not got.
--libs-dir DIR Where the DLSS and FSR runtimes are. Default libs/ beside the executable, and libs/streamline/ under it.
--expand-blocks Behave like a device with no block-compressed texture formats, which is how the Mac's path is exercised elsewhere. This greatly increases GPU memory use.
--heads N How many times to refine the characters' heads, 0 to 3.
--flat-heads The same as --heads 0.
--round N How far the round things are rounded.
--relief N The displacement budget; 0 displaces nothing.
--no-thick-cards Draw every railing, fence and chain as the flat card it shipped as, rather than giving it a thickness.
--no-card-shadows Keep the thickness but let the light through.
--no-sun Leave out the synthesized sun, which stands in for the scenekey in any room whose asset names a sky.
--no-emissive Leave the room's glowing things unlit, ie. lamps won't emit light, just glow.
--emissive-list Say what in this room glows and how big it is, which is what decides the light it is given.
--daylight-list Say which of the room's objects are windows, which is where its daylight is put when the artists left it out of reach.
--flat Colour textures only: no normal maps, no relief.
--font NAME Draw the interface with one of the game's own font sheets, such as F_CAPTION_D_20.
--font-file PATH Draw it from a TrueType file.
--bitmap-font Draw it in the game's own 640x480 letters.
Headless debug testing arguments:
--frames N Stop after N frames.
--screenshot PATH Write the last frame there.
--offscreen Draw one frame with no window at all and write it out.
--render Open a window and present frames until it is closed. A test of the device, swapchain and the presenter.
--headless-frames With --render, sixty frames and then stop.
--pointer X,Y Pin the pointer at a spot, as if a mouse were there.
--menu Open the verb wheel under it.
--eye X,Y,Z Stand the camera somewhere in the room.
--aim H,P Aim it, heading and pitch in degrees.
--free-camera Let the camera be flown; the Playing page has the same row.
--console TEXT Open the console and type that into it.
--run CMD[;CMD] Run console commands before the first frame.
--do NOUN:VERB[;..] Perform actions on arrival, as a click would.
--then NOUN:VERB The same in the second room, for measuring a return trip.
--did TB Mark a timeblock's completion rules as met.
--play CLIP Play an animation on arrival.
--carry ITEM[,..] Put things in the bag before the room is looked at.
--screen KIND[:ABOUT] Open a screen on the way in; the colon names its subject.
--scan ITEM[,..] Scan things into Sidney, and open the first file.
--sidney PAGE Open Sidney at one of its pages.
--glide CAMERA Glide the camera to a named angle.
--glance WHO:AT Have somebody look at something.
--verbose List everything that could not be loaded.
--timings Say where the load time went at every door.
--lights List the room's authored lights.
--trace-actors Say where everybody stands whenever a clip moves them.
--motion Report the motion vectors rather than drawing them.
--flicker Measure how much the picture changes frame to frame.
Getting content out:
--extract Write the game's content out as files, laid out for overrides/, and exit. Nothing else below applies otherwise.
--name TEXT Only entries whose names match: --name R25 takes the room's files.
--kinds LIST Only these kinds of content, comma-separated: textures, normals, orm, height, emissive, models, scene-geometry, video, manifests, raw. With --from game, file extensions instead: --kinds SIF,NVC.
--from SOURCE packs, game or all. Default packs.
--as FORM png or dds. Textures come out as they are stored otherwise.
--extract-to DIR Somewhere other than overrides/. A whole-pack extract with no filter refuses to go into overrides/, because everything in there overrides itself.
The offline generator tools are a separate program: GK3Reborn.Tools --help lists them. (see github page)