I have seen this so many times, a Roleplay game, the user types :pants me 123456 and lo and behold: the user gets a weird picture of a random Kpop star.
The problem is that admin command utilities creators almost never get the pants/shirt section correctly, it used to be that the texture of the pants/shirt/anything else was ASSETID-1, because Roblox has grown so much, assets are uploaded so quickly that it can range between -1 to -10! this means that once trying to get the asset itself from a user-defined number is much harder.
How do I solve this?
There is a very common misconception that you have to create a proxy, use some scary web-APIs just to get the texture-ID of an asset, but that is not the case! I am going to show you a very simple script to do it and elaborate on how it works.
The script
local AssetID = 607785314 -- https://www.roblox.com/catalog/607785314/ROBLOX-Jacket
local InsertService = game:GetService("InsertService")
local Asset = InsertService:LoadAsset(AssetID)
-- Now, the first child of Asset is the exact Shirt from the catalog id (http://www.roblox.com/asset/?id=607785311)
This can work with everything, and can also insert every asset to the game (that you own), including Plugins and Free Models.
So now it’s time to see if you ever used the old method of ASSET-1 and correct this mistake.
Hope I taught you something new
Goldy.