Fhav6X Posted August 26, 2018 Posted August 26, 2018 (edited) The last two days I tried to change Palleginas appearance and got stuck shortly before the finish line. I want to change her hair, since .... well it certainly not the best style. With "uabe" I managed to swap her hair with one of the default. Progress below. !! after !! As you can see her hair color is a little of. I want her to look like this adventurer I made. !! I can't find a way to change companions appearance colors. I looked all over the assetbundles and found files called "NPCAppearance" for all companions in characters.unity3d. The problem is, the color settings in the files are ignored by the game. I don't know, what else could handle it. I'm open to suggestions. Here is the NPCAppearance file for Pallegina 0 MonoBehaviour Base0 PPtr m_GameObject0 int m_FileID = 00 SInt64 m_PathID = 45140727200623802211 UInt8 m_Enabled = 10 PPtr m_Script0 int m_FileID = 00 SInt64 m_PathID = -15887954679453854591 string m_Name = ""0 int CharacterLayer = -10 PersistentData m_persistentNPCAppearance1 UInt8 HideHelmet = 00 ColorRGBA primaryColor0 float r = 0.2627451120 float g = 0.01176470980 float b = 0.2000000030 float a = 10 ColorRGBA secondaryColor0 float r = 0.01960784010 float g = 0.01960784010 float b = 0.01960784010 float a = 10 ColorRGBA skinColor0 float r = 10 float g = 0.901960790 float b = 0.6627451180 float a = 10 ColorRGBA skinColor20 float r = 10 float g = 0.901960790 float b = 0.6627451180 float a = 10 ColorRGBA hairColor0 float r = 0.04313725980 float g = 0.04313725980 float b = 0.04313725980 float a = 10 ColorRGBA hairColor20 float r = 0.1137254980 float g = 0.1254902030 float b = 0.1450980010 float a = 10 ColorRGBA eyeColor0 float r = 10 float g = 10 float b = 10 float a = 10 AppearancePiece headAppearance0 PersistentData m_persistentAppearancePiece0 int bodyPiece = 71 string m_modelVisualDataName = ""1 UInt8 UseExactModelName = 01 string specialOverride = ""0 PPtr<$CharacterModelVisualData> modelVisualData0 int m_FileID = 30 SInt64 m_PathID = 34553588849648605680 AppearancePiece hairAppearance0 PersistentData m_persistentAppearancePiece0 int bodyPiece = 61 string m_modelVisualDataName = ""1 UInt8 UseExactModelName = 01 string specialOverride = ""0 PPtr<$CharacterModelVisualData> modelVisualData0 int m_FileID = 30 SInt64 m_PathID = 64513396052136905960 AppearancePiece facialHairAppearance0 PersistentData m_persistentAppearancePiece0 int bodyPiece = 81 string m_modelVisualDataName = ""1 UInt8 UseExactModelName = 01 string specialOverride = ""0 PPtr<$CharacterModelVisualData> modelVisualData0 int m_FileID = 00 SInt64 m_PathID = 01 UInt8 hasHair = 11 UInt8 hasFacialHair = 00 int m_racialBodyType = 11 string nudeModelOverride = ""1 string skinOverride = "Pallegina"1 string nudeAppearanceOverride = ""1 string skinPathOverride = ""0 float characterScaleMultiplier = 11 UInt8 hasHead = 11 UInt8 ignoreDefaultNudeLegModel = 01 UInt8 allowSelectionOfAnyModel = 11 UInt8 ForceUseHighPolyModels = 00 PPtr<$Avatar> avatar0 int m_FileID = 00 SInt64 m_PathID = 74859211110176882110 PPtr<$RuntimeAnimatorController> controller0 int m_FileID = 00 SInt64 m_PathID = 01 UInt8 m_useOverrideGenderRace = 00 int m_overrideGender = 00 int m_overrideRace = 00 int m_overrideSubrace = 0 Edited August 26, 2018 by Fhav6X
peardox Posted August 26, 2018 Posted August 26, 2018 See my sig dude! We have many highly rated Modders in our group (31 of us at the time of writing) https://poe.peardox.com/invite It's late so forgive us if we don't reply tonight We all live in diffo tmezones - in mine it's go to sleep Simon time OK Fair warning has been applied I'm gonna move the domain to https://perspak.com early Feb but will keep all content There are reasons behind this move which basically boil down to unifying my release schedule My friends are welcome to play (I'll set you up your own areas if you desire them) Please note that this process is messy so may take a few weeks
kilay Posted August 27, 2018 Posted August 27, 2018 tried to achieve that for days, seems that godlike head and body aren't compatible with color change. Random Reader'Plinio il Vecchio asseriva che un rimedio alla sbronza fosse quello di mangiare uova crude di gufo' I° secolo D.C. My Mods on Nexus Nexus Mods Translated to Italian Italian Localization Fix PATCH More Custom AI Conditions Enhanced UI - Afflictions and Inspirations Extended Spell TT1 Unique Items More Priest Subclasses_Ondra Hylea Abydon Channeler Cipher Subclass Are you looking for a group of modders ?Request an invite to our Slack group Do you need a mod? Fill this mod request
Fhav6X Posted August 27, 2018 Author Posted August 27, 2018 I started using AssetStudio to browse through the unity3d files, as it is more structured than uabe. https://github.com/Perfare/AssetStudio/releases Every model has V01 texture files containing the colors and other optical stuff. These V01_C textures are the base color of all models. There are no other textures with different colors for a model, which means the part that handles coloring is not to be found in gamedatabundles or assetbundles. I presume it is a piece of code in the assembly-csharp.dll. @kilay You could duplicate and rename the models and their prefabs and create new V01_C textures. Then you have to ad the prefabs to the corresponding line in your color mod. 1
Fhav6X Posted August 28, 2018 Author Posted August 28, 2018 I am trying a new approach. The idea is to activate the appearance button for companions, to make them customizable like main and hired characters. For that I have been poking around in the assembly-csharp.dll and what I found so far.... The actual coloring of the models is done by creating paper dolls. The responsible class is the UICharacterCustomizeManager. This class gets data set in class NPCAppearance. So somewhere in this classes is the key to unlock full customization of all characters (companions and godlikes). 2
kilay Posted August 28, 2018 Posted August 28, 2018 (edited) I am trying a new approach. The idea is to activate the appearance button for companions, to make them customizable like main and hired characters. For that I have been poking around in the assembly-csharp.dll and what I found so far.... The actual coloring of the models is done by creating paper dolls. The responsible class is the UICharacterCustomizeManager. This class gets data set in class NPCAppearance. So somewhere in this classes is the key to unlock full customization of all characters (companions and godlikes). Many thnks Please check your Pm EDIT: and this could be related https://forums.obsidian.net/topic/97998-useful-tutorials-and-links/?p=2090777 Edited August 28, 2018 by kilay Random Reader'Plinio il Vecchio asseriva che un rimedio alla sbronza fosse quello di mangiare uova crude di gufo' I° secolo D.C. My Mods on Nexus Nexus Mods Translated to Italian Italian Localization Fix PATCH More Custom AI Conditions Enhanced UI - Afflictions and Inspirations Extended Spell TT1 Unique Items More Priest Subclasses_Ondra Hylea Abydon Channeler Cipher Subclass Are you looking for a group of modders ?Request an invite to our Slack group Do you need a mod? Fill this mod request
Fhav6X Posted August 28, 2018 Author Posted August 28, 2018 What is described in the link is theoretically doable, but it will require a loooooooot of work. Most likely more than there is ambition to do so. One would need to rewrite entire classes in the game's code. The Problem here is easier. We have two "identical" groups (in terms of files). One can be customized and the other cannot. There has to be something (a flag, if clause, a list) that distinguishes between them. Change that and the Problem is solved.
kilay Posted August 28, 2018 Posted August 28, 2018 (edited) What is described in the link is theoretically doable, but it will require a loooooooot of work. Most likely more than there is ambition to do so. One would need to rewrite entire classes in the game's code. The Problem here is easier. We have two "identical" groups (in terms of files). One can be customized and the other cannot. There has to be something (a flag, if clause, a list) that distinguishes between them. Change that and the Problem is solved. That's the point, i don't think to spend time to support some kinda of modding w/o a devs support. too much invasive and not shareable, even patches broke the files for sure , so other warning for users about that.. Not in my chords, but thnks for have shared your knowledge over other games I have already shared patches of 25-40 GB w/o no issues, but Nexus and neither steam support that. this should require also a patching order (maybe modconfig.json could be the right way ). and btw never touched core files if not in some hard case. Edited August 28, 2018 by kilay Random Reader'Plinio il Vecchio asseriva che un rimedio alla sbronza fosse quello di mangiare uova crude di gufo' I° secolo D.C. My Mods on Nexus Nexus Mods Translated to Italian Italian Localization Fix PATCH More Custom AI Conditions Enhanced UI - Afflictions and Inspirations Extended Spell TT1 Unique Items More Priest Subclasses_Ondra Hylea Abydon Channeler Cipher Subclass Are you looking for a group of modders ?Request an invite to our Slack group Do you need a mod? Fill this mod request
Fhav6X Posted August 29, 2018 Author Posted August 29, 2018 UABE has a packageinstaller. I need to tinker with it a little to see if it works with poe2. If it works, it will circumvent uploading 1GB+ files. So that can be handled. As for assembly-csharp.dll....it needs to be updated with every new patch. I admit, while most hacks for it are very simple, it gets annoying to do them over. That is also the reason I have not posted my Godlike helmet mod yet. Just two lines to remove and you have full helmet support without stupid commands. Hopefully someone can write something like WeiDu from BG for poe2 someday.
Fhav6X Posted September 6, 2018 Author Posted September 6, 2018 I made some progress. I was successful in changing Pallegina's hair style. I also managed to make a new look for Xoti. before after With currently available modding tools (unity asset bundle extractor in short uabe) it is possible to change the appearance of any object in the game. Skilled people may even create new meshes for npc's, armor, weapons or even redesign maps. What's not possible is making new things and add them to the game. The appearance of any npc, weapon etc is defined by a prefab monobehavier file in the items.unity3d assetbundle. With uabe it is possible to edit existing files, but because of a bug in uabe file creation routine, it is currently not possible to make new blank files of this sort. I also figure that such mods are not very practical in the future, as they will have problems with overriding already used addresses. I got a clue though how one could make own assetbundles, which would circumvent such problems and the problem of file size. Creating a guide for all this will take me some time, but I'm on it. 2
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now