Performance: Should a Humanoid Enemy have its own script or should there be 1 script controlling all the enemies alike

I am currently working on a FPS game and I want the performance to be as good as it can be, thus i ask.

What i mean is: Is it better for all of the enemies to have their own scripts inside of them, or should there be 1 script (in ServerScriptStorage) that controls all of the enemies using for loops?

Personally, I believe having a script in every individual enemy is bad for numerous reasons, not just performance wise. Without some sort of centralised script controlling all enemies, you can lose control and everything just gets messy. Performance realistically would only be impacted if you duplicated multiple expensive functions into all enemies, however since your enemies only control themselves you’ll never be able to optimise large functions as the enemies don’t interact with the others.

If you are going to create a system like this, I believe you would be best off using an Object Oriented approach, using a single script to control enemies.