Is there a more efficient way of overriding packages?

I want to override the player’s package with the old R15 blocky rig, I have an idea in mind that replaces each part’s mesh, but I feel as if there is a more efficient way than this. I don’t wanna sound bad but naming each part would be tedious.

Is there anywhere I could start?
Thanks!
-Erwin

the old R15 blocky rig is basically the R6 rig.
you can achieve this by going to Game Settings > Avatar > Avatar Type > R6
Screenshot_6


Choose R6 as that is the blocky rig.
and save ofcourse.

1 Like

Personally, I don’t know if it’s optimal or not, but what I do is
image
put a model I want each character be based off of, in starterplayer as shown above. (Note the name must be StarterCharacter)

and then I simply have a server script, connect to PlayerAdded, and CharacterAdded
that looks somewhat like this.

local Players = game:GetService("Players")
local Cache = {}
local Valid = {"Shirt", "Pants", "Accessory", "BodyColors"}

local function CharacterAdded(Player)
	local Character = Player.Character
	local Hrp = Character:WaitForChild("HumanoidRootPart", 100)
	local Humanoid = Character:WaitForChild("Humanoid", 100)

	if Cache[Player] then
		for _, v in pairs(Cache[Player]:GetChildren()) do
			if table.find(Valid, v.ClassName) then
				v:Clone().Parent = Character
			elseif v.Name:lower() == "face" then
				local Face = Character:FindFirstChild("Head") and Character.Head:FindFirstChildOfClass("Decal") 
				if Face then
					Face:Destroy()
				end
				v:Clone().Parent = Character:FindFirstChild("Head")
			end
		end
	end
end

local function OnJoin(Player)
	local Character = Player.Character or Player.CharacterAdded:Wait()
	if Player.UserId > 0 then
		Cache[Player] = Players:GetCharacterAppearanceAsync(Player.UserId)
	end
	CharacterAdded(Player)
	Player.CharacterAdded:Connect(function() CharacterAdded(Player) end)
end

for _, Player in pairs(Players:GetPlayers()) do
	OnJoin(Player)
end
	
Players.PlayerAdded:Connect(OnJoin)
1 Like

Sorry for the late response, thanks you two!

1 Like