Approximately, how many MonoBehaviours go in to, say, a normal mob?
I grabbed a random mob prefab from the current build (since I have it on my home machine right now), here's the component list:
Mesh Renderer
Mesh Filter: [none]
Tk 2d Sprite
Tk 2d Sprite Animator
(those four come bundled together, tk2d is a 3rd party sprite handling library we grabbed since the project started before native 2d support really took off)
Audio Collection - our mobs own their sound collections
World Object - base component inheriting GameObject that we use for most in-game world-contextual objects
Character Module - component for anything that has sentience (self-movement and physics mostly)
Sprite Module - Where we control worldObjects' sprite changes (new animation clips/states)
Combat Module - component for any objects that can deal/take damage
Ability Module - component handling our ability system: any kind of "action" a combatant can perform (things like "meleeAttack, fireball, laser, etc")
AIControl Module - lets a tweakable FSM control this object's actions (player character has a playerInput module here instead)
And that's it.
All of those components have custom editors (the AI FSM even has its own visual scripting tool we wrote custom) and aren't light on the actual backing code.