How would you store character info in a battlegrounds game?

What is the best way store elements in a battlegrounds game? For example, the knight has different animations and different weapons than the archer. Would you store each animation and weapons in something like server storage or would you put all of the data into module scripts that is in replicated storage or is there a better way?
Example 1:
Capture
Example 2:
Capture1
Inside the Module Script

local knightData = {}

knightData.name = 'Knight';
knightData.health = 100;
knightData.speedMultiplier = 1;

knightData.normalMovesNum = 4;
knightData.normalAttackDamage = 10;

knightData.ultMovesNum = 4;
knightData.ultPointsRequired = 100;
knightData.ultAttackDamage = 15;
knightData.ultDuration = 30;

knightData.moveset = {
	one = {
		name = '',
		damage = 0,
		cooldown = 0,
		hitboxType = '',
		hitbox = Vector3.new(0,0,0);	
	}
}

knightData.ultMoveset = {
	one = {
		name = '',
		damage = 0,
		cooldown = 0,
		hitboxType = '',
		hitbox = Vector3.new(0, 0, 0);	
	}
}

return knightData

Is there a better way to store the data or not?

Each class should have its own player model.
In Server Storage, make models for all the classes (possibly humanoid models since they’re gonna be playable models) and put all the data inside (including scripts).

2 Likes