Terraria

Terraria

262 ratings
Creating & Installing Texture Packs
By Gardivanyth
This guide will show you how to install Texture Packs, or create your own!
4
16
   
Award
Favorite
Favorited
Unfavorite
Intro
Hey there, folks!

If you were like me, when you installed Journey's End, you were probably surprised to see a big ol' "Texture Packs" button on the main menu of the game.


Pretty neat, right?

There's only one problem: How the heck does it work?

This guide aims to clear up any confusion, setting even the newbies of modding on the right path. To that end, if anything seems confusing, please let me know in the comments!

Let's get started, shall we?
Creation: Unpacking assets
Before we go further, I should clarify that this guide will operate under the assumption that you're using the Steam version of the game. It only makes sense, seeing as you're looking at a Steam guide and all. If you're using GOG, this guide might be harder to follow. And if you pirated the game... actually, why would you do that? It's 10 bucks dude, just buy it. Support the devs.

Aaaaanyways... Back on topic!

If you wanna create your own texture packs, the first thing you need to do is find the textures you want to modify. Unfortunately, it's not that simple. If you've ever peeked into Terraria's assets folders, you've probably noticed these "XNB" filetypes.


Those XNB files are the sprites we want to modify, but simply opening them in an image editing program isn't gonna work. We need to convert them into something our PC can recognize.

Luckily, the Terraria forums has the solution for us! Multiple, actually. I used TExtract[forums.terraria.org] for this guide, but TConvert[forums.terraria.org] is a newer piece of software that has extra features, including converting PNGs back into XNBs (not necessary for this guide), and backing up your content folder.

So, now that you have your extraction software, let's go ahead and- wait, virus?!

Don't worry. Most PCs block .EXE files by default because they can execute malicious code, but TExtract and TConvert are not malicious files. Run it anyways!

Whatever program you chose - again, I'm using TExtract - will have you choose an input and output folder. The input should default to the correct folder, but if it doesn't, the filepath should lead to this folder.


Once you've selected your input and output, it's time to begin extraction! If you're using TExtract like I did, you'll probably run into a problem right away, though - it gets stuck on the first operation.


No worries - this is an easy fix. Just temporarily move the Fonts folder elsewhere, and everything else will get extracted. If you felt like modifying fonts, though, I guess you'll have to look into TConvert instead.

Once the conversion process finishes, navigate to the output folder, and voilà! All of the assets have been unpacked into something more usable.


Now that that's out of the way, why not relax a bit and break out the paintbrush?
Creation: Respriting
I am by no means an expert spriter, so don't expect expert tips here. This is simply a walkthrough on how to properly change sprites.

Firstly, we need a program that can open up these PNGs and edit them. Your first thought might be something like Microsoft Paint.

DON'T DO THAT, YOU DOOFUS. MS Paint replaces transparent pixels with blank white ones. Unless you want your game to be filled with giant white squares, you'll need a better program for this process. I personally recommend GIMP - it's a bit tricky to handle, but it gets the job done, and it's completely free.

By the way, that should be the last piece of software you'll need to download, if you're a Windows user. Everything from this point on can be accomplished with what's already on your PC!

The first thing we need to do is find what we're modifying. The Terraria wiki is quite useful for this. For instance, let's say I want to change the Minishark.



At the very bottom of this info box, you'll notice it says "Internal Item ID: 98". Simply search the extracted assets folder for 98, and there's our Minishark!



Here, I'd recommend copying this file to another folder, maybe on your desktop. That'll make it easier to find later.

Now we just need to make our desired modifications. Recolor, new sprite, doesn't matter - do whatever you feel like doing! For this example, though, I'll just stick to a simple recolor.


Aw yeah. Red minishark, baby.

When you're done making the appropriate modifications, just export your new sprite as a PNG. You won't need to do any fancy file conversions like we did earlier. Also, make sure the image has the same filename as it had when you extracted it! This is very important, as the filename is what allows Terraria to identify the updated texture. File names are case sensitive, so make sure you maintain upper and lower case letters wherever appropriate.

Before we close out this section, there's a few more things worth mentioning. The first is animated sprites. Take the Fallen Star, for instance.



Terraria has a simple method of handling animations, and you can probably already tell what it is. Each frame of the animation is on the same image, and they're laid out in a vertical strip. The game handles animation on its own by cycling through the frames, but you must individually change each frame for it to look right.

I would recommend creating a temporary layer on GIMP (or whatever program you chose to use) and outlining each frame to establish a border, since going outside of this border might cut off your frames, and aligning frames incorrectly will make the animation less smooth. You should also avoid changing the image's resolution; if the canvas size of your retexture isn't identical to the original file, the retexture will not work at all.

Quick tip: If you're changing an animated sprite (like the Fallen Star), but don't want it to have an animation, simply make each frame of the animation the exact same image! You can see this exact process being used for shorter hairstyles, like the default one.

The other thing I want to mention is that certain items have multiple sprites associated with them, and I'm not talking about animations. How about another example? Let's take a look at the first Light Pet, the Shadow Orb.



Uh-oh. There's an Item ID, sure, but there's also a Buff ID and a Projectile ID! What gives?

In this particular example, Item ID refers to the item known as the Shadow Orb, which you get by... smashing Shadow Orbs. The Buff ID is the Buff applied to the player, causing the Orb to follow them - you can actually see this in the image above. Finally, the Projectile ID is the Orb that follows the player around.

To summarize: Item grants Buff, Buff causes Projectile to follow player.

With these kinds of items, you might have to modify multiple sprites. In my case, I modified a Light Pet and animated it, but I didn't bother to change the Buff or Item sprites, since the texture pack is purely for personal use.

