File: schema.xml

package info (click to toggle)
performous 1.1+git20190701.9928c27-3
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 11,592 kB
  • sloc: cpp: 27,936; ansic: 736; xml: 464; sh: 228; python: 204; makefile: 33
file content (401 lines) | stat: -rw-r--r-- 17,318 bytes parent folder | download
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
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
<?xml version="1.0"?>
<!--
DO NOT EDIT THIS FILE!
This is a config schema with built-in defaults for Performous.

System-wide settings go to /etc/xdg/performous/config.xml and user settings
go to ~/.config/performous/config.xml but you should generally let Performous
modify them instead of touching the XML yourself. Press Ctrl+S in config menu
to save the current settings to XML.
-->
<performous>
	<!-- Menu definitions.
	All config entries with the same prefix as the menu entry are displayed in the menu,
	except if they have attribute hidden="true". The options display in the same order
	as they are specified here.
	-->
	<menu>
		<entry name="game">
			<short>Game</short>
			<long>Gameplay related options</long>
		</entry>
		<entry name="graphic">
			<short>Graphic</short>
			<long>Configure rendering and video settings</long>
		</entry>
		<entry name="AudioDevices">
			<!-- Handled internally by Performous -->
			<short>Audio Devices</short>
			<long>Setup microphones and playback</long>
		</entry>
		<entry name="audio">
			<short>Audio</short>
			<long>Configure general audio settings</long>
		</entry>
		<entry name="Paths">
			<short>Paths</short>
			<long>Setup song and data paths</long>
		</entry>
	</menu>

	<!-- Gameplay preferences -->
	<entry name="game/karaoke_mode" type="int" value="0">
		<limits>
			<enum>Off</enum>
			<enum>On - normal text</enum>
			<enum>On - centered text</enum>
		</limits>
		<short>Karaoke mode</short>
		<long>Hide pitch wave, notes and scoring.</long>
	</entry>
	<entry name="game/Textstyle" type="int" value="0">
		<limits>
			<enum>Western mode</enum>
			<enum>Asian mode</enum>
		</limits>
		<short>Lyric highlight style</short>
		<long>Hide pitch wave, notes and scoring.</long>
	</entry>
	<entry name="game/autoplay" type="bool" value="false">
		<short>Autoplay</short>
		<long>Keep playing random songs after the playlist is empty.</long>
	</entry>
	<entry name="game/pitch" type="bool" value="true">
		<short>Pitch waves</short>
		<long>Enable singing pitch display (when not in karaoke mode).</long>
	</entry>
	<entry name="game/theme" type="int" value="-1">
		<limits min="-1" max="-1" step="0" />
		<!-- Enum options added dynamically by scanning theme folders -->
		<short>Theme</short>
		<long>Name of the theme to use.</long>
	</entry>
	<entry name="game/playlist_screen_timeout" type="int" value="15">
		<limits min="0" max="60" step="5" />
		<short>Playlist screen timeout</short>
		<long>How long it will take before the next song in the playlist starts automatically.</long>
	</entry>
	<entry name="game/results_timeout" type="int" value="5">
		<limits min="5" max="20" step="1" />
		<short>Song results timeout</short>
		<long>How long the scores will be displayed for after finishing a song.</long>
	</entry>
	<entry name="game/highscore_timeout" type="int" value="5">
		<limits min="0" max="30" step="5" />
		<short>High-score timeout</short>
		<long>How long the high-scores screen will wait for input before going to the next song.</long>
	</entry>	
	<entry name="game/webserver_access" type="int" value="0">
		<limits>
			<enum>Disabled</enum>
			<enum>Localhost </enum>
			<enum>All connections</enum>
		</limits>
		<short>Webserver access</short>
		<long>Define if you want to control performous remotely with web interface (requires restart).</long>
	</entry>
	<entry name="game/case-sorting" type="bool" value="false">
		<short>Case-sensitive sorting.</short>
		<long>Make a difference between uppercase and lowercase letters when sorting.</long>
	</entry>
	<entry name="game/webserver_port" type="int" value="8000">
		<!-- maximum of 16 bit is 65536, so 60000 should be a nice upper-limit -->
		<limits min="0" max="60000" step="1" />
		<short>Webserver port</short>
		<long>Port to use for the web server. Choose one that is not used by other applications.</long>
	</entry>
	<entry name="game/webserver_fallback_port" type="int" value="8001">
		<!-- maximum of 16 bit is 65536, so 60000 should be a nice upper-limit -->
		<limits min="0" max="60000" step="1" />
		<short>Webserver fallback port</short>
		<long>Port to use in case original webserver port is in use. Choose one that you know for sure is not used by other applications.</long>
	</entry>
	<entry name="game/keyboard_guitar" type="bool" value="true">
		<short>Keyboard as guitar</short>
		<long>Enable keyboard as guitar (Frets on Fire mode).</long>
	</entry>
	<entry name="game/keyboard_drumkit" type="bool" value="true">
		<short>Keyboard as drumkit</short>
		<long>Enable keyboard as drumkit.</long>
	</entry>
	<entry name="game/drum_promode" type="bool" value="true">
		<short>Drums use Pro mode</short>
		<long>Drums use Pro mode (toms are not cymbals)</long>
	</entry>
	<entry name="game/keyboard_dancepad" type="bool" value="true">
		<short>Keyboard as dance pad</short>
		<long>Enable keyboard as dance pad.</long>
	</entry>
	<entry name="game/keyboard_keytar" type="bool" value="true">
		<short>Keyboard as keytar</short>
		<long>Enable keyboard as keytar.</long>
	</entry>
	<entry name="game/instrument0" type="int" value="0">
		<limits>
			<enum>Auto</enum>
			<!-- Options added dynamically from controllers.xml -->
		</limits>
		<short>Force controller A's type</short>
		<long>Override autodetection and force the first controller to the given type.</long>
	</entry>
	<entry name="game/instrument1" type="int" value="0">
		<limits>
			<enum>Auto</enum>
			<!-- Options added dynamically from controllers.xml -->
		</limits>
		<short>Force controller B's type</short>
		<long>Override autodetection and force the second controller to the given type.</long>
	</entry>
	<entry name="game/instrument2" type="int" value="0">
		<limits>
			<enum>Auto</enum>
			<!-- Options added dynamically from controllers.xml -->
		</limits>
		<short>Force controller C's type</short>
		<long>Override autodetection and force the third controller to the given type.</long>
	</entry>
	<entry name="game/instrument3" type="int" value="0">
		<limits>
			<enum>Auto</enum>
			<!-- Options added dynamically from controllers.xml -->
		</limits>
		<short>Force controller D's type</short>
		<long>Override autodetection and force the fourth controller to the given type.</long>
	</entry>
	<entry name="game/instruments" type="string_list">
		<!-- Should be SDL_ID:{GUITAR_GUITARHERO|GUITAR_GUITARHERO_XPLORER|GUITAR_ROCKBAND_PS3|GUITAR_ROCKBAND_XB360|DRUMS_GUITARHERO|DRUMS_ROCKBAND_PS3|DRUMS_ROCKBAND_XB360|DRUMS_MIDI|DANCEPAD_GENERIC|DANCEPAD_TIGERGAME|DANCEPAD_2TECH}
		     example:
			<stringvalue>0:GUITAR_GUITARHERO</stringvalue>
		-->
		<short>Joystick configuration</short>
		<long>Force joystick to some kind of instrument.</long>
	</entry>
	<entry name="game/midi_input" type="string">
		<short>Hardware MIDI input device</short>
		<long>Regex for matching the MIDI devices to use. The default is to use all available devices.</long>
		<stringvalue></stringvalue>
	</entry>
