01-26-2022, 05:51 PM
(This post was last modified: 01-26-2022, 06:24 PM by SpritZ.
Edit Reason: Fixed formatting of topic, I think.
)
ROBLOX is a platform that allows you to create games using their tools and programming language, Lua. It can be used as a way to make money, whether it's by making games or by making UGC (User Generated Content).
There are over 3 billion users and over 7 billion places on the platform.
To suggest that each and every place should be ripped is an outrageous thought if you take that into consideration. Especially considering most of those places are places made when a person makes an account on the platform. These are called Starter Places.
There are many places from 2006 that have been completely or almost lost to time due to either getting privated, or put under review. Ten years from now many places from the 2010's could meet the same fate, and considering the only copies of these games are on ROBLOX's platform, we should take them into consideration as well; Because games are still games, and they're just as important.
There are many games on the website that should definitely be preserved, and I think preserving ROBLOX content on The Spriter's Resource is a good way to go about this.
But, how would you rip from a ROBLOX game exactly?
Well, ROBLOX has a system called "uncopylocking" or open-sourcing, which allows a person to open-source their game's assets along with all of its versions on the platform, giving anyone the ability to do what they want with it.
(The red boxes that I drew show and indicate that a game is uncopylocked.)
ROBLOX has an API which is public so people can use it for getting certain assets on the platform or getting certain information. One of these APIs is called "Asset Delivery", this gives you the ability to download assets on the platform as long as you have their "Website ID". >> Example.
(You can also download an asset by using an unofficial ROBLOX Browser Extension, but using the API is the safest way to go about this if you don't want to risk anything.)
You may notice that by normal means, downloading the Decal will result in a blurry, slightly compressed copy. This is because you're attempting to download the Decal preview, rather than the Image itself.
If you do attempt to download the Decal instead of the Image, changing the file's format to .PNG won't work. To get the actual Image ID, you will need to either;
A more tedious, unrecommended way to download the Image would be...
...You can tell this is unrecommended by how long that block of text was.
You can find ROBLOX's list of APIs here and find the Asset Delivery API that way, or you could use this sub-domain link (note that you might need a ROBLOX account to use some of them). >> https://assetdelivery.roblox.com/v1/asset/?id=ASSETID&version=VERSIONNUMBER
The ASSETID text is where you put a Website ID. This can be used for games, models. images, etc, and the VERSIONNUMBER text is where you put the version you wish to download. 0 and the last version is considered the latest version, while any number inbetween that would be different versions. 1 could be considered the earliest version possible.
If you managed to find the Image ID and download it using the Asset Delivery API, the result will be the original version of the Decal image mentioned earlier.
The resolution is smaller, but it's the intended resolution. This is the result you should get, as it's the original.
Hurray! It worked!
I'm aware that OCs are definitely a concern, that's why I suggest only ripping from games that have a significant amount of visits, have original elements and have been uncopylocked. There aren't a whole lot of games that have all three of these checked off, but each and every one of them that do should be preserved if possible.
I tried answering as many questions as I could in this post, but because this is a completely different field that nobody has really tried to do before to my knowledge, I'm sure there are plenty of other questions that need to be answered too. If there are any, I would be happy to try and answer them.
There are over 3 billion users and over 7 billion places on the platform.
To suggest that each and every place should be ripped is an outrageous thought if you take that into consideration. Especially considering most of those places are places made when a person makes an account on the platform. These are called Starter Places.
There are many places from 2006 that have been completely or almost lost to time due to either getting privated, or put under review. Ten years from now many places from the 2010's could meet the same fate, and considering the only copies of these games are on ROBLOX's platform, we should take them into consideration as well; Because games are still games, and they're just as important.
There are many games on the website that should definitely be preserved, and I think preserving ROBLOX content on The Spriter's Resource is a good way to go about this.
But, how would you rip from a ROBLOX game exactly?
Well, ROBLOX has a system called "uncopylocking" or open-sourcing, which allows a person to open-source their game's assets along with all of its versions on the platform, giving anyone the ability to do what they want with it.
(The red boxes that I drew show and indicate that a game is uncopylocked.)
ROBLOX has an API which is public so people can use it for getting certain assets on the platform or getting certain information. One of these APIs is called "Asset Delivery", this gives you the ability to download assets on the platform as long as you have their "Website ID". >> Example.
(You can also download an asset by using an unofficial ROBLOX Browser Extension, but using the API is the safest way to go about this if you don't want to risk anything.)
You may notice that by normal means, downloading the Decal will result in a blurry, slightly compressed copy. This is because you're attempting to download the Decal preview, rather than the Image itself.
If you do attempt to download the Decal instead of the Image, changing the file's format to .PNG won't work. To get the actual Image ID, you will need to either;
- Change the file's format to a .TXT and retrieve the Image ID within the <url></url> tag, and download the image from there.
- Open ROBLOX Studio and make a new place (File >> New), then insert a Decal (or any instance that has a "Texture" field) instance and insert the Decal ID into the "Texture" field. Doing so will give you the Image ID, which is the original version that was uploaded to the website.
A more tedious, unrecommended way to download the Image would be...
- Put the Decal instance on a Part and insert the Decal ID into the "Texture" field, then right click on the Part's instance in the Explorer tab and click "Export Selection...". You will get an .OBJ and .MTL file along with a file called "Part2Tex", this is the texture file that you obtain after exporting. If you were to plan on exporting any other texture this way, make sure you change the file name of the previously exported texture. Otherwise, it will get overwritten with the next export.
...You can tell this is unrecommended by how long that block of text was.
You can find ROBLOX's list of APIs here and find the Asset Delivery API that way, or you could use this sub-domain link (note that you might need a ROBLOX account to use some of them). >> https://assetdelivery.roblox.com/v1/asset/?id=ASSETID&version=VERSIONNUMBER
The ASSETID text is where you put a Website ID. This can be used for games, models. images, etc, and the VERSIONNUMBER text is where you put the version you wish to download. 0 and the last version is considered the latest version, while any number inbetween that would be different versions. 1 could be considered the earliest version possible.
If you managed to find the Image ID and download it using the Asset Delivery API, the result will be the original version of the Decal image mentioned earlier.
The resolution is smaller, but it's the intended resolution. This is the result you should get, as it's the original.
Hurray! It worked!
I'm aware that OCs are definitely a concern, that's why I suggest only ripping from games that have a significant amount of visits, have original elements and have been uncopylocked. There aren't a whole lot of games that have all three of these checked off, but each and every one of them that do should be preserved if possible.
I tried answering as many questions as I could in this post, but because this is a completely different field that nobody has really tried to do before to my knowledge, I'm sure there are plenty of other questions that need to be answered too. If there are any, I would be happy to try and answer them.