Cryopunk is a Role-Playing Game inspired by the classic RPG style created by Mike Pulis, Don Terrell, Pete Ficorelli, and Scott O’Connor. This is a semester-long project for CSE-480 Winter 2015 at Oakland University under the supervision of Professor Singh. Our goal was to make a game that is fun to play, unique, and can be shown (in total) in under 15 minutes. We created a game that can be broken up into episodes that may be completed in under 15 minutes but there are optional mini-games and Easter eggs hidden all over the place. Episode 1 contains hidden elements specific to the classroom environment (other groups).
Please note: If you choose to play this game on this site, the game will load completely which may take a few moments.
Priority | Task | Due Date | Status |
---|---|---|---|
1 | Scene Transitions | 04/19/2015 | Complete |
1 | Battle Items | 04/19/2015 | Complete |
2 | Menu Positioning | 04/19/2015 | Complete |
3 | Web Player | 04/19/2015 | Testing |
4 | Clipping | 04/19/2015 | Render overhaul |
Worldv2 is the second generation of the world map. The first render of the world map was the standard size Unity terrain. This was good because it gave us the ability to spread out and add special features and secret areas. Unfortunately, the map was so big, it would take too much time to travel from one area to another. We needed a much smaller map in order to condense the project presentation down to 10 minutes or so. This new version of the world terrain offers 2 pre-defined battle zones while using B.A.S.S. (Battle area switching system), a city location, a cave entrance, a basketball court, and a nice ocean view.
The city scene is the first scene where the player is allowed to move around freely. We switched from each room needing a new scene to transition to an open city with a few rooms at the base of buildings. To create these rooms, each wall needed to be placed, textured, and tested. Once the over-all playable area was set, the scenery was improved with graffiti, posters, piles of garbage, and a non-playable character. This gives the player a more realistic environment while adding to the backstory.
Caves are often places of increased danger; this cave is no exception. Once inside the cave, the difference in ambient light sets the mood. Enemies are stronger in this area than outside and they often hunt in packs. To showcase environmental interactivity, we have included a small puzzle where the player must clear the path before proceeding into the boss area.
Every good RPG needs a good battle system. Battles add a level of strategy and management to the game. The player must keep an eye on the health and condition of the party members or else the game could quickly be over. The difficulty grows the longer the player plays because enemies in the cave are harder, have more significant status effects, and generally grow in number. A good player will be able to use status effects to ensure victory, but a better player will be able to ration special power points more effectively.
Once the enemies have been defeated, the battle controller switches states to the win state. The win state is one of many states in the battle controller and must have conditions before entering. We have spent many hours testing the various states to ensure perfect execution under every circumstance. We need to test every possible outcome combined with every possible status effect, and every possible move. The battle system alone is complicated enough to be its own senior project.
To enhance user experience, the battle system interacts with the environment in order to change the setting (or backdrop) of the battle scene. The battle controller is passed variables which indicate which enemies appear, how many, how often, and what background to use. This is an example of running into a battle in the cave environment. Notice the different class of enemies in a different environment.
The menu system is as complex as the battle system with the added difficulty of managing over-lap and different aspect ratios. Each button must look good, and function properly.
The in-game menu system lists statistics for party members, items, system settings, and controls.
Each character can be selected giving the menu system more depth and a higher perception of analytics and back story.
Scene changer logic. On collision with an object containing a scene changer script, the character controller will react to the motion and the scene changer will transfer game play to another scene.
R.A.B.i. (Random action battle initializer) is the backbone for the random battles encountered in the game. The architecture is fairly simple, but the real work is done dealing with getting javascript elements to communicate with c sharp code.
This is one example of the many state diagrams needed to control flow in Cryopunk. While viewing the menu system, only one state can be active at a time to prevent over-lapping data
Cryopunk the Oven T-Shirt |
Cryopunk the Shower Curtain |
Cryopunk the Oven Mitt |
Cryopunk the Mug |
Projects:
Queue Position | Project Name | Current Interest | Status |
---|---|---|---|
0 | Unity: Cryopunk | Random battle init() method | Active |
1 | Socket Programming | Cross-firewall connections | Active |
2 | Laravel Framework | Integration | Active |
3 | Bootstrap | Integration with MVC | Active |
4 | Multi-threading programs | Preliminary Research | Waiting on Adam... |
Sposystems.com is a place where I can practice Networking, Programming, and Design. Hopefully I can research and translate important or useful concepts and teach someone on the way. If you would like to submit a topic for exploration, sign up and submit it. --That reminds me; I have to come up with a privacy policy page too.
© Sposystems.com 2015. Contact us at info@sposystems.com