{"id":13337491,"url":"https://github.com/harismuneer/Zelda-Game","last_synced_at":"2025-03-11T06:32:26.068Z","repository":{"id":39708624,"uuid":"138726765","full_name":"harismuneer/Zelda-Game","owner":"harismuneer","description":"👽 A text based adventure game made using concepts of OOP like Inheritance, Composition, Association, Polymorphism etc","archived":false,"fork":false,"pushed_at":"2025-01-30T18:03:05.000Z","size":419,"stargazers_count":59,"open_issues_count":2,"forks_count":23,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-28T13:19:27.747Z","etag":null,"topics":["association","castle-game","composition","console-application","console-game","graphical-user-interface","inheritance","object-oriented","object-oriented-programming","object-oriented-programming-project","oop","oop-concepts","oop-principles","polymorphism","text-adventure","text-based","text-based-adventure","text-based-game","zelda","zelda-like"],"latest_commit_sha":null,"homepage":"https://github.com/harismuneer","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/harismuneer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":["https://www.cyfylabs.com"]}},"created_at":"2018-06-26T11:11:41.000Z","updated_at":"2025-02-27T21:51:27.000Z","dependencies_parsed_at":"2024-12-04T12:38:22.715Z","dependency_job_id":"b1723dfe-955c-4a59-8b42-fb6a036b4c2f","html_url":"https://github.com/harismuneer/Zelda-Game","commit_stats":null,"previous_names":["harismuneer/zelda-game","osspk/zelda-game"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harismuneer%2FZelda-Game","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harismuneer%2FZelda-Game/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harismuneer%2FZelda-Game/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harismuneer%2FZelda-Game/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/harismuneer","download_url":"https://codeload.github.com/harismuneer/Zelda-Game/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242987046,"owners_count":20217523,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["association","castle-game","composition","console-application","console-game","graphical-user-interface","inheritance","object-oriented","object-oriented-programming","object-oriented-programming-project","oop","oop-concepts","oop-principles","polymorphism","text-adventure","text-based","text-based-adventure","text-based-game","zelda","zelda-like"],"created_at":"2024-07-29T19:14:22.935Z","updated_at":"2025-03-11T06:32:26.052Z","avatar_url":"https://github.com/harismuneer.png","language":"C++","funding_links":["https://www.cyfylabs.com"],"categories":[],"sub_categories":[],"readme":"# 👽 Zelda-Game\n\n\u003ca href=\"https://github.com/harismuneer\"\u003e\u003cimg alt=\"views\" title=\"Github views\" src=\"https://komarev.com/ghpvc/?username=harismuneer\u0026style=flat-square\" width=\"125\"/\u003e\u003c/a\u003e\n\n[![Open Source Love svg1](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](#)\n[![GitHub Forks](https://img.shields.io/github/forks/harismuneer/Zelda-Game.svg?style=social\u0026label=Fork\u0026maxAge=2592000)](https://www.github.com/harismuneer/Zelda-Game/fork)\n[![GitHub Issues](https://img.shields.io/github/issues/harismuneer/Zelda-Game.svg?style=flat\u0026label=Issues\u0026maxAge=2592000)](https://www.github.com/harismuneer/Zelda-Game/issues)\n[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat\u0026label=Contributions\u0026colorA=red\u0026colorB=black\t)](#)\n\n\nA text based game made as a final project for the course \"Computer Programing CS103\" during my 2nd Semester at [National University of Computer and Emerging Sciences](http://nu.edu.pk/).\n\n## How to Run\nJust run Zelda.exe. If it doesnt work, then add the .txt files and the .cpp file in a new project (console application) in Microsoft Visual Studio and then build the project and run it.\n\n## Game Description\n*(This is purely a work of fiction and any resemblance to an actual person or monster is purely coincidental.)*\n\nThe princess of the kingdom of CPeria has been captured by an evil wizard and placed in a castle guarded by monsters. Your job is to set her free and bring her back outside the castle. The castle has 9 rooms. The game starts with you standing in room 1. Room 1 had the exit to the castle on its west. Some of the rooms are linked together. Each room had either a wall on its north, south, east or west or another room (see maze below).  The princess is locked in room 9. There are two monsters in the castle that need to be killed in order to reach the princess. Each monster is guarding a magical path and whenever you kill a monster, this path appears and two rooms get linked together. Fortunately, the monsters are rather docile and do not attack you unless you attack them. \n\nThe first monster that you need to kill is the snake headed lady from Greek myth affectionately called Medusa by some. She is so beautiful that whenever someone sees her, he or she turns to stone. The trick to kill her is to attack her using a magic shield. This shield can be picked up from room 3. Medusa will see her own reflection in the shield and turn to stone. As soon as she dies, a pathway will appear which will let you explore room 7 and 8.\n\nThe second monster is Mr. Dracula. To finish him off, you must attack him using a silver dagger right through his heart. You can find the dagger in room 7 while Dracula is in room 6. He guards a door which opens up in room 9 when he is killed. On killing him, you have to get to the princess and must lead her out to the exit once you do that. \n\nThere are treasure-items scattered throughout the castle for the financially inclined ones. Since you carry a bag with you, you can put all the items that you pick during the game (the treasure, the dagger and the magical shield) in that bag. The bag can only contain at the most 10 items at a time. The treasure is of three types. There is a golden egg in room 2 and a golden chalice in room 4. In room 8, there’s a piece of paper with the proof of the famous unsolved problem P=NP on it . The golden egg and the golden chalice are worth half a million dollar each; where as the proof paper is worth a million dollar. Unfortunately there are no buyers of the shield and dagger so they are of no particular value in the OOPtopia black market. \n\nOnce an item is picked, you can drop it in any room if you want. If a monster is attacked without the weapon that he can be killed with in your bag, you’ll die. If you get out of the castle without freeing the princess, you’ll lose the game.\n\n![](../master/images/i.png)\n\n## Interface\n![interface](../master/images/interface.png)\n\n## Project Requirements\nYour project is to implement this game. Here are a few requirements that need to be implemented. \n\n*\tThe game should start by stating the story in two or three lines. This story should be present in a file called Start.txt.\n*\tThe user should input all moves as text commands. Valid commands are MOVE, PICK, DROP, EXIT, ATTACK, LOOK\n*\tThe MOVE command should take the direction in which the user wants to move as the second parameter. The directions can be NORTH, SOUTH, EAST or WEST. For example, on entering the MOVE EAST command in room 1, the user should move to the room 2. \n*\tIf there is a wall on the side, a message should be displayed telling the user that the move is not possible. For example, MOVE EAST is an invalid command. \n*\tWhenever the user moves to the new room, a one line description of the room should be displayed. The description of all the rooms should be present in a file called Rooms.txt which should be read at the beginning of the program and stored in memory. \n*\tAfter the room description, all the possible exits from the room should be displayed. \n*\tIf there are any items in the room, they should be displayed after the exit path list. There cannot be more than 5 items in a room.\n*\tIf there is a monster in the room, its name should be displayed after the item list. A room can contain at the most one monster. e.g. if a user enters a room with a door to east and west, the dagger and Medusa (alive), the description will be. \n\n*This room has weird shapes drawn all over the walls and flickering torches make the faces even scarier. There is a door to your east. There is a door to you west. The dagger is lying on the floor. Medusa is waiting to kill you beside a locked door.*\n\n*\tThe PICK command should accept the object to be picked as the second parameter. e.g. In the above example, if the user type the command PICK DAGGER, it should remove the dagger from the room, add the dagger to the user’s bag and display a message on the screen. Something that is not in the room should not be allowed to be picked. \n*\tThe DROP command should also accept the object to be dropped from the user’s bag into the current room.\n*\tThe EXIT command should exit the program.\n*\tThe ATTACK command should attack the monster in the room (if there is one). If the weapon that the monster can be killed with is in the bag, the monster should die. Other wise it should kill the user. In case of a death by the hands of monster, the game should end after displaying all the text in a file called EndDead.txt on the screen.\n*\tA monster’s death should create a link between two rooms and its body should remain on the floor. Medusa is guarding the link between room 5 and room 8. Dracula is guarding the link between room 6 and room 9.\n*\tThe LOOK command should print out the description of the room including all the items and doors in the room.\n*\tIf the user exits the castle after rescuing the princess, the text in a file called EndWin.txt should be displayed and the game should end. \n*\tIf the user exits the castle without rescuing the princess, the text in a file called EndLose.txt should be displayed and the game should end. \n\n\u003chr\u003e\n\n\n## Author\nYou can get in touch with me on my LinkedIn Profile: [![LinkedIn Link](https://img.shields.io/badge/Connect-harismuneer-blue.svg?logo=linkedin\u0026longCache=true\u0026style=social\u0026label=Follow)](https://www.linkedin.com/in/harismuneer)\n\nYou can also follow my GitHub Profile to stay updated about my latest projects: [![GitHub Follow](https://img.shields.io/badge/Connect-harismuneer-blue.svg?logo=Github\u0026longCache=true\u0026style=social\u0026label=Follow)](https://github.com/harismuneer)\n\nIf you liked the repo then kindly support it by giving it a star ⭐ and share in your circles so more people can benefit from the effort.\n\n\n## Contributions Welcome\n[![GitHub Issues](https://img.shields.io/github/issues/harismuneer/Zelda-Game.svg?style=flat\u0026label=Issues\u0026maxAge=2592000)](https://www.github.com/harismuneer/Zelda-Game/issues)\n\nIf you find any bugs, have suggestions, or face issues:\n\n- Open an Issue in the Issues Tab to discuss them.\n- Submit a Pull Request to propose fixes or improvements.\n- Review Pull Requests from other contributors to help maintain the project's quality and progress.\n\nThis project thrives on community collaboration! Members are encouraged to take the initiative, support one another, and actively engage in all aspects of the project. Whether it’s debugging, fixing issues, or brainstorming new ideas, your contributions are what keep this project moving forward.\n\nWith modern AI tools like ChatGPT, solving challenges and contributing effectively is easier than ever. Let’s work together to make this project the best it can be! 🚀\n\n## License\n[![MIT](https://img.shields.io/cocoapods/l/AFNetworking.svg?style=style\u0026label=License\u0026maxAge=2592000)](../master/LICENSE)\n\nCopyright (c) 2018-present, harismuneer    \n\n\u003c!-- PROFILE_INTRO_START --\u003e\n\n\u003chr\u003e\n\n\u003ch1\u003e \u003ca href=\"#\"\u003e\u003cimg src=\"https://media.giphy.com/media/hvRJCLFzcasrR4ia7z/giphy.gif\" alt=\"Waving hand\" width=\"28\"\u003e\u003c/a\u003e\nHey there, I'm \u003ca href=\"https://www.linkedin.com/in/harismuneer/\"\u003eHaris Muneer\u003c/a\u003e 👨🏻‍💻\n\u003c/h1\u003e\n\n\n\u003ca href=\"https://github.com/harismuneer\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/harismuneer\" alt=\"Total Github Stars\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/harismuneer?tab=followers\"\u003e\u003cimg src=\"https://img.shields.io/github/followers/harismuneer\" alt=\"Total Github Followers\"\u003e\u003c/a\u003e\n\n\u003chr\u003e\n\n- \u003cb\u003e🛠️ Product Builder:\u003c/b\u003e Agile Product Manager with 5+ years of hands-on experience delivering SaaS solutions across sales, recruiting, AI, social media, and public sector domains. Background in Computer Science, with a proven track record of scaling products from inception to $XXM+ ARR, launching 3 top-ranking tools on Product Hunt, and developing solutions adopted by 250+ B2B clients in 40+ countries.  \n \n- \u003cb\u003e🌟 Open Source Advocate:\u003c/b\u003e Passionate about making technology accessible, I’ve developed and open-sourced several software projects for web, mobile, desktop, and AI on my \u003ca href=\"https://github.com/harismuneer\"\u003eGitHub profile\u003c/a\u003e. These projects have been used by thousands of learners worldwide to enhance their skills and knowledge.\n\n- \u003cb\u003e📫 How to Reach Me:\u003c/b\u003e To learn more about my skills and work, visit my \u003ca href=\"https://www.linkedin.com/in/harismuneer\"\u003eLinkedIn profile\u003c/a\u003e. For collaboration or inquiries, feel free to reach out via \u003ca href=\"mailto:haris.muneer5@gmail.com\"\u003eemail\u003c/a\u003e.\n\n\u003chr\u003e\n\n\u003ch2 align=\"left\"\u003e🤝 Follow my journey\u003c/h2\u003e\n\u003cp align=\"left\"\u003e\n  \u003ca href=\"https://www.linkedin.com/in/harismuneer\"\u003e\u003cimg title=\"Follow Haris Muneer on LinkedIn\" src=\"https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge\u0026logo=linkedin\u0026logoColor=white\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/harismuneer\"\u003e\u003cimg title=\"Follow Haris Muneer on GitHub\" src=\"https://img.shields.io/badge/GitHub-100000?style=for-the-badge\u0026logo=github\u0026logoColor=white\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.youtube.com/@haris_muneer?sub_confirmation=1\"\u003e\u003cimg title=\"Subscribe on YouTube\" src=\"https://img.shields.io/badge/YouTube-FF0000?style=for-the-badge\u0026logo=youtube\u0026logoColor=white\"/\u003e\u003c/a\u003e \n  \u003ca href=\"mailto:haris.muneer5@gmail.com\"\u003e\u003cimg title=\"Email\" src=\"https://img.shields.io/badge/Gmail-D14836?style=for-the-badge\u0026logo=gmail\u0026logoColor=white\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\n\n\u003c!-- PROFILE_INTRO_END --\u003e\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharismuneer%2FZelda-Game","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharismuneer%2FZelda-Game","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharismuneer%2FZelda-Game/lists"}