Do not remove the central control of your character. Just replace the presentation objects (armature/skin-mesh/physics mesh).
Have a look at the Demo file of the BGE Guide to Characters. It shows one way to do a character LOD.
There are much more options.
*** Attention many details ***
You can go to the extreme, that you can even remove the object from the scene. Then you can perform an “out-of-sight” processing (behavior LOD). This means you simulate a simplified behavior of one or more objects that are not visible. You can even simulate a simplified model of a city or world.
Imagine following:
Your character met an NPC in your game. You can see the NPC how it moves, with all this little details (high detail level). Lets say you give this NPC a medallion (e.g. via a trade). The NPC continues its journey, goes to a town and trades the medallion wit another NPC.
You can see when he goes how the presentation details decrease from high detail to low detail to nothing (lowest presentation detail).
What happens with the logic?
As long as the NPC is near (the camera) the NPC logic can interact with the character in detail (specific: he can take the medallion from you, pay you, talk to you). He can give the medallion to someone else, while you are watching.
Static behavior
What happens if you run away until he is not visible? Can he still give the medallion away? With pure presentation LOD, yes because the behavior does not change on the distance.
The advantage is, the game world continues to live without you watching all the details.
The disadvantage of that is, the behavior of each NPC (and other interactive entities) in the game eat processing time even when not visible.
Occluded behavior
This is (sort-of) what you did.
You removed the complete NPC after he is out of sight: In that case there is no behavior = no out-of-sight processing.
Advantage: Much less behavior to process
Disadvantage: The world out-of-sight freezes (because it does not exist as long it is not visible)
Behavior LOD
With that you can get the benefits of both approaches: a living world, many interactive entities, managable processing time. But similar to LOD it is complex.
How to do that:
When an entity (e.g. NPC) is near it can process all the detailed behavior you expect it to do (e.g. speak, run, hunt, deal)
When an entity is not that near some of the behavior can be simplified or completely skipped (e.g. speaking). Simplification means, the entity does not process all sub-steps.
[There is even a difference when the NPC is dealing with your character and dealing with other NPCs]
Example
detailed dealing:
- greetings
- offer
- re-offer
- …
- agreement
- money exchange
- good exchange
- leaving
simplified dealing:
- money exchange
- good exchange
You just set the result of an action, rather than performing the action.
Remember the philosophical question: If in a forest a tree falls, and nobody is there - does it make noise? In a game no, there is not even a tree. But when you visit the forest the next time … the tree is lays down ;).
Back to the NPC example: The NPC walks a long way to a town and gives the medallion to another NPC.
You did not watch him doing, but when you met him on his way, you expect he still has the medallion.
When you met him after he visited the town, you expect him that he does not has the medallion.
You met the “another NPC” in town, and you expect it to have the medallion (after he got it).
The NPCs did all these things without you watching. And still you could watch the (detailed trade).
[Yes, the result might be different when watching and when not watching]
Maybe all of this is not what you want.
I still hope you got the idea.