Should I use configurations or ModuleScriprs?

Hello everyone! I’m currently making a Persona style turn based rpg in roblox. Its currently going well, as I’ve gotten a small combat prototype ready. However, I’m currently wondering about what’s better to use for making things like items and skills, which are currently in a configuration. I think I could also use modulescripts with OOP for things like skills-things like Skill.new and that sort. I have 3 questions:

  1. Is using ModuleScripts more neat? I currently have all skill configurations in the player or an enemy that must use it, but if I made another entity class to hold skills and linked them to a table of skills, would that be neater than a more object based approach?
  2. Is using ModuleScripts gonna be easier in the long run? Currently configs aren’t a pain at all.
  3. Are ModuleScripts more performant than having a billion configurations, all with IntValues, StringValues, and more around? I currently use configurations for a LOT of stuff (cooldowns, skills, etc) and am wondering if that impacts performance.

Using configurations has been fine so far, but I’m just wondering right now. Any help appreciated!

1 Like

Using modules would most likely save on memory usage and maybe make your code easier to write. using modules may also be slightly easier to modify and move through aswell. (You don’t have to manage and sort through hundreds of instances, just look through code)

If you like a hierarchy style view, you could write a plugin that views ModuleScripts like that.

if the skill type can be easily created then you probably can just use scripts and manually create them. Module scripts and OOP are complicated, if your app is complicated, module scripts are the way to go, if not, no need.

  1. yes
  2. depends; i can see other scripts trying to read those skills might be a hassle with so many instances
  3. yes