{"id":24021144,"url":"https://github.com/zipcodecore/ohero","last_synced_at":"2025-04-15T21:15:56.524Z","repository":{"id":147838147,"uuid":"246610143","full_name":"ZipCodeCore/OHero","owner":"ZipCodeCore","description":"Java Fundamentals Review Text adventure Cave Game","archived":false,"fork":false,"pushed_at":"2020-03-17T15:03:22.000Z","size":17,"stargazers_count":1,"open_issues_count":0,"forks_count":17,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-15T21:15:49.302Z","etag":null,"topics":["game"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ZipCodeCore.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2020-03-11T15:34:59.000Z","updated_at":"2023-04-05T00:25:17.000Z","dependencies_parsed_at":"2023-04-14T17:06:43.177Z","dependency_job_id":null,"html_url":"https://github.com/ZipCodeCore/OHero","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZipCodeCore%2FOHero","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZipCodeCore%2FOHero/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZipCodeCore%2FOHero/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZipCodeCore%2FOHero/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ZipCodeCore","download_url":"https://codeload.github.com/ZipCodeCore/OHero/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249153950,"owners_count":21221330,"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":["game"],"created_at":"2025-01-08T12:39:26.071Z","updated_at":"2025-04-15T21:15:56.519Z","avatar_url":"https://github.com/ZipCodeCore.png","language":"Java","readme":"# OHero\n\"Be your own hero.\"\n* Objective:\n  * Create a text adventure game using Java fundamentals.\n\n## Minimum Viable Product (MVP)\n* This game must have certain features to be viable:\n  * Interaction of multiple models.characters (The Player, NPCs of some kind)\n  * Player choices must somehow affect stats of The Player\n  * Stats must be applied within interactions\n  * A functional inventory\n  * Persistence\n\n## Specs\n* The project should include some concept of\n  * `Display` class\n    * Text to be read by The Player (including menus) should be handled in an Object Oriented, single responsibility way. IE, make a class to handle display, reduce duplicated code as much as possible.\n  * `Character` Abstraction\n    * There will be many kinds of models.characters. The Player will have a Hero, there will be NPCs, bosses, other entities within the game. How will you handle that while duplicating the least amount of code?\n  * `The Game Loop`\n    * This game must continue running until either:\n       A: The player intentionally exits or,\n       B: The game comes to an end.\n  * `Inventory and Collections`\n    * How will you have the application track different models.characters, The Player's character inventory, and a reflection upon stats?\n  * `Random Encounters`\n    * Utilizing Dice and other known tools, create a means of randomizing encounters, initial stats rolls for models.characters, or otherwise.\n  * `Testing`\n    * Is not optional. Any portion of your code base which can be tested, should be tested using TDD.\n\n  \n \n\n## Developmental Notes\n* OHero (Be your own Hero!) is an adventure game. The adventure is making the game. As such, player input is required early and often and **EVERY DECISION** should impact the state of The Player's character. Those state changes (IE, Stats) should reflect future interactions.\n* You are to utilize tools and techniques you have learned throughout the course to plan and solve the problems involved with creating a functional game with a manageable code base.\n* Manage your abstractions. Think through and understand where methods should be - does The Player move to the next room, or does the current active character being used by that player move to the next room? Does it matter?\n* You must have a completed and approved UML diagram before you proceed to do any development\n* All public methods should be tested.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzipcodecore%2Fohero","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzipcodecore%2Fohero","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzipcodecore%2Fohero/lists"}