<!-- 
	<entry name="game/fallback_encoding" type="int" value="2">
		<limits>
			<enum>CP1250</enum>
			<enum>CP1251</enum>
			<enum>CP1252</enum>
			<enum>CP1253</enum>
			<enum>CP1254</enum>
			<enum>CP1255</enum>
			<enum>CP1256</enum>
			<enum>CP1257</enum>
			<enum>CP1258</enum>
		</limits>
		<short>Fallback song encoding</short>
		<long>Pick the text codec used for song files that are not UTF-8.</long>
	</entry>
 -->
 
	<entry name="game/sorting_ignore" type="string_list">
		<stringvalue>The</stringvalue>
		<stringvalue>A</stringvalue>
		<stringvalue>La</stringvalue>
		<stringvalue>Los</stringvalue>
		<stringvalue>Las</stringvalue>
		<stringvalue>√Čl</stringvalue>
		<short>Word Collation</short>
		<long>Words that should be ignored when sorting.</long>
	</entry>

	<!-- Graphic preferences -->
	<entry name="graphic/window_width" type="int" value="1366" hidden="true">
		<ui unit=" pixels" />
		<limits min="640" max="4096" step="16" />
		<short>Windowed width</short>
		<long>The width of the window.</long>
	</entry>
	<entry name="graphic/window_height" type="int" value="768" hidden="true">
		<ui unit=" pixels" />
		<limits min="360" max="2160" step="8" />
		<short>Windowed height</short>
		<long>The height of the window.</long>
	</entry>
	<entry name="graphic/window_pos_x" type="int" value="0" hidden="true">
		<ui unit=" pixels" />
		<limits min="0" max="16384" step="8" />
		<short>X-Position of the window</short>
		<long>The X-Position of the window.</long>
	</entry>
	<entry name="graphic/window_pos_y" type="int" value="0" hidden="true">
		<ui unit=" pixels" />
		<limits min="0" max="16384" step="8" />
		<short>Y-Position of the window</short>
		<long>The Y-Position of the window.</long>
	</entry>
	<entry name="graphic/highdpi" type="bool" value="true">
		<short>High DPI Graphics</short>
		<long>Enable High-DPI (Retina) graphics when supported; requires restart.</long>
	</entry>
	<entry name="graphic/fullscreen" type="bool" value="false">
		<short>Fullscreen mode</short>
		<long>Enable fullscreen mode on startup.</long>
	</entry>
	<entry name="graphic/stereo3d" type="bool" value="false">
		<short>Stereoscopic 3D</short>
		<long>Enable 3D rendering of Performous.</long>
	</entry>
	<entry name="graphic/stereo3dtype" type="int" value="0">
		<limits>
			<enum>Red/Cyan</enum>
			<enum>Green/Magenta</enum>
			<enum>Over/Under</enum>
		</limits>
		<short>Stereo3D type</short>
		<long>Some modes may only get activated in fullscreen mode.</long>
	</entry>
	<entry name="graphic/stereo3dseparation" type="float" value="50">
		<ui unit=" %" />
		<limits min="0" max="100" step="2" />
		<short>Stereo3D separation</short>
		<long>The strength of the effect. Experiment with different settings for best results.</long>
	</entry>
	<entry name="graphic/video" type="bool" value="true">
		<short>Video playback</short>
		<long>Allows completely disabling background videos. It is recommended to leave this enabled as Performous will still smoothly fade out the video if your computer is not fast enough.</long>
	</entry>
	<entry name="graphic/webcam" type="bool" value="false">
		<short>Webcam background</short>
		<long>Performous can use webcam as a background video. Disable it if Performous crashes while entering a song.</long>
	</entry>
	<entry name="graphic/webcamid" type="int" value="-1">
		<limits min="-1" max="9" step="1" />
		<short>Webcam id</short>
		<long>Use -1 to autodetect or a number starting from 0 to choose specific device.</long>
	</entry>
	<entry name="graphic/svg_lod" type="float" value="1.5">
		<ui unit="x" />
		<limits min="0.5" max="6.0" step="0.1" />
		<short>SVG quality</short>
		<long>Larger numbers cause vector graphics to be rendered in higher resolution. Decrease this to make navigating in menus faster.</long>
	</entry>
	<entry name="graphic/text_lod" type="float" value="1.5">
		<ui unit="x" />
		<limits min="0.5" max="6.0" step="0.1" />
		<short>Text quality</short>
		<long>Larger numbers cause text to be rendered in higher resolution. Decrease this to make everything a little faster.</long>
	</entry>
	<entry name="graphic/fps" type="bool" value="false">
		<short>Benchmark mode</short>
		<long>Framerate limit of 100 FPS is removed and the game instead renders at full speed. FPS values are printed to console. Please note that the display drivers may still limit the rendering speed to the screen refresh rate.</long>
	</entry>

	<!-- Audio preferences -->
	<entry name="audio/latency" type="float" value="0.075">
		<ui unit=" ms" multiplier="1000" />
		<limits min="0.0" max="0.25" step="0.005" />
		<short>Suggested latency</short>
		<long>This is a hint for the audio engine about the desired latency. Set this as low as possible while retaining clear audio playback. Requires restart.</long>
	</entry>
	<entry name="audio/backend" type="int" value="1337">
		<limits>
		<enum>Auto</enum>
		<!-- enum options will be added dynamically according to detected interfaces. -->
		</limits>
		<short>Audio Backend</short>
		<long>Configure which audio backend to use; not all backends will be supported on all platforms.</long>
	</entry>
	<entry name="audio/video_delay" type="float" value="0.06">
		<ui unit=" ms" multiplier="1000" />
		<limits min="-0.5" max="0.5" step="0.01" />
		<short>Audio/video latency</short>
		<long>Affects all modes. Use negative value if your display input lag is greater than the sound card output latency, positive values in the opposite case and zero if they are equal. This should be set so that the notes pass the cursor at the same time the audio is heard. Use Ctrl+F1/F2 to adjust this while performing.</long>
	</entry>
	<entry name="audio/round-trip" type="float" value="0.09">
		<ui unit=" ms" multiplier="1000" />
		<limits min="0.0" max="0.5" step="0.01" />
		<short>Audio round-trip latency</short>
		<long>Affects singing only. The time it takes for Performous playback to reach your speakers, fly to the microphone and all the way back until Performous captures and analyzes it. While performing, press Ctrl+S for synth mode and adjust with Ctrl+F3/F4.</long>
	</entry>
	<entry name="audio/controller_delay" type="float" value="0.08">
		<ui unit=" ms" multiplier="1000" />
		<limits min="0.0" max="0.5" step="0.01" />
		<short>Audio/controller latency</short>
		<long>Affects instruments and dancing only. The total of USB (guitar or dance pad) latency combined with audio output latency. Adjust so that you can hit the notes best when playing by ear (not looking on screen). Use Ctrl+F5/F6 to adjust while performing.</long>
	</entry>
	<entry name="audio/devices" type="string_list" hidden="true">
		<stringvalue>dev="USBMIC" mics="blue,red"</stringvalue><!-- SingStar mics -->
		<stringvalue>dev="Microphone" mics="*"</stringvalue><!-- Rock Band branded Logitech mic -->
		<stringvalue>mics="blue"</stringvalue><!-- Any other microphone (only if blue is still free) -->
		<stringvalue>out=2</stringvalue><!-- Any stereo output device -->
		<short>Audio devices</short>
		<long>List of audio devices to try.</long>
	</entry>
	<entry name="audio/preview_volume" type="int" value="70">
		<ui unit=" %" />
		<limits min="0" max="100" step="5" />
		<short>Menu volume</short>
		<long>The volume level of menus, song previews and jukebox mode.</long>
	</entry>
	<entry name="audio/music_volume" type="int" value="90">
		<ui unit=" %" />
		<limits min="0" max="100" step="5" />
		<short>Music volume</short>
		<long>The ingame music volume. Values above 90 are not recommended as distortion may occur.</long>
	</entry>
	<entry name="audio/fail_volume" type="int" value="90">
		<ui unit=" %" />
		<limits min="0" max="100" step="5" />
		<short>Failure volume</short>
		<long>The ingame fail sound volume. Values above 90 are not recommended as distortion may occur. 11 is louder than 10, but these go to 100. 89 louder!</long>
	</entry>
	<entry name="audio/pass-through" type="bool" value="false">
		<short>Microphone pass-through</short>
		<long>Send captured singing voice to speakers.</long>
	</entry>
	<entry name="audio/pass-through_ratio" type="float" value="2.0">
		<ui unit=" x" />
		<limits min="0.5" max="4.0" step="0.1" />
		<short>Pass-through volume ratio</short>
		<long>How much voice is amplified compared to the music.</long>
	</entry>
	<entry name="audio/suppress_center_channel" type="bool" value="false">
		<short>Suppress center channel</short>
		<long>Suppress audio of center channel (e.g. vocals).</long>
	</entry>

	<!-- Paths -->
	<entry name="paths/songs" type="string_list" hidden="false">
		<short>Song folders</short>
		<long>Where to recursively look for songs. DATADIR at the beginning means all Performous data folders.</long>
	</entry>
	<entry name="paths/showhiddenfolders" type="bool" value="false">
		<short>Show hidden folders</short>
		<long>When true the screen_paths will also show hidden folders</long>
	</entry>
	<entry name="paths/system-songs" type="string_list">
		<stringvalue>DATADIR/songs</stringvalue>
		<stringvalue>/usr/local/share/games/ultrastar/songs</stringvalue>
		<stringvalue>/usr/local/share/games/fretsonfire/data/songs</stringvalue>
		<stringvalue>/usr/share/games/ultrastar/songs</stringvalue>
		<stringvalue>/usr/share/games/fretsonfire/data/songs</stringvalue>
		<stringvalue>~/.ultrastar/songs</stringvalue>
		<stringvalue>/usr/local/share/performous/songs</stringvalue>
		<stringvalue>/usr/share/performous/songs</stringvalue>
		<stringvalue>~/.local/share/games/performous</stringvalue>
		<stringvalue>~/.local/share/performous</stringvalue>
		<stringvalue>%USERPROFILE%\AppData\Roaming\performous</stringvalue>
		<stringvalue>~\AppData\Roaming\performous</stringvalue>
		<stringvalue>%HOMEDRIVE%%HOMEPATH%\Application Data\performous</stringvalue>
		<stringvalue>~\Application Data\performous</stringvalue>
		<short>Default Song folders</short>
		<long>Where to recursively look for songs. DATADIR at the beginning means all Performous data folders.</long>
	</entry>
	<entry name="paths/system" type="string_list">
		<short>Base folders for data</short>
		<long>System defaults are included automatically. Additional paths can be added here.</long>
	</entry>
	<!-- Song ordering -->
	<entry name="songs/sort-order" type="int" value="0" hidden="true">
		<ui unit=" pixels" />
		<limits min="0" max="6" step="1" />
		<short>Sort order</short>
		<long>Currently active sort order</long>
	</entry>
</performous>