Download

PolyMorpher's Dedicated Executable File | Play Now

1. Level Structure - PolyMorpher will have a level structure built into it, that will start out with the beginning levels consisting of purely English without introducing any programming languages. In the middle levels, a pseudo-language like pseudo-code will be introduced in order for the users to begin to learn OOP concepts. In the final levels, the user should be up to enough speed to only be using the desired programming language in order to complete the game.
2. Objectives / Goals - Certain objectives or goals will be kept track of in order to progress through the game.
3. Single Player vs. Multiplayer - The game will start out being only single player, but will be modified to include multiplayer if deemed beneficial.
4. Sound Bar - There will be one sound bar in order to allow the player to adjust game volume if needed.
5. Health Bar - Each player will have a health bar in order to determine if a player gets stuck at some point in the game and needs additional assistance in order to complete a certain level.
6. Game Menu - A game menu will allow the player to navigate through the game. It will allow the user to enter, exit, save, load, or pause the game. Other actions can be added to this menu as they are added to the game.
7. Current Method Plan - A prompt will be given so that the player knows what action needs to be performed, as well as what line(s) of code need to be typed into the game.
8. Help Menu - There will be a help menu that will pop up if a player is struggling with getting through a certain task or level. The help menu will have a list of different potential options of code input that might work.

Concepts of Gameplay & Possible Design Choices

Realistic Approach - Using relatable and applicable examples
Improvement on Teaching - More complex Object-Oriented Programming concepts that can be easily explained
Balance Gameplay and Programming - Implementation of the gameplay will not sacrifice the player's experience

What is Unity?

Unity is a cross-platform game engine developed by Unity Technologies. It is primarily used for video game development as well as simulations. It supports 2D, as well as 3D, graphics and uses C# as its default scripting language. Also, it creates games by manipulating game objects in 3D, and by attaching varying components to those objects. The game engine is truly cross-platform, meaning that games can be exported to several different platforms, like desktop, mobile, web, and even game consoles such as Xbox One, PS4.

What is C#?

C# is a general purpose, object-oriented programming language created by Microsoft in 2000. The language design goals consist of being simple, portable, and suitable for applications hosted and/or embedded, with strong support for internalization. It is an enterprise language much like Java, as well as a programming language for Microsoft’s web application framework ASP.NET. Also, it is used to create command-line applications and desktop GUI based applications.

Influences of Games on Learning

Poor academics and knowledge decrement lead to the stigma of video games being detrimental to the learning process. However, research evidence has shown that traditional learning through textbooks contributes to low engagement when compared to interactive media. According to the Office of Naval Research (ONR) & WebMD: On average, 56 - 95% of people who play a particular game to learn a particular subject through tests, demonstrated a better understanding of such subject.


Game Programming

Games enhance interest among new learners. The nature of interaction inherently gives the player a more natural way to learn content. A programming game can change the learning style from traditional to more dynamic. Programming games do not require an instructor present at all times.

Unity Ease of Use & Developer Popularity

Unity has a flexible UI and developer workflow system that allows users to develop a product efficiently. It has many tools for software development including the MonoDevelop IDE and support for multiple platforms and build environments. According to Unity Technologies, there were over 5 billion downloads of products made with Unity in quarter one of 2016, with an extra 2.4 billion in mobile product downloads.

Advantages of C# | Unity SDK

C# is the most flexible and powerful of the out-of-the-box programming languages Unity supports. It has a large suite of built in functions and methods, as well as Unity-specific tools available when used alongside the Engine. The Unity SDK offers developer support available through Unity's Scripting API website, that includes code examples and complex breakdowns of Unity-specific functionality within C#.