Merge with develop

This commit is contained in:
kervala 2015-12-12 11:33:59 +01:00
commit e3076519a4
10 changed files with 19 additions and 593 deletions

View file

@ -9,10 +9,5 @@ IF(WITH_RYZOM_CLIENT)
ADD_SUBDIRECTORY(unix) ADD_SUBDIRECTORY(unix)
ENDIF() ENDIF()
IF(RYZOM_ETC_PREFIX) INSTALL(FILES client_default.cfg DESTINATION ${RYZOM_ETC_PREFIX})
CONFIGURE_FILE(client_default.cfg.in "${CMAKE_CURRENT_BINARY_DIR}/client_default.cfg")
INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/client_default.cfg" DESTINATION ${RYZOM_ETC_PREFIX})
ELSE()
INSTALL(FILES client_default.cfg DESTINATION etc/ryzom)
ENDIF()
ENDIF() ENDIF()

View file

@ -1,573 +0,0 @@
//////////////////////////
//////////////////////////
/// CLIENT CONFIG FILE ///
//////////////////////////
//////////////////////////
// If you set this variable to 1, your client.cfg will be overwritten when you quit the client.
// You will loose all the comments and identation in this file.
SaveConfig = 1;
///////////////////
// WINDOW CONFIG //
///////////////////
Driver3D="Auto"; // Valid values are "Auto" or "0", "OpengGL" or "1" & "Direct3D" or "2"
// "Auto" will choose the best suited driver depending on hardware
FullScreen = 0;
Width = 1024;
Height = 768;
PositionX = 0;
PositionY = 0;
Frequency = 60;
Depth = 32;
Sleep = -1;
ProcessPriority = 0; // -2 = idle, -1 = below normal, 0 = normal, 1 = above normal, 2 = high, 3 = real time
Contrast = 0.0; // -1.0 ~ 1.0
Luminosity = 0.0; // -1.0 ~ 1.0
Gamma = 0.0; // -1.0 ~ 1.0
Contrast_min = -1.0;
Luminosity_min = -1.0;
Gamma_min = -1.0;
Contrast_max = 1.0;
Luminosity_max = 1.0;
Gamma_max = 1.0;
/////////////
// NETWORK //
/////////////
Application = { "ryzom_live", "./client_ryzom_r.exe", "./" };
BackgroundDownloader = 0;
PatchServer = "http://dl.ryzom.com/patch_live";
SignUpURL = "http://www.ryzom.com/subscribe";
StartupHost = "shard.ryzom.com:40916";
StartupPage = "/login/r2_login.php";
InstallStatsUrl = "http://shard.ryzom.com:50000/stats/stats.php";
CreateAccountURL = "https://secure.ryzom.com/signup/from_client.php";
InstallWebPage = "http://dl.ryzom.com/installer/";
////////////////
// INTERFACES //
////////////////
// the language to use as in ISO 639-2
LanguageCode = "en"; // english
XMLInputFile = "input_config_v3.xml";
XMLLoginInterfaceFiles = {
"login_config.xml",
"login_widgets.xml",
"login_main.xml",
"login_keys.xml",
};
XMLOutGameInterfaceFiles = {
"out_v2_config.xml",
"out_v2_widgets.xml",
"out_v2_connect.xml",
"out_v2_intro.xml",
"out_v2_select.xml",
"out_v2_appear.xml",
"out_v2_location.xml",
"out_v2_crash.xml",
"out_v2_hierarchy.xml",
"out_v2_keys.xml",
};
// The ligo primitive class file
LigoPrimitiveClass = "world_editor_classes.xml";
VerboseLog = 1;
///////////
// MOUSE //
///////////
HardwareCursor = 1;
CursorSpeed = 1.0; // In pixels per mickey
CursorSpeed_min = 0.5;
CursorSpeed_max = 2.0;
CursorAcceleration = 40; // Threshold in mickey
CursorAcceleration_min = 20;
CursorAcceleration_max = 80;
FreeLookSpeed = 0.004; // In radian per mickey
FreeLookSpeed_min = 0.0001;
FreeLookSpeed_max = 0.01;
FreeLookAcceleration = 40; // Threshold in mickey
FreeLookAcceleration_min = 20;
FreeLookAcceleration_max = 80;
FreeLookInverted = 0;
AutomaticCamera = 0;
DblClickMode = 1;
AutoEquipTool = 1;
///////////////////
// RENDER CONFIG //
///////////////////
// NB: thoses variables configure also the InGameConfigurator:
// _min and _max define the bounds
// _step defines the step (NB: take care of _min and _max!!)
// _ps0 is the LOW preset, _ps1 is the MEDIUM preset, _ps2 is the NORMAL Preset, and _ps3 is the HIGH one
// *** LANDSCAPE
LandscapeTileNear = 50.000000;
LandscapeTileNear_min = 20.000000;
LandscapeTileNear_max = 100.000000;
LandscapeTileNear_step = 10.0;
LandscapeTileNear_ps0 = 20.0;
LandscapeTileNear_ps1 = 40.0;
LandscapeTileNear_ps2 = 50.0;
LandscapeTileNear_ps3 = 80.0;
// NB: threshold is inverted ULandscape::setThreshold(), to be more intelligible
LandscapeThreshold = 1000.0;
LandscapeThreshold_min = 100.0; // Low quality => 0.01 threshold
LandscapeThreshold_max = 2000.0; // High quality => 0.0005 threshold
LandscapeThreshold_step = 100.0;
LandscapeThreshold_ps0 = 100.0;
LandscapeThreshold_ps1 = 500.0;
LandscapeThreshold_ps2 = 1000.0;
LandscapeThreshold_ps3 = 2000.0;
Vision = 500.000000;
Vision_min = 200.000000;
Vision_max = 800.000000;
Vision_step = 100.000000;
Vision_ps0 = 200.0;
Vision_ps1 = 400.0;
Vision_ps2 = 500.0;
Vision_ps3 = 800.0;
MicroVeget = 1; // Enable/Disable MicroVeget.
MicroVeget_ps0 = 0;
MicroVeget_ps1 = 1;
MicroVeget_ps2 = 1;
MicroVeget_ps3 = 1;
MicroVegetDensity = 80.0;
MicroVegetDensity_min = 10.0;
MicroVegetDensity_max = 100.0;
MicroVegetDensity_step = 10.0;
MicroVegetDensity_ps0 = 10.0; // not used since disabled!
MicroVegetDensity_ps1 = 30.0;
MicroVegetDensity_ps2 = 80.0;
MicroVegetDensity_ps3 = 100.0;
// *** FX
FxNbMaxPoly = 20000;
FxNbMaxPoly_min = 2000;
FxNbMaxPoly_max = 50000;
FxNbMaxPoly_step= 2000;
FxNbMaxPoly_ps0 = 2000;
FxNbMaxPoly_ps1 = 10000;
FxNbMaxPoly_ps2 = 20000;
FxNbMaxPoly_ps3 = 50000;
Cloud = 1;
Cloud_ps0 = 0 ;
Cloud_ps1 = 1 ;
Cloud_ps2 = 1 ;
Cloud_ps3 = 1 ;
CloudQuality = 160.0;
CloudQuality_min = 80.0;
CloudQuality_max = 320.0;
CloudQuality_step = 20.0;
CloudQuality_ps0 = 80.0; // not used since disabled!
CloudQuality_ps1 = 80.0;
CloudQuality_ps2 = 160.0;
CloudQuality_ps3 = 320.0;
CloudUpdate = 1;
CloudUpdate_min = 1;
CloudUpdate_max = 8;
CloudUpdate_step= 1;
CloudUpdate_ps0 = 1; // not used since disabled!
CloudUpdate_ps1 = 1;
CloudUpdate_ps2 = 1;
CloudUpdate_ps3 = 3;
Shadows = 1;
Shadows_ps0 = 0;
Shadows_ps1 = 1;
Shadows_ps2 = 1;
Shadows_ps3 = 1;
FXAA = 1;
FXAA_ps0 = 0;
FXAA_ps1 = 1;
FXAA_ps2 = 1;
FXAA_ps3 = 1;
Bloom = 0;
Bloom_ps0 = 0;
Bloom_ps1 = 1;
Bloom_ps2 = 1;
Bloom_ps3 = 1;
SquareBloom = 1;
SquareBloom_ps0 = 0;
SquareBloom_ps1 = 1;
SquareBloom_ps2 = 1;
SquareBloom_ps3 = 1;
DensityBloom = 255.0;
DensityBloom_min = 0.0;
DensityBloom_max = 255.0;
DensityBloom_step = 1.0;
DensityBloom_ps0 = 255.0;
DensityBloom_ps1 = 255.0;
DensityBloom_ps2 = 255.0;
DensityBloom_ps3 = 255.0;
// *** CHARACTERS
SkinNbMaxPoly = 100000;
SkinNbMaxPoly_min = 5000;
SkinNbMaxPoly_max = 250000;
SkinNbMaxPoly_step = 5000;
SkinNbMaxPoly_ps0 = 10000;
SkinNbMaxPoly_ps1 = 70000;
SkinNbMaxPoly_ps2 = 100000;
SkinNbMaxPoly_ps3 = 200000;
NbMaxSkeletonNotCLod = 125;
NbMaxSkeletonNotCLod_min = 5;
NbMaxSkeletonNotCLod_max = 255;
NbMaxSkeletonNotCLod_step = 5;
NbMaxSkeletonNotCLod_ps0 = 10;
NbMaxSkeletonNotCLod_ps1 = 50;
NbMaxSkeletonNotCLod_ps2 = 125;
NbMaxSkeletonNotCLod_ps3 = 255;
CharacterFarClip = 200.0;
CharacterFarClip_min = 50.0;
CharacterFarClip_max = 500.0;
CharacterFarClip_step = 10.0;
CharacterFarClip_ps0 = 50.0;
CharacterFarClip_ps1 = 100.0;
CharacterFarClip_ps2 = 200.0;
CharacterFarClip_ps3 = 500.0;
EnableRacialAnimation = 1;
// *** MISC
// 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
ScreenAspectRatio = 0.0;
ForceDXTC = 1; // Enable/Disable DXTC.
DivideTextureSizeBy2= 0; // Divide texture size
DisableVtxProgram = 0; // Disable Hardware Vertex Program.
DisableVtxAGP = 0; // Disable Hardware Vertex AGP.
DisableTextureShdr = 0; // Disable Hardware Texture Shader.
HDEntityTexture = 0;
HDTextureInstalled = 1;
WaitVBL = 0; // 0 or 1 to wait Vertical Sync.
//////////////////
// GAME OPTIONS //
//////////////////
SelectWithRClick = 1;
DisplayWeapons = 1;
RotKeySpeedMax = 2.0;
RotKeySpeedMax_min = 1.0;
RotKeySpeedMax_max = 4.0;
RotKeySpeedMin = 1.0;
RotKeySpeedMin_min = 0.5;
RotKeySpeedMin_max = 2.0;
RotAccel = 3.0;
FollowOnAtk = 0;
AtkOnSelect = 0;
ZCPacsPrim = "gen_bt_col_ext.pacs_prim";
/////////////////
// PREFERENCES //
/////////////////
FPV = 0; // FPV(First Person View) : default is false (Third Person View).
CameraHeight = 2.2; // Camera Height (in meter) from the ground (for the Third Person View).
CameraDistance = 3.0; // Camera Distance(in meter) from the user (for the Third Person View).
CameraDistStep = 1.0;
CameraDistMin = 1.0;
CameraDistMax = 25.0;
CameraAccel = 5.0;
CameraSpeedMin = 2.0;
CameraSpeedMax = 100.0;
CameraResetSpeed = 10.0; // Speed in radian/s
//////////////////
// SOUND CONFIG //
//////////////////
SoundForceSoftwareBuffer= 1;
SoundOn = 1;
UseEax = 0;
MaxTrack = 32;
MaxTrack_min = 4;
MaxTrack_max = 32;
MaxTrack_step = 4;
// This is the volume for "InGame" sound FXs
SoundSFXVolume = 1.0;
SoundSFXVolume_min = 0.0;
SoundSFXVolume_max = 1.0;
SoundSFXVolume_step = 0.001;
// This is volume for "InGame" music. Does not affect the MP3 player
SoundGameMusicVolume = 0.5;
SoundGameMusicVolume_min = 0.0;
SoundGameMusicVolume_max = 1.0;
SoundGameMusicVolume_step = 0.001;
// MISC
PreDataPath = { "user", "patch", "examples", "${RYZOM_SHARE_PREFIX}/data/fonts", "${RYZOM_SHARE_PREFIX}/data/gamedev.bnp" };
DataPath = { "${RYZOM_SHARE_PREFIX}/data" };
NeedComputeVS = 0;
NegFiltersDebug = {"Update DB", "Reading:", "Read Value :", "impulseCallBack", "CLIMPD:", "LNET" };
NegFiltersInfo = { "CLIMPD:", "CPath::lookup" , "LNET" };
NegFiltersWarning = { "'basics.Equipment Slot'.", "_usercolor.tga", "PACS" };
// Big screen shot
ScreenShotWidth = 0;
ScreenShotHeight = 0;
ScreenShotFullDetail = 1; // 1 to switch full detail mode for characters (both standard & big screenshots)
// Read : "ID", "R G B A MODE [FX]"
SystemInfoColors =
{
// OLD STUFF Here for compatibility
"RG", "0 0 0 255 normal", // Black to see when there is an error
"BC", "0 0 0 255 normal", // Black to see when there is an error
"JA", "0 0 0 255 normal", // Black to see when there is an error
"BL", "0 0 0 255 normal", // Black to see when there is an error
"VE", "0 0 0 255 normal", // Black to see when there is an error
"VI", "0 0 0 255 normal", // Black to see when there is an error
// NEW System Info Categories
"SYS", "255 255 255 255 normal", // Default system messages
"BC", "255 255 255 255 centeraround", // Broadcast messages
"TAGBC", "255 255 255 255 centeraround", // Taged broadcast messages : color should remain white as some word are tagged
"XP", "255 255 64 255 over", // XP Gain
"SP", "255 255 64 255 over", // SP Gain
"TTL", "255 255 64 255 over", // Title
"TSK", "255 255 255 255 over", // Task
"ZON", "255 255 255 255 center", // Zone
"DG", "255 0 0 255 normal", // Damage to me
"DMG", "255 0 0 255 normal", // Damage to me
"DGP", "200 0 0 255 normal", // Damage to me from player
"DGM", "255 128 64 255 normal", // Damage from me
"MIS", "150 150 150 255 normal", // The opponent misses
"MISM", "255 255 255 255 normal", // I miss
"ITM", "0 200 0 255 over", // Item
"ITMO", "170 170 255 255 overonly", // Item other in group
"ITMF", "220 0 220 255 over", // Item failed
"SPL", "50 50 250 255 normal", // Spell to me
"SPLM", "50 150 250 255 normal", // Spell from me
"EMT", "255 150 150 255 normal", // Emote
"MTD", "255 255 0 255 over", // Message Of The Day
"FORLD","64 255 64 255 overonly", // Forage Locate Deposit
"CHK", "255 120 60 255 center", // Tous ce qui ne remplit pas une condition
"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.)
"PVPTM","255 120 60 255 overonly", // PVP timer
"THM", "255 255 64 255 over misc_levelup.ps", // Thema finished
"AMB", "255 255 64 255 center", // Ambiance
"ISE", "192 208 255 255 normal", // Item special effect
"ISE2", "192 208 255 255 center", // Item special effect with center text (for effects without flying text)
"OSM", "128 160 255 255 center", // Outpost state message
"AROUND","255 255 0 255 around", // Only in around channel
"R2_INVITE","0 255 0 255 around", // Ring invitation
};
PrintfCommands = {
"52", "15", "55 55 0 255", "28", "uiChapterV", "624",
"428", "0 0 0 255", "18", "", "624", "378",
"0 0 0 255", "14", "", "644", "278", "0 0 0 255",
"18", "", "52", "17", "255 255 255 255", "28",
"uiChapterV", "622", "430", "255 255 255 255", "18", "",
"622", "380", "255 255 255 255", "14", "", "642",
"280", "255 255 255 255", "18", ""
};
PrintfCommandsFreeTrial = {
"52", "15", "55 55 0 255", "28", "uiChapterV", "624",
"428", "0 0 0 255", "18", "", "624", "378",
"0 0 0 255", "14", "", "644", "278", "0 0 0 255",
"18", "", "52", "17", "255 255 255 255", "28",
"uiChapterV", "622", "430", "255 255 255 255", "18", "",
"622", "380", "255 255 255 255", "14", "", "642",
"280", "255 255 255 255", "18", ""
};
DisplayMissingAnimFile = 0;
LoadingStringCount = 54;
// Some R2 parameters ...
R2Mode = 1;
R2EDEnabled = 1;
R2EDExtendedDebug = 0;
R2EDLightPalette = 0;
R2ClientGw = "r2linux01";
LoadLuaDebugger = 0;
CheckR2ScenarioMD5 = 1;
LevelDesignEnabled = 0;
DmCameraDistMax = 25;
DmRun = 20;
DmWalk = 6;
R2EDReloadFiles = {
"r2ed.xml",
"r2_basic_bricks.lua",
"r2_components.lua",
"r2_core.lua",
"r2_features_default.lua",
"r2_features_fauna.lua",
"r2_features_npc_groups.lua",
"r2_palette.lua",
"r2_scenario.lua",
"r2_ui.lua"
};
XMLInterfaceFiles = {
"config.xml",
"widgets.xml",
"webig_widgets.xml",
"player.xml",
"inventory.xml",
"interaction.xml",
"phrase.xml",
"harvest.xml",
"macros.xml",
"info_player.xml",
"outpost.xml",
"guild.xml",
"taskbar.xml",
"game_config.xml",
"game_context_menu.xml",
"player_trade.xml",
"bot_chat_v4.xml",
"compass.xml",
"map.xml",
"hierarchy.xml",
"reset.xml",
"actions.xml",
"help.xml",
"encyclopedia.xml",
"commands.xml",
"commands2.xml",
"ring_access_point_filter.xml",
"ring_window.xml",
"bg_downloader.xml"
};
XMLR2EDInterfaceFiles =
{
"r2ed.xml",
"r2_triggers.xml",
"r2_logic_entities.xml",
"r2ed_acts.xml",
"r2ed_scenario.xml",
"r2ed_connect.xml"
};
FogDistAndDepthLookupBias = 20; // bias for lookup of fog distance and depth
// Hardware cursor textures
// These will be extracted from the corresponding packed ui .tga files when they are loaded
// *
// * individual .tga files for hardware cursor bitmap not looked for, and not supported yet
HardwareCursors =
{
"curs_can_pan.tga",
"curs_can_pan_dup.tga",
"curs_create.tga",
"curs_create_multi.tga",
"curs_create_vertex_invalid.tga",
"curs_default.tga",
"curs_dup.tga",
"curs_L.tga",
"curs_M.tga",
"curs_pan.tga",
"curs_pan_dup.tga",
"curs_pick.tga",
"curs_pick_dup.tga",
"curs_R.tga",
"curs_resize_BL_TR.tga",
"curs_resize_BR_TL.tga",
"curs_resize_LR.tga",
"curs_resize_TB.tga",
"curs_rotate.tga",
"curs_scale.tga",
"curs_stop.tga",
"text_cursor.tga",
"r2_hand_can_pan.tga",
"r2_hand_pan.tga",
"r2ed_tool_can_pick.tga",
"r2ed_tool_can_rotate.tga",
"r2ed_tool_pick.tga",
"r2ed_tool_rotate.tga",
"r2ed_tool_rotating.tga"
};
Loading_BG = "new_loading_bg.tga"; // Default name for the loading background file.
Launch_BG = "new_launcher_bg.tga"; // Default name for the launch background file.
TeleportKami_BG = "new_teleport_kami_bg.tga";
TeleportKaravan_BG = "new_teleport_caravan_bg.tga";
Elevator_BG = "new_elevator_bg.tga"; // Default name for the loading background file.
ResurectKami_BG = "new_resurect_kami_bg.tga";
ResurectKaravan_BG = "new_resurect_caravane_bg.tga";
End_BG = "end_bg.tga"; // Default name for the last background file.
ScenarioSavePath = "./my_scenarios/";
// list ofpredefined keyset
// name will be looked up in the translation file by searching 'uiCP_KeysetName_" + id
// tooltip will be looked up in the translation file by searching 'uiCP_KeysetTooltip_" + id
// 'bi.' stands for built-in
// note : we add a dot in the name to be sure that there cannot be a conflict with character keyset name
BuiltInKeySets =
{
"", // default ryzom keyboard layout
"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)
"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)
"bi.wow_alike" // 'world of warcraft' like keyboard style. (NB : not available for ring)
};
// "Newbie Training", "Story Telling", "Mistery", "Hack & Slash", "Guild Training", "Other"
ScenarioTypes = {"so_newbie_training","so_story_telling","so_mistery","so_hack_slash","so_guild_training","so_other"};
ScenarioLanguages = {"fr","de","en","other_lang"};
// Map each language to a forum help page
HelpPages =
{
"fr=http://forums.ryzom.com/forum/showthread.php?t=29130",
"en=http://forums.ryzom.com/forum/showthread.php?t=29129",
"wk=http://forums.ryzom.com/forum/showthread.php?t=29129",
"de=http://forums.ryzom.com/forum/showthread.php?t=29131"
};
WebIgMainDomain = "app.ryzom.com";
WebIgTrustedDomains = {
"api.ryzom.com", "app.ryzom.com"
};
PatchletUrl = "http://app.ryzom.com/app_patchlet/index.php?patch=preload";
SelectedSlot = 0;
BuildName = "RELEASE_HEAD";

