Open-source In-Game Avatar Editor

I made a simple in-game avatar editor!

Here is a video demonstrating what it can do:

Some things to point out:

  • It is not R6 compatible.
  • This avatar editor does not support emotes.
  • There is no optimization done in any way. (ex: when selecting the Hats subcategory, it will load almost 8,000 UI elements at once; huge frame drops).
  • Searching through the UI elements is also causes frame drops.
  • My catalog database is accurate as of December 29, 2019.!

I have included the catalog database used to load all the UI elements; located in ReplicatedStorage.Catalog which you can use to make your own avatar editor or whatever. Assets are formatted in this way: {Id = 0000, Name = "hat name"} in a giant array of all the items.

ServerScriptService.BundleGetter contains code on how to get all the limbs of the bundles.
ServerScriptService.CatalogGetter contains code on how to get the Roblox catalog. (you cannot get the catalog directly use HttpService, use a proxy).

I hope there are no bugs or anything.

Place is open source here:


Is it okay if I modify it and implement it on an upcoming game?

Thanks! This’ll help on my school game.

Thank you so much, i appreciate it.

Do we have to give credits? (30 chars)

thx. may needing this resource later

No need.

If you know what you are doing, modify it all you want.

Will this be improved anytime in the future with the frame rate drops?

It’s pretty easy to do it yourself by making it page based instead of just one scrollframe.

How do we update it so that it can have new items every time. Example: when a new UGC item comes out and how would I add that UGC item? Can we make it so that it automatically adds new items when new items come out?

I have provided code on how to get a list of all the catalog items. Check the CatalogGetter ModuleScript in ServerScriptService.

On line 21 you pick which subcategory you want (subcategory ids are on lines 3-15). On line 25, you pick how many pages you want to look up. Generally 25 pages is enough for all subcategories except for the Hat subcategory.

For the Hat subcategory, you cannot get all the assets at once; you will get an error like: string too long or something; you need to split it up.
Example: On line 28

for i = 1, 25 do
for i = 26, 51 do
for i = 52, 77 do

and so on; up to 200 with what is currently in the catalog, you might need to increase it as Roblox adds more assets. You will also need to do this for other categories as creators keep assets.

You cannot use HttpService:GetAsync to get the catalog. Search for http proxy on the devforum for solutions to get around this.