The enemy editor has an option to make enemies invisible, that does not cloak them, but makes them fully invisible. It would be nice to add a sub-option 'Amulet reveals invisibility), that can be used on a per enemy basis. Further 'Require Amulet Level [ level ] ' would be nice combined with this.

If that's too tedious, perhaps a quest rule 'Invisible Enemies are Cloaked' would work. If that's ticked (default), then invisible enemies have a silhouette. With it off, they're just invisible.
That would also be useful as a compatibility rule for old quests, made before enemies were cloaked.

I personally prefer the enemy editor though, as it would allow setting enemies on a per-enemy basis, and the style. The more difficult the enemy, the higher level amulet required; plus at earlier stages in a game, cloaking would be possible to give the player a clue as to what kind of enemy they may be facing, but as the game gets tougher, the invisibility becomes full; and requires the amulet; then requires a better amulet later.

I'm fairly certain all of that would be possible without much changing of the internal structure, as cloaking, and invisibility are already there. You'd merely need to incorporate additional fields in the enemy datatype structure to store those bit flags.

P.S. I know that I can ghost enemies to make them invisible, but that wastes many FFCs.