View file

@ -2193,7 +2193,7 @@ bool CClientConfig::getDefaultConfigLocation(std::string& p_name) const
defaultConfigPath = CPath::standardizePath(getAppBundlePath() + "/Contents/Resources/"); defaultConfigPath = CPath::standardizePath(getAppBundlePath() + "/Contents/Resources/");
#elif defined(NL_OS_UNIX) #elif defined(NL_OS_UNIX)
// if RYZOM_ETC_PREFIX is defined, client_default.cfg might be over there // if RYZOM_ETC_PREFIX is defined, client_default.cfg might be over there
if (!getRyzomEtcPrefix().empty()) defaultConfigPath = CPath::standardizePath(getRyzomEtcPrefix()); defaultConfigPath = CPath::standardizePath(getRyzomEtcPrefix());
#else #else
// some other prefix here :) // some other prefix here :)
#endif // NL_OS_UNIX #endif // NL_OS_UNIX

View file

@ -675,7 +675,7 @@ void addSearchPaths(IProgressCallback &progress)
#ifdef NL_OS_MAC #ifdef NL_OS_MAC
defaultDirectory = CPath::standardizePath(getAppBundlePath() + "/Contents/Resources"); defaultDirectory = CPath::standardizePath(getAppBundlePath() + "/Contents/Resources");
#elif defined(NL_OS_UNIX) #elif defined(NL_OS_UNIX)
if (!getRyzomSharePrefix().empty()) defaultDirectory = CPath::standardizePath(getRyzomSharePrefix()); if (CFile::isDirectory(getRyzomSharePrefix()) defaultDirectory = CPath::standardizePath(getRyzomSharePrefix());
#endif #endif
// add in last position, a specific possibly read only directory // add in last position, a specific possibly read only directory
@ -720,7 +720,7 @@ void addPreDataPaths(NLMISC::IProgressCallback &progress)
#ifdef NL_OS_MAC #ifdef NL_OS_MAC
defaultDirectory = CPath::standardizePath(getAppBundlePath() + "/Contents/Resources"); defaultDirectory = CPath::standardizePath(getAppBundlePath() + "/Contents/Resources");
#elif defined(NL_OS_UNIX) #elif defined(NL_OS_UNIX)
if (!getRyzomSharePrefix().empty()) defaultDirectory = CPath::standardizePath(getRyzomSharePrefix()); if (CFile::isDirectory(getRyzomSharePrefix()) defaultDirectory = CPath::standardizePath(getRyzomSharePrefix());
#endif #endif
// add in last position, a specific possibly read only directory // add in last position, a specific possibly read only directory

View file

@ -220,17 +220,13 @@ void CPatchManager::setClientRootPath(const std::string& clientRootPath)
#ifdef NL_OS_MAC #ifdef NL_OS_MAC
ReadableClientDataPath = CPath::standardizePath(getAppBundlePath() + "/Contents/Resources/data"); ReadableClientDataPath = CPath::standardizePath(getAppBundlePath() + "/Contents/Resources/data");
#elif defined(NL_OS_UNIX) #elif defined(NL_OS_UNIX)
if (!getRyzomSharePrefix().empty())
{
ReadableClientDataPath = CPath::standardizePath(getRyzomSharePrefix() + "/data"); ReadableClientDataPath = CPath::standardizePath(getRyzomSharePrefix() + "/data");
} if (CFile::isDirectory(ReadableClientDataPath)) ReadableClientDataPath.clear()
else
{
ReadableClientDataPath = WritableClientDataPath;
}
#else #else
ReadableClientDataPath = WritableClientDataPath; ReadableClientDataPath.clear();
#endif #endif
if (ReadableClientDataPath.empty()) ReadableClientDataPath = WritableClientDataPath;
} }
// **************************************************************************** // ****************************************************************************

