Why does it not kick me?

Your mainscript is a regular script, it does not need that, modules have to return itself at the end, it’s how they work

MainScript should be a module, not a ServerScript.

No, since the MainScript do not need using multiples features the module script have

It should most certainly be, if you’re trying to require it. Even in your own comments, you refer to it as the “MainModule” (correctly).

Again even when I edited, still not.

I think the issue is my other script were a require inside it there is no id.

Why are you requiring nothing in setup.Work = require()? That’s why it’s erroring, you didn’t specify a modulescript to require, and i presume it’s the same thing for your Requires script

One of the issues is you’re trying to require setup when it isn’t even a module. You’re getting a reference to a script instance, not its environment.

Setup should be a ModuleScript. Require that instead, if MainScript is supposed to be running at all times.

I am confused right now to who to listen.

Under MainScript, you use the following line:
local setup = game.ServerScriptService.Mithic_Public.Settings.setup
…which returns the script instance. For it to work the way you want to, you should write it like so:
local setup = require(game.ServerScriptService.Mithic_Public.Settings.setup)
But theres still a problem. setup isn’t a ModuleScript, and you can’t require non-modulescripts. Create a new ModuleScript, and move the code from setup into it.

Since MainScript is a ServerScript, it should automatically run. This should accomplish your goal.

New error. Kinda annoying.

ServerScriptService.Mithic_Public.Sertings:19: attempt to index nil with Mithic_Public

I have no setup scripts, do you mean Settings? setup is my variable used in Settings. And settings is a moduleScript.

Sorry, I see what you’re doing now. Yes, you should require Settings, which should be a ModuleScript. Then, after you require it, you can do something like this:

local settings = require(...) -- path to settings
local setup = settings.setup

Provided that you do this in MainScript and you turn Settings into a ModuleScript, it should work. Based on the first two screenshots, it isn’t a ModuleScript, but you might’ve changed it already. I wouldnt know.

Alright, let me see really quickly if it’s kick me.

Still not. The error:

What does MainScript look like so far?

Here a little screenshot:

Are you here or no? Hello? Your AFK or something?

Sorry, once again I misread your script. You don’t need to do local setup = settings.setup, just go ahead and do local setup = require(...). I thought that Settings returned a table, which contained setup.

What do I put in the setup require?