How are blueprints compiled and what happens to unused nodes from a parent when using a child BP?

I’m curious to know how a BP compiles for final end game production as I begin to refine my basic “templates” for world objects, like how much memory would a replicated BP use.

Say for example sake I have an enemy parent that has every enemy movement and ability contained within a separate function. The functions that are called are determined by an enum that is set in the child begin play. If it’s monster 10, set to monster 10. This will only execute the monster 10 part of the blueprint/construction script that is contained within the parent, but will it and every other enemy spawned be using unnecessary memory from the other functions that don’t get called?

In another example this could be condensed into just one enemy BP with an exposed enum to set the type of enemy. Same question again, will this blueprint be replicated in its entirety even though 80% of the BP isn’t in use by this particular actor?

This all stems from trying to create a very user friendly system that will allow me to build the bulk of the game (minus dialogue and cutscenes) via drag and drop. If the non relevant code isn’t compiled I can condense all my enemy types into one or two BP’s, and further more I could expand it elsewhere to items and other world objects, which would be nice.

So what’s the deal with unused code guys?