Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.

Cheerio

Easy Character Art Tutorial

Recommended Posts

Cheerio    2,675
This tutorial will teach you how to create the art for a new custom Don't Starve character.

 

This tutorial requires:

- PC version of 'Don't Starve' and 'Don't Starve Mod Tools'

 

Tutorial:

The create a new character, we are going to install a template character mod and then overwrite the image files to create a new character. Let's get started!

 

The first step is to download and install the Easy Character Art Template mod from either the Steam Workshop or the Klei Forums. You can find instructions how to install a mod here

 

Now launch the game and enable the mod.

post-283016-0-45916600-1401490513_thumb.

 

Now make sure that the mod is working properly by creating a new game with the "The Template" character. You should see the word "sample" on his forehead.

post-283016-0-94299200-1401490515_thumb.

post-283016-0-44158800-1401490514_thumb.

 

Now browse to your mods folder and edit any of the images in the "/exported" folder of the mod.

post-283016-0-74753300-1401490516_thumb.

 

You should now see those changes next time you start the game.

 

Happy modding!   :-)

Share this post


Link to post
Share on other sites
Mr. Tiddles    822

Is there any possibility of a build template with the skeleton sprites for RoG lightning? I'm sure I could do it myself, but I'm just curious for those who wouldn't be able to.

Share this post


Link to post
Share on other sites
simplex    2,608

Is there any possibility of a build template with the skeleton sprites for RoG lightning? I'm sure I could do it myself, but I'm just curious for those who wouldn't be able to.

Why don't you just use krane?

Presuming you're referring to anim/lightning.zip, here you go.

lightning_scml.zip

Share this post


Link to post
Share on other sites
Mr. Tiddles    822

Why don't you just use krane?

Presuming you're referring to anim/lightning.zip, here you go.

attachicon.giflightning_scml.zip

