1 //////////////////////////
\r
2 //////////////////////////
\r
3 /// CLIENT CONFIG FILE ///
\r
4 //////////////////////////
\r
5 //////////////////////////
\r
8 // If you set this variable to 1, your client.cfg will be overwritten when you quit the client.
\r
9 // You will loose all the comments and identation in this file.
\r
16 Driver3D="Auto"; // Valid values are "Auto" or "0", "OpengGL" or "1" & "Direct3D" or "2"
\r
17 // "Auto" will choose the best suited driver depending on hardware
\r
26 ProcessPriority = 0; // -2 = idle, -1 = below normal, 0 = normal, 1 = above normal, 2 = high, 3 = real time
\r
27 Contrast = 0.0; // -1.0 ~ 1.0
\r
28 Luminosity = 0.0; // -1.0 ~ 1.0
\r
29 Gamma = 0.0; // -1.0 ~ 1.0
\r
30 Contrast_min = -1.0;
\r
31 Luminosity_min = -1.0;
\r
34 Luminosity_max = 1.0;
\r
42 Application = { "open", "./client_ryzom_r.exe", "./" };
\r
43 BackgroundDownloader = 0;
\r
44 StartupHost = "https://open.ryzom.dev";
\r
45 StartupPage = "/login/r2_login.php";
\r
48 ConditionsTermsURL = "http://www.gnu.org/licenses/agpl-3.0.html";
\r
49 LoginSupportURL = "https://open.ryzom.dev/ams/";
\r
50 NamingPolicyURL = "https://open.ryzom.dev/ams/";
\r
51 ForgetPwdURL = "https://open.ryzom.dev/ams/";
\r
52 InstallWebPage = "https://open.ryzom.dev/ams/";
\r
53 StreamedPackageHosts = { "https://cdn.ryzom.dev/open/stream/" };
\r
55 // Full path and filename where cURL can find certificate bundle file
\r
56 // cacert.pem file can be downloaded from https://curl.haxx.se/docs/caextract.html
\r
57 // and added to client data path or system specific bundle can be used
\r
58 // Ubuntu has "/etc/ssl/certs/ca-certificates.crt"
\r
59 // % = defaultConfigFilePath
\r
60 CurlCABundle = "%cacert.pem";
\r
66 // the language to use as in ISO 639-2
\r
67 LanguageCode = "en"; // english
\r
69 XMLInputFile = "input_config_v3.xml";
\r
71 XMLLoginInterfaceFiles = {
\r
73 "login_widgets.xml",
\r
78 XMLOutGameInterfaceFiles = {
\r
79 "out_v2_config.xml",
\r
80 "out_v2_widgets.xml",
\r
81 "out_v2_connect.xml",
\r
83 "out_v2_select.xml",
\r
84 "out_v2_appear.xml",
\r
85 "out_v2_location.xml",
\r
87 "out_v2_hierarchy.xml",
\r
91 TexturesInterface = "texture_interfaces_v3";
\r
92 TexturesInterfaceDXTC = "texture_interfaces_dxtc";
\r
94 // The ligo primitive class file
\r
95 LigoPrimitiveClass = "world_editor_classes.xml";
\r
103 HardwareCursor = 1;
\r
105 CursorSpeed = 1.0; // In pixels per mickey
\r
106 CursorSpeed_min = 0.5;
\r
107 CursorSpeed_max = 2.0;
\r
109 CursorAcceleration = 40; // Threshold in mickey
\r
110 CursorAcceleration_min = 20;
\r
111 CursorAcceleration_max = 80;
\r
113 FreeLookSpeed = 0.004; // In radian per mickey
\r
114 FreeLookSpeed_min = 0.0001;
\r
115 FreeLookSpeed_max = 0.01;
\r
117 FreeLookAcceleration = 40; // Threshold in mickey
\r
118 FreeLookAcceleration_min = 20;
\r
119 FreeLookAcceleration_max = 80;
\r
121 FreeLookInverted = 0;
\r
122 FreeLookTablet = 0;
\r
123 AutomaticCamera = 0;
\r
127 ///////////////////
\r
128 // RENDER CONFIG //
\r
129 ///////////////////
\r
131 // NB: thoses variables configure also the InGameConfigurator:
\r
132 // _min and _max define the bounds
\r
133 // _step defines the step (NB: take care of _min and _max!!)
\r
134 // _ps0 is the LOW preset, _ps1 is the MEDIUM preset, _ps2 is the NORMAL Preset, and _ps3 is the HIGH one
\r
138 LandscapeTileNear = 50.000000;
\r
139 LandscapeTileNear_min = 20.000000;
\r
140 LandscapeTileNear_max = 100.000000;
\r
141 LandscapeTileNear_step = 10.0;
\r
142 LandscapeTileNear_ps0 = 20.0;
\r
143 LandscapeTileNear_ps1 = 40.0;
\r
144 LandscapeTileNear_ps2 = 50.0;
\r
145 LandscapeTileNear_ps3 = 80.0;
\r
147 // NB: threshold is inverted ULandscape::setThreshold(), to be more intelligible
\r
148 LandscapeThreshold = 1000.0;
\r
149 LandscapeThreshold_min = 100.0; // Low quality => 0.01 threshold
\r
150 LandscapeThreshold_max = 2000.0; // High quality => 0.0005 threshold
\r
151 LandscapeThreshold_step = 100.0;
\r
152 LandscapeThreshold_ps0 = 100.0;
\r
153 LandscapeThreshold_ps1 = 500.0;
\r
154 LandscapeThreshold_ps2 = 1000.0;
\r
155 LandscapeThreshold_ps3 = 2000.0;
\r
157 Vision = 500.000000;
\r
158 Vision_min = 200.000000;
\r
159 Vision_max = 800.000000;
\r
160 Vision_step = 100.000000;
\r
161 Vision_ps0 = 200.0;
\r
162 Vision_ps1 = 400.0;
\r
163 Vision_ps2 = 500.0;
\r
164 Vision_ps3 = 800.0;
\r
166 MicroVeget = 1; // Enable/Disable MicroVeget.
\r
167 MicroVeget_ps0 = 0;
\r
168 MicroVeget_ps1 = 1;
\r
169 MicroVeget_ps2 = 1;
\r
170 MicroVeget_ps3 = 1;
\r
172 MicroVegetDensity = 80.0;
\r
173 MicroVegetDensity_min = 10.0;
\r
174 MicroVegetDensity_max = 100.0;
\r
175 MicroVegetDensity_step = 10.0;
\r
176 MicroVegetDensity_ps0 = 10.0; // not used since disabled!
\r
177 MicroVegetDensity_ps1 = 30.0;
\r
178 MicroVegetDensity_ps2 = 80.0;
\r
179 MicroVegetDensity_ps3 = 100.0;
\r
183 FxNbMaxPoly = 20000;
\r
184 FxNbMaxPoly_min = 2000;
\r
185 FxNbMaxPoly_max = 50000;
\r
186 FxNbMaxPoly_step= 2000;
\r
187 FxNbMaxPoly_ps0 = 2000;
\r
188 FxNbMaxPoly_ps1 = 10000;
\r
189 FxNbMaxPoly_ps2 = 20000;
\r
190 FxNbMaxPoly_ps3 = 50000;
\r
198 CloudQuality = 160.0;
\r
199 CloudQuality_min = 80.0;
\r
200 CloudQuality_max = 320.0;
\r
201 CloudQuality_step = 20.0;
\r
202 CloudQuality_ps0 = 80.0; // not used since disabled!
\r
203 CloudQuality_ps1 = 80.0;
\r
204 CloudQuality_ps2 = 160.0;
\r
205 CloudQuality_ps3 = 320.0;
\r
208 CloudUpdate_min = 1;
\r
209 CloudUpdate_max = 8;
\r
210 CloudUpdate_step= 1;
\r
211 CloudUpdate_ps0 = 1; // not used since disabled!
\r
212 CloudUpdate_ps1 = 1;
\r
213 CloudUpdate_ps2 = 1;
\r
214 CloudUpdate_ps3 = 3;
\r
228 AnisotropicFilter = 0;
\r
237 SquareBloom_ps0 = 0;
\r
238 SquareBloom_ps1 = 1;
\r
239 SquareBloom_ps2 = 1;
\r
240 SquareBloom_ps3 = 1;
\r
242 DensityBloom = 255.0;
\r
243 DensityBloom_min = 0.0;
\r
244 DensityBloom_max = 255.0;
\r
245 DensityBloom_step = 1.0;
\r
246 DensityBloom_ps0 = 255.0;
\r
247 DensityBloom_ps1 = 255.0;
\r
248 DensityBloom_ps2 = 255.0;
\r
249 DensityBloom_ps3 = 255.0;
\r
253 SkinNbMaxPoly = 100000;
\r
254 SkinNbMaxPoly_min = 5000;
\r
255 SkinNbMaxPoly_max = 250000;
\r
256 SkinNbMaxPoly_step = 5000;
\r
257 SkinNbMaxPoly_ps0 = 10000;
\r
258 SkinNbMaxPoly_ps1 = 70000;
\r
259 SkinNbMaxPoly_ps2 = 100000;
\r
260 SkinNbMaxPoly_ps3 = 200000;
\r
262 NbMaxSkeletonNotCLod = 125;
\r
263 NbMaxSkeletonNotCLod_min = 5;
\r
264 NbMaxSkeletonNotCLod_max = 255;
\r
265 NbMaxSkeletonNotCLod_step = 5;
\r
266 NbMaxSkeletonNotCLod_ps0 = 10;
\r
267 NbMaxSkeletonNotCLod_ps1 = 50;
\r
268 NbMaxSkeletonNotCLod_ps2 = 125;
\r
269 NbMaxSkeletonNotCLod_ps3 = 255;
\r
271 CharacterFarClip = 200.0;
\r
272 CharacterFarClip_min = 50.0;
\r
273 CharacterFarClip_max = 500.0;
\r
274 CharacterFarClip_step = 10.0;
\r
275 CharacterFarClip_ps0 = 50.0;
\r
276 CharacterFarClip_ps1 = 100.0;
\r
277 CharacterFarClip_ps2 = 200.0;
\r
278 CharacterFarClip_ps3 = 500.0;
\r
280 EnableRacialAnimation = 1;
\r
283 // This is the actual aspect ratio of your screen (no relation with the resolution!!). Set 1.7777 if you got a 16/9 screen for instance
\r
284 ScreenAspectRatio = 0.0;
\r
285 ForceDXTC = 1; // Enable/Disable DXTC.
\r
286 DivideTextureSizeBy2= 0; // Divide texture size
\r
287 DisableVtxProgram = 0; // Disable Hardware Vertex Program.
\r
288 DisableVtxAGP = 0; // Disable Hardware Vertex AGP.
\r
289 DisableTextureShdr = 0; // Disable Hardware Texture Shader.
\r
290 HDEntityTexture = 1;
\r
291 HDTextureInstalled = 1;
\r
292 WaitVBL = 0; // 0 or 1 to wait Vertical Sync.
\r
297 SelectWithRClick = 1;
\r
298 DisplayWeapons = 1;
\r
299 RotKeySpeedMax = 2.0;
\r
300 RotKeySpeedMax_min = 1.0;
\r
301 RotKeySpeedMax_max = 4.0;
\r
302 RotKeySpeedMin = 1.0;
\r
303 RotKeySpeedMin_min = 0.5;
\r
304 RotKeySpeedMin_max = 2.0;
\r
308 ZCPacsPrim = "gen_bt_col_ext.pacs_prim";
\r
313 FPV = 0; // FPV(First Person View) : default is false (Third Person View).
\r
314 CameraHeight = 2.2; // Camera Height (in meter) from the ground (for the Third Person View).
\r
315 CameraDistance = 3.0; // Camera Distance(in meter) from the user (for the Third Person View).
\r
316 CameraDistStep = 1.0;
\r
317 CameraDistMin = 1.0;
\r
318 CameraDistMax = 25.0;
\r
320 CameraSpeedMin = 2.0;
\r
321 CameraSpeedMax = 100.0;
\r
322 CameraResetSpeed = 10.0; // Speed in radian/s
\r
324 // Values for UI Scale
\r
325 InterfaceScale = 1.0;
\r
326 InterfaceScale_min = 0.8;
\r
327 InterfaceScale_max = 2.0;
\r
328 InterfaceScale_step = 0.05;
\r
330 // Enable biliner filtering for UI textures
\r
331 // Texture atlas needs to be generated with border duplication
\r
332 // or there will be visible texture bleeding
\r
335 // Default values for map
\r
337 R2EDMaxMapScale = 8.0;
\r
339 WindowSnapInvert = 0;
\r
340 WindowSnapDistance = 10;
\r
341 WindowSnapDistance_min = 0;
\r
342 WindowSnapDistance_max = 50;
\r
343 WindowSnapDistance_step = 1;
\r
348 SoundForceSoftwareBuffer= 1;
\r
357 // This is the volume for "InGame" sound FXs
\r
358 SoundSFXVolume = 1.0;
\r
359 SoundSFXVolume_min = 0.0;
\r
360 SoundSFXVolume_max = 1.0;
\r
361 SoundSFXVolume_step = 0.001;
\r
363 // This is volume for "InGame" music. Does not affect the MP3 player
\r
364 SoundGameMusicVolume = 0.5;
\r
365 SoundGameMusicVolume_min = 0.0;
\r
366 SoundGameMusicVolume_max = 1.0;
\r
367 SoundGameMusicVolume_step = 0.001;
\r
370 MediaPlayerDirectory = "music";
\r
371 MediaPlayerAutoPlay = false;
\r
374 PreDataPath = { "user", "patch", "data", "examples" };
\r
377 NegFiltersDebug = {"Update DB", "Reading:", "Read Value :", "impulseCallBack", "CLIMPD:", "LNET" };
\r
378 NegFiltersInfo = { "CLIMPD:", "CPath::lookup" , "LNET" };
\r
379 NegFiltersWarning = { "'basics.Equipment Slot'.", "_usercolor.tga", "PACS" };
\r
382 ScreenShotWidth = 0;
\r
383 ScreenShotHeight = 0;
\r
384 ScreenShotFullDetail = 1; // 1 to switch full detail mode for characters (both standard & big screenshots)
\r
386 // Read : "ID", "R G B A MODE [FX]"
\r
389 // OLD STUFF Here for compatibility
\r
390 "RG", "0 0 0 255 normal", // Black to see when there is an error
\r
391 "BC", "0 0 0 255 normal", // Black to see when there is an error
\r
392 "JA", "0 0 0 255 normal", // Black to see when there is an error
\r
393 "BL", "0 0 0 255 normal", // Black to see when there is an error
\r
394 "VE", "0 0 0 255 normal", // Black to see when there is an error
\r
395 "VI", "0 0 0 255 normal", // Black to see when there is an error
\r
397 // NEW System Info Categories
\r
398 "SYS", "255 255 255 255 normal", // Default system messages
\r
399 "BC", "255 255 255 255 centeraround", // Broadcast messages
\r
400 "TAGBC", "255 255 255 255 centeraround", // Taged broadcast messages : color should remain white as some word are tagged
\r
401 "XP", "255 255 64 255 over", // XP Gain
\r
402 "SP", "255 255 64 255 over", // SP Gain
\r
403 "TTL", "255 255 64 255 over", // Title
\r
404 "TSK", "255 255 255 255 over", // Task
\r
405 "ZON", "255 255 255 255 center", // Zone
\r
406 "DG", "255 0 0 255 normal", // Damage to me
\r
407 "DMG", "255 0 0 255 normal", // Damage to me
\r
408 "DGP", "200 0 0 255 normal", // Damage to me from player
\r
409 "DGM", "255 128 64 255 normal", // Damage from me
\r
410 "MIS", "150 150 150 255 normal", // The opponent misses
\r
411 "MISM", "255 255 255 255 normal", // I miss
\r
412 "ITM", "0 200 0 255 over", // Item
\r
413 "ITMO", "170 170 255 255 overonly", // Item other in group
\r
414 "ITMF", "220 0 220 255 over", // Item failed
\r
415 "SPL", "50 50 250 255 normal", // Spell to me
\r
416 "SPLM", "50 150 250 255 normal", // Spell from me
\r
417 "EMT", "255 150 150 255 normal", // Emote
\r
418 "MTD", "255 255 0 255 over", // Message Of The Day
\r
419 "FORLD","64 255 64 255 overonly", // Forage Locate Deposit
\r
420 "CHK", "255 120 60 255 center", // Tous ce qui ne remplit pas une condition
\r
421 "CHKCB","255 255 0 255 center", // Tous ce qui ne remplit pas une condition en combat (trop loin, cible invalide, pas assez de mana, etc.)
\r
422 "PVPTM","255 120 60 255 overonly", // PVP timer
\r
423 "THM", "255 255 64 255 over misc_levelup.ps", // Thema finished
\r
424 "AMB", "255 255 64 255 center", // Ambiance
\r
425 "ISE", "192 208 255 255 normal", // Item special effect
\r
426 "ISE2", "192 208 255 255 center", // Item special effect with center text (for effects without flying text)
\r
427 "OSM", "128 160 255 255 center", // Outpost state message
\r
428 "AROUND","255 255 0 255 around", // Only in around channel
\r
429 "R2_INVITE","0 255 0 255 around", // Ring invitation
\r
433 "52", "15", "55 55 0 255", "28", "uiChapterV", "624",
\r
434 "428", "0 0 0 255", "18", "", "624", "378",
\r
435 "0 0 0 255", "14", "", "644", "278", "0 0 0 255",
\r
436 "18", "", "52", "17", "255 255 255 255", "28",
\r
437 "uiChapterV", "622", "430", "255 255 255 255", "18", "",
\r
438 "622", "380", "255 255 255 255", "14", "", "642",
\r
439 "280", "255 255 255 255", "18", ""
\r
442 PrintfCommandsFreeTrial = {
\r
443 "52", "15", "55 55 0 255", "28", "uiChapterV", "624",
\r
444 "428", "0 0 0 255", "18", "", "624", "378",
\r
445 "0 0 0 255", "14", "", "644", "278", "0 0 0 255",
\r
446 "18", "", "52", "17", "255 255 255 255", "28",
\r
447 "uiChapterV", "622", "430", "255 255 255 255", "18", "",
\r
448 "622", "380", "255 255 255 255", "14", "", "642",
\r
449 "280", "255 255 255 255", "18", ""
\r
452 DisplayMissingAnimFile = 0;
\r
454 LoadingStringCount = 54;
\r
457 // Some R2 parameters ...
\r
461 R2EDExtendedDebug = 0;
\r
462 R2EDLightPalette = 0;
\r
463 R2ClientGw = "r2linux01";
\r
464 LoadLuaDebugger = 0;
\r
465 CheckR2ScenarioMD5 = 1;
\r
466 LevelDesignEnabled = 0;
\r
468 DmCameraDistMax = 25;
\r
472 R2EDReloadFiles = {
\r
474 "r2_basic_bricks.lua",
\r
475 "r2_components.lua",
\r
477 "r2_features_default.lua",
\r
478 "r2_features_fauna.lua",
\r
479 "r2_features_npc_groups.lua",
\r
485 XMLInterfaceFiles = {
\r
488 "webig_widgets.xml",
\r
501 "game_context_menu.xml",
\r
502 "player_trade.xml",
\r
510 "encyclopedia.xml",
\r
513 "ring_access_point_filter.xml",
\r
515 "bg_downloader.xml",
\r
516 "ryzhome_toolbar.xml",
\r
520 XMLR2EDInterfaceFiles =
\r
524 "r2_logic_entities.xml",
\r
526 "r2ed_scenario.xml",
\r
530 FogDistAndDepthLookupBias = 20; // bias for lookup of fog distance and depth
\r
533 // Hardware cursor textures
\r
534 // These will be extracted from the corresponding packed ui .tga files when they are loaded
\r
536 // * individual .tga files for hardware cursor bitmap not looked for, and not supported yet
\r
539 "curs_can_pan.tga",
\r
540 "curs_can_pan_dup.tga",
\r
542 "curs_create_multi.tga",
\r
543 "curs_create_vertex_invalid.tga",
\r
544 "curs_default.tga",
\r
549 "curs_pan_dup.tga",
\r
551 "curs_pick_dup.tga",
\r
553 "curs_resize_BL_TR.tga",
\r
554 "curs_resize_BR_TL.tga",
\r
555 "curs_resize_LR.tga",
\r
556 "curs_resize_TB.tga",
\r
561 "r2_hand_can_pan.tga",
\r
563 "r2ed_tool_can_pick.tga",
\r
564 "r2ed_tool_can_rotate.tga",
\r
565 "r2ed_tool_pick.tga",
\r
566 "r2ed_tool_rotate.tga",
\r
567 "r2ed_tool_rotating.tga"
\r
570 Loading_BG = "new_loading_bg.tga"; // Default name for the loading background file.
\r
571 Launch_BG = "new_launcher_bg.tga"; // Default name for the launch background file.
\r
572 TeleportKami_BG = "new_teleport_kami_bg.tga";
\r
573 TeleportKaravan_BG = "new_teleport_caravan_bg.tga";
\r
574 Elevator_BG = "new_elevator_bg.tga"; // Default name for the loading background file.
\r
575 ResurectKami_BG = "new_resurect_kami_bg.tga";
\r
576 ResurectKaravan_BG = "new_resurect_caravane_bg.tga";
\r
577 End_BG = "end_bg.tga"; // Default name for the last background file.
\r
579 ScenarioSavePath = "./my_scenarios/";
\r
581 // list ofpredefined keyset
\r
582 // name will be looked up in the translation file by searching 'uiCP_KeysetName_" + id
\r
583 // tooltip will be looked up in the translation file by searching 'uiCP_KeysetTooltip_" + id
\r
584 // 'bi.' stands for built-in
\r
585 // note : we add a dot in the name to be sure that there cannot be a conflict with character keyset name
\r
588 "", // default ryzom keyboard layout
\r
589 "bi.zqsd", // european keyboard fps displacement style (NB : don't change this layout name, ryzom will automatically select it if keyboard is french or belgian)
\r
590 "bi.wasd", // english keyboard fps displacement style (NB : don't change this layout name, ryzom will automatically select it if keyboard is not french nor belgian)
\r
591 "bi.wow_alike" // 'world of warcraft' like keyboard style. (NB : not available for ring)
\r
594 // "Newbie Training", "Story Telling", "Mistery", "Hack & Slash", "Guild Training", "Other"
\r
595 ScenarioTypes = {"so_newbie_training","so_story_telling","so_mistery","so_hack_slash","so_guild_training","so_other"};
\r
597 ScenarioLanguages = {"fr","de","en","other_lang"};
\r
599 // Map each language to a forum help page
\r
602 "fr=https://app.ryzom.com/app_forum/index.php?page=topic/view/6629/1&lang=fr",
\r
603 "en=https://app.ryzom.com/app_forum/index.php?page=topic/view/6629/1&lang=en",
\r
604 "wk=https://app.ryzom.com/app_forum/index.php?page=topic/view/6629/1",
\r
605 "de=https://app.ryzom.com/app_forum/index.php?page=topic/view/6629/1&lang=de",
\r
606 "es=https://app.ryzom.com/app_forum/index.php?page=topic/view/6629/1&lang=es",
\r
607 "ru=https://app.ryzom.com/app_forum/index.php?page=topic/view/6629/1&lang=ru"
\r
610 // User created channel
\r
611 ChannelIgnoreFilter =
\r
613 "Uni Français", "English Uni", "Español Uni",
\r
614 "русский Uni", "Deutsch Uni", "Karavan",
\r
615 "Kami", "Ranger", "Marauder", "Fyros",
\r
616 "Matis", "Tryker", "Zoraï"
\r
619 // interval in minutes for webig notify thread to run
\r
620 WebIgNotifInterval = 10;
\r
621 WebIgMainDomain = "https://open.ryzom.dev";
\r
622 WebIgTrustedDomains = {
\r
625 PatchletUrl = "https://open.ryzom.dev/app_patchlet/index.php?patch=preload";
\r
629 BuildName = "RELEASE_HEAD";
\r