View file

@ -26,3 +26,4 @@ IF(WITH_PCH)
ENDIF(WITH_PCH) ENDIF(WITH_PCH)
INSTALL(TARGETS sheets_packer RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools) INSTALL(TARGETS sheets_packer RUNTIME DESTINATION ${RYZOM_BIN_PREFIX} COMPONENT tools)
INSTALL(FILES sheets_packer.cfg DESTINATION ${RYZOM_SHARE_PREFIX} COMPONENT tools)

View file

@ -8,3 +8,4 @@ WorldSheet = "ryzom.world";
PrimitivesPath = "../../common/data_leveldesign/primitives"; PrimitivesPath = "../../common/data_leveldesign/primitives";
OutputDataPath = "../../client/data"; OutputDataPath = "../../client/data";
LigoPrimitiveClass = "world_editor_classes.xml"; LigoPrimitiveClass = "world_editor_classes.xml";
DumpVisualSlotsIndex = 1;

View file

@ -147,6 +147,7 @@ const std::string ConfigFileName = "sheets_packer.cfg";
//--------------------------------------------------- //---------------------------------------------------
CClientConfig::CClientConfig() CClientConfig::CClientConfig()
{ {
DumpVisualSlotsIndex = false;
}// CClientConfig // }// CClientConfig //
@ -180,6 +181,8 @@ void setValues()
READ_STRING(OutputDataPath) READ_STRING(OutputDataPath)
// Ligo primitive class // Ligo primitive class
READ_STRING(LigoPrimitiveClass) READ_STRING(LigoPrimitiveClass)
//Dump VisualSlots index
READ_BOOL(DumpVisualSlotsIndex)
///////////// /////////////
// FILTERS // // FILTERS //

View file

@ -51,9 +51,12 @@ struct CClientConfig
/// Path where to create lmconts.packed /// Path where to create lmconts.packed
std::string OutputDataPath; std::string OutputDataPath;
// File containing LIGO primitives
std::string LigoPrimitiveClass; std::string LigoPrimitiveClass;
// Whether dump visual slots index or not
bool DumpVisualSlotsIndex;
public: public:
/// Constructor. /// Constructor.
CClientConfig(); CClientConfig();

View file

@ -93,7 +93,7 @@ bool init()
nlinfo("Loading sheets..."); nlinfo("Loading sheets...");
IProgressCallback callback; IProgressCallback callback;
SheetMngr.setOutputDataPath(AppCfg.OutputDataPath); SheetMngr.setOutputDataPath(AppCfg.OutputDataPath);
SheetMngr.load (callback, true, true); SheetMngr.load (callback, true, true, AppCfg.DumpVisualSlotsIndex);
// Make the lmconts.packed file // Make the lmconts.packed file
if (!LigoConfig.readPrimitiveClass (AppCfg.LigoPrimitiveClass.c_str(), false)) if (!LigoConfig.readPrimitiveClass (AppCfg.LigoPrimitiveClass.c_str(), false))