top of page

Escape Artist: Java-Based Text Adventure Game

J-Dub_a_majestic_Greek_God_building_with_4_broken_pillars_and_a_0563c97d-2483-471f-a58e-09

Java | GUI (Swing) | OOP | Event Handling | Testing (JUnit) | Audio Integration | JSON Parsing | Risk Mitigation | Software Optimization | Multithreading

Project Description

In "Escape Artist," I leveraged Java, GUI, Object-Oriented Programming (OOP), and software engineering best practices to build a comprehensive, immersive text-based adventure game. This game integrates a variety of challenges, including solving riddles, gathering resources, and battling NPCs, which are all controlled through a graphical user interface (GUI) built using Java Swing. The game mechanics, from player interactions to boss battles, are structured using key object-oriented design patterns that encapsulate game entities (e.g., Player, Boss, NPCs, Items) into manageable, modular components.

​

The project emphasizes economic efficiency in its design and implementation, focusing on optimizing code reusability, resource management, and user engagement—critical factors for delivering a polished product under constraints like development time and computational resources. Through rigorous testing (unit and integration), the game ensures a high level of reliability and performance.

Project Skills

Java & OOP: Designed game architecture using OOP principles to create reusable, modular, and scalable code. Key components like players, rooms, and items were abstracted into classes for efficient game mechanics.

​

GUI Design (Swing): Developed an interactive graphical interface using Java Swing, incorporating elements such as text areas, buttons, and event listeners to handle player input and real-time game responses.

​

Game Logic & Testing: Utilized comprehensive logic for game progression, including timers, NPC interactions, and boss fights. This logic was tested extensively to ensure bug-free performance and seamless user experiences.

​

Audio Integration: Implemented sound effects and background music using Java’s Audio APIs, enhancing player immersion through real-time auditory feedback.

​

Risk Mitigation: Applied testing and debugging to mitigate software risks, ensuring the project maintained a balance between complexity and performance.

​

Economic Efficiency: The game’s development relied on optimizing resource management and minimizing redundant code, demonstrating an understanding of economic principles in software engineering.

Project Demostrates

Throughout the development of this project, I managed the complete software development lifecycle (SDLC), from design, coding, and testing to deployment, demonstrating full-stack development skills. The game integrates a robust user interface, complex interactions, and player progression, showcasing my ability to handle various facets of software engineering. My effective use of object-oriented programming (OOP) allowed me to design and manage the core functionalities of the game, where each component—such as the Player, NPCs, Items, and Boss—was encapsulated to ensure a clean code structure and promote scalability for future enhancements.

​

In addition to the technical aspects, I also balanced business insights and value creation throughout the project. By considering development costs, user engagement, and economic efficiency, I ensured that the game was not only technically sound but also cost-effective and highly engaging for players, reflecting my ability to integrate technical execution with strategic business considerations.

© 2024 by Joseph Wankelman and secured by Wix

bottom of page