A Hat in Time

A Hat in Time

142 ratings
How to make sticker mods!
By Starschulz
This is a new-modder friendly guide on how to make sticker mods! it should take you through all the necessary steps to get your sticker on the workshop.
3
   
Award
Favorite
Favorited
Unfavorite
Starting a new mod with the tools
If you've never even booted up the tools before, This section will help! ( you can grab the modding tools in the "tools" section of steam, in a dropdown from library, called A hat in time - Modding Tools )

On first startup, it should look like this ( probably without all the mods though, heh )


Just hit "New Mod" at the bottom right there.

You'll end up with a window like this!


Then just fill out the relevant information in those boxes. Mod name and description are fairly self explanatory, that's what you and other people will see on the workshop. Mod folder is different though, nobody will see it but the name is important so make sure to set it something unique. The tools wont even let you save if you don't rename it from NewMod, so definitely make sure to change it.

Hit "Save Changes" at the bottom when you're done, and it will have made a folder for you!

Now, to make the next steps of the guide easier, when you go to launch the editor, launch through this window, at the button here.


If you do that, the editor will recognize that you are working on a specific mod and place files in the right spots later, so i'd highly recommend it!
Importing your Sticker into the editor
To get your sticker image into the editor, you'll need to make sure it fits the editor's requirements.
Make sure what you are trying to import is square, and a power of two - 256x256 or 512x512 are both reliable resolutions for importing textures in.
As for what kind of image, .png and .tga are the best formats to use when importing, others might not be supported.

If you've got both of those requirements you should be ready to go! with the editor open, take a look at the content browser. At the very bottom of it, there is an "Import" button, next to a "New" button. hit "Import".


Navigate to where your image is, select it and hit open. You should have a window popup that looks like this:


Make sure to set something unique under "Package" ( highlighted in green ) other than the default MyPackage, or it may cause conflicts with other mods and it won't work. Its easiest to just use the mod name, and add _Content to the end of it. Also, make sure to avoid using the same name you set for the mod's folder! if you do that it'll cause your mod to break, later.

If thats all worked out, hit ok!

( -- extra note, if during that last step the editor complained about not being in RGBA format, try using the .tga format. some programs like paint.net seem to mess this up sometimes, but .tga ends up working right. )
( -- also, if the editor tells you your image *isnt* a power of 2 despite it most definitely very clearly being square and a power of two, restart the editor. sometimes it gets confused )

Once you've hit ok it should take a second and then you'll be greeted back to the content browser, with your sticker in there!


Right click your texture there, and hit Save. if you created a new mod in the earlier step and launched through that mod's window, it will automatically make a content folder and place it in the correct location for you!
If not, it will prompt you for a save location - Save it somewhere you will remember later and when you're done with the edtior, move it into a Content folder, inside your mod's folder. or just navigate to your mod's folder, create a Content folder and save it inside there, whichever is easier.


Now! your texture may have disappeared. search the name of the package you made in the left hand side of the content browser, select your package, right click and fully load it.


You'll need to make a few changes to the sticker before it looks right ingame, so right click the texture and open it in the texture viewer.


Set Address X and Y to clamp, LOD group to UI, and then you can use "Adjust Border" to add the white outline around your sticker! You can also change "Max Size" and "Padding" to adjust how the border looks. mess around with it until you like how it looks! I used 2.5 there for the border, but you may need a larger number if your texture has a higher resolution.

Once you've got that all right and your border where you want it it, your actual sticker is ready to go! make sure to save, and then right click it and "Copy full name to clipboard". paste that somewhere, you'll need it for later.
Importing custom Sounds
Stickers also have support for custom sounds, so if there isn't a sound you already want to use in the editor, you can import one! the editor takes .wav format, and all you have to do is import it in the same way you did the image in the last section.

It will import as a SoundNodeWave, right click that and hit "create new sound cue ( gossip )"


