130 likes | 346 Views
Finders Keepers. John Watts CSC 131-3. Project Description. Text-Based Game Your goal is to find the treasure You must collect item to proceed. About My Game. Small play area Challenging to complete Limited directions Anticipates many responses. Map/Play Area. N.
E N D
Finders Keepers John Watts CSC 131-3
Project Description • Text-Based Game • Your goal is to find the treasure • You must collect item to proceed
About My Game • Small play area • Challenging to complete • Limited directions • Anticipates many responses
Map/Play Area N Passage blocked by vines Locked puzzle door Area outside of building
Room Function UserAction=input('Paige: What should we do?').lower() ActionBreak() if (UserAction in BoxList) and (HasMainKey==0): print("""You open the box and find key. \n\nPaige: We should hold on to that key. Who know what it might open.\ You place the key in your pocket.""") HasMainKey=1 EastRoom() elif (UserAction in BoxList) and (HasMainKey): print("The box is empty.") EastRoom() elif (UserAction in torchList)and (Hastorch==0): print("\nPaige: I think grabbing the torch is a good idea. It may come in handy") Hastorch=1 EastRoom() elif (UserAction in torchList)and (Hastorch): defEastRoom(): global HasMainKey, Hastorch if Hastorchand HasMainKey: print('The room is dark. By the light of your torch you find an empty box where you found the key.') elifHastorch: print('The room is dark. By the light of your torch you find a box in the corner of the room.') elifHasMainKey: print('The room is dark other then a small torch. In the corner lies an empty\nboxwhere you found the key.‘) else: print('The room is dark other then a small torch. In the corner lies a box.') ActionBreak()
Room Function Cont. # ... elif(UserAction in torchList)and (Hastorch): print("\nPaige: You already have the torch.") EastRoom() elifUserAction in MainRoomList: print("""The two of you return to the main room. The door closes behind you.""") MainRoom() else: print("\nPaige: I don't understand what you mean.") EastRoom() ActionBreak()
List of Possible Input LeftList=['l','left','goleft','go to left','go to the left','walkleft','walk to left','walk to the left','e','east', 'go east','go to east', 'go to the east','walkeast','walk to east','walk to the east','go to eastern passage','walk to vines','go to vines', 'vines','go to passage blocked by vines','walk to passage blocked by vines'] RightList=['r','right','goright','go to right','go to the right','walkright','walk to right', 'wlak to the right','w','west','gowest','go to west','go to the west', 'puzzle','puzzledoor','go to puzzle door','go to the puzzle door','solvepuzzle','try to solve puzzle','go to door on right' ,'go to the door on the right','walk to right door','wlak to the door on the right','open right door','open door to right','open puzzle door'] StraightList=['straight','gostraight','walkstraight','walk straight ahead','f','forward','go forward', 'walk forward','n','north','go north', 'go to north','go to the north','walknorth','walk to north','walk to the north','walk to northern door', 'walk to the northern door' ,'go to door straight ahead','go to north door','open north door', 'open northern door', 'open door to north','open golden door', 'open the golden door'] BackList=['back','goback','s','south', 'go south','go to south','go to the south','walksouth','walkto south','walk to the south','walk to south door' ,'open south door','open the south door'] HatchetList=['hatchet','gethatchet','pick up hatchet','grabhatchet','get the hatchet','pickup the hatchet', 'grab the hatchet'] BoxList=['box','openbox','getbox','open','pick up box','pick up the box','open the box','get the box‘ ,'grab the box'] TorchList=['torch','gettorch','pick up torch','pick up the torch','get the torch','grab the torch'] MainRoomList=['leave','goback','mainroom','go to main room','main','back','go to the main room'] KeyList=['key','use key', 'use key on chest','openchest','chest','unlock','unlockchest','lock', 'open lock','use key on lock','use key to open lock', 'unlock the chest'] PushList=['push','pushchest','push the chest','move the chest','movechest','move','under chest', 'look under','under',] FeedList=['f','feed','feed the squirrel', 'feed squirrel', 'food', 'give food to squirrel'] NoList=['no', 'not realy', '''i don't think so''','notyet','notnow','n'] YesList=['yes', 'you bet', 'lets go', 'i am ready', 'yep','y','sure','i sure am','sure am'] CutVinesList=["hatchet","usehatchet",'use the hatchet',"cut","chop",'cutvines','cut the vines','cutvines with hatchet','cut vines with the hatchet', 'chop vines','chop vines with hatchet', 'chop vines with the hatchet'] BurnVinesList=["burn","burnvines",'burn the vines','burn the vines with torch', 'use torch on vines',"torch","use torch"]
Helpful Code • UserAction=input('action?').lower() • (HasHatchet,HasTorch, HasMainKey,VinesClear, Intro,ChestOpen,PlayerName)=(0,0,0,0,0,0,'')
Improvements • More story(motivation, treasure, building) • Make the puzzle door a guessing game • Anticipate even more responses • Expand play area • Add complexity to non linear gameplay • random incorrect response