I know that (And I've been using Krane a lot lately to look into how Klei make their animations so good). I was asking for people who don't know how to do that stuff, just so it could be easier for them.

Share this post


Link to post
Share on other sites
simplex    2,608

I know that (And I've been using Krane a lot lately to look into how Klei make their animations so good). I was asking for people who don't know how to do that stuff, just so it could be easier for them.

In that case someone could decompile the anims with krane and post the result here :razz:. I get where you're coming from, I just don't see why it should be Cheerio doing this.

Share this post


Link to post
Share on other sites
Mr. Tiddles    822

In that case someone could decompile the anims with krane and post the result here :razz:. I get where you're coming from, I just don't see why it should be Cheerio doing this.

Me neither. I forgot why I did. My brain decides to do stuff wihout me realizing I'm doing it.

Share this post


Link to post
Share on other sites
MrMecky    45
Xg2zSMI.jpg

I am assuming you are not supposed to edit the boundary size of the images, or placement inside spriter?

Every time I try to place the head on, the whole animation bugs up :frown:

Share this post


Link to post
Share on other sites
afro1967    109
Xg2zSMI.jpg

I am assuming you are not supposed to edit the boundary size of the images, or placement inside spriter?

Every time I try to place the head on, the whole animation bugs up :frown:

Share this post


Link to post
Share on other sites
MrMecky    45

Don't play with Spriter,well don't save it if you do.Just overwrite the images with your own.DO NOT change the image names. You will most likely need to delete the sample_dude.zip inside the wilson folder before each test. 

 

Hope this helps!

 

Ah ok, will have to change how the character looks a little.

 

Thanks for the reply :grin:

 

Share this post


Link to post
Share on other sites
Cheerio    2,675

Don't play with Spriter,well don't save it if you do.Just overwrite the images with your own.DO NOT change the image names. You will most likely need to delete the sample_dude.zip inside the wilson folder before each test. 

 

Hope this helps!

You shouldn't have to delete the zip file with the new mod tools.  At least, it was working fine for me without doing that. Do you still have to do that?

Share this post


Link to post
Share on other sites
simplex    2,608

You will most likely need to delete the sample_dude.zip inside the wilson folder before each test.

You shouldn't have to delete the zip file with the new mod tools.  At least, it was working fine for me without doing that. Do you still have to do that?

Cherrio is right in that you shouldn't have to delete sample_dude.zip.

Share this post


Link to post
Share on other sites
Cheerio    2,675
Xg2zSMI.jpg

I am assuming you are not supposed to edit the boundary size of the images, or placement inside spriter?

Every time I try to place the head on, the whole animation bugs up :frown:

Currently you'll have to stick with the template image sizes.  However you can try the different character templates, to get what you're looking for. As part of getting new animations in, I'm going to be try and fix that so you can adjust image sizes. The problem right now is that if you change the image sizes in Spriter, all the pivots end up in the wrong spot and the in game animations don't work properly with the data that comes out of Spriter.

If you however made a new creature like the one in the Creature Tutorial along with it's own custom animations, then you should have no problem messing around with image sizes as the pivots for the animation and the build should always match.

Share this post


Link to post
Share on other sites

I want to make a character of my avatar. The upper part of my body will be the head, The lower part would be the body, and as legs it will have 2 stumps. How do I overwrite the Wilson texture with my custom one?

Share this post


Link to post
Share on other sites
simplex    2,608

As part of getting new animations in, I'm going to be try and fix that so you can adjust image sizes. The problem right now is that if you change the image sizes in Spriter, all the pivots end up in the wrong spot and the in game animations don't work properly with the data that comes out of Spriter.

The main problem in implementing this is that in Spriter each object (within a timeline key) may have a distinct pivot, while in Don't Starve's animation/build format each build symbol has a single pivot. Since on build.bin <-> .scml conversion build symbols correspond to files, and a Spriter object is only one out of possibly many instances of a file, the multiplicity of pivots is a major issue.

What you'd likely have to do is, for each file, heuristically choose the pivot for one of the objects using this file as the "main" pivot for the build symbol corresponding to the file, and dump the offsets from the other pivots in the translation column of the anims' projection matrices*, but of course that can only be fully done when all anims are being compiled; older anims may fail to work with the new build.

The above is why I didn't change the pivot computation in the scml compiler. There's no good way to do it, as far as I can see.

* More precisely, you'd need to take the offset from the main pivot, flip its sign, multiply by the linear part of the projection matrix (its top left 2x2 block), add the original offset to that, and add the result to the third matrix column.

Share this post


Link to post
Share on other sites
Dryicefox    140

Why don't you just use krane?

Presuming you're referring to anim/lightning.zip, here you go.

attachicon.giflightning_scml.zip

 

Krane does not like my Windows 7 Home Prof. Computer.

It blinks into and out of existence in less than a second. :c

 

Share this post


Link to post
Share on other sites
simplex    2,608

Krane does not like my Windows 7 Home Prof. Computer.

It blinks into and out of existence in less than a second. :c

It's a command line tool.

Share this post


Link to post
Share on other sites
Maz    12

Hey, I tried to test out replacing all names with Wigarf, but when I apply the mod my DS.exe creashes immediately. Is this meant to happen?

Share this post


Link to post
Share on other sites
Mr. Tiddles    822

The images are much smaller than the original template... will there be enough room for characters with larger features?

 

Example: I'm re-drawing and recompiling my Warfarin character, who has a large hood and hair that points up rather far. I have to resize the images to do so. From past experiences, resizing images and then compiling them ends up pushing the image down. Will this do the same? Will the body begin with the hood at the chin and the bottom of the body below the legs?

 

If so, then that's a pickle, since the wod build seems to be unable to be decompiled, rendering this near-useless to those who want to make character with features that point out. If that isn't the case, then nevermind.

 

I would like to know this before I waste an entire day doing this only to find that it doesn't work.

Share this post


Link to post
Share on other sites
Cheerio    2,675

The main problem in implementing this is that in Spriter each object (within a timeline key) may have a distinct pivot, while in Don't Starve's animation/build format each build symbol has a single pivot. Since on build.bin <-> .scml conversion build symbols correspond to files, and a Spriter object is only one out of possibly many instances of a file, the multiplicity of pivots is a major issue.

What you'd likely have to do is, for each file, heuristically choose the pivot for one of the objects using this file as the "main" pivot for the build symbol corresponding to the file, and dump the offsets from the other pivots in the translation column of the anims' projection matrices*, but of course that can only be fully done when all anims are being compiled; older anims may fail to work with the new build.

The above is why I didn't change the pivot computation in the scml compiler. There's no good way to do it, as far as I can see.

* More precisely, you'd need to take the offset from the main pivot, flip its sign, multiply by the linear part of the projection matrix (its top left 2x2 block), add the original offset to that, and add the result to the third matrix column.

That's not actually much different then how you would use a bind pose in 3d animation. And I think it's doable by leveraging the fact that in Spriter, the images(folders/files) have their own associated pivot so the idea would be in scml.exe to always apply the inverse pivot of the images to the timeline pivot on every key which means you could still animate the pivots. The animator would have to start from a template and have to make sure to never change the default pivot for any common player symbols but they could do whatever they want with new symbols.

 

I have this kind of up and running right now and I think it will work out. The in game screenshot uses only the animation data from Spriter and not the build, so I could apply this animation to any character including modded characters.

 

post-283016-0-65117200-1401917106_thumb.

post-283016-0-70294600-1401917046_thumb.

Share this post


Link to post
Share on other sites
simplex    2,608

That's not actually much different then how you would use a bind pose in 3d animation. And I think it's doable by leveraging the fact that in Spriter, the images(folders/files) have their own associated pivot so the idea would be in scml.exe to always apply the inverse pivot of the images to the timeline pivot on every key which means you could still animate the pivots. The animator would have to start from a template and have to make sure to never change the default pivot for any common player symbols but they could do whatever they want with new symbols.

 

I have this kind of up and running right now and I think it will work out.

Yes, Spriter does allow specifying a default pivot on a per file basis, used when the pivot is not set at the object level. It's somewhat fragile to rely on it, since Spriter only allows this for convenience of keeping the default value in a centralised location, treating the object level pivot as the "true" location for specifying pivot, so it will heavily rely on the animator being careful to never change the pivot on a per frame basis. But I agree this is likely the best solution to the problem, and the lack of robustness is a side effect of the differences between the input and output formats.

Share this post


Link to post
Share on other sites
Cheerio    2,675

Yes, Spriter does allow specifying a default pivot on a per file basis, used when the pivot is not set at the object level. It's somewhat fragile to rely on it, since Spriter only allows this for convenience of keeping the default value in a centralised location, treating the object level pivot as the "true" location for specifying pivot, so it will heavily rely on the animator being careful to never change the pivot on a per frame basis. But I agree this is likely the best solution to the problem, and the lack of robustness is a side effect of the differences between the input and output formats.

I believe they should still be able to change the pivot on a per frame basis if he inverse of the file pivot is applied to the timeline pivot. They just can't change the default pivot which makes sense given that the goal is for animations to be shared across different builds.

Share this post


Link to post
Share on other sites