???Labyrinth, 17 bytes, cracked by totallyhuman
[##!]
[\X_]
@-99@
Output is decimal and linefeed-separated.
Explanation
[]
and letters aren't commands in Labyrinth, so they act as walls and they might as well be spaces:
##!
\ _
@-99@
The final @
is also a red herring, because the control flow never gets there. The main program is just the following loop:
# Push the current stack depth. This is i-1 (where i is the number printed in the
current iteration).
# Push the current stack depth. This is i.
! Print i as a decimal integer.
_99 Push 99.
- Subtract it from i-1. This gives 0 iff we want to terminate the program. In that
case the IP moves to the @, otherwise it continues the loop.
\ Print a linefeed.
@
terminates the program.