Game
Transilio Demo
2 years ago

DEV Diary #1, implementing slippery walls


Intro

Hey everyone, we'll be sharing a short story about a new mechanic we wanted to introduce to our game Transilio and how it ended up being a lot more complicated then expected.

What is Transilio?

If you're not familiar with Transilio the mechanics are pretty simple. You play as Dwight the Knight and he's not the smartest so you choose a direction and he'll run at max speed until he hits something solid. Of course killing all demons that cross his path and the goal being to kill all the demons and reach the end of the level as fast as possible.ย Be aware that the demons might kill Dwight as wellย ๐Ÿ˜ˆ

https://www.youtube.com/watch?v=Tsh5u9ZAdLQ

Slippery Wall?

We wanted to add add slippery walls so that if you hit them you would slide along them making the level a lot more dynamic. The idea was pretty simple and I'll try to explain with some pictures. I want the slide direction to be based on the incoming velocity and if it hits the slippery wall at a 90 degree angle go directly right. It also needed to support corners because that just seemed fun. (note to self it was not fun to fix)

slipperywallidea.png

Implementation Hell

We went through a lot of iterations with this but the current implementation is pretty solid but let's start from the beginning.ย 

The first difficult part was making sure we always get a proper normal back from the collision. Because we are using a sphere collision it often happened that we hit the corner of a block causing us to go flying of in a diagonal direction which is not what we intended.ย 

Once we have the proper normal we could actually calculate the direction fairly easy but we had to take one more difficult thing into account. If you look at the fourth example we need to support corners. We had the edge case here where the player could start moving to the right for example and immediately hit the other collision but with basically zero velocity. We had to do some fancy logic so that sliding blocks are aware of their neighbors. If the sliding block has a neighbor and the player is close enough we will immediately redirect the player in the proper direction.ย 

slipperywallblueprint.png

Results

Lot's of bug fixing and adjustments later and the mechanic is alive and actually so funย ๐ŸŽ‰

https://youtu.be/vAP9VefjVHI?si=ox-GGtMdh-dduybn



0 comments

Loading...

Next up

Short intro of us ๐Ÿ’•โœŒ๏ธ

We're an eletro duo based in Seoul ๐Ÿ‡ฐ๐Ÿ‡ท Heavily influenced by the 90s.

Our new album #Xennials is all about the nostalgia of that era ๐Ÿ’ฝ CD listenin ๐Ÿ“Ÿ beeper beepin ๐Ÿ’พ floppy disks floppin days ๐Ÿ˜Ž

Stream now! ๐ŸŽง

https://open.spotify.com/album/3YwWhnHWVy5cA8XOpbaGRA?si=8E9awqUโ€ฆ

Did you know that today is #InternationalJazzDay? ๐ŸŽท๐Ÿ˜Ž

No? ๐Ÿ˜ฏ Well, we couldn't pass up this date!

And what better to celebrate this day than #Pecaminosa #OST? ๐ŸŽท

Let us know what you think about it and have a great weekend!

Here's a peaceful little forest scene for this #screenshotsaturday, from the beginning of the game.

Path of Kami: The Evolution of the Lore

Updated the chest in the maze, adding sound, particles and better animation. But what's in the chest?

Just a Pico sprite

Heya! I wanted to show some gameplay progress i made so far. I hope you like it ^^

In the quest for accessibility, I'm adding Resurrection Shrines for players on the 'novice' end of the platforming spectrum.

In order to unlock the power of a Shrine, you must collect 3 'Souls' from your dead corpses! (the floating blue orbs)

One of the most critical update for Sunblaze demo. Now you are able to pet a cat! Finally!

Spaaaace~

These are background sprites I've created for a game I'm working on at school ^w^ Click on the post to see how the sprites connect. You won't regret it! (personally, I think it's pretty heheh)

Drawn in Piskel using my mouse. Whaddya think?