top of page

Naturia Guardian

Defeat the evil monster and save the world

Group Game Development Project

Group Name: Rainy Studio

Role: Game Developer / Level Designer

Duration: 4 month (Jan 2023 - Apr 2023)

Collaborators: Xutong Chen , Purui Shi , Zhengyao Zhu

Tools Used:​

  • C#

  • Unity 

  • Github desktop (Group work Git Tool)

C#.png
github.png
unity.png

Game Trailer: Click me

background pic.png

Game Description 

Naturia Guardian is a 2D action-adventure platform game in which players will take on the role of the character Rabi in a polluted fantasy world to cleanse the environment by defeating the final boss. Rabi has access to both fire and ice elements, allowing players to strategically leverage their unique properties to overcome terrain obstacles and defeat enemies.

The game world is set in a fictional realm where the ecosystem is severely damaged, and plants on Earth can no longer grow through artificial cultivation and seeding. Over the years, these polluted plants have evolved into evil monsters that now attack humans. Guided by the mystical GoldenTree, the player embarks on a journey to protect the environment and purify these corrupted plants. Through a series of challenging levels, the player must ultimately confront and defeat the final boss, the Evil Tiger, to restore balance to the world.

核心机制.png

Game Core Loop , design made by the Rainy Studio.

Planning & Challenges

Challenges & Selflearning 

During the early stages of our game development project, my team and I brainstormed numerous design ideas and eventually voted on the game's theme and gameplay. Since my three teammates were arts students with no coding experience, and the course focused more on design rather than coding, I faced a significant challenge. I had never used C# or the Unity development engine before, and I had to lead my team to complete a game within 12 weeks.

The course provided almost no coding assistance, making the initial difficulty how to quickly master the Unity development engine and transition from Java to C#. I had to continuously learn and adapt, providing timely updates to my teammates on feasible features and necessary modifications based on my learning progress.

Early Sketches of the Main Character Rubi

Early Gameplay Design of the Game Play

Development and Feature Planning
Initially, our game lacked distinctiveness, making it appear as a reskin of existing games, which could lead to player disinterest. We planned features such as characters with unique skills for solving puzzles and combining items, but development challenges required us to adjust our goals. As the sole programmer, I had to spend considerable time self-learning to implement the code in the later stages.

with power of fire

without power of fire

Special Game Feature: When the player uses the Fire Rubi, if the player gains the power of fire, they can break the ice blocks on the path, allowing them to pass through certain areas more quickly.

User Feedback and Design Adjustments

We initially neglected user feedback, making it difficult for new players to engage with the game. This highlighted the importance of testing and gathering feedback. Each week, we invited friends to test the game, categorizing them into experienced gamers and newbie players. This approach allowed us to gain diverse perspectives on the game, helping us understand different levels of comprehension and preferences. Through this process, we discovered bugs, such as key conflicts, and realized the need for more in-game hints to aid player understanding. This made me realize that user feedback is an indispensable step in refining a good game. Future projects will prioritize user feedback to improve accessibility and gameplay.

image.png

One of the feedback from week4's game tester

Alex  Player type:Conqueror-Mastermind  Game types: Achiever

Game feedback:

  • The knockback animation is too long.

  • The difficulty is too high, and the enemy attack range has a large margin of error.

  • The knockback physics should be more realistic; there should be a prompt to restart when the character falls off the map.

  • Jumping onto the bird causes health loss.

  • There needs to be a brief invincibility period when the character is attacked to ensure they won't be hit again immediately.

  • (We have Alex's permission to display it on the website.)

Task Allocation and Time Management

Uneven workload distribution during the 12-week development cycle resulted in significant time spent on polishing and refinement in later stages, causing stress and potential errors. To manage tasks more effectively, we used Notion to confirm weekly tasks and Git to update daily progress continuously. Additionally, we used Wix to create a development step-by-step website and published work logs every two weeks. This approach helped ensure that the team stayed on track at each development stage. This experience underscored the importance of reasonable task allocation throughout the development stages to avoid last-minute issues and ensure a smoother workflow.

image.png
image.png

Git / Notion working process screenshot

image.png

This is a dedicated website created by the team for the game, which includes each member's work log reports as well as a basic introduction to the game.

Click Me To Check the Page

Interesting Game Features:

Character design & Game initial design

Initially, we designed three different elemental rabbit protagonists, but due to art issues and a tight schedule, we couldn't implement all three. Therefore, we kept the Fire and Ice elemental protagonists. All the images that appear in the game are independently created by our art team, including each frame of the protagonist's and monsters' actions, which are individually drawn images. This put a lot of pressure on the art team and made the schedule very tight.

fire_1.png
snow_1.png

Creating the sketches of the Fire Rabbit and Ice Rabbit. 

image.png

Initial game deisgn / character / buff / monster ..

Backpack System 

Players can obtain various types of gems by defeating monsters/Bosses or picking them up from the ground. Players can then return to the Skill Exchange House to enhance different attributes, such as increased attack, health, magic, or special skills.

backpag.gif
image.png

Players can exchange the items they pick up for different buffs. Once the exchange is successful, a tree will appear in a random area on the map. Players can stand under the tree to receive attribute enhancements.

image.png
image.png
image.png

Additionally, players can obtain special skills in random areas on the map. When players defeat monsters, the monsters may randomly drop skill scrolls, gems, healing items, and other useful items.

Map Design

The game features five maps: Ocean Zone, Swamp Zone, Desert Zone, Corrupted Zone, and Volcano Zone. The difficulty of the levels increases progressively, and the types of monsters also increase. These maps represent a world with a destroyed environment, and players need to defeat the final Boss to save the broken environment.

关卡图2.png
image.png
image.png

Map design sketch and final showcase in the game

Special attack behaviour  

eagle can move within a certain range and will actively switch to pursuit mode when the player enters that range.Fire rubi's second skill can throw a boomerang to hit monster twice 

chase.gif
image.png

Eagle's pursuit and patrol mechanism

When the player gets too close to the eagle's patrol area, the eagle's animation will switch to attack mode, and the attack angle will change with the player's current position. After the player is attacked, the eagle will stop attacking for 2 seconds, and then continue to pursue the player. When the player is out of the eagle's attack range, the eagle will give up the pursuit and return to the patrol area.Code:

Boss Stages mechanism

The final boss will have 4 different stages , each stage will have different animations and different sprites.

image.png
image.png

Monster sketch image. 4 pictures are boss's 4 different stage image

image.png
image.png

Icey rubi can use his spell to frozen lake.

Takeaways

Through this project, I gained valuable experience in game development using Unity, which was my first time working with this platform. Additionally, I learned how to convert Java code to C#, a new language for me but quite similar to Java. I applied various programming concepts such as designing monsters with different stages using a mechanism similar to FSM (Finite State Machine), and employing inheritance to create a superclass for all enemies, consolidating shared properties for easier maintenance and updates.

As the sole programmer in our group, I learned a tremendous amount this semester. The most valuable experience was the game development process itself. Although our group achieved third place, I believe that with more time, we could have done better. Reflecting on the evaluation, I realized that my focus on implementing unique code behaviors sometimes overlooked the user's actual experience, such as the creation of buffs and the number of keystrokes required. These aspects did not enhance the user experience in the game. Moving forward, I will place greater emphasis on user experience in game development to ensure a more enjoyable and accessible gameplay experience.

I am happy to have continually learned and mastered new coding techniques and gained a deep understanding of the importance of teamwork.

25231.png
bottom of page