Jump to content

Welcome to Obsidian Forum Community
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!
Photo

Modding thread: Asset Editor


  • Please log in to reply
51 replies to this topic

#41
Danathion

Danathion

    (1) Prestidigitator

  • Members
  • 35 posts
  • Pillars of Eternity Backer
  • Deadfire Backer
  • Fig Backer

Luckmann: Thanks for the direction.


  • Luckmann likes this

#42
Minsc85

Minsc85

    (1) Prestidigitator

  • Members
  • 14 posts

Can any1 expalin.

 

For example i want to edit brigandine_armor_exceptional. i know wheres unity3d file is, how to find and edit texture?



#43
Xionanx

Xionanx

    (1) Prestidigitator

  • Members
  • 44 posts

Couple of things:

 

1.  Has anyone managed to update the Asset Editor to the newest version yet?  I went through the steps to update and thought I had everything correct, but it still spits out edits that give errors when loaded into the game.  I have since reverted to the EDIT/HEX-COMPARE/EDIT method to make working spell changes, which brings me to..

 

2.  I'm in the process of trying to batch edit all the spells/abilities in the game to be usable outside of combat.  I am running into a problem however in that "I" cant find a unique searchable string that works for ALL abilities.  I can do them one at a time (EDIT/COMPARE/EDIT) but was really hoping to automate that, since its a simple "check box" in unity where the spell is cast-able outside of combat or not.  Otherwise its going to be hours and hours of tedious 1 at a time editing...  Any help would be greatly appreciated.

 

3.  Has anyone experimented with changing the basic functionality of spells?  or Adding spells?  I have managed to change Minolettas Minor Missile to Auto-Hit (no attack roll, just a damage roll), but I'm not happy stopping there..   I want to change it so that it randomly targets an enemy in range with each missile, so that its not "aim-able" (cant pick targets).  In this way you cast, and the three missiles will "Seek" a target on their own based on the targets in range.  The "Code" is there via higher level version of the spell, so I'm thinking I can make the "AoE" 15 meters centered on caster with..  It should be doable.  But again, if anyone has experimented with this already, advice/help is appreciated.



#44
Minsc85

Minsc85

    (1) Prestidigitator

  • Members
  • 14 posts

Bester я вижу ты на яндекс заливал ффайлы, если ты говоришь по русски обьясни как элемнтарный ретекстуринг сделать



#45
luzarius

luzarius

    (5) Thaumaturgist

  • Members
  • 470 posts

I opened the following file in bester's asset editor:

companion_cv_durance_hub_v2.unity3d

I saved it again without making any changes, but the file size was different. This is a voice asset by the way and the new one I saved did not work in game.

 

I'm using Unity version 4.6.1p2  with the Gog version of the POE.


Edited by luzarius, 06 April 2015 - 11:06 PM.


#46
Xionanx

Xionanx

    (1) Prestidigitator

  • Members
  • 44 posts

Yeah, currently the asset editor is changing files in such a way that they come out non functional.  They you need to do edits now is:

 

1.  Open the File in the Asset Editor

2.  Do NOT Modify it.  Save it AS  "Uneditied(filename).unity3d

3.  Make whatever change you wanted to make.  Save it as "Edited(filename.unity3d

4.  Open both UN an EDITED in a HEX-Editor that has the "Compare" function.

5.  Compare them using "Precise" and "Differences", finding small sections that are different between those 2 files.  Those are your actual edits.

6.  Open the ORIGINAL FILE in the Hex editor, and then "Search" for the unedited section of the file that you need to edit.

7.  Make the appropriate changes in HEX, then save the file ORIGINAL FILE.

 

If you did everything correct, and changed the correct section of the file using hex, You have now successfully made your changes and they will work in game.

 

This is what I have been having to do.. one file at a time, to make spells cast-able outside of combat.. its tedious and annoying, but at this point its the only that that works to make changes without corrupting shaders/textures/scripts/etc.


  • artifex likes this

#47
Eduku

Eduku

    (1) Prestidigitator

  • Members
  • 5 posts
  • Pillars of Eternity Backer

Yeah, currently the asset editor is changing files in such a way that they come out non functional.  They you need to do edits now is:

 

1.  Open the File in the Asset Editor

2.  Do NOT Modify it.  Save it AS  "Uneditied(filename).unity3d

3.  Make whatever change you wanted to make.  Save it as "Edited(filename.unity3d

4.  Open both UN an EDITED in a HEX-Editor that has the "Compare" function.

5.  Compare them using "Precise" and "Differences", finding small sections that are different between those 2 files.  Those are your actual edits.

6.  Open the ORIGINAL FILE in the Hex editor, and then "Search" for the unedited section of the file that you need to edit.

7.  Make the appropriate changes in HEX, then save the file ORIGINAL FILE.

 

If you did everything correct, and changed the correct section of the file using hex, You have now successfully made your changes and they will work in game.

 

This is what I have been having to do.. one file at a time, to make spells cast-able outside of combat.. its tedious and annoying, but at this point its the only that that works to make changes without corrupting shaders/textures/scripts/etc.

Yep, that's what I've been doing. Still looking around to see if there's a less cumbersome way of doing it.



#48
Bester

Bester

    (7) Enchanter

  • Members
  • 800 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer

This problem of shaders/textures/animations seriously needs to be fixed, does anyone know Unity here and can experiment a little?
 
