Opinion: Should a ledge climbing / walking system be procedural or baked?

hello everyone! im curious on everyone’s take in making a ledge climbing system (like in hitman 3), do you think it should be procedural with checks for like if the ledge is in a certain place or if there should just be like an attribute inside the ledge? or is there a better way to do this? and what would be the best way to animate it? stuff like that, im not asking for someone to code an entire system imjust curious about how you guys would do this. thanks for checking this post out!! (i havent started writing the script so i have no code yet)

One very efficient method: Raycasting.

RunService:BindToRenderStep a function that casts two rays, one from the head, and one from the HumanoidRootPart. If the root part ray hits and the head one doesn’t, they are at a ledge.

By ledge climbing, do you mean like mantling? If yes, you can cast a downwards ray a bit infront of the position to get a position that you can move the character to.

1 Like

thank you! im just a little confused, are the rays on the lookvectors of the head and rootpart? sorry the ledge system i want to make wasnt very descriptive, heres a better video showing what i would like to do: hitman ledge system it is kinda graphic after the guard shoots at him fyi, anyway i want to make so that you can walk on ledges like he does from seconds 13 to 15.

1 Like

Id always bake it honestly. If you have an absolutely massive map, procedural is probably ok, but baked is almost definately better because, from experience with these sorts of things, itll probably take less time to manually bake it than to debug all the weird issues that will come with weird edge cases in your map. Plus it gives you more control, allowing you to do things like climbing unusual shapes or preventing climbing where not intended


yeah that makes sense. what do you think would be the best way to classifly what parts or models are ledges do you think? attributes? tables? is there something else thats better?

Attributes certainly, you can then just use the tag editor.

1 Like

Tags. Definately. I suggest making a component system, theyre life savers

1 Like

thanks guys, ill check it out. another opinion, how would you guys make the activation work? a proximity prompt or somethin? do you think it would be best to incorporate root motion into the animations or is there a better way to position the player on the ledge? how do you make the player stay on the ledge rather than just walk off with roblox’s normal movement system?

Id find a way to animate the root position, but you can also never go wrong with a custom movement controller, they’re absolute life savers

1 Like

what exactly is a custom movement controller? i didn’t see anything about it on google