top of page

SHAMAN

The creature featured in the game is the 'TikTik' which it is a type of Aswang. The 'Aswang' is a viscera sucker in Philippine mythology similar to a vampire but it uses its long proboscis tongue to feed on unsuspecting victims. The term 'Aswang' is usually an umbrella term for other creatures such as the 'Manananggal', 'Wak-Wak', etc.

Since the game was originally to be like God of War we focused on making the boss fight the main attraction of the game. The first sections of the game would consist of a tutorial on how the TikTik would work and the final would be the final fight where you use all the things you've learned.

caleb-rolph-tik-tik-s-2.jpg

Shaman is a 3D action RPG game based on Philippine Mythology. My brother and I initially pitched the idea as to let people know more about other interesting and unique worlds and monsters that exist in other lesser known mythologies. The main idea was to let other people know about different mythologies and at the same time teach history as well.

​

The game is heavily inspired by other games such as God of War (2018), The Witcher 3: Wild Hunt, and a few aspects from Dark Souls. Originally, this was intended to be more akin to God of War but of course, during the course of development, things are subject to change and it molded to what it is now.

​

​

​

​

​

​

​

​

​

There was another creature that was left out during the production of the game and this was the 'Tikbalang'. The 'Tikbalang' is a horse demon and it relies on tricks to deceive its victims it had unique mechanics that are vastly different from the previous boss. We had originally planned this creature planned to be the last boss for the player to fight before the game ends.

​

Below is a trailer on what someone expects to see in the project:

​

​

 

 

​

​

​

​

In this project, I mainly worked on site with the team. Working with other team members remotely, we communicated through Discord with headsets and even using a speaker and microphone setup so that everyone can hear the people talking on what ideas or things they have to say during scrums or team discussions. This latter setup worked greatly in the team's favor as it enhanced team productivity and allowed everyone to know where they were, development-wise, in the project. It was like they were always there in the room working rather than working remotely.

​

My main responsibility was working on the RPG and player systems that were needed in the game. The RPG system was a practical application of a modular system that I already started working on in a previous study module. 

​

The abilities in the RPG system are mainly stored as scriptable objects. This enabled everyone using the system to modify data for each ability through the Unity Inspector instead of hard coding it into the script or going into the script for modifications. I've never used or worked with scriptable objects before so that is one of the reasons why I started working on it in advance, this gave me a bit of a head start on working on improving the system rather than learning it completely during the development of the project.

​

This is an early version on what the data inside of an ability looks like. The pre-requisites are the abilities you need in order to unlock this ability, whenever you want to unlock a more powerful ability you would need to have this ability first to unlock it. 

​

The exclusions lets you exclude certain abilities whenever you have this ability. For example, whenever you have ice powers/abilities you will no longer be able to upgrade or unlock fire abilities.  

​

The abilities are contained within a skill tree, which is a scriptable object as well, and it excludes certain skill trees like the abilities do. 

​

The video below demonstrates on how this all worked in the early stages.

​

LevelUp01 - Inspector.jpg
RPG early

RPG early

Whenever the skill is added into the character's available abilities in the inspector, the ability is cloned rather than using the actual scriptable object itself. This makes it easier to manipulate data without changing the original.

​

In the video, picking the skill tree through tabs is a completely optional feature that I wanted to be in the system just in case I would need it in the future. In Shaman, the tab feature is not used even though we have two skill trees. It was decided to put all of the abilities in one skill tree and to give off the illusion that there are two skill trees which are the paladin and shaman skill tree.

Final LevelUP Inspector.JPG

Here we now have the latest version on what kind of data an ability has in the Unity inspector.

​

Status effects such as buffs could be applied depending on what the ability does and it can also have a debuff if you would want the ability to act like a curse on the player whenever it's activated.

 

The earlier versions for each ability is setup within a dynamic array. Whenever, an ability is upgraded the script goes through a for each loop and removes the earlier version of this ability and then replaces it with this one within the array. Of course, as stated before these abilities are clones and does not remove the original ability which is stored in the assets folder. 

 

The tool tip for UI and the HUD was recently added to help the player know about the ability whenever the mouse is being hovered over the ability icon in the skills menu. I'm planning on adding a video feature in the future so that whenever you click on the ability a small video plays for the player to demonstrate on how the ability works. An animations area was added as well to make the skill more impactful when used

​

VFX section is where you can add virtual effects to the ability and make it even more impactful and look better. Of course these ones are just start and end so whenever the ability is activated there is a 'start' animation with the effect that may last for a second and the rest of the animation is handled by the status effect until of course the vfx ends. The duration of the effects is connected to the duration of the ability to make it look consistent throughout.

​

​

Video below shows the skill trees and abilities in play in the inspector during development:

 

Abilities Check

Abilities Check

You might have seen it in the video within the early stages of development of the system but here it is anyway. The character script where you can see all the abilities and skills that the character has are all stored in here. 

​

Through the course of development a lot more data has been added into the character script to make it work with an actual RPG.

​

This earlier version had a section called debug settings. Because at the early stages of developing this system I had no way of using the abilities nor unlocking the skill tree. This no longer exists in the current version.

Character Script Snip.JPG

As you can see in the image below, the character script has changed dramatically over the course of development. Health points and mana points have been added to regulate and control whenever an ability can be used. Body parts were added as well in order for the vfx to work correctly with the corresponding ability. 

​

An XP system was added into this as well, letting the player gain skill points whenever they level up. The 'special points' are there to enable the player to unlock a skill tree whenever available but, like I mention before, that feature is not used in Shaman. This system is also being used by the boss AI. The AI does not level up its abilities though, but already has the abilities unlocked. It's up to the developers on what abilities it gets to use and how it uses them.

Final Character Snip 01.JPG
Final Character Snip 02.JPG

All in all, I really liked working on this system, it gave me sufficient knowledge on how scriptable objects worked. I know have a basic RPG system that can be used in games that I plan to do in the future. I will consistently be improving the system, as it improved my programming skills in areas I struggled in the past, like this one having complex data structures (dealing with linked lists, dynamic arrays, etc.).

​

I really enjoyed working on this project and will really miss this awesome team that made this project possible!

Try the game out for yourself and hopefully you have fun!

Shaman01.jpg

Team Shaman:

ALEX PLANE [Programmer] - https://alexplane.wordpress.com/
BONNIE LAWSON [Artist] - https://bonnielawson.artstation.com/
BRADLEY WHITEHEAD [Artist] - https://bradley-whitehead.artstation.com/
BYRON CARTER [Designer] 
CALEB ROLPH [Artist] - https://caleb_rolph.artstation.com/
KOSTA NASSIS [Programmer] - https://www.technexgames.com/
NICO PADUA [Designer] 
PATRICK PADUA [Programmer] - https://patrickpaduadev.wixsite.com/patrickpadua
SHADE ST. JUDE [Designer]

bottom of page