{"id":49573618,"url":"https://github.com/pitercoding/the-terminal-awakens","last_synced_at":"2026-05-03T15:39:25.342Z","repository":{"id":333476922,"uuid":"1137471947","full_name":"pitercoding/the-terminal-awakens","owner":"pitercoding","description":"[EN] Terminal-based RPG game built in Java featuring turn-based combat, character progression, equipment system, and ASCII ART. [PT-BR] Jogo de RPG em terminal desenvolvido em Java com combate em turnos, progressão de personagem, sistema de equipamentos e arte ASCII.","archived":false,"fork":false,"pushed_at":"2026-01-24T08:44:07.000Z","size":356,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-03T15:39:09.056Z","etag":null,"topics":["ascii-art","aventura-terminal","boss-fight","character-progression","dungeon-exploration","equipment-system","game-development","inventory-system","java","java-oop","jogo-rpg","learning-project","object-oriented-programming","programacao-orientada-objetos","terminal-rpg-game","text-based-game","turn-based-combat"],"latest_commit_sha":null,"homepage":"","language":"Java","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/pitercoding.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-19T12:13:46.000Z","updated_at":"2026-01-24T08:44:10.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/pitercoding/the-terminal-awakens","commit_stats":null,"previous_names":["pitercoding/the-terminal-awakens"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pitercoding/the-terminal-awakens","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fthe-terminal-awakens","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fthe-terminal-awakens/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fthe-terminal-awakens/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fthe-terminal-awakens/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pitercoding","download_url":"https://codeload.github.com/pitercoding/the-terminal-awakens/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fthe-terminal-awakens/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32575114,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["ascii-art","aventura-terminal","boss-fight","character-progression","dungeon-exploration","equipment-system","game-development","inventory-system","java","java-oop","jogo-rpg","learning-project","object-oriented-programming","programacao-orientada-objetos","terminal-rpg-game","text-based-game","turn-based-combat"],"created_at":"2026-05-03T15:39:24.339Z","updated_at":"2026-05-03T15:39:25.316Z","avatar_url":"https://github.com/pitercoding.png","language":"Java","readme":"\u003ch1 align=\"center\"\u003e\n  👁️🖥️ The Terminal Awakens 🖥️👁️\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  🌎 \u003cstrong\u003eLanguages:\u003c/strong\u003e\u003cbr\u003e\n  \u003ca href=\"README.pt.md\"\u003e🇧🇷 Portuguese\u003c/a\u003e |\n  \u003ca href=\"README.md\"\u003e🇺🇸 English\u003c/a\u003e\n\u003c/p\u003e\n\n**The Terminal Awakens** is a **terminal-based RPG adventure game in Java**, where players explore a dungeon-like world, battle monsters, and grow their characters through XP, levels, and equipment.  \n\nThe project features:\n\n- Multiple **vocations/classes**: Knight, Paladin, Druid, Sorcerer  \n- **Turn-based combat** with special attacks and mana management  \n- **Equipment system**: Weapons and armor with bonuses  \n- **Inventory \u0026 items**: Health and Mana potions  \n- **Map exploration**: Random encounters, shops, NPCs, and final boss  \n- **ASCII portraits** and immersive text UI  \n\n---\n\n## 🏆 Motivation\n\nThis project was created as a **personal learning project in Java**, focused on:\n\n- Practicing **OOP, inheritance, and polymorphism**  \n- Building **terminal-based games** with clean code structure  \n- Implementing **combat mechanics, inventory systems, and level progression**  \n- Exploring **game balance, UX, and terminal graphics**  \n\nIt was also an opportunity to reinforce concepts like:\n\n- Designing **class hierarchies and abstract classes** for reusability  \n- Managing **game loops, events, and player states**  \n- Implementing **equipment, items, and stats system** in a RPG context  \n\n## 📸 Screenshots\n\nBelow are some screenshots showcasing key moments of **The Terminal Awakens** gameplay.\n\n### 1. 🖥️ Game Start — ASCII Title Screen\nThe ASCII art displayed when the game starts, presenting the world of **The Terminal Awakens**.\n\n![Game Start](screenshots/game-start.png)\n\n---\n\n### 2. 🧙 Character Creation \u0026 Starter Kit\nThe beginning of the journey, where the player chooses a vocation and receives the starter equipment.\n\n![Character Creation](screenshots/character-creation.png)\n\n---\n\n### 3. ⚔️ Combat Example\nA turn-based combat scenario against common enemies.\n\n![Combat](screenshots/combat.png)\n\n![Combat 2](screenshots/combat2.png)\n\n---\n\n### 4. 🎒 Inventory View\nViewing and using items such as Health and Mana Potions during gameplay.\n\n![Inventory View](screenshots/inventory-view.png)\n\n---\n\n### 5. 🗺️ Map Exploration\nExploring the map, discovering paths, encounters, and hidden events.\n\n![Map Exploration](screenshots/map-exploration.png)\n\n---\n\n### 6. 🐉 Boss Encounter\nA dangerous boss fight that tests strategy, resource management, and survival.\n\n![Boss Encounter](screenshots/boss-terminal-of-vortex.png)\n\n \n## 📚 Learning Points\n\nDuring development, these concepts were reinforced:\n\n- **Backend / Game Logic (Java)**  \n  - Abstract classes and polymorphism for characters  \n  - Combat mechanics and turn-based system  \n  - Equipment and inventory system  \n  - XP, level progression, and stat growth  \n  - Map, tiles, and event handling  \n\n- **Terminal UX \u0026 ASCII Art**  \n  - Dynamic combat/status displays  \n  - Grouped inventory and narrative messages  \n  - Boss and monster portraits  \n  - Slow console printing for immersion\n\n\n## 🚀 How to Run Locally\n\n### 📦 Prerequisites\n\nMake sure you have:\n\n- **Java 21+** installed  \n- **Terminal / Command Prompt**  \n\n### 🖥️ Run the Game\n\n1. Compile the project:\n\n```bash\njavac -d out/production/the-terminal-awakens src/main/java/com/terminalawakens/**/*.java\n```\n\n2. Run the game:\n```bash\njava -cp out/production/the-terminal-awakens com.terminalawakens.Main\n```\n3. Follow the in-terminal prompts to:\n   - Create your character\n   - Explore the map using AWSD keys\n   - Fight monsters\n   - Visit shops and collect loot\n   - Challenge the final boss **Terminal of Vortex**\n\n## 🧱 Project Structure\n```bash\nthe-terminal-awakens/\n├─ src/main/java/com/terminalawakens/\n│  ├─ character/          # Character classes, starter kit, stats, equipment\n│  ├─ creatures/          # Monsters, bosses, MonsterFactory\n│  ├─ engine/             # GameEngine \u0026 CombatEngine\n│  ├─ equipment/          # Weapons, armor, equipment logic\n│  ├─ items/              # Potions and ItemFactory\n│  ├─ shop/               # Item and equipment shop\n│  ├─ util/messages/      # ASCII portraits, SlowConsole, GameStart/GameEnd\n│  └─ world/              # Game map, tile types, position handling\n├─ out/                   # Compiled .class files\n├─ screenshots/           # Suggested screenshots folder\n├─ .gitignore\n├─ LICENSE\n└─ README.md\n└─ README.pt.md\n```\n\n## 🎮 Gameplay Flow\n```text\nCharacter Creation\n ↓\nGame Map Exploration (AWSD)\n ↓\nRandom Tile Events:\n   - Monster Encounter → CombatEngine\n   - Loot Tile → Collect items\n   - Shop Tile → Buy equipment\n   - NPC Tile → Dialogue / Lore\n ↓\nXP \u0026 Level Up → Character Growth\n ↓\nBoss Tile → Terminal of Vortex\n```\n\n## 📜 License\n\nThis project is licensed under the **MIT License** — feel free to use, study, and modify it.\n\n## 🧑‍💻 Author\n\n**Piter Gomes** — Computer Science Student (6th Semester) \u0026 Full-Stack Developer\n\n📧 [Email](mailto:piterg.bio@gmail.com) | 💼 [LinkedIn](https://www.linkedin.com/in/piter-gomes-4a39281a1/) | 💻 [GitHub](https://github.com/pitercoding) | 🌐 [Portfolio](https://portfolio-pitergomes.vercel.app/)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpitercoding%2Fthe-terminal-awakens","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpitercoding%2Fthe-terminal-awakens","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpitercoding%2Fthe-terminal-awakens/lists"}