I'm not sure what the problem is, but it's around this line:
 

	BuildPipeline.BuildAssetBundleExplicitAssetNames (unity3dAssets, names, savepath, 
			BuildAssetBundleOptions.CollectDependencies | 
			BuildAssetBundleOptions.CompleteAssets | 
			BuildAssetBundleOptions.UncompressedAssetBundle
			, BuildTarget.StandaloneWindows );

I suppose what might be happening - the original assetbundles are built without CollectDependencies (that's why the textures etc are not included), but then we have to build it also without CollectDependencies (otherwise the references to missing files get broken?) and I haven't been successful at doing that.

 

Another thing that I don't understand is - how are the references functioning? When I read a file with a missing texture, there's nothing to indicate that the file isn't already broken, and yet it works. For instance, any material that's "pink" returns a Hidden/InternalErrorShader when I try to read its shader. Why does it work in game?

 

And ANOTHER thing that I don't understand. A lot of assetbundles have mainAsset. Which means they were built using BuildAssetBundle and not BuildAssetBundleExplicitAssetNames, right? Yet when I try doing it with BuildAssetBundle, the array of objects in the second parameter is somehow ignored and those assets don't get included (or they do, but as children to the mainAsset? anyway, that's not the original hierarchy, so why is it happening?)

 

And another problem that recently appeared - Transforms are somehow disassociated from their GameObjects, and now CollectDependencies includes a second Transform, which is exactly the same as the first one. Transforms get duplicated in the bundle.

 

It's a mess. I recently had a day to look into this. Made no progress. I can't fix it.


Edited by Bester, 07 April 2015 - 11:34 AM.

  • Luckmann and artifex like this

#49
Silvist

Silvist

    (0) Nub

  • Initiates
  • 4 posts

I'm no expert on how the IE works, but I've been doing quite a bit of modding since i stumbled across this projects work.  Firstly, I'd like to thank you guys for all the hard work!

 

I'm not sure why this is the case, again could be IE related.  I've fixed my texture paths a completely different way with the spells/abilities I've modded.  I simply loaded up a save unmodified, took the talent/spell and saved.

 

Then I exited the game, and copied over my modification and loaded up the save.  I took note of any changes rest per day > to modular > out of combat..etc.  I didn't activate the skill, since that seemed to sometimes cause bugs.  Then I saved the game again.  I exited the game again, and copied back over the unchanged/original file.

 

Loaded up the save again, and my modification had stuck (no pink textures).  I tried resting, zoning, and even different game versions.  From what I could tell it worked in 1.30, 1.30 with IE, and 1.3.530.

 

I'm don't have much experience when it comes to hex editing, but I got quite a bit of modding experience.  From looking at the hex code of talents/spells; I saw no clear texture path.  Is the texture path in only digits?

 

The only references I saw was lines starting with CAB-; which was at the start after the unity version, and further down in the code.  The only file paths I saw seemed to be near the bottom of the code.  I did perhaps see some kind of color/shader coding, but no exact texture reference.

 

Is the texture references not in the unity3d files?  If so this may explain why what I did above worked.  Thanks again for the hard work!



#50
Vadász

Vadász

    (2) Evoker

  • Members
  • 86 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer

The lines starting with cab, i wonder what those are, i've been having problems with the edited files.

 

I mean, the unity edited file works in the somewhat purple way in come to expect, but it works. However after hex editing the original file stuff either remains as if i never modded it or the abilities get replaced by a "Missing Ability".

 

To be more precise i wanted to try something easy as reverting the chill fog change, the difference between the edited and the unedited are the string of numbers after the cab and a single byte near the end of the file that controls what can the spell target. Now when editing the original file, If i change only the byte, nothing happens and if i change the cab part too i get the "missing spell" behavior.

 

Am i doing something wrong?



#51
Bester

Bester

    (7) Enchanter

  • Members
  • 800 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer

Then I exited the game, and copied over my modification and loaded up the save.  I took note of any changes rest per day > to modular > out of combat..etc.  I didn't activate the skill, since that seemed to sometimes cause bugs.  Then I saved the game again.  I exited the game again, and copied back over the unchanged/original file.
 
Loaded up the save again, and my modification had stuck (no pink textures).  I tried resting, zoning, and even different game versions.  From what I could tell it worked in 1.30, 1.30 with IE, and 1.3.530.


Interesting.
 

From looking at the hex code of talents/spells; I saw no clear texture path.

 

I have no idea. Maybe there is no texture path at all. But the fact remains that something gets broken. Maybe the material and its texture are linked in some other files, and maybe the material gets slightly modified and a link between material and its texture gets broken? I never looked at what gets modified with a hex editor. Maybe it's something so minor that after saving the file, a pass to correct a few bytes would be enough? Will have a look at it when I get some time, I'm currently busy with something else and will be for at least a week or two.


Edited by Bester, 08 April 2015 - 02:47 PM.


#52
Xionanx

Xionanx

    (1) Prestidigitator

  • Members
  • 44 posts

I know that the "Flag" for spells being usable in/out of combat is a simple byte difference of 00 vs 01 for on/off.  Sadly tho, I cant find a "Pattern" for where this flag appears in each file.  Guessing this has something to do with unity obfuscation of some kind..  (oddly enough tho, "Wall of Fire" and "Wall of Force" had identical patterns, maybe they copy pasted the spells?)

 

I was in the process of fixing all the wizard spells, but i think i have decided that i dont like this game enough to bother..


Edited by Xionanx, 08 April 2015 - 04:09 PM.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users