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

#1
Bester

Bester

    (7) Enchanter

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

I know there's no modding community yet and I don't expect one to appear on this forum, but it's a pretty popular one, so I'm going to create a few threads (mainly reposts from the codex) with the things that I found/made while I've been poking at PoE's assets and code for the last couple of weeks. Maybe it'll help someone to get involved in it as well. I'm not a professional, so any kind of new information would be very appreciated. Anyway, here goes the first thread:
 
Finished writing a Unity Editor extension which allows Unity to work with .unity3d and .assetbundle files. Can't extract things out yet (but you can do that with Disunity). You can import stuff in though, so you're all set.
 
I didn't test it thoroughly, but I tested it on 1 item, 1 spell and 1 creature, and it worked every time, so I'm releasing it. (yeah, Obsidian style)
It's supposed to allow you to edit/replace values, meshes, sounds, textures, particles, shaders, animations, and maybe something else, but I only edited values and replaced a texture once. Should work fine, though.
 
To use it, you need Unity 4.5.1 and it has to be Pro in order to save your changes. You can get a 30 days trial if you like, and you can renew it by simply creating a new account every time (no credit card required I've been told). If you can't get a Pro, you should still be able to view stuff (if the compiler complains about a certain line - comment it out, cause you have no pro).
 
Here's a fancy screenshot:
 
AssetEditor.jpg
 
And here it is in form of Unity project: https://dl.dropboxus...20848/Test2.zip
 
Oh, and there is some weird memory leak, so if you load giant files a lot, you're gonna have to restart Unity from time to time. Ah, who am I kidding, you're gonna have to restart it every other 3-4 giant files (the ones that are 50-80 MB).


  • C2B, Luckmann, Sensuki and 16 others like this

#2
LunaticPandora

LunaticPandora

    (1) Prestidigitator

  • Members
  • 9 posts
Impressive stuff, well done!

#3
Bester

Bester

    (7) Enchanter

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

Forgot to mention. In order for the game to use .unity3d files from the assetbundles folder, you need to write in console UseAssetBundles (or UseAssetBundle, i don't remember), then save, quit and reload (I think). Or just quit and reload without necessarily saving, I'm not sure.


Edited by Bester, 31 October 2014 - 04:21 AM.

  • Dark_Ansem likes this

#4
Dark_Ansem

Dark_Ansem

    (4) Theurgist

  • Members
  • 325 posts
  • Steam:Dark_Ansem
  • Deadfire Backer
  • Fig Backer

impressive tool, and well done!



#5
Nakia

Nakia

    Rogue of the Obsidian Order

  • Members
  • 1153 posts
  • Location:New Jersey, USA
  • Steam:nakiarogue
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer

Nice and I hope we will have a healthy modding community once the gane is released.


  • Sif likes this

#6
Dark_Ansem

Dark_Ansem

    (4) Theurgist

  • Members
  • 325 posts
  • Steam:Dark_Ansem
  • Deadfire Backer
  • Fig Backer

I'd like to know, where did you get all the .cs files from?



#7
Minsc85

Minsc85

    (1) Prestidigitator

  • Members
  • 14 posts

Can anyone make tutorial how to export - edit - import textures?



#8
Minsc85

Minsc85

    (1) Prestidigitator

  • Members
  • 14 posts

And in what asstes character creation textures and armor textures?



#9
Minsc85

Minsc85

    (1) Prestidigitator

  • Members
  • 14 posts

For example i open adragan_armor asset but

 

1) Where to find it texture?

2) Even if i want to edit icons how to do it/ i click on it it shows in insprctor and thats all, i can do nothing with it, no export or import

 

image.jpg



#10
Bester

Bester

    (7) Enchanter

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

Used to be that everything was included in each assetbundle file. Now some textures, sounds etc are piled up in one big assetbundle separately. I don't know the specifics and the editor is slightly outdated. Will update it for the release version.

 

Also, the armor's appearance is in GameObject -> Equippable -> Appearance -> Model Variation and Material Variation. This is how they did body armors. Swords, shields etc have a mesh included in the asset and you can see it in the editor, assign a different texture to it, etc, but they're missing a shader. Spells are missing textures, shaders and sounds. Other types of assets - idk. All of this can be found in other files and assigned correctly, then you can use it in game.

 

I'll probably write a detailed guide for this at some other time, unless someone figures this all out and writes it before I get a chance to.


Edited by Bester, 26 March 2015 - 04:55 AM.

  • Luckmann likes this

#11
Luckmann

Luckmann

    Arch-Mage

  • Members
  • 3494 posts
  • Location:The Scanian Flatlands

Would I be correct in assuming that Attribute Bonuses are contained in the CharacterStats.cs? I'm super-confused at the moment, but I can see references in it that leads me to believe it to be so, and if it's not, I'm apparently even more confused.

But if so, how would one go about extracting the current CharacterStats.cs? Obviously the project you've shared is outdated by now. (I assumed it was BBv333, but I'm not sure anymore).

Or am I looking in the wrong place altogether?

 

Edit: God I miss modding the easy tables of the IE. D:


Edited by Luckmann, 26 March 2015 - 01:52 PM.


#12
Luckmann

Luckmann

    Arch-Mage

  • Members
  • 3494 posts
  • Location:The Scanian Flatlands

Well assuming that what I'm looking at (Bester's extracted files) is BBv333 and assuming I have any idea what I'm looking at (which is a hell of an assumption), the Perception +Range never was +Range, or something like that. Either that, or I can't wrap my head around this nugget in CharacterStats.cs.

    public float StatRangedAttackDistanceMultiplier
    {
        get
        {
            return GetStatEffectDurationMultiplier(this.Perception);
        }
    }

:lol:

 

Edit: Now, having given up on that for now, I was thinking I was going to start poking some other other files, and opened the companion files with your editor. However, let's say I'm editing companion_eder.unity3d, all of the information I'd probably want to edit are MonoScripts, atlhough I can't make sure, and this is the problem, I can't actually edit them. I tried to extract them with DisUnity, but it either doesn't extract them properly (I assume it's not supported by DisUnity) or extracts them raw as .bin-files, which I'm not sure how to work with either.

Is there a way?

And yes, sorry, I realize it's a truckload of questions I'm just pushing out here, but I'm in over my head.

 

Edit 2: Actually, DisUnity Extract-TXT managed to get me readable content, but the monoscripts didn't seem to contain anything relevant except a Propertieshash and a reference to Assembly-CSharp.dll. Or maybe it can't extract it properly, no clue, I was expecting Edér's class information in here somewhere.


Edited by Luckmann, 26 March 2015 - 11:57 PM.


#13
Bester

Bester

    (7) Enchanter

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

1) Don't use this old version.

2) Newest version is always at http://rien-ici.com/iemod/asset_editor but I haven't updated it yet for the release version of the game yet (will do today, most likely).

3) MonoScripts are just references to assembly's scripts, skip them.


  • Luckmann and Dark_Ansem like this

#14
Luckmann

Luckmann

    Arch-Mage

  • Members
  • 3494 posts
  • Location:The Scanian Flatlands

I actually re-downloaded the Project yesterday just to be sure it wouldn't conflict with my previous PoE stuff (BB v333-480) which I keep in a separate folder, but when I loaded up that project, I didn't have access to the "Pillars of Eternity Editor"-dropdown, so I went back. I didn't give it much thought, so it's odd.

That said, I'll just wait for you to up the v1.0.2.508 version, then. Any pointers on where to look to muck with the Attribute Bonuses? Am I right to assume it's CharacterStats.cs, or am I going to have to hunt down multiple files and edit all of them just to move some bonuses around? I know Sensuki wanted to make some changes too, just not the exact same ones.



#15
Dark_Ansem

Dark_Ansem

    (4) Theurgist

  • Members
  • 325 posts
  • Steam:Dark_Ansem
  • Deadfire Backer
  • Fig Backer

