RimWorld art source

Started by Tynan, March 02, 2014, 06:47:58 PM

Previous topic - Next topic

CannibarRechter

Hi, Jabba, I replicated your problem. I'm gonna take a look.
CR All Mods and Tools Download Link
CR Total Texture Overhaul : Gives RimWorld a Natural Feel
CR Moddable: make RimWorld more moddable.
CR CompFX: display dynamic effects over RimWorld objects

CannibarRechter

#151
BTW, I suspect that the core doesn't let some UI textures get overridden. I'm awaiting input from pardeike on how to properly inject code into generic class methods using Harmony, after that I should (maybe) be able to make a patch that makes the core allow modding of the UI. Either that or I will learn what you and I are both missing (the C# seems clear: the path is as you say for Forbidden).

p.s. I saw you using Agave leaves in your mod. Pet Peeve. Here is the real agriculture product of Agave:

https://www.google.com/search?q=agave+root&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjcyubKqIzWAhVh4oMKHf0fCNMQ_AUICigB&biw=1540&bih=1257&dpr=0.75

The root. It's where the sugar is.
CR All Mods and Tools Download Link
CR Total Texture Overhaul : Gives RimWorld a Natural Feel
CR Moddable: make RimWorld more moddable.
CR CompFX: display dynamic effects over RimWorld objects

CannibarRechter

Hi, Jabba,

The core sometimes loads textures using ContentFinder<>.Get. When it does this, in some cases it does so inside classes with the StaticConstructorOnStartup label. These are run in, AFAICT, "undefined" order. I've spent the last week or so, productively finding an interesting bug in both the Core and Harmony, but working around these things eventually pointed me to this truth.

I'll try another, more obnoxious workaround next. My first hypothesis on how to fix this would have globally fixed it for all such asset types. Now the only thing I can think of will be an attempt to fix it asset by asset. That will suck a bit, as the fix will have to be forced bv a C# mod. I'm not sure if it will work yet. Standby.
CR All Mods and Tools Download Link
CR Total Texture Overhaul : Gives RimWorld a Natural Feel
CR Moddable: make RimWorld more moddable.
CR CompFX: display dynamic effects over RimWorld objects

CannibarRechter

#153
Okay. With an sample size of one (UI/Commands/Forbidden), and by hooking the end of DoPlayLoad in the Rimworld main thread, and by using reflection hackery to blast over read-only textures, I have found a way to do this. This was a bit of a summabeach. Do you have a complete list of every texture you want to override?

To get this done, they have to be individually enumerated in C#. Once that's complete, the game will search for the files in mods. To be clear, this mod doesn't require the textures, it just reprograms the game to look in the mods. The dealio, however, is that the mod must enumerate every texture path individually to do its work.

Do you have Rimworld decompiled? Since you seem to know the actual texture paths, which kinda requires this, I would suppose so. I'm asking, because it would be helpful if you did the work of associating the link with the file that it's in (e.g., UI/Commands/Forbidden is in TexCommand.cs).

Also, I don't know that this method will work for everything yet.
CR All Mods and Tools Download Link
CR Total Texture Overhaul : Gives RimWorld a Natural Feel
CR Moddable: make RimWorld more moddable.
CR CompFX: display dynamic effects over RimWorld objects

jabbamonkey

I have all my UI textures loaded into a mod that I created...
https://ludeon.com/forums/index.php?topic=35198.msg360429#msg360429

The mod includes the images that aren't showing up. Below is a brief list...
1. Install - \Textures\UI\Commands\Install.png
2. Reinstall At... \Textures\UI\Commands\Install.png
3. Forbid,  or Allow Sowing - \Textures\UI\Commands\Forbidden.png
4. Hold Open - \Textures\UI\Commands\HoldOpen.png
5. Chop Wood (this shows when you go to the menu, but doesn't show when I click a tree). -
\Textures\UI\Designators\HarvestWood.png
6. Gather Spot - \Textures\UI\Commands\GatherSpotActive.png
7. Draft  - \Textures\UI\Commands\Draft.png
Also, many of the MAP ui icons...
9. Form Caravan  - \Textures\UI\Commands\FormCaravan.png
10. Abandon Home  - \Textures\UI\Commands\AbandonHome.png
11. ZoomIn  - \Textures\UI\Commands\ShowMap.png
12. Merge Caravans  - \Textures\UI\Commands\MergeCaravans.png
13. Split Caravans  - \Textures\UI\Commands\SplitCaravan.png
14. Settle  - \Textures\UI\Commands\Settle.png

I glanced at the zip file that you messaged me ... plenty of programming that I didn't understand.  :)  I'll try and review and see what I can make of it...

CannibarRechter

All you have to do is modify the XML file. I'm extending it this weekend for other unmoddable elements. As it turns out there are three main categories of readonly graphics:

1. Textures
2. Graphics
3. Mats

They each need separate handling

Right now it only supports textures.
CR All Mods and Tools Download Link
CR Total Texture Overhaul : Gives RimWorld a Natural Feel
CR Moddable: make RimWorld more moddable.
CR CompFX: display dynamic effects over RimWorld objects

CannibarRechter

Can someone post the A18 texture assets, purty please?
CR All Mods and Tools Download Link
CR Total Texture Overhaul : Gives RimWorld a Natural Feel
CR Moddable: make RimWorld more moddable.
CR CompFX: display dynamic effects over RimWorld objects


kaptain_kavern


Kirby23590


One "happy family" in the rims...
Custom font made by Marnador.



QuantumX


Axinoe


KasperDerNarr

Could anyone post a whole 18b texture folder structure with all corresponding subfolders?

CannibarRechter

I believe the one person who did that built it by hand, so I wouldn't count on it popping out anytime soon. Also, you should be aware that because the auto-extractor puts things into all one directory, sometimes it has to rename objects to account for the conflicts. So the file names are actually sometimes WRONG. I'm a bit surprised that we don't have an auto-extractor for Unity assets that preserves the directory hierarchy, actually.

CR All Mods and Tools Download Link
CR Total Texture Overhaul : Gives RimWorld a Natural Feel
CR Moddable: make RimWorld more moddable.
CR CompFX: display dynamic effects over RimWorld objects

kaptain_kavern

#164
Darkfire231 made another pack like this, more complete.

Found it here



@KasperDerNarr
About folder structures, all paths can be deducted by reading/searching for each texPath in XML code.

Using milon's XML autodocumentation you can have all listed in one screen if you look for texPath - The use of CTRL+F, search function, is highly recommended :p