the big rename
[xonotic/xonotic.wiki.git] / Complete-list-of-command-line-parameters.md
1 Complete list of command line parameters
2 ========================================
3
4 Common options
5 --------------
6
7 -   **`-connect` address:** Talk to a NetRadiant instance using a specific XML based protocol
8 -   **`-force`:** Allow reading some broken/unsupported BSP files e.g. when decompiling, may also crash
9 -   **`-fs_basepath` path:** Sets the given path as main directory of the game (can be used more than once to look in multiple paths)
10 -   **`-fs_game` gamename:** Sets a different game directory name (default for Q3A: baseq3)
11 -   **`-fs_homebase` dir:** Specifies where the user home directory name is on Linux (default for Q3A: .q3a)
12 -   **`-game` gamename:** Load settings for the given game (default: quake3)
13 -   **`-subdivisions` F:** multiplier for patch subdivisions quality
14 -   **`-threads` N:** number of threads to use
15 -   **`-v`:** Verbose mode
16
17 BSP stage
18 ---------
19
20 -   **`-bsp` ... filename.map:** Switch that enters this stage
21 -   **`-altsplit`:** Alternate BSP tree splitting weights (should give more fps)
22 -   **`-celshader` shadername:** Sets a global cel shader name
23 -   **`-custinfoparms`:** Read scripts/custinfoparms.txt
24 -   **`-debuginset`:** Push all triangle vertexes towards the triangle center
25 -   **`-debugportals`:** Make BSP portals visible in the map
26 -   **`-debugsurfaces`:** Color the vertexes according to the index of the surface
27 -   **`-deep`:** Use detail brushes in the BSP tree, but at lowest priority (should give more fps)
28 -   **`-de` F:** Distance epsilon for plane snapping etc.
29 -   **`-fakemap`:** Write fakemap.map containing all world brushes
30 -   **`-flares`:** Turn on support for flares (TEST?)
31 -   **`-flat`:** Enable flat shading (good for combining with -celshader)
32 -   **`-fulldetail`:** Treat detail brushes as structural ones
33 -   **`-leaktest`:** Abort if a leak was found
34 -   **`-meta`:** Combine adjacent triangles of the same texture to surfaces (ALWAYS USE THIS)
35 -   **`-minsamplesize` N:** Sets minimum lightmap resolution in luxels/qu
36 -   **`-mi` N:** Sets the maximum number of indexes per surface
37 -   **`-mv` N:** Sets the maximum number of vertices of a lightmapped surface
38 -   **`-ne` F:** Normal epsilon for plane snapping etc.
39 -   **`-nocurves`:** Turn off support for patches
40 -   **`-nodetail`:** Leave out detail brushes
41 -   **`-noflares`:** Turn off support for flares
42 -   **`-nofog`:** Turn off support for fog volumes
43 -   **`-nohint`:** Turn off support for hint brushes
44 -   **`-nosubdivide`:** Turn off support for `q3map_tessSize` (breaks water vertex deforms)
45 -   **`-notjunc`:** Do not fix T-junctions (causes cracks between triangles, do not use)
46 -   **`-nowater`:** Turn off support for water, slime or lava (Stef, this is for you)
47 -   **`-np` A:** Force all surfaces to be nonplanar with a given shade angle
48 -   **`-onlyents`:** Only update entities in the BSP
49 -   **`-patchmeta`:** Turn patches into triangle meshes for display
50 -   **`-rename`:** Append “bsp” suffix to miscmodel shaders (needed for SoF2)
51 -   **`-samplesize` N:** Sets default lightmap resolution in luxels/qu
52 -   **`-skyfix`:** Turn sky box into six surfaces to work around ATI problems
53 -   **`-snap` N:** Snap brush bevel planes to the given number of units
54 -   **`-tempname` filename.map:** Read the MAP file from the given file name
55 -   **`-texrange` N:** Limit per-surface texture range to the given number of units, and subdivide surfaces like with `q3map_tessSize` if this is not met
56 -   **`-tmpout`:** Write the BSP file to /tmp
57 -   **`-verboseentities`:** Enable `-v` only for map entities, not for the world
58
59 VIS stage
60 ---------
61
62 -   **`-vis` ... filename.map:** Switch that enters this stage
63 -   **`-fast`:** Very fast and crude vis calculation
64 -   **`-mergeportals`:** The less crude half of `-merge`, makes vis sometimes much faster but doesn’t hurt fps usually
65 -   **`-merge`:** Faster but still okay vis calculation
66 -   **`-nopassage`:** Just use PortalFlow vis (usually less fps)
67 -   **`-nosort`:** Do not sort the portals before calculating vis (usually slower)
68 -   **`-passageOnly`:** Just use PassageFlow vis (usually less fps)
69 -   **`-saveprt`:** Keep the PRT file after running vis (so you can run vis again)
70 -   **`-tmpin`:** Use /tmp folder for input
71 -   **`-tmpout`:** Use /tmp folder for output
72
73 LIGHT stage
74 -----------
75
76 -   **`-light` ... filename.map:** Switch that enters this stage
77 -   **`-vlight` ... filename.map:** Deprecated alias for `-light -fast` ... filename.map
78 -   **`-approx` N:** Vertex light approximation tolerance (never use in conjunction with deluxemapping)
79 -   **`-areascale` F, `-area` F:** Scaling factor for area lights (surfacelight)
80 -   **`-border`:** Add a red border to lightmaps for debugging
81 -   **`-bouncegrid`:** Also compute radiosity on the light grid
82 -   **`-bounceonly`:** Only compute radiosity
83 -   **`-bouncescale` F:** Scaling factor for radiosity
84 -   **`-bounce` N:** Number of bounces for radiosity
85 -   **`-cheapgrid`:** Use `-cheap` style lighting for radiosity
86 -   **`-cheap`:** Abort vertex light calculations when white is reached
87 -   **`-compensate` F:** Lightmap compensate (darkening factor applied after everything else)
88 -   **`-cpma`:** CPMA vertex lighting mode
89 -   **`-custinfoparms`:** Read scripts/custinfoparms.txt
90 -   **`-dark`:** Darken lightmap seams
91 -   **`-debugaxis`:** Color the lightmaps according to the lightmap axis
92 -   **`-debugcluster`:** Color the lightmaps according to the index of the cluster
93 -   **`-debugdeluxe`:** Show deluxemaps on the lightmap
94 -   **`-debugnormals`:** Color the lightmaps according to the direction of the surface normal
95 -   **`-debugorigin`:** Color the lightmaps according to the origin of the luxels
96 -   **`-debugsurfaces`, `-debugsurface`:** Color the lightmaps according to the index of the surface
97 -   **`-debugunused`:** This option does nothing
98 -   **`-debug`:** Mark the lightmaps according to the cluster: unmapped clusters get yellow, occluded ones get pink, flooded ones get blue overlay color, otherwise red
99 -   **`-deluxemode 0`:** Use modelspace deluxemaps (DarkPlaces)
100 -   **`-deluxemode 1`:** Use tangentspace deluxemaps
101 -   **`-deluxe`, `-deluxemap`:** Enable deluxemapping (light direction maps)
102 -   **`-dirtdebug`, `-debugdirt`:** Store the dirtmaps as lightmaps for debugging
103 -   **`-dirtdepth`:** Dirtmapping depth
104 -   **`-dirtgain`:** Dirtmapping exponent
105 -   **`-dirtmode 0`:** Ordered direction dirtmapping
106 -   **`-dirtmode 1`:** Randomized direction dirtmapping
107 -   **`-dirtscale`:** Dirtmapping scaling factor
108 -   **`-dirty`:** Enable dirtmapping
109 -   **`-dump`:** Dump radiosity from `-bounce` into numbered MAP file prefabs
110 -   **`-export`:** Export lightmaps when compile finished (like `-export` mode)
111 -   **`-exposure` F:** Lightmap exposure to better support overbright spots
112 -   **`-external`:** Force external lightmaps even if at size of internal lightmaps
113 -   **`-extravisnudge`:** Broken feature to nudge the luxel origin to a better vis cluster
114 -   **`-extrawide`:** Deprecated alias for `-super 2 -filter`
115 -   **`-extra`:** Deprecated alias for `-super 2`
116 -   **`-fastbounce`:** Use `-fast` style lighting for radiosity
117 -   **`-faster`:** Use a faster falloff curve for lighting; also implies `-fast`
118 -   **`-fastgrid`:** Use `-fast` style lighting for the light grid
119 -   **`-fast`:** Ignore tiny light contributions
120 -   **`-filter`:** Lightmap filtering
121 -   **`-floodlight`:** Enable floodlight (zero-effort somewhat decent lighting)
122 -   **`-gamma` F:** Lightmap gamma
123 -   **`-gridambientscale` F:** Scaling factor for the light grid ambient components only
124 -   **`-gridscale` F:** Scaling factor for the light grid only
125 -   **`-keeplights`:** Keep light entities in the BSP file after compile
126 -   **`-lightmapdir` directory:** Directory to store external lightmaps (default: same as map name without extension)
127 -   **`-lightmapsize` N:** Size of lightmaps to generate (must be a power of two)
128 -   **`-lomem`:** Low memory but slower lighting mode
129 -   **`-lowquality`:** Low quality floodlight (appears to currently break floodlight)
130 -   **`-minsamplesize` N:** Sets minimum lightmap resolution in luxels/qu
131 -   **`-nocollapse`:** Do not collapse identical lightmaps
132 -   **`-nodeluxe`, `-nodeluxemap`:** Disable deluxemapping
133 -   **`-nogrid`:** Disable grid light calculation (makes all entities fullbright)
134 -   **`-nolightmapsearch`:** Do not optimize lightmap packing for GPU memory usage (as doing so costs fps)
135 -   **`-normalmap`:** Color the lightmaps according to the direction of the surface normal (TODO is this identical to `-debugnormals`?)
136 -   **`-nostyle`, `-nostyles`:** Disable support for light styles
137 -   **`-nosurf`:** Disable tracing against surfaces (only uses BSP nodes then)
138 -   **`-notrace`:** Disable shadow occlusion
139 -   **`-novertex`:** Disable vertex lighting
140 -   **`-patchshadows`:** Cast shadows from patches
141 -   **`-pointscale` F, `-point` F:** Scaling factor for point lights (light entities)
142 -   **`-q3`:** Use nonlinear falloff curve by default (like Q3A)
143 -   **`-samplescale` F:** Scales all lightmap resolutions
144 -   **`-samplesize` N:** Sets default lightmap resolution in luxels/qu
145 -   **`-samples` N:** Adaptive supersampling quality
146 -   **`-scale` F:** Scaling factor for all light types
147 -   **`-shadeangle` A:** Angle for phong shading
148 -   **`-shade`:** Enable phong shading at default shade angle
149 -   **`-skyscale` F, `-sky` F:** Scaling factor for sky and sun light
150 -   **`-smooth`:** Deprecated alias for `-samples 2`
151 -   **`-style`, `-styles`:** Enable support for light styles
152 -   **`-sunonly`:** Only compute sun light
153 -   **`-super` N, `-supersample` N:** Ordered grid supersampling quality
154 -   **`-thresh` F:** Triangle subdivision threshold
155 -   **`-trianglecheck`:** Broken check that should ensure luxels apply to the right triangle
156 -   **`-trisoup`:** Convert brush faces to triangle soup
157 -   **`-wolf`:** Use linear falloff curve by default (like W:ET)
158
159 Analyzing BSP-like file structure
160 ---------------------------------
161
162 -   **`-analyze` ... filename.bsp:** Switch that enters this mode
163 -   **`-lumpswap`:** Swap byte order in the lumps
164
165 Converting & Decompiling
166 ------------------------
167
168 -   **`-convert` ... filename.bsp:** Switch that enters this mode
169 -   **`-de` number:** Distance epsilon for the conversion
170 -   **`-format` converter:** Select the converter (available: map, ase, or game names)
171 -   **`-ne` F:** Normal epsilon for the conversion
172 -   **`-shadersasbitmap`:** (only for ase) use the shader names as \*BITMAP key so they work as prefabs
173
174 Exporting lightmaps
175 -------------------
176
177 -   **`-export` filename.bsp:** Copies lightmaps from the BSP to `filename/lightmap_0000.tga` ff
178
179 Fixing AAS checksum
180 -------------------
181
182 -   **`-fixaas` filename.bsp:** Switch that enters this mode
183
184 Get info about BSP file
185 -----------------------
186
187 -   **`-info` filename.bsp:** Switch that enters this mode
188
189 Importing lightmaps
190 -------------------
191
192 -   **`-import` filename.bsp:** Copies lightmaps from `filename/lightmap_0000.tga` ff into the BSP
193
194 MiniMap
195 -------
196
197 -   **`-minimap` ... filename.bsp:** Creates a minimap of the BSP, by default writes to `../gfx/filename_mini.tga`
198 -   **`-black`:** Write the minimap as a black-on-transparency RGBA32 image
199 -   **`-boost` F:** Sets the contrast boost value (higher values make a brighter image); contrast boost is somewhat similar to gamma, but continuous even at zero
200 -   **`-border` F:** Sets the amount of border pixels relative to the total image size
201 -   **`-gray`:** Write the minimap as a white-on-black GRAY8 image
202 -   **`-keepaspect`:** Ensure the aspect ratio is kept (the minimap is then letterboxed to keep aspect)
203 -   **`-minmax` xmin ymin zmin xmax ymax zmax:** Forces specific map dimensions (note: the minimap actually uses these dimensions, scaled to the target size while keeping aspect with centering, and 1/64 of border appended to all sides)
204 -   **`-nokeepaspect`:** Do not ensure the aspect ratio is kept (makes it easier to use the image in your code, but looks bad together with sharpening)
205 -   **`-o` filename.tga:** Sets the output file name
206 -   **`-random` N:** Sets the randomized supersampling count (cannot be combined with `-samples`)
207 -   **`-samples` N:** Sets the ordered supersampling count (cannot be combined with `-random`)
208 -   **`-sharpen` F:** Sets the sharpening coefficient
209 -   **`-size` N:** Sets the width and height of the output image
210 -   **`-white`:** Write the minimap as a white-on-transparency RGBA32 image
211
212 Scaling
213 -------
214
215 -   **`-scale` S filename.bsp:** Scale uniformly
216 -   **`-scale` SX SY SZ filename.bsp:** Scale non-uniformly
217 -   **`-scale -tex` S filename.bsp:** Scale uniformly without texture lock
218 -   **`-scale -tex` SX SY SZ filename.bsp:** Scale non-uniformly without texture lock
219