Skip to content

Instantly share code, notes, and snippets.

@aptitudex
Created February 15, 2017 23:37
Show Gist options
  • Save aptitudex/1321cd0df63b1df8a1d72f87a47fbf28 to your computer and use it in GitHub Desktop.
Save aptitudex/1321cd0df63b1df8a1d72f87a47fbf28 to your computer and use it in GitHub Desktop.
Pain
' SPLASH TEXT
PRINT " _ _ __ _____ _ _____ "
PRINT " | | ___ _ __ _| | ___ / _| |_ _| |__ ___ | __| (_) ___"
PRINT " | | / _ \| '__/ _` | / _ \| |_ | | | '_ \ / _ \ | |_ | | |/ _ \/ __| "
PRINT " | |__| (_) | | | (_| | | (_) | _| | | | | | | __/ | _| | | | __/\__ \"
PRINT " |____\___/|_| ___,_| \___/|_| | | |_| |_|\___| |_| |_|_\___| |___/"
PRINT " "
PRINT " E D I S O N E D I T I O N "
' INTRODUCING THE GAME
turnNumber = 0
ud = 0
lr = 0
TIMER 1000, [w1]
WAIT
[w1]
_
PRINT "Welcome to Lord of The Flies, Edison Edition."
TIMER 2000, [w2]
WAIT
[w2]
PRINT "This game was written, lazily, in Just BASIC v1.01 in February of 2017. It tries very hard to emulate the likes of early floppy games like Zork."
TIMER 1000, [w3]
WAIT
[w3]
PRINT "Lord of The Flies- Edison Edition will be a little different every time you play. Certain events are set on certain turns,"
PRINT "so you'll need to be in the right place at the right time to catch certain events."
PRINT " "
[o1]
[intro]
' LOOK DOWN HERE
PRINT " _______________________"
PRINT "| OPTIONS |"
PRINT "| |"
PRINT "| [1] instructions |"
PRINT "| [2] play |"
TIMER 1000
INPUT "INPUT: "; i
'
IF i=1 THEN
' instructions
PRINT "INSTRUCTIONS"
TIMER 1000
PRINT "GIST"
PRINT " "
PRINT "Lord of The Flies, Edison Edition is a text-based game. Everything you type will be a number that corresponds to an action."
PRINT "Your goal: explore, laugh, survive, and maybe learn a bit."
PRINT " "
TIMER 1000, [w4]
WAIT
[w4]
PRINT "SPECIFICATIONS"
PRINT "Lord of The Flies, Edison Edition is very time-based. On every turn, you will be given a clock:"
PRINT "TIME: x"
PRINT "The game doesn't really have a set timeframe. A character might say ''meet me on the 12th'', which just means that they'll be in a specific location on the 12th turn."
PRINT "There are also obligatory educational bits throughout the game, but I hope they aren't too obtrusive."
PRINT " "
TIMER 1000, [w5]
WAIT
[w5]
PRINT "META"
PRINT "LoTFEE (ouch) is not a perfect game by any means. Firstly, it is written in Just BASIC, an archaic language that nobody should use for any purpose"
PRINT "other than education. Secondly, you can mess things up by pressing too many buttons too quickly depending on the situation. I have not and cannot, due to time constraints,"
PRINT "completely debug this game. As such, DO NOT TOUCH YOUR KEYBOARD until you see an OPTIONS box."
PRINT " "
TIMER 1000, [w6]
WAIT
[w6]
PRINT "HELP"
PRINT "If you have a question about the game, message ELIZABETH @ any of the following platforms:"
PRINT "EMAIL: elizabeth@ziemer.net"
PRINT "GITTER: aptitudex"
PRINT "HANGOUTS: samtheaibo@gmail.com"
PRINT "DISCORD: whitehat#6588"
PRINT " "
PRINT "If you find a bug, please report it at https://github.com/aptitudex/lordoftheflies/issues"
TIMER 1000, [w7]
WAIT
[w7]
PRINT "CREDITS"
PRINT "Just BASIC by Shoptalk Systems"
PRINT "GitHub, for being an amazing resource"
PRINT "Forum users tenochtitlanuk, tsh73, and bplus for being a huge help"
PRINT "And you, for being there"
GOTO [intro]
ELSE
IF i=2 THEN
GOTO [gamestart]
ELSE
GOTO [intro]
END IF
END IF
' THE GAME STARTS HERE
' ====================================================================
[gamestart]
CLS
TIMER 2000, [w10]
WAIT
[w10]
PRINT "|| Welcome to THE ISLAND."
PRINT "|| The boat that you all took was rocking softly on the seas for hours. The 8th Grade's final hurrah, if you will."
PRINT "|| You should have noticed something was wrong when the Captain ran across the boat, but you didn't think much of it. For one, you are a new"
PRINT "|| student and aren't entirely aware of class dynamic. For two, he could have just been going to get some coffee, or something."
PRINT "|| You were wrong, of course."
PRINT "|| The boat heaves on the waves and barrels forwards at an impractical velocity. Everything lurches. Yells."
PRINT "|| Then darkness."
PRINT " "
PRINT "Uugh. Dirty sand in your ears and nostrils. It doesn't help that your head is ringing- splitting, almost. And you can hear someone's voice, too."
TIMER 1000, [w8]
WAIT
[w8]
[cut1]
PRINT " ________________________________"
PRINT "| OPTIONS |"
PRINT "| |"
PRINT "| [1] get up |"
PRINT "| [2] lay down more, who even cares |"
PRINT "|| TURN "; turnnumber
TIMER 1000
INPUT "INPUT: "; i
IF i=1 THEN
' instructions
' getting up here
GOTO [room1]
ELSE
IF i=2 THEN
PRINT "Your head aches as it slams onto the ground."
GOTO [cut1]
ELSE
GOTO [cut1]
END IF
END IF
' ROOM ONE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! '
[room1]
turnnumber = (turnnumber+1)
PRINT "You heave yourself up off the ground. The headache, although pressing, seems to cease, at least slightly. Your vision doubles and straightens just as fast as you rub your eyes."
PRINT "No breaks. That's something. You get a chance to look around."
PRINT "All around you, and for miles to the WEST, is an enormous salt-and-pepper beach with dirt deposits here and there. Waves softly pound against the sand."
PRINT "Behind you, to the SOUTH, is the wreckage. The ship is a disaster- there are a few kids on the turf or plywood, laden with small scrapes but keeping a soft breathing pattern."
PRINT "To the EAST is a patch of thin forest."
PRINT "You look up, to the NORTH, to see a swath of taiga trees. The smell of smoke drifts towards your nostrils."
[cut2]
PRINT " _____________"
PRINT "| OPTIONS |"
PRINT "| |"
PRINT "| [1] NORTH |"
PRINT "| [2] SOUTH |"
PRINT "| [3] EAST |"
PRINT "| [4] WEST |"
PRINT "|| TURN "; turnnumber
TIMER 1000
INPUT "INPUT: "; i
GOTO [nseweng]
IF i=1 THEN
' instructions
' getting up here
GOTO [room1]
ELSE
IF i=2 THEN
PRINT "Your head aches as it slams onto the ground."
GOTO [cut1]
ELSE
GOTO [cut1]
END IF
END IF
[nseweng]
select case i
case 1
ud=(ud + 1)
case 2
ud=(ud - 1)
case 3
lr=(lr + 1)
case 4
lr=(lr - 1)
case else
print "Invalid input"
GOTO [cut2]
end select
pos$= ud; " "; lr
PRINT pos$
GOTO [movementengine]
[movementengine]
pos$= ud; " "; lr
'checks for location and sends player to assigned block. remember that every single block should send you back to cut2 after actions
IF pos$="1 0" THEN
GOTO [10]
ELSE
IF pos$="2 0" THEN
GOTO [20]
ELSE
IF pos$="3 0" THEN
GOTO [30]
ELSE
IF pos$="4 0" THEN
GOTO [40]
ELSE
IF pos$="5 0" THEN
GOTO [50]
ELSE
IF pos$="6 0" THEN
GOTO [60]
ELSE
IF pos$="0 0" THEN
GOTO [00]
ELSE
IF pos$="-1 0" THEN
GOTO [n10]
ELSE
IF pos$="-2 0" THEN
GOTO [n20]
ELSE
IF pos$="-3 0" THEN
GOTO [n30]
ELSE
IF pos$="2 1" THEN
GOTO [21]
ELSE
IF pos$="3 1" THEN
GOTO [31]
ELSE
IF pos$="4 1" THEN
GOTO [41]
ELSE
IF pos$="5 1" THEN
GOTO [51]
ELSE
IF pos$="6 1" THEN
GOTO [61]
ELSE
IF pos$="0 1" THEN
GOTO [01]
ELSE
IF pos$="-1 1" THEN
GOTO [n11]
ELSE
IF pos$="-2 1" THEN
GOTO [n21]
ELSE
IF pos$="-3 1" THEN
GOTO [n31]
ELSE
IF pos$="1 2" THEN
GOTO [12]
ELSE
IF pos$="2 2" THEN
GOTO [22]
ELSE
IF pos$="3 2" THEN
GOTO [32]
ELSE
IF pos$="4 2" THEN
GOTO [42]
ELSE
IF pos$="5 2" THEN
GOTO [52]
ELSE
IF pos$="6 2" THEN
GOTO [62]
ELSE
IF pos$="0 2" THEN
GOTO [02]
ELSE
IF pos$="-1 2" THEN
GOTO [n12]
ELSE
IF pos$="-2 2" THEN
GOTO [n22]
ELSE
IF pos$="-3 2" THEN
GOTO [n32]
ELSE
IF pos$="1 3" THEN
GOTO [13]
ELSE
IF pos$="2 3" THEN
GOTO [23]
ELSE
IF pos$="3 3" THEN
GOTO [33]
ELSE
IF pos$="4 3" THEN
GOTO [43]
ELSE
IF pos$="5 3" THEN
GOTO [53]
ELSE
IF pos$="6 3" THEN
GOTO [63]
ELSE
IF pos$="0 3" THEN
GOTO [03]
ELSE
IF pos$="-1 3" THEN
GOTO [n13]
ELSE
IF pos$="-2 3" THEN
GOTO [n23]
ELSE
IF pos$="-3 3" THEN
GOTO [n33]
ELSE
IF pos$="1 4" THEN
GOTO [14]
ELSE
IF pos$="2 4" THEN
GOTO [24]
ELSE
IF pos$="3 4" THEN
GOTO [34]
ELSE
IF pos$="4 4" THEN
GOTO [44]
ELSE
IF pos$="5 4" THEN
GOTO [54]
ELSE
IF pos$="6 4" THEN
GOTO [64]
ELSE
IF pos$="0 4" THEN
GOTO [04]
ELSE
IF pos$="-1 4" THEN
GOTO [n14]
ELSE
IF pos$="-2 4" THEN
GOTO [n24]
ELSE
IF pos$="-3 4" THEN
GOTO [n34]
ELSE
IF pos$="1 5" THEN
GOTO [15]
ELSE
IF pos$="2 5" THEN
GOTO [25]
ELSE
IF pos$="3 5" THEN
GOTO [35]
ELSE
IF pos$="4 5" THEN
GOTO [45]
ELSE
IF pos$="5 5" THEN
GOTO [55]
ELSE
IF pos$="6 5" THEN
GOTO [65]
ELSE
IF pos$="0 5" THEN
GOTO [05]
ELSE
IF pos$="-1 5" THEN
GOTO [n15]
ELSE
IF pos$="-2 5" THEN
GOTO [n25]
ELSE
IF pos$="-3 5" THEN
GOTO [n35]
ELSE
IF pos$="1 -1" THEN
GOTO [1n1]
ELSE
IF pos$="2 -1" THEN
GOTO [2n1]
ELSE
IF pos$="3 -1" THEN
GOTO [3n1]
ELSE
IF pos$="4 -1" THEN
GOTO [4n1]
ELSE
IF pos$="5 -1" THEN
GOTO [5n1]
ELSE
IF pos$="6 -1" THEN
GOTO [6n1]
ELSE
IF pos$="0 -1" THEN
GOTO [0n1]
ELSE
IF pos$="-1 -1" THEN
GOTO [n1n1]
ELSE
IF pos$="-2 -1" THEN
GOTO [n2n1]
ELSE
IF pos$="-3 -1" THEN
GOTO [n3n1]
ELSE
IF pos$="1 -2" THEN
GOTO [1n2]
ELSE
IF pos$="2 -2" THEN
GOTO [2n2]
ELSE
IF pos$="3 -2" THEN
GOTO [3n2]
ELSE
IF pos$="4 -2" THEN
GOTO [4n2]
ELSE
IF pos$="5 -2" THEN
GOTO [5n2]
ELSE
IF pos$="6 -2" THEN
GOTO [6n2]
ELSE
IF pos$="0 -2" THEN
GOTO [0n2]
ELSE
IF pos$="-1 -2" THEN
GOTO [n1n2]
ELSE
IF pos$="-2 -2" THEN
GOTO [n2n2]
ELSE
IF pos$="-3 -2" THEN
GOTO [n3n2]
ELSE
IF pos$="1 -3" THEN
GOTO [1n3]
ELSE
IF pos$="2 -3" THEN
GOTO [2n3]
ELSE
IF pos$="3 -3" THEN
GOTO [3n3]
ELSE
IF pos$="4 -3" THEN
GOTO [4n3]
ELSE
IF pos$="5 -3" THEN
GOTO [5n3]
ELSE
IF pos$="6 -3" THEN
GOTO [6n3]
ELSE
IF pos$="0 -3" THEN
GOTO [0n3]
ELSE
IF pos$="-1 -3" THEN
GOTO [n1n3]
ELSE
IF pos$="-2 -3" THEN
GOTO [n2n3]
ELSE
IF pos$="-3 -3" THEN
GOTO [n3n3]
ELSE
IF pos$="1 -4" THEN
GOTO [1n4]
ELSE
IF pos$="2 -4" THEN
GOTO [2n4]
ELSE
IF pos$="3 -4" THEN
GOTO [3n4]
ELSE
IF pos$="4 -4" THEN
GOTO [4n4]
ELSE
IF pos$="5 -4" THEN
GOTO [5n4]
ELSE
IF pos$="6 -4" THEN
GOTO [6n4]
ELSE
IF pos$="0 -4" THEN
GOTO [0n4]
ELSE
IF pos$="-1 -4" THEN
GOTO [n1n4]
ELSE
IF pos$="-2 -4" THEN
GOTO [n2n4]
ELSE
IF pos$="-3 -4" THEN
GOTO [n3n4]
ELSE
IF pos$="1 -5" THEN
GOTO [1n5]
ELSE
IF pos$="2 -5" THEN
GOTO [2n5]
ELSE
IF pos$="3 -5" THEN
GOTO [3n5]
ELSE
IF pos$="4 -5" THEN
GOTO [4n5]
ELSE
IF pos$="5 -5" THEN
GOTO [5n5]
ELSE
IF pos$="6 -5" THEN
GOTO [6n5]
ELSE
IF pos$="0 -5" THEN
GOTO [0n5]
ELSE
IF pos$="-1 -5" THEN
GOTO [n1n5]
ELSE
IF pos$="-2 -5" THEN
GOTO [n2n5]
ELSE
IF pos$="-3 -5" THEN
GOTO [n3n5]
ELSE
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
END IF
' There's got to be an easier way to do this. Please...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment