CPSC 4160 – 6160 / Phantom Fortress
Jackson Dickey
Game Description
Phantom Fortress is a 2D platformer where the player must navigate the map and collect a certain amount of items to win the game in as little time as possible. You must do this while avoiding any obstacles one faces and enemies that you may cross along the way.
In Phantom Fortress, your main objective is to navigate two sections of a dangerous map in search of three of five hidden scrolls. Along the way, you'll encounter hostile enemies that you must either fight or avoid to stay alive. The challenge is to collect three scrolls before losing all your lives, and to do so as quickly as possible for the highest score. As you progress, you may run into more enemies, and the environment more treacherous, requiring a balance of strategy, speed, and careful movement. The key to success lies in efficiently navigating the environment while overcoming obstacles and avoiding unnecessary risks.
Game Mechanics
The gameplay involves navigating maze-like maps filled with items to collect, jumps, and hazards while competing against one’s previous times to get the best time possible.
Key mechanics include sprinting, where players strategically run to reach areas they otherwise couldn’t or better play against enemies, and managing a health meter that depletes when colliding with enemies.
Additionally, the games often incorporate parkour like movement which involves precise movement to reach places to collect the items required to win.
Technical Description
Phantom Fortress for PC was programmed in python specifically using the pygame library, a low-level programming language that directly corresponds to a specific computer architecture. The game does not have a consistent fps and instead runs at whatever speed is available to the computer
This game was developed by Jackson Dickey. Its main technical element is the way the map is generated. It uses 3D arrays to set each level of the map and letters to signify the tile type making it easy to set and alter not only the map as a whole but any specifics about a tile. This best allowed for easy testing to make for a map in which nothing was impossible to traverse.
Controls
The controls typically involve using the arrow keys for general movement, either of the shift buttons for sprinting, and the space bar or up arrow button for jumping.
Game Limitations
Future Work
In the future, I would like to clean up the mechanics of the game and make certain aspects of the game more clear. I would also like to create a start menu in which you can go and change the map layout so the player can customize the game and make it even more replayable and interactive.
Game objective
Game Screenshots
The player can decide to sprint around the map and decide when to slow down to more accurately land in certain locations. They can also utilize the sprint to avoid any obstacle they come across instead of confronting it if they desire. In some instances, the player may need to time the use of the sprint button in conjunction with the space bar to reach certain locations to continue the progression of the game.
The initial limitation of the game was that the sprite for the player entity was significantly too large being over 10 times the size of any other graphic in the game. This led to the game taking a long amount of time to load and for some computer, not run at all. Since that has been fixed there were limitations are with the size of the map. With the way the game is set up it is easy to alter the map set up making it able to be changed to make a unique experience with relative ease.