The game is defined in a single file cloak.acl, which then merges in the library definitions. Many thanks to Stuart Allen for providing the popup annotations.

#!/usr/local/jacl-1.5/bin/jacl

# -----------------------------------------------------------------------------
    constant  GAME_VERSION 1
# -----------------------------------------------------------------------------

{+intro
clear
centre "<h1>CLOAK OF DARKNESS</h1>"
write "<p>^^Hurrying through the rainswept July night, you're glad to see the "
write "bright lights of the Opera House. It's surprising that there aren't more "
write "people about but, hey, what do you expect from a quick port of a cheap "
write "demo game...?^^"
look
}

location foyer : foyer
 short the "foyer of the Opera House"
 north foyer
 south bar
 west  cloak_room

{look
write "<p>You are standing in a spacious hall, spendidly decorated in red "
write "and gold, with glittering chandeliers overhead. The entrance from "
write "the street is to the north, and there are doorways south and west.^"
}

{movement
if destination = foyer
   write "<p>You've only just arrived, and besides, the weather outside seems "
   write "to be getting worse.^"
   break
endif
break false
}

location cloak_room : cloak_room
 east       foyer

{look
write "<p>The walls of this small room were clearly once lined with hooks, "
write "though now only one remains. The exit is a door to the east.^"
}

object hook : small brass hook peg
 has SURFACE
 short      a "small brass hook"
 capacity 25

{examine
write "<p>It's just a small brass hook, "
if cloak(parent) = hook
   write "with a cloak hanging on it.^"
else
   write "screwed to the wall.^"
}

location bar : bar
 has        DARK
 short      the "foyer bar"
 north      foyer

{look
write "<p>The bar, much rougher that you'd have guessed after the opulence of the "
write "foyer to the north, is completely empty. There seems to be some sort of "
write "message scrawled in the sawdust on the floor.^"
}

{movement
if here has DARKNESS
   if destination != foyer
      write "<p>Blundering around in the dark isn't a good idea!^"
      set bar(blundered_in) + 1
      break
   endif
endif
break false
}

object message : message sawdust floor
 short      a "scrawled message"

{read : examine
if bar(blundered_in) < 2
   write "<p>The message, neatly marking in the sawdust, reads...^^"
   write "<p>~You have won!~^"
   points 50
   execute "+game_over"
else
   write "<p>The message has been carelessly trampled, making it difficult "
   write "to read. You can just distinguish the words...^^"
   write "<p>~You have lost.~^"
   execute "+game_over"
endif
}

{+eachturn
if here hasnt OUTDOORS
   move north_wall to here
   move south_wall to here
   move east_wall to here
   move west_wall to here
endif
}

object kryten : myself self me
 has        ANIMATE
 short      name "yourself"
 quantity   42
 parent foyer
 player

{examine_override
execute "+inventory"
}

object cloak : handsome dark black velvet satin cloak
 has        WEARABLE WORN
 short      a "velvet cloak"
 long "Lying on the ground is a handsome velvet coat."
 parent     kryten
 mass  5

{examine_override
write "<p>A handsome cloak, velvet trimmed with satin, and slightly spattered with "
write "raindrops. Its blackness is so deep that it alsmost seems to suck light from "
write "the room.^"
}

{drop
if here != cloak_room
   write "<p>This isn't the best place to leave a smart cloak lying around.^"
   break
else
   proxy "hang cloak on hook"
endif
}

{insert_on_hook_override
write "<p>You hang the cloak on the hook.^"
move cloak to hook
ensure bar hasnt DARK
if hook hasnt SCORED
   points 50
   ensure hook has SCORED
endif
}

{take_override
write "<p>You take the cloak back off the hook.^"
move cloak to player
ensure bar has DARK
}

constant    blundered_in    1

grammar hang *held on *present >insert_on

{+game_over
write "<P>^"
centre "<h2>---[THE END]---</h2>"
if interpreter = TACL
   write "^"
   execute "+score"
endif
endgame
loop
   if noun3(parent) = player
      set noun3(parent) = limbo
   endif
endloop
set player(parent) = prologue
look
}

{+dark_description
write "<p>You are in complete darkness.^"
}

{+no_light
write "<p>It's very dark in here. Perhaps you should just leave before you "
write "do any damage.^"
set bar(blundered_in) + 1
set TIME = false
}

{+title
if player has SITTING
   write "<p>(sitting)</p>^"
endif
}

{+styles
write "<style>"
write "  <!--"
write "  P {  font-family: Helvetica, Arial, Sanserif; "
write "       color: black; font-size: 12pt}"
write "  TD { font-family: Helvetica, Arial, Sanserif; "
write "       color: black; font-size: 12pt}"
write "  A {  font-family: Helvetica, Arial, Sanserif; "
write "       color: white; font-size: 10pt}"
write "  H1 { font-family: Times, Garamond, serif; "
write "       color: white; font-size: 24pt}"
write "  H2 { font-family: Times, Garamond, serif; "
write "       color: black; font-size: 12pt;
write "       font-weight: bold}
write "  TH { background-color: #777777;
write "       font-family: Helvetica, Arial, San-serif; "
write "       font-weight: bold;"
write "       color: black; font-size: 16pt}"
write "  -->"
write "</style>"
}

{+header
write "Content-type: text/html"
write "Expire: -1^^"
write "<HTML><HEAD>
write "<TITLE>Cloak of Darkness</TITLE>"
execute "+styles"
write "</HEAD><BODY bgcolor=~blue~>"
write "<FORM NAME=~GameForm~ METHOD=get ACTION=~" $url "~>"
}

{+footer
execute "+exits"
write "<BR>"
prompt
execute "+score"
write "</FORM>"
write "</BODY></HTML>"
}

#include "verbs.library"