Рейтинг:
2
Member 7995828
Я попробовал это сделать:
Путь это: строка charRecipeFilePath = приложение.persistentDataPath + "/рецепт символ" + "/" + плеер.имя + ".тхт";
characterRecipe = dcAvatar.GetCurrentRecipe();
//FileUtils.WriteAllText(charRecipeFilePath, characterRecipe);
using (FileStream recipeFileStream = File.Create(charRecipeFilePath))
{
binaryFormatter.Serialize(recipeFileStream, characterRecipe);
}
Файл Luna(женский)_CIROSTRIX15.txt содержит:
ÿÿÿÿ Ë{"packedRecipeType":"DynamicCharacterAvatar","name":"Luna(Female)_CIROSTRIX15","race":"G3 Human Female","dna":[{"dnaType":"DynamicUMADna","dnaTypeHash":1673940569,"packedDna":"{\"bDnaAsset\":{\"instanceID\":38920},\"bDnaAssetName\":\"G3HF DynamicUMADnaAsset\",\"bDnaSettings\":[{\"name\":\"BodyDetails\",\"value\":128},{\"name\":\"BodySize\",\"value\":128},{\"name\":\"BodyBulk\",\"value\":128},{\"name\":\"BodyThickness\",\"value\":128},{\"name\":\"BodyHeight\",\"value\":128},{\"name\":\"BodyAnna\",\"value\":128},{\"name\":\"BodyBriley\",\"value\":128},{\"name\":\"BodyCathy\",\"value\":128},{\"name\":\"BodyClarice\",\"value\":128},{\"name\":\"BodyFilia\",\"value\":128},{\"name\":\"BodyGia\",\"value\":128},{\"name\":\"BodyIrelia\",\"value\":128},{\"name\":\"BodyJazmine\",\"value\":128},{\"name\":\"BodyLaura\",\"value\":128},{\"name\":\"BodyLindsey\",\"value\":128},{\"name\":\"BodyMonique\",\"value\":128},{\"name\":\"BodySenna\",\"value\":128},{\"name\":\"BodySunny\",\"value\":128},{\"name\":\"BodyTisha\",\"value\":128},{\"name\":\"BodyUma\",\"value\":128},{\"name\":\"HeadAnna\",\"value\":128},{\"name\":\"HeadBriley\",\"value\":128},{\"name\":\"HeadCathy\",\"value\":128},{\"name\":\"HeadClarice\",\"value\":128},{\"name\":\"HeadFilia\",\"value\":128},{\"name\":\"HeadGia\",\"value\":128},{\"name\":\"HeadIrelia\",\"value\":128},{\"name\":\"HeadJazmine\",\"value\":128},{\"name\":\"HeadLaura\",\"value\":128},{\"name\":\"HeadLindsey\",\"value\":128},{\"name\":\"HeadMonique\",\"value\":128},{\"name\":\"HeadSenna\",\"value\":128},{\"name\":\"HeadSunny\",\"value\":128},{\"name\":\"HeadTisha\",\"value\":128},{\"name\":\"HeadUMA\",\"value\":128},{\"name\":\"BreastSmall\",\"value\":128},{\"name\":\"BreastLarge\",\"value\":128},{\"name\":\"NipplesLength\",\"value\":128},{\"name\":\"NipplesSize\",\"value\":128},{\"name\":\"AreolaSize\",\"value\":128},{\"name\":\"GluteSize\",\"value\":128},{\"name\":\"HipSize\",\"value\":128},{\"name\":\"HeadElfEars\",\"value\":128},{\"name\":\"HeadSize\",\"value\":128}]}"}],"characterColors":[{"name":"Skin","colors":[240,210,159,255,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0]},{"name":"Hair","colors":[50,30,2,255,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0]},{"name":"Eyes","colors":[10,11,165,255,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0]}],"wardrobeSet":[{"slot":"Hair","recipe":"G3F ShortToulouse Hair"},{"slot":"WardrobeCollection","recipe":"G3F JG_FullOutfit"}],"raceAnimatorController":"G3F AnimationCntrlr"}
Большая часть содержимого файла может быть отредактирована.
F-ES Sitecore
Как вам уже было сказано, создание двоичного файла не дает ему никакой защиты и не останавливает людей, редактирующих его. Если вы хотите защитить файл, то зашифруйте его при сохранении и расшифруйте при загрузке.
Member 7995828
Спасибо я постараюсь, что.
Richard MacCutchan
Это не XML, он больше похож на JSON, но неправильно отформатирован. Откуда вы его взяли?
Member 7995828
Это часть структуры UMA.
characterRecipe = dcAvatar.GetCurrentRecipe();
{"packedRecipeType":"DynamicCharacterAvatar","name":"Luna(Female)_CIROSTRIX15","race":"G3 Human Female","dna":[{"dnaType":"DynamicUMADna","dnaTypeHash":1673940569,"packedDna":"{\"bDnaAsset\":{\"instanceID\":38920},\"bDnaAssetName\":\"G3HF DynamicUMADnaAsset\",\"bDnaSettings\":[{\"name\":\"BodyDetails\",\"value\":128},{\"name\":\"BodySize\",\"value\":128},{\"name\":\"BodyBulk\",\"value\":128},{\"name\":\"BodyThickness\",\"value\":128},{\"name\":\"BodyHeight\",\"value\":128},{\"name\":\"BodyAnna\",\"value\":128},{\"name\":\"BodyBriley\",\"value\":128},{\"name\":\"BodyCathy\",\"value\":128},{\"name\":\"BodyClarice\",\"value\":128},{\"name\":\"BodyFilia\",\"value\":128},{\"name\":\"BodyGia\",\"value\":128},{\"name\":\"BodyIrelia\",\"value\":128},{\"name\":\"BodyJazmine\",\"value\":128},{\"name\":\"BodyLaura\",\"value\":128},{\"name\":\"BodyLindsey\",\"value\":128},{\"name\":\"BodyMonique\",\"value\":128},{\"name\":\"BodySenna\",\"value\":128},{\"name\":\"BodySunny\",\"value\":128},{\"name\":\"BodyTisha\",\"value\":128},{\"name\":\"BodyUma\",\"value\":128},{\"name\":\"HeadAnna\",\"value\":128},{\"name\":\"HeadBriley\",\"value\":128},{\"name\":\"HeadCathy\",\"value\":128},{\"name\":\"HeadClarice\",\"value\":128},{\"name\":\"HeadFilia\",\"value\":128},{\"name\":\"HeadGia\",\"value\":128},{\"name\":\"HeadIrelia\",\"value\":128},{\"name\":\"HeadJazmine\",\"value\":128},{\"name\":\"HeadLaura\",\"value\":128},{\"name\":\"HeadLindsey\",\"value\":128},{\"name\":\"HeadMonique\",\"value\":128},{\"name\":\"HeadSenna\",\"value\":128},{\"name\":\"HeadSunny\",\"value\":128},{\"name\":\"HeadTisha\",\"value\":128},{\"name\":\"HeadUMA\",\"value\":128},{\"name\":\"BreastSmall\",\"value\":128},{\"name\":\"BreastLarge\",\"value\":128},{\"name\":\"NipplesLength\",\"value\":128},{\"name\":\"NipplesSize\",\"value\":128},{\"name\":\"AreolaSize\",\"value\":128},{\"name\":\"GluteSize\",\"value\":128},{\"name\":\"HipSize\",\"value\":128},{\"name\":\"HeadElfEars\",\"value\":128},{\"name\":\"HeadSize\",\"value\":128}]}"}],"characterColors":[{"name":"Skin","colors":[240,210,159,255,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0]},{"name":"Hair","colors":[50,30,2,255,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0]},{"name":"Eyes","colors":[10,11,165,255,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0]}],"wardrobeSet":[{"slot":"Hair","recipe":"G3F ShortToulouse Hair"},{"slot":"WardrobeCollection","recipe":"G3F JG_FullOutfit"}],"raceAnimatorController":"G3F AnimationCntrlr"}
Richard MacCutchan
Я понятия не имею, что такое UMA-фреймворк и что вы на самом деле пытаетесь сделать.
Member 7995828
Спасибо, что нашли время помочь мне.
Мне нужно сохранить эту информацию в файл, и я не хочу, чтобы игроки могли напрямую изменять эту информацию.
Я устал использовать binaryformatter для сериализации файла, но он все еще был доступен для редактирования.
Я пытаюсь зашифровать информацию перед сохранением файла.
Richard MacCutchan
"Я устал использовать binaryformatter для сериализации файла, но он все еще был доступен для редактирования.Как я уже говорил вам вчера, binaryFormatter просто запишет те же данные, это ничего не изменит.