DPET : Desktop Pet Engine

DPET : Desktop Pet Engine

34 ratings
How to create a custom pet
By Thato
How to create a custom pet.
   
Award
Favorite
Favorited
Unfavorite
Setup
Pets downloaded from the workshop are stored at:
C:\Users\(user)\AppData\Roaming\DesktopPet\UserData\profiles\databaseDownSteam
This folder does not include the built-in pets,
however I don't know where they would be.

Each pet is defined by 2 files:
A JSON file, and a PNG sprite sheet.

For examples of the JSON file and sprite sheet
you can look at the files of the workshop pets.

All you need to do to add your custom pet is to add those
files to the folder. The app will automatically detect them.
JSON file
You can use a JSON file from another pet as a template
so you won't have to create a new one from scratch.

Attribute "name" defines the pet's name.
Attribute "img" defines the PNG sprite sheet name.
Attributes "width" and "height" define the pet's dimensions in pixels (it's usually gonna be 128x128).
Attribute "animePos" defines the pet's animations. Each animation has their own attributes.

Animation "stand" is the idle pet sprite.
Animation "crawl" is the animation for when the pet hangs from the top of the screen.
Animations "climb", "walk", "jump", "fall", and "drag" are self-explanatory.

I haven't tested this for all of the attributes, but if you don't define these
some pretty wacky things happen to your pet when the undefined animation is supposed to play,
and you will need to close and restart the app to fix it.

You can add custom animations with custom names (other than the ones above).
These custom animations will be played at random when your pet is on the ground.

Each animation has a "line" and "count" attribute.
Attribute "line" defines which row on the sprite sheet the animation is on.
Attribute "count" defines how many sprites the animation lasts.
Sprite sheet
The PNG sprite sheet defines the pet's sprites.
Each row corresponds to an animation.
The sprites go from left to right.

For the falling animation, the first sprite is used
for when the pet is actually falling, and the other
sprites of the animation is used when the pet lands.

Note: Make sure your sprites face right (unless
you want your pet to moonwalk everywhere).
9 Comments
gemmacollettbyrnes 24 Sep @ 8:14pm 
o o
gemmacollettbyrnes 24 Sep @ 8:14pm 
i want too make two x and one
skiterring 22 Sep, 2024 @ 12:27am 
are you able to upload pets publicly through this method? wanna share mine around but dunno how to upload it to the workshop </3
PawelekSz69 1 Jun, 2024 @ 12:36pm 
wole kinitopet
Duskfall Portal Crew 21 May, 2023 @ 7:23pm 
This is amazing in that it reminds me of desktop pet engines that we had YEARS AGO it's the same concept but for modern hardware.
RedThatCat 27 Apr, 2023 @ 5:25am 
Yeah, removing it and restarting the program fixed it. Not sure why it did that in the frist place though
Thato  [author] 20 Apr, 2023 @ 2:29pm 
Sorry to hear about that. I'm sure you can fix the app by removing the custom pet from your files and/or reinstalling the app.

If that doesn't fix it I'm fine with removing my guide; It was quick and dirty, and I wouldn't be surprised if I missed something important due to lack of testing.
RedThatCat 16 Apr, 2023 @ 4:53pm 
I broke the app messing around with it uhhhh
ninja 17 Nov, 2022 @ 7:06am 
its cool