Inspiration

The connection between people, especially between generations.

What it does

Chained to Oakvale is a game! Boot it up to experience its game play and story.

Story

Our interpretation of links was the connection between generations. Our protagonist is a witch who, along with her friend, was blamed for a ghost attack on their village. She was imprisoned for hundreds of years and now wants to figure out what happened to her friend so long ago. You can do this by using a tombstone to travel back in time to that person's life. However, since the village collapsed, only the youngest tombstone remained intact. Using your witchy powers to link yourself to the time of death of the poor child who had passed, you can save him from dying an early death. As a result, he had a chance to care for the tombstones of his family members and so in the new present, you can read more of the tombstones! Go back in time, see the memories of those who have passed, and use the butterfly effect to repair the broken down graveyard to find out what happened to your lost friend.

How we built it

We used the Godot engine to develop the game and Asperite to create all the assets; emphasizing composition and inheritance

  • For all the chains, we made individuals with a physics body that interacted with each other using pinjoints and collided with other objects with collision shapes. Using a physics engine is really complicated and we had to learn about a lot of properties and use methods we haven’t tried before. It presented quite a bit of challenges because you cannot easily resize or transform physics bodies. So we had to learn to disable or manually alter the chain while doing complicated motions for the main character, like the dash-blink or even turning the sprite to look left or right.
  • The art was all made during the Hackathon using Aseprite, as the main artist for the character sprites and objects, Andrea learned how to shade using the in-engine pallet method which was something they always wanted to do but never could figure out until today.
  • The dash uses a raycast to check if it intersects any chains to free the ghosts from earthly ties. It also times out if you leave a marked spot for too long, so you have to be quick about where you want to go. -We had 2 NPCs but made a generic class to easily implement more. Using a state machine, the NPCs would fall to the ground when in view of the player and when there were still enemies on the map, then would talk to the Player once it was safe.
  • The signpost talk objects were accessible to be used as both regular interacting talk dialogues, and the trigger to change scenes. We used this for the grave sites that were active and also the NPCs at the end of each level in the past.
  • The ghosts were linked to the objects that they held dear in their lives, but when they didn’t have an object, we could use them as free roaming enemies to chase the player, just like in the introduction scene. Having the option to have both behaviours opens up the door to have more different types of enemies and unique interactions with the chains.s.

Challenges we ran into

Managing a mix of procedural and keyframe animation to make a cohesive experience as these can look very jarring when mixed carelessly. The physics nodes also made we want to bang my head against the table. They are very hard to use!!

Accomplishments that we're proud of

It's rewarding to see a game we made ourselves from scratch after thinking in the first 7 hours that we would not finish. We worked a lot faster than we believed we would, and even learned new things. Working with Git as a team was also accomplishing.

What we learned

We gained a much better understanding of how to apply complex programming principles as we gain more practice with these tools. Although it might seem too simple to mention, I think it was very cool how we learned how to “throw” the timepiece on the chain of the witch’s staff, and how it could knock the enemies away. Learning how to “throw” objects will definitely help in my future project

What's next for 'Chained to Oakvale'

We need to add more dialogue to flesh out the story and the characters. We have the foundations to make the graveyard progressively more kept as you helped the people in the past, all we needed were the assets so it will feel more complete.

Built With

Share this project:

Updates