Prints Not Being Fully Cancelled

Sorry, doesn't post 14 from foosel signify that the default lines that I have (with the snippets) are equivalent to those in post 13?

If I add code to move the head out of the way or M117 to display a message, the print still won't be cancelled according to the printer's "system"

There is actually no special end command for a print.

After print is finished, usually, the printhead is moved out of the way, the heaters are shut down, and in addition a message can bes send the the print is finished.

For cancelling it could look this way:

; relative moving
G91
; move head 10mm up
G1 Z10 F800
; absolute moving
G90

; move print head out of the way
G1 X0 Y0 F3000

; disable motors
M84

; disable all heaters
{% snippet 'disable_hotends' %}
M104 S0 ; Set Hotend to 0

{% snippet 'disable_bed' %}
M140 S0 ; Set Bed to 0

;disable fan
M106 S0

; send message to printer.
M117 Print is cancelled

You also can take the end code that your slicer uses.

The commands M75/M76/M77 are used for starting, pausing and stopping the print job timer. OctoPrint doesn't send any of these by default as they are not universally supported, but you can try adding them to the respective scripts.

Some firmware will auto-start the print job timer when a blocking heating command is sent, which is quite common for the start of a print job, but it likely can't guess when it is cancelled (this is often when everything cools down). Or maybe Creality broke it, who knows.