dimanche 23 novembre 2025

 

The difficulties of Ledge Climbing

Hello guys! 

Okay, so remember last week we talked about ledge climbing and how hard it was to make, and all the edge cases that were needed to support a clean climb.

AND I DID IT! Thank you, thank you, I'm proud of myself.

Here is a quick video of my current result that I will continue to expand upon: 


As you can see, it is okay. Some values still need some tweaking, but overall, the result looks great.

What is missing

I'm going to explain how I did it, but before I do, I just wanted to tell you what is still missing and what I will try to implement next week.

First, there are two edge cases that are not currently taken into account: climbing into small spaces and crouch, and vaulting (running + ledge climbing).
I wanted to work on those this week, but time passed faster than I thought.

Climbing into small spaces isn't really hard, we just need to take into account the amount of space above the player's feet at the ledge and if it is smaller than the walking height but higher than the crouching height, then we authorize the climbing and crouch the player.

Vaulting is a bit harder. In addition to getting the climbing ledge, the player also needs the second vaulting ledge where the player will vault towards. You'll see that it is easy to get, and that I already got it, but we also need to make the player vault, which is something I did not do yet. But I will... next week.

How did i make my first person character climb a ledge ?

First as all good devs do (pretty sure it's a bad habit), I tried searching how others did it, and I found some but not complete answers:

Game for tourist made a very good example video of how he did it. It was a good video, but it didn't really show things for me to completely understand : Dynamic Movement & Combat For Stealth Games - Steal From Gods Devlog #1

wrld-bldr is the one that really unlocked my brain with his example video showing the raycast he used in his custom parkour system : A look at most of the traces running my custom parkour and ledge climbing system. This really helps me understand what the player controller is expected to do and search in order to climb.

So how did I do it? SIMPLE! 

Warning, I'm going to say raycast a lot, but I'm talking about spherecast, as it takes into account the scale of the player.

First, we need to find the edge we are going to climb. For that, we must throw some raycasts in front of the player from the feet to the head in the forward direction of the player transform for about 1 meter when walking (you can increase it when sprinting, I think). After you've got those raycasts, you find the highest raycast that did not touch anything, and you get the previous raycast that did touch something, and here is your ledge. 

Now you need to find if there is enough space for the player to climb inside it. So, you first check if there is enough space above the player's head by casting a raycast upward, and then you cast another raycast upward at the ledge point you found earlier. If all those conditions are met, you can climb.

But how do you climb? For me, I took the movement inputs away from the player and moved the player body by lerping it toward the ledge point with some additional Animation Curves on the Y axis to not feel completely like a lerp and more like the player is really climbing.

I also added some camera animation effects by rotating the camera angle. I first tried using the Milkshake camera shaker plugin by road turtle game but it did not feel right, so I made a custom camera animation system, which still needs some work but works just fine.

I also added some tweaking to the condition values to climb, like when you climb by just jumping while touching the ground, you climb faster, but when you climb by jumping when not touching the ground, you climb slower.

Final note of the week

I hope this was interesting for you guys, and I will get back to you next week with a new update on vaulting, climbing into small spaces, swimming, and sliding.

If you have any feedback, I'll gladly take it!

See you next week!

PS : i know I said that I would be posting every Sunday, and that technically I'm posting every Monday at 01 AM, but that's because I'm French and a night owl, so for me it is the end of a typical Sunday :)

dimanche 16 novembre 2025

 Bonjour Bonjour, fellow citizen of Belleville.

As i said last post, today is all about the PLAYER CHARACTER. But lets face it, for now i just want to copy the work of Arkane homework from dishonored 2. So first, lets get a simple character movement controller.

Simple Player Controller


For now, the player controller can run, jump, crouch, move the camera to the left or right with an angle, and, it is not visible in this sneak peek but, there is a nice step mechanic so the character does not get stuck on small ledges. 

You can also see some minor feedback like a head bob when walking or running and some vignette effects when crouching. Those are good ideas, but their current implementation is not great. It is not really seamless with the entire script, and it can be abrupt or create visual artifacts.

Here are some of my references : 

Dave make some great tutorials with accessible script : https://www.youtube.com/watch?v=xCxSjgYTw9c

I'll share my entire script once it is all good and clean.

What's Next ?

Now that we've got the main movements, what's next? 

Well, we still need to be able to slide, ledge climb, and swim. Sliding and swimming can be easily implemented, we just need to add new variables and conditions. But ledge climbing is going to be the hardest, mainly because there are so many environment variables to take into consideration that i will probably dedicate an entire post about it in a few weeks.

But this is not the end for our player character. We will then add feedback to each of those movements, AND there will be an entire post about variables of those movements and what those variables are for Dishonored 2.

So stay tuned and wait for the next blog post next week.

Cheers.









mercredi 5 novembre 2025

Apologue Des Songes : Belleville - Pitch Presentation

Bonjour Bonjour, fellow citizen of Belleville.

Today I present to you my current project Apologue Des Songes : Belleville .

A first-person, immersive sim and stealth game.

As a nameless, discover the vast Arcology of Belleville, governed by political shenanigans, mysterious shadows, and alliances!

You were brought from a faraway land, awakened on a bridge, and felled on the coast at the bottom of the city. Prepare yourself to resolve citizens' requests and assassinate your foes as you make your way to the top of the social hierarchy and uncover both the city’s and your origins.


Please mind that everything that I am going to talk about is currently at the prototyping stage and is subject to change.

Please mind that I do not own any artwork used. You can find the Pinterest link to any artwork in the pitch deck, and this project is, as of now, not aimed to make any money.


Context

Maybe I should first present myself. Hi, I'm Guyf. A few months ago, I finished my license in game design, and I am now an intern in a big studio. As some of you are aware, an internship does not promise a job; therefore, I need to find one soon.

I am happy with my projects done in school, but they are all too niche in their genre to be interesting for a job in the industry. So! I decided to start a new adventure with more common gameplay features in the industry.


The process

Right now, I have won some time after work by finishing my internship report. But! I still have little time left, and I am very tired. However, this is not going to stop me. I'll work every weekend I can and a little bit after work.


Why Apologue Des Songes : Belleville ?

As you are aware, Silksong released recently, and I got hooked. But I also recently played Dishonored 2 for a second time, and I got mesmerized by those two games. I loved the player and story progression of Silksong, and I loved the gameplay and story paths of Dishonored 2. AND I WANT TO MIX THEM! 

Now... I need to calm myself because this is quite ambitious, and I am, for now, alone.

This is why I made a pitch deck to present my view : Pitch - Belleville


The next Steps

Now what is next? IT IS PROTOTYPING TIME!

But I can't prototype everything, I'm only but a lonely person and there is so much I can do. Therefore, I must focus on a single point, a difficult and time-consuming point: the PLAYER CHARACTER. Belleville is a first-person stealth game, and stealth games require complex and fluid character movements to enable players to go everywhere they can imagine.


Final Weekly Note

This is a personal project, but I am always happy to meet new people, and if you believe you can bring something, or if you want to work on something personal which could help this project, feel free to reach out to me here (I don't know how this works!).

So this is it for today. I'm going to try to make these type of blog posts every Sunday, except for this week, with a more detailed presentation of content I'm prototyping.

Cheers.

  The difficulties of Ledge Climbing Hello guys!  Okay, so remember last week we talked about ledge climbing and how hard it was to make, an...