=====================================================================
WELCOME TO THE MANSION
=====================================================================
/ \ / . \ | / \
/ \ / |@> \ /\ / \ / \
/ /\ \ / | \ / \ / \ / \
/ / \ / _ | _ \ / \ | O | / _ _
/ / \ |_|_|_| \ / \ |_|_| / | |_| |
/ / \ | O | / \ |_|_| / /\ | |
_ _ _ \ |_|_| / \ |_|_| / / \ | O O |
| |_| |_| | |_|_| / |_|_| / \ | ____ |
| | |_|_| / |_|_| / | || |
| O O O | |_|_|/ |_|_| / | O O O |
|_________|__|_|_|_________________|_|_|___|_________|________|
=====================================================================
Explore the mansion · Survive Asura · Claim the throne
=====================================================================
Choose thy difficulty
Enter thy name, brave soul
Mansion of Destiny started as a first-semester C++ project — a text-based adventure game built using Object-Oriented Programming concepts including inheritance, polymorphism, abstract classes, and vectors.
The original C++ architecture:
Room (abstract base class) └── LuckGameRoom : public Room └── playGame() — pure virtual function Player — health, inventory, room tracking GameManager — vector<Room>, game loop
This web version translates that exact logic from C++ into JavaScript — same game mechanics, same room structure, same player system. The browser replaces the terminal: cin becomes button clicks, cout becomes DOM updates, usleep() becomes setTimeout().
Tech used: HTML5 · CSS3 · Vanilla JavaScript · Web Audio API · localStorage