Whew. That was longer than I thought. Now that we've got that out of the way, though, how about we put our hard work to use?
Creation: Setting Up a Pack
Okay, so we have our resprite(s). How do we turn that...



Into that?

Firstly, we need to navigate to our Resource Pack folder. That's easy enough, since the game does it for us - simply click "Texture Packs" on the main menu, and a big button that says "Open Folder" will be at the bottom of the screen.

Now that you're in the right folder, create a new folder. Give it whatever name you want. Then, in that folder, you'll want to have something that looks like this:


Oh dear. What is all of this?

Let's go through this, one step at a time. icon.png is the only optional thing here. This is the thumbnail that your texture pack uses.


That fancy border is added automatically, by the way.

pack.json is what allows your pack to be recognized in-game. To create it, simply copy a .json file from another folder - there are a few in Documents / My Games / Terraria - and paste it into this one, then rename the file to pack.json and open it in NotePad. Replace all of the text with the following:

{ "Name": "Pack Name here", "Author": "Author name here", "Description": "Brief description of the texture pack", "Version": { "major": 1, "minor": 0 } }

Replace "Pack Name here", "Author name here", and "Brief description" with the appropriate text. Make sure to keep the quotation marks intact.



Finally is the Content subfolder. Within this folder is another folder called Images, and in that folder is our resprites!


...If any of this is hard to follow, I've published this example Minishark resprite so you can mess around with it. Just click "Download" and follow the instructions in the next section of the guide.[www.dropbox.com]
Installation: Enabling a Pack
Finally, the part you've been waiting for - how to make your textures (or someone else's) appear in-game!

First thing's first, if you're installing someone else's resprites, you'll most likely get it in the form of a .zip file.



Go ahead and navigate to the ResourcePacks folder, which, as mentioned earlier, can easily be found by going to Texture Packs on the main menu.

Drop the .zip file into ResourcePacks, then unzip it. Most computers can do this by default, but if for some reason you can't, WinRAR is a tried-and-true solution. Just try to ignore its pleas for you to buy it.

Once you've extracted the folder, it should contain two to three items - a folder named Content, a "pack.json", and optionally, an "icon.png". If it doesn't contain these items, and instead has a subfolder with the appropriate items inside, move the subfolder into ResourcePacks. The exact filepath should be Terraria / ResourcePacks / [Your Texture Pack] / [Contents].


Good news - that should be the last bit of file management needed! Now you can activate your resprites. Launch Terraria (or go to the main menu if it's already open), then click Texture Packs.


If you've done everything correctly, congratulations! Your pack should appear in this menu. Simply clicking the big red arrow enables it, and your resprite will appear in-game. If you have multiple packs, and they modify the same sprite, you'll need to mess with the arrows that appear on the active packs to prioritize one over the other.

Addendum: Steam Workshop
This guide was created prior to the update 1.4.2, which added compatibility with the Steam Workshop. This addition makes it easier than ever to share and enable texture packs!

This update changed the location of the Resource Packs menu. You must now select "Workshop" to bring you to the workshop hub.


On this menu, you can upload your creations to the Workshop with the appropriately-labeled "Publish Resource Packs" button. The menu there is very self-explanatory, so it would be pointless to explain it here. Check it out yourself!

The button labeled "Use Resource Packs" brings you to the resource pack menu we're used to. There is one difference worth speaking of, though - you can now subscribe to resource packs in the Steam Workshop. Once you subscribe to a resource pack, it'll appear here, with a small Steam logo to signify where you got it from.


Resource packs downloaded from the Workshop (done by clicking the Subscribe button) work just like any other, with the sole difference being that you can't publish them (obviously!).

The resource pack seen in the image above is this one; credits exclusively to its creators for their hard work! https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=2445323408
Closing Thoughts
With that, you should have everything you need to create your own texture packs, or install someone else's.

Something not working as anticipated? Remember that items and projectiles have their own properties that can't be easily changed. The Shadow Orb, for instance, doesn't have an animation, but it rotates as it follows the player. Make sure you know an item like the back of your hand before trying to resprite it!

If you feel like you're missing something, or something goes wrong, go back through and make sure you didn't skip anything. And if you're 100% sure it's not in the guide, please, let me know in the comments, and I'll try to amend it!

Thank you for reading! I can't wait to see what you all come up with!

177 Comments
thethelog 11 Jul @ 9:36pm 
Thank you for the guide! As someone else here mentioned, the edited PNGs need to be the same size as the originals or else it will not work. :GDNormal:
smoaz.cj 30 Jun @ 10:04am 
How to do without Textract or Tconvert????
Charged 1 Jun @ 3:02pm 
This is a great guide! It took me a little bit to figure out but this helped me a lot! Thanks!:steamhappy:
Jorge /JD/ 30 Apr @ 1:51am 
and for clothes????
Nugget Gaming | HamMafia| 23 Dec, 2024 @ 1:19pm 
Im using version 1.4.4.9 and i did everything right, but my texture pack does no appears.
Hydra 10 Dec, 2024 @ 3:06am 
This tutorial is pretty great, but you should mention that if you are completely changing a sprite, the png needs to be the same resolution as the sprite you are changing, hopefully this will help someone
MioHazard 17 Nov, 2024 @ 11:45am 
I did all of the steps above, but there is a problem, when I loaded my texture pack in-game, it didn't change anything. I don't know what I did wrong
Vick 28 Oct, 2024 @ 6:15am 
Is there a way to update my own texturepack if i made some mistakes or wanted to add something?
Corgilorian 11 Aug, 2024 @ 3:16pm 
how do i update my pack? i cant find any guide to do that
Zeotrax 1 Jul, 2024 @ 2:08am 
I've been trying to texture spiffo to look like gir, and I did everything as followed but spiffo isn't changing