I also haven't managed to find the OGG files of the BGM.. any idea where they could be?


Edited by Dark_Ansem, 27 March 2015 - 03:59 PM.


#16
Bester

Bester

    (7) Enchanter

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

Updated the asset editor for current game version http://rien-ici.com/iemod/asset_editor


  • Dark_Ansem likes this

#17
Dark_Ansem

Dark_Ansem

    (4) Theurgist

  • Members
  • 325 posts
  • Steam:Dark_Ansem
  • Deadfire Backer
  • Fig Backer

thanks!

 

Does your asset editor work with Unity 5 as well?



#18
artifex

artifex

    (1) Prestidigitator

  • Members
  • 7 posts

The scripts run in Unity 5 with a small tweak (replacing "LoadAll()" in the editor script with "LoadAllAssets()"), but unfortunately, PoE doesn't seem to be able to parse the assetbundles exported from Unity 5.

 

Bester suggested getting a 30-day trial of Unity 4 Pro, but as far as I can tell, that's not actually possible anymore, and the scripts won't export without the Pro license.

 

Short of piracy, I don't think anyone who doesn't own a Unity Pro license is going to be able to use this tool.


Edited by artifex, 29 March 2015 - 06:18 PM.

  • Bester and Dark_Ansem like this

#19
Zekzt

Zekzt

    (1) Prestidigitator

  • Members
  • 6 posts

Maybe someone have a clue how to help me - so i'm trying to edit the spiritshift druid spell [stag transformation to be precise].

Im just doing a small edit, similiar to this mod : http://www.nexusmods...rnity/mods/10/? - to be precise, change the time that transformation last durning combat to unlimited.

Whenever i edit anything in that file in game transformation ends up with missing animation ad purple boxes + purple textures.

 

I asume its the lack of material shaders asigned - but how on earth im suposed to know what shader assign manualy in that file ? And i even doubt thats the case, since as mentioned above, author of this mod - Arcane Veil, he edited just few values [if im correct 2 parameters], and his mod works fine.

But when i try to recreate it on my own - even editing the basiv Arcane Veil with Unity results - same as stag transformation - in purple particle and boxes.

 

Any help would be aprecieated...



#20
Bester

Bester

    (7) Enchanter

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

Maybe someone have a clue how to help me - so i'm trying to edit the spiritshift druid spell [stag transformation to be precise].

Im just doing a small edit, similiar to this mod : http://www.nexusmods...rnity/mods/10/? - to be precise, change the time that transformation last durning combat to unlimited.

Whenever i edit anything in that file in game transformation ends up with missing animation ad purple boxes + purple textures.

 

I asume its the lack of material shaders asigned - but how on earth im suposed to know what shader assign manualy in that file ? And i even doubt thats the case, since as mentioned above, author of this mod - Arcane Veil, he edited just few values [if im correct 2 parameters], and his mod works fine.

But when i try to recreate it on my own - even editing the basiv Arcane Veil with Unity results - same as stag transformation - in purple particle and boxes.

 

Any help would be aprecieated...

 

I can tell you how to get half way there.

 

First of all, find all components of type Material and set their shaders to Trenton/Characters/PE_BumpSpec

But if the component's name starts with "fx_", then set it to Trenton/Particles/PE_ParticleAdd

 

At this point, your stag will stop being purple, but the particle effects will still be textureless. This is because the textures for them aren't included in the untiy3d file. You need to export them with Disunity from other unity3d files (which ones - idk exactly, one of the big ones). Then you must put them into your project and assign them to the Materials of the same name.

 

At this point, your particle effects will start working, and your stag will work. However, the Stag's animation will still be broken. Don't know how to fix that yet. Most likely something needs to be exported from the big files and imported into this one, like with textures. (AnimatorController maybe?)

 

There should really be a way to make it all work out of the box. Will look into it when I finish the game, but I'm not sure I'll be able to solve it.


Edited by Bester, 30 March 2015 - 08:15 AM.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users