I'd like to have a pause at layer option, to change filament colors or insert a metal part to be encapsulated.
It's in the sailfish firmware to do on the fly. And maybe it's a machine / firmware thing to do this anyway.
Kisslicer is doing all the Maths to produce Gcode. Every printer has it's own driver (like Repetier-Host or ReplicatorG) to import that Gcode and do printer specific stuff.
But when you want to do it on a specific spot (so not on the fly) I can imagine that you insert a Gcode command somewhere to pause the printer. Maybe you can use the Gcode field *N layers for that (but it's multiplied then). Or insert it manually in a text editor. Or Jonathan has to make another Gcode field option to only insert Gcode at a specific layer.
For a specific pause on a given layer you have to insert Gcode specific for your printer,
for just a Pause I can imagine it's just like this (Makerbot style):
G162 X Y F2500 (home XY axes maximum)
G161 Z F1100 (home Z axis minimum)
G4 P300000 (wait 5 minutes, so you can change filament (but not operate the extruders I think)
After 5 minutes it returns to continue printing.
To change filament (single extruder)you can maybe add some commands to reverse and extrude, like:
G162 X Y F2500 (home XY axes maximum)
G161 Z F1100 (home Z axis minimum)
G92 E0
G1 F1200
G1 E-10 (reverse 10mm filament)
G92 E0
G4 P120000 (wait 2 minutes, so you can remove the old filament and feed the new filament)
G92 E0
G1 F1200
G1 E10 (feed 10mm filament to be sure the extruder is primed well)
G92 E0
G4 P120000 (wait 2 minutes, so you can remove ooze)
and return printing.
It's just a suggestion, you have to find out yourself which commands your printer needs. a lot of this will be in your specific startGcode I suppose.
As also this Gcode is machine specific I assume it's not a general feauture to expect in Kisslicer, but I add it to the list.
Bart