Welcome to the Tabletop Simulator tutorial series. I’m Kimiko with Berserk Games and this fourth episode in the series will go over how to create custom assetbundles, from the very basics to a bit more advanced with animations, sounds and particle effects. If you missed the previous videos, they will be linked in the description below.
You can also find more in depth info in our Knowledge Base on our website, which will also be posted below.
So let’s get started.
First, you will need to go into our Knowledge Base and make sure you have the the proper project and Unity version. Download and install the Unity installer. As of this recording, you will need 5.6.2, but you must use the exact same version listed in our Knowledge Base, so it’s very important to check the version in the Knowledge Base to ensure everything works properly.
When installing Unity, make sure to check mark the Windows, Linux and Mac build support boxes.
Then download the Tabletop Simulator Modding Project from GitHub. Unzip the file and place in your drive of choice.
Now you want to open up Unity, click open and choose the folder from GitHub that you just unzipped. Once opened, you can see the list of assets, which includes example objects to provide scale (one Unity unity equals 1 inch) and scripts you can play around with, that enables advanced functionality like animations and sounds.
Let’s start with a basic object. At the top, you can click on GameObject, 3D Object and then the object of your choice. In this case, I’m choosing a sphere. Optionally, you can create the object in your Hierarchy, by right clicking in it, and then choosing 3D Object and your object of choice. If you’d like to name your object something else, just right click on it, choose rename and enter in whatever you’d like.
Now you want to add a material to your object so you can change the color of it. Click on the Materials folder and then right click in the folder, click Create and then Material and name it whatever you’d like. Drag and drop your new material onto your object. When you click back on your object, you will see your material has been added. Click on the arrow to expand the options.
You can now change the settings, colors and more of your object. Feel free to play around with the different settings to see what they do. I’m going to change the color of the material to red and change the metallic sheen a bit, as well as adjust the smoothness of it.
This is also where you can add in any textures and normals you may have created.
Once you have your object how you want it, you now need to create a prefab of it. Prefabs allow you to store a GameObject complete with components and properties to your liking.
You can make changes to the prefab to have all instances of that object change immediately, or you can edit the components of each objects individually without messing with the prefab.
To create a prefab, just drag your object from the hierarchy into the Prefabs folder. From here you can change the name of the prefab if you’d like to keep it separate from any others you create that are similar.
Now you need to assign that prefab to a unique AssetBundle name. Click on the prefab. Go down to the bottom right where it says AssetBundle and change it to “New”, then give it a unique name like so and press enter.
Now you will build your AssetBundles by right clicking anywhere in the project view and then selecting “Build AssetBundles”.
Now we’re going to check out our newly created AssetBundle in game!
Once you’ve got Tabletop Simulator opened, in the top menu, Click on Objects, Components, Custom and then AssetBundle. Use the file browser to locate your Assetbundle. AssetBundles can be found in your ‘Tabletop-Simulator-Modding/AssetBundles’ folder.
Load it to your cloud and then choose the type and material you wish your object to be. Click import and there you have it! Your own custom assetbundle.
Now we’re going to try out a more advanced version of an assetbundle. In this case, it will be expected that you already have what you need to create them, as we won’t be going over how to model or create animations and the like. You can easily find free versions on various websites or you can purchase models for this purpose.
Since most of my custom videos include a cat of some sort, I will be creating an animated cat assetbundle, of course. You want to make sure you have all your assets already in your project, so that we can get to work.
First, drag in your model into the scene. At this time, you can make any adjustments to the size of it. I’m going to add two components to my cat model by clicking on Add Component in the Inspector. Animation and TTS Asset Bundle Effects. If I was going to add sounds then I would also add the TTS Asset Bundle Sounds component.
In the main Animation value, you want to add in your general animation that you want to show when you load up your model. In this case, I’m going to add in the Idle pose. You then want to decide how many animations you will be adding. I’m going to choose 4, including the idle pose.
You can now see that there are now 4 elements to choose from. Element 0 will be my idle pose, but I now need to change the other 3 elements to add in the animations I desire. I ended up choosing, idle, run, wash and sleep as my 4 animations.
You want to make sure the Play Automatically box is checked, so the animations will play right away and you want the Culling Type to be at “Always Animate”.
Now we go down to the TTS Asset Bundle Effects component and click the arrows to expand those options. At this time, we’re only going to be working with the Looping Effects, which will have our animations continually loop.
You want to put the same number for size that you had in the animations section and for each element, you need to name your animation, and either drag and drop your model into the animation section, or you can choose it from the list. And then you need to input the exact name of the element into the Animation Name section like so.
Once you’ve got your scripts in place, now you create a Prefab like before. Drag and drop into the Prefabs folder, name it what you’d like and then create a unique assetbundle name for it. Then right click anywhere in the prefabs folder and build your assetbundle!
Now we’ll go back into Tabletop Simulator and load it up. You want to do the same thing as before and go to Objects, Components, Custom and Asset Bundle. Look for your newly created Assetbundle, load it onto the Cloud, choose your type and material and import it.
Because my cat model has looping effects on it, when you hover over it, you can see the Assetbundle purple icon, which lets you know there are either looping or trigger effects. To see if your animations are working, right click on your model and choose one of the 4 looping effects.
One last thing I’m going to go over is how to add a trigger and sound effect to your assetbundle. Going back into Unity, we’re going to duplicate our first model with all the effects on it and then add on to it.
In the new copy, change the animation size to 5 and in Element 4, change it to whatever animation you want to be a trigger effect, in this case, I’m adding the dig animation.
Under the Assetbundle Effects, click the arrow under Trigger Effects to show more options. Change the size to 1 and add a name for the animation. Then under Sound, add in your audio clip and under duration, choose how long you want the sound to last. And drag in your object file into the animation component section.
Create a new prefab with a new name and new assetbundle name and then build your assetbundles like before.
Now when we load it up in Tabletop Simulator, when we right click and choose trigger effects, you can see my cat’s dig animation along with the sound to go with it! The animation will last as long as the trigger effect’s duration, so you want to make sure you have them at the correct length you want them to be.
And there you have it! You can create many different types of asset bundles to have various animations, sounds and particle effects. You can check out the Workshop to find some of the amazing things the community has already created.
Make sure to read over the custom assetbundle article in our Knowledge Base for even more info. I hope you enjoyed this tutorial and it helps you in creating your own assetbundles!
If you have any questions, just post them in the comments below.
Thanks for watching and see you next time!