Class system Help!

Hi, I’m vrs2210 and I’m making a small arena type fighting game, but I want it to have classes that can be upgraded, and each upgrade gets a better looking weapon than before, and I can’t figure out how to do this without making a 1000 line script. So can anybody explain how I can make this possible?

1 Like

I’d say making each class an IntValue, and maybe storing it inside a folder within the player.

local class = Instance.new("IntValue")

And add an XP value to each value, for example:

local class_xp = Instance.new("IntValue", class)

A very simple approach, you probably thought about this already.

By class, I actually mean different appearances, like warrior and mage and stuff, but I can’t figure it out without having an extremely big module script to store each apperance.

I think there was a way using humanoid descriptions, I’m not really sure but it allows you to store certain appearances. I’m not sure if it’ll work while using custom accessories, if it doesn’t, can’t you store the appearances and apply them when needed?

Humanoid descriptions only use Roblox’s hats and not custom ones, and with the appearances, how would I apply them, via startercharacter which will need the character to get reloaded every time, manual work which will be god awful annoying, or anything else?

You could always store the accessories you’re using in a Folder, and use Humanoid:AddAccessory() and Humanoid:RemoveAccessories() to apply them, I made a morphing system with this once, and it shouldn’t be that long.
For example:

local wizard_apr = server_storage.WizardApr:GetChildren()
--wizard_apr being a folder that stores the accessories
for i, v in pairs(#wizard_apr) do
    if v:IsA("Accessory") then
        hum:AddAccessory(v)
    end
end

I see, I’ll try this out, but in the future in my game I’m going to be using custom models, how do I position them?

Do you mean welding models instead of accessories? I strongly suggest using accessories. If you have to use models, it’s a bit out of my knowledge, you could always weld the model to one of the character’s body parts, and use the position of the attachments of said part, for example, the head has a HatAttachment.

Well, thanks for your help, I’ve decided to ditch the meshes idea and just stick with accessories, since they’re so many of them by now. Have a good day!

Remember you can make your custom accessories using meshes, if you need a brief rundown on how to I can help you. Using accessories to create appearances is excellent because they automatically attach to the character when you add them to the humanoid.

Oh wait yeah i forgot about this, you can put a mesh in an accessory part and position it, in a weird way but it’ll work.

You can position custom accessories very easily by inserting an attachment inside the accessory’s handle that matches the name of the character’s attachment you want the accessory to weld on.
For example, imagine I have a custom hat accessory, obviously, it’s composed of the accessory object and its Handle. If I want the hat to weld to the Head of my character, I just have to insert an attachment inside the Handle and name it HatAttachment (or whatever the attachment name is). My trick is to duplicate the Head, remove all the children except the middle attachment (basically just welding the head clone to the head), set the head’s clone as the Handle, and manually weld the mesh to the head clone, that way you can position the mesh as you want and it’ll automatically position itself when applying the accessory. I know I explain badly, but this should help.