Change its name ( Or just add _Cue to the end of the name ) so it isn't the same name as the SoundNodeWave, and the editor will auto-create a SoundCue with your sound in it! The default settings of the SoundCue will make it play at a really short distance and nobody else besides you or people right next to you ( who have the mod ) will hear it, so right click and open it in the soundcue editor.



Select the attenuation node, and raise the "Radius Max" value. 2000 is the default range that the stickers in the vanilla game use, but feel free to raise it or lower it some if you want. If you de-select the attenuation node, you can also change the volume and pitch multiplier.

Once you're done with that, right click the SoundCue and hit save, then right click it again and copy full name to clipboard, and paste that somewhere. You should have both your sticker and your SoundCue ready, so you're done with the editor!
Multiple Sounds in a SoundCue
A lot of the base stickers play a choice between multiple sounds, and you might have multiple sounds you want to put in your sticker yourself! Lets start with the SoundCue you already have. ( feel free to skip this section if you only have / want one sound!



Right click here, and break the link between the nodes, then right click in some empty space and select random. You can also move the nodes around by just clicking and dragging.



Then with another soundnodewave selected in the content browser, right click in there again and select "soundnodewave: ( name of soundnodewave ). not random, that isn't what we're looking for.



with your new sound in there, go ahead and hook em all up together.



( you can just click / drag from each black box to the other to hook it up, like that )
Now when you hit the "Play Soundcue" button at the top left, it should randomly choose between those two sounds! You can select the random node and change the weights, by default its 1:1 so it'll be about 50%. you can change it to 2:1 to make the first choice twice as likely to appear. If you want more than just two sounds in a single cue, just right click the random node and hit "Add Input" for each new sound.



You can go as crazy as you want to, really. one sticker that has 10 voice lines, or 10 stickers that all have one voice line each!
The Sticker Script
Luckily this script is rather simple! you can take this template script and edit it.

class Star_Collectible_Sticker_Yatta extends Hat_Collectible_Sticker notplaceable; defaultproperties { StickerTexture = Texture2D'Guide_Sticker_Content.Guide_Sticker_Texture' GhostPartyEmoteVoice = SoundCue'Guide_Sticker_Content.Guide_Sticker_Sound_Cue' }

You can save this as a .uc file named "Star_Collectible_Sticker_Yatta" or alternatively, i have a downloadable one here to make it easier.

https://cdn.discordapp.com/attachments/192838821396742144/579856717869744158/Star_Collectible_Sticker_Yatta.uc

There are really only two things you need to change here! earlier you copied the full name of those assets to the clipboard, just paste the sticker image's full name after StickerTexture, and your soundcue after GhostPartyEmoteVoice.

These can both be substituted for images or soundcues already in the hat tools, so if you dont have a sound feel free to use one of the ones in the editor! search through them all by checking soundcues in the content browser then searching different names. tons of stuff in there stickers could be made from.

With both of those in the right place, just place that .uc file in a "Classes" folder in your mod's folder. your mod folder should look something like this now!


Nearly done. go to the scripting tab of your mod, and hit compile scripts. ( if for some reason you cant hit the button yet but the files are in the right spot, hit refresh )





Should only take a moment, and it should look like that! go ahead and close the window.

extra bits:

- having it set as notplaceable in the script like i have it means it will automatically be added to your inventory. if you want it in a level mod, just remove the not and leave it as placeable. that will let you place it in your own mod level!
- If you want a holo sticker, you can add IsHolo = true to the defaultproperties section. If you want the mod to include a normal and holo version, you'll need to make a separate script for each. Something like a `Star_Collectible_Sticker_Yatta.uc` and `Star_Collectible_Sticker_Yatta_holo.uc`
Multiple Stickers
If you've got a lot of stickers and want them all in a single mod, you only need to change one thing about the script you have from before. Make a copy of the first script file right in your classes folder, and move to the next step.

Besides changing the Texture and Soundcue specified in the script, you also will need to change the name of the script, so the tools can tell the two apart. This comes in two parts - the name of your script is specified as both the actual filename of your script, and in very first line of the script itself. So from the earlier example, the filename was "Star_Collectible_Sticker_Yatta.uc" and the very first line of the script read
class Star_Collectible_Sticker_Yatta extends Hat_Collectible_Sticker
That means the "name" of the script is Star_Collectible_Sticker_Yatta.

You can change this part to whatever you want. So, for example - you could make your second script file named "Star_Collectible_Sticker_BowYatta.uc" and the first line of the script would only need to be changed to say
class Star_Collectible_Sticker_BowYatta extends Hat_Collectible_Sticker

As long as those two parts match, the modding tools will read it properly. if you wanted to prefix your scripts something differently than i do, you could name your script something like "Moon_Collectible_Sticker_Awesome.uc"
and then of course your first line would read something like
class Moon_Collectible_Sticker_Awesome extends Hat_Collectible_Sticker
( and here's a download of it incase you want it! )
https://cdn.discordapp.com/attachments/192838821396742144/580291074246049793/Moon_Collectible_Sticker_Awesome.uc



So you'd end up just placing the new script right beside the other one, just like that. There's no limit to how many you can cram in a mod as long as they all have unique names, so go crazy! Better to have one big sticker pack than a bunch of individual mods.
Publishing your sticker!
Nearly done now! move over to the last tab, the publishing tab. ( make sure to recompile your scripts if you added a couple more in that last step and haven't yet! )


Set an icon for your mod with the top left button ( a 512x512 .jpg or .png is the best for this )
Icon needs to be square again, and not over a mb. if you go over the tools will freak out and cause a bunch of problems, so if you're worried just use a 500x500 .jpg image as your mod icon. this is what other people on the workshop see, so make it something nice!

If thats set, hit Cook Mod. This may take a few minutes, but when you're its done you're just about ready to upload. If its cooked, you can actually see it ingame. so go startup your game and check your inventory to make sure its there! if you can use your amazing new sticker, go ahead and hit "Submit to Steam Workshop as Playable Mod"

After another short wait your mod will be on the workshop, congrats!!!
it will take 10-30 minutes for it to show up to everyone, so add some nice screenshots or video to the page to really show it off!






That about does it for this guide! The sticker will only appear to those who have the mod installed. I hope this guide has helped ya!

If you want the sticker mod i made for yourself I've also uploaded it here - https://steamproxy.net/sharedfiles/filedetails/?id=1746828378

Feel free to take a look at the files and see how i did it!
94 Comments
RainbowJester10 15 Nov, 2022 @ 9:23am 
This was great! Thank you!
SillyKubeGuy 1 Oct, 2022 @ 1:09am 
Any guide on Holographic stickers?
Mobheadfireball 12 Jul, 2022 @ 7:10pm 
do i need a sound for my sticker?
Mobheadfireball 12 Jul, 2022 @ 7:08pm 
nvm
Mobheadfireball 12 Jul, 2022 @ 6:57pm 
there is no save option in image editor
mintpusheen 27 May, 2022 @ 8:35am 
how do you reset the editor
Lynyx 24 Feb, 2022 @ 4:05pm 
@UMIBOONEZ if you go into the sound cue editor, click the node that has the sound name on it, and you scroll down, there is a volume option, i haven't tried changing it, so i don't know if it works, but if it does or doesn't, please tell me.
Umi 26 Jan, 2022 @ 1:01pm 
How do you change the volume of soundcue's? I imported all the sounds I wanted but the problem is that they are all SUPER LOUD. Could somebody please help me with this?
nskretkowicz 19 Sep, 2021 @ 4:46pm 
Thank you
Freezorg 31 Mar, 2021 @ 9:33pm 
I can't seem to be able to change the volume anywhere. The "volume multiplier" value doesn't seem to actually do anything.