$ npm start > ast-vm@1.0.0 start > node cli.js --- FSO Engine --- [1] Reading source intent from game_idea.txt... [2] Compiling via local cluster... > [3] Artifact saved to game_idea.md. Booting VM... ======================================== [SYS] Live Control Plane active on http://localhost:8080 You are on a beach. To the north is a jungle, and to the east is a cave. > look You are on a beach. To the north is a jungle, and to the east is a cave. Visible items: COCONUT > get coconut Taken. > [ENV EVENT]: A stray wooden boat washes up onto the beach, carried by the tide. look boat [SYSTEM] You look the boat... > The external environment responds: It is covered in barnacles and smells of salt. It belongs to the Ocean Service, not the VM! > search You sift through the sand and find a rusty key! > take key Taken. > north You are in a dense jungle. To the south is the beach, and to the west is a clearing. > west You are in a clearing. To the east is the jungle. > look You are in a clearing. To the east is the jungle. Visible items: MAP > take map Taken. > east You are in a dense jungle. To the south is the beach, and to the west is a clearing. > look You are in a dense jungle. To the south is the beach, and to the west is a clearing. Visible items: SWORD > take sword Taken. > south You are on a beach. To the north is a jungle, and to the east is a cave. > east You are in a dark cave. To the west is a passage. > look You are in a dark cave. To the west is a passage. > search You search the area but find nothing new. > west You are in a narrow passage. To the east is the cave. > look You are in a narrow passage. To the east is the cave. > exit You unlock the chest! Inside is a treasure map! You are on a beach. To the north is a jungle, and to the east is a cave. > [SYSTEM] VM Halted. State preserved on disk. $ [SYSTEM] VM Halted. State preserved on disk. $ cat game_idea.md ```fso-state VAR INVENTORY ARR '["COCONUT","KEY","MAP","SWORD"]' VAR room_beach_DESC STR "You are on a beach. To the north is a jungle, and to the east is a cave." VAR _SPAWNED_room_beach_COCONUT BOOL "true" VAR room_beach ARR '[]' VAR _SPAWNED_room_beach_KEY_HIDDEN BOOL "true" VAR room_beach_HIDDEN ARR '[]' VAR _FINDTEXT_KEY STR "You sift through the sand and find a rusty key!" VAR VERB STR "EXIT" VAR ARG1 STR "" VAR ARG2 STR "" VAR room_jungle_DESC STR "You are in a dense jungle. To the south is the beach, and to the west is a clearing." VAR _SPAWNED_room_jungle_SWORD BOOL "true" VAR room_jungle ARR '[]' VAR room_clearing_DESC STR "You are in a clearing. To the east is the jungle." VAR _SPAWNED_room_clearing_MAP BOOL "true" VAR room_clearing ARR '[]' VAR room_cave_DESC STR "You are in a dark cave. To the west is a passage." VAR room_passage_DESC STR "You are in a narrow passage. To the east is the cave." VAR _SPAWNED_open_success_TREASURE_MAP BOOL "true" VAR open_success ARR '["TREASURE_MAP"]' ``` ```fso-code LBL start_game GLOBAL "HELP" handle_help JMP room_beach LBL room_beach ENV_FLUSH DESC "You are on a beach. To the north is a jungle, and to the east is a cave." EXIT "NORTH" room_jungle EXIT "EAST" room_cave OBJECT "COCONUT" SEARCHABLE "KEY" "You sift through the sand and find a rusty key!" ACTION "OPEN" handle_open AWAIT LBL room_jungle ENV_FLUSH