From ae19cfe5eb3d5746d0f8a18c38874d1207e416fa Mon Sep 17 00:00:00 2001 From: kervala Date: Sun, 20 Dec 2015 18:59:45 +0100 Subject: [PATCH 1/5] Changed: Also fix medium and heavy boots with a dress --HG-- branch : develop --- code/ryzom/client/src/interface_v3/character_3d.cpp | 2 +- code/ryzom/client/src/player_cl.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/ryzom/client/src/interface_v3/character_3d.cpp b/code/ryzom/client/src/interface_v3/character_3d.cpp index b9d289be9..85eac6314 100644 --- a/code/ryzom/client/src/interface_v3/character_3d.cpp +++ b/code/ryzom/client/src/interface_v3/character_3d.cpp @@ -441,7 +441,7 @@ void SCharacter3DSetup::setupFromCS_ModelCol (SLOTTYPE::EVisualSlot s, sint32 mo Parts[part].Name = item->getShapeFemale(); // use the right type of boots if wearing a caster dress - if ((s == SLOTTYPE::FEET_SLOT) && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS)) + if ((s == SLOTTYPE::FEET_SLOT) && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS || item->ItemType == ITEM_TYPE::MEDIUM_BOOTS || item->ItemType == ITEM_TYPE::HEAVY_BOOTS)) { std::string shapeLegs = Parts[Char3DPart_Legs].Name; diff --git a/code/ryzom/client/src/player_cl.cpp b/code/ryzom/client/src/player_cl.cpp index f94fb5e78..20ac5e3b2 100644 --- a/code/ryzom/client/src/player_cl.cpp +++ b/code/ryzom/client/src/player_cl.cpp @@ -543,7 +543,7 @@ void CPlayerCL::equip(SLOTTYPE::EVisualSlot slot, uint index, uint color) std::string shapeName = _Gender == GSGENDER::female ? item->getShapeFemale():item->getShape(); // use the right type of boots if wearing a caster dress - if ((slot == SLOTTYPE::FEET_SLOT) && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS)) + if ((slot == SLOTTYPE::FEET_SLOT) && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS || item->ItemType == ITEM_TYPE::MEDIUM_BOOTS || item->ItemType == ITEM_TYPE::HEAVY_BOOTS)) { std::string shapeLegs; From 2cbcb2735eac6fd8f84ad2f5804aa4954bc57e56 Mon Sep 17 00:00:00 2001 From: kervala Date: Sun, 20 Dec 2015 19:06:38 +0100 Subject: [PATCH 2/5] Changed: Some improvements (only try to fix wrong filenames if right files don't exist) --HG-- branch : develop --- .../client/src/interface_v3/character_3d.cpp | 42 ++++++++++++------- code/ryzom/client/src/player_cl.cpp | 42 ++++++++++++------- 2 files changed, 54 insertions(+), 30 deletions(-) diff --git a/code/ryzom/client/src/interface_v3/character_3d.cpp b/code/ryzom/client/src/interface_v3/character_3d.cpp index 85eac6314..f9d4e36c2 100644 --- a/code/ryzom/client/src/interface_v3/character_3d.cpp +++ b/code/ryzom/client/src/interface_v3/character_3d.cpp @@ -458,27 +458,39 @@ void SCharacter3DSetup::setupFromCS_ModelCol (SLOTTYPE::EVisualSlot s, sint32 mo tmpName.replace(posBottes+7, 0, "_" + orgType); tmpName.replace(7, orgType.length(), "caster01"); - // temporary hack because Fyros boots don't respect conventions - if (tmpName[0] == 'f') - { - if (tmpName[5] == 'f') - { - tmpName = "fy_hof_caster01_bottes_civil.shape"; - } - else - { - tmpName = "fy_hom_caster01_civil01_bottes.shape"; - } - } - - // use fixed shape name only if file is present if (CPath::exists(tmpName)) { + // use fixed shape name only if file is present Parts[part].Name = tmpName; } else { - nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), Parts[part].Name.c_str()); + // temporary hack because Fyros light boots don't respect conventions + if (tmpName[0] == 'f' && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS)) + { + if (tmpName[5] == 'f') + { + tmpName = "fy_hof_caster01_bottes_civil.shape"; + } + else + { + tmpName = "fy_hom_caster01_civil01_bottes.shape"; + } + + // use fixed shape name only if file is present + if (CPath::exists(tmpName)) + { + Parts[part].Name = tmpName; + } + else + { + nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), Parts[part].Name.c_str()); + } + } + else + { + nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), Parts[part].Name.c_str()); + } } } } diff --git a/code/ryzom/client/src/player_cl.cpp b/code/ryzom/client/src/player_cl.cpp index 20ac5e3b2..a086855ab 100644 --- a/code/ryzom/client/src/player_cl.cpp +++ b/code/ryzom/client/src/player_cl.cpp @@ -569,27 +569,39 @@ void CPlayerCL::equip(SLOTTYPE::EVisualSlot slot, uint index, uint color) tmpName.replace(posBottes+7, 0, "_" + orgType); tmpName.replace(7, orgType.length(), "caster01"); - // temporary hack because Fyros boots don't respect conventions - if (tmpName[0] == 'f') - { - if (tmpName[5] == 'f') - { - tmpName = "fy_hof_caster01_bottes_civil.shape"; - } - else - { - tmpName = "fy_hom_caster01_civil01_bottes.shape"; - } - } - - // use fixed shape name only if file is present if (CPath::exists(tmpName)) { + // use fixed shape name only if file is present shapeName = tmpName; } else { - nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), shapeName.c_str()); + // temporary hack because Fyros light boots don't respect conventions + if (tmpName[0] == 'f' && (item->ItemType == ITEM_TYPE::LIGHT_BOOTS)) + { + if (tmpName[5] == 'f') + { + tmpName = "fy_hof_caster01_bottes_civil.shape"; + } + else + { + tmpName = "fy_hom_caster01_civil01_bottes.shape"; + } + + // use fixed shape name only if file is present + if (CPath::exists(tmpName)) + { + shapeName = tmpName; + } + else + { + nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), shapeName.c_str()); + } + } + else + { + nlwarning("File %s doesn't exist, use %s", tmpName.c_str(), shapeName.c_str()); + } } } } From 71d3ea8a372411b4f51bf76f877a4fbe26bd8bbe Mon Sep 17 00:00:00 2001 From: kervala Date: Sun, 20 Dec 2015 19:08:52 +0100 Subject: [PATCH 3/5] Changed: Preparation of future binary patching (each supported platform has its own BNP with binaries) --HG-- branch : develop --- code/ryzom/client/src/login_patch.cpp | 29 ++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/code/ryzom/client/src/login_patch.cpp b/code/ryzom/client/src/login_patch.cpp index 42b9a530d..8a584ee3f 100644 --- a/code/ryzom/client/src/login_patch.cpp +++ b/code/ryzom/client/src/login_patch.cpp @@ -201,11 +201,34 @@ CPatchManager::CPatchManager() : State("t_state"), DataScanState("t_data_scan_st _StateListener = NULL; _StartRyzomAtEnd = true; -#ifdef NL_OS_UNIX - // don't use cfg, exe and dll from Windows version + // only download binaries for current platform ForceRemovePatchCategories.clear(); ForceRemovePatchCategories.push_back("main_exedll"); - ForceRemovePatchCategories.push_back("main_cfg"); +#if defined(NL_OS_WIN64) + ForceRemovePatchCategories.push_back("main_exedll_win32"); + ForceRemovePatchCategories.push_back("main_exedll_linux32"); + ForceRemovePatchCategories.push_back("main_exedll_linux64"); + ForceRemovePatchCategories.push_back("main_exedll_osx"); +#elif defined(NL_OS_WIN32) + ForceRemovePatchCategories.push_back("main_exedll_win34"); + ForceRemovePatchCategories.push_back("main_exedll_linux32"); + ForceRemovePatchCategories.push_back("main_exedll_linux64"); + ForceRemovePatchCategories.push_back("main_exedll_osx"); +#elif defined(NL_OS_APPLE) + ForceRemovePatchCategories.push_back("main_exedll_win32"); + ForceRemovePatchCategories.push_back("main_exedll_win34"); + ForceRemovePatchCategories.push_back("main_exedll_linux32"); + ForceRemovePatchCategories.push_back("main_exedll_linux64"); +#elif defined(NL_OS_UNIX) && defined(_LP64) + ForceRemovePatchCategories.push_back("main_exedll_win32"); + ForceRemovePatchCategories.push_back("main_exedll_win34"); + ForceRemovePatchCategories.push_back("main_exedll_linux32"); + ForceRemovePatchCategories.push_back("main_exedll_osx"); +#else + ForceRemovePatchCategories.push_back("main_exedll_win32"); + ForceRemovePatchCategories.push_back("main_exedll_win64"); + ForceRemovePatchCategories.push_back("main_exedll_linux64"); + ForceRemovePatchCategories.push_back("main_exedll_osx"); #endif } From 68b23fe50f7c1e77b2ee6d86edca6e78d31c0ecb Mon Sep 17 00:00:00 2001 From: kervala Date: Sun, 20 Dec 2015 19:09:18 +0100 Subject: [PATCH 4/5] Changed: Typo --HG-- branch : develop --- code/ryzom/client/src/login_patch.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/ryzom/client/src/login_patch.cpp b/code/ryzom/client/src/login_patch.cpp index 8a584ee3f..9c0cbb9fd 100644 --- a/code/ryzom/client/src/login_patch.cpp +++ b/code/ryzom/client/src/login_patch.cpp @@ -3052,7 +3052,7 @@ void CPatchThread::processFile (CPatchManager::SFileToPatch &rFTP) // to apply a single patch from a refrence version to them. (so here we necessarily got // 'rFTP.Patches.size() == 1' !) // The reference version itself is incrementally patched, however, and may be rebuilt from time to time - // when the delta to the reference has become to big (but is most of the time < to the sum of equivallent delta patchs) + // when the delta to the reference has become too big (but is most of the time < to the sum of equivallent delta patchs) // The non-incremental final patch (from ref file to final bnp), is guaranteed to be done last // after the reference file has been updated From 296ca5133fd2c0efcd3d7eb29880c396a4fd8457 Mon Sep 17 00:00:00 2001 From: kervala Date: Sun, 20 Dec 2015 19:10:33 +0100 Subject: [PATCH 5/5] Changed: Only display flushDebugStack messages if DisableNLDebug is not set --HG-- branch : develop --- code/ryzom/client/src/debug_client.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/ryzom/client/src/debug_client.cpp b/code/ryzom/client/src/debug_client.cpp index 79f8ae4a4..4d5dc3a1b 100644 --- a/code/ryzom/client/src/debug_client.cpp +++ b/code/ryzom/client/src/debug_client.cpp @@ -154,15 +154,15 @@ void flushDebugStack(const std::string &title) strTmp = toString("\n"); DebugFile.serialBuffer((uint8*)strTmp.c_str(), (uint)strTmp.size()); } - // No Output File -> nlwarning - else + // No Output File -> nldebug only if DisableNLDebug not set to true + else if (!DisableNLDebug) { - nlwarning("%s", title.c_str()); + nldebug("%s", title.c_str()); for(uint i=0; i