These Ladders are Ruining My Life

I’m the developer of a little game called Tower Simulator.
It’s a pretty simple concept. There’s a tower. You can climb it!
…Except, not quite.

I’ve had a little trouble with this thing called Roblox and how it handles this concept called Ladders.

There used to be random points when climbing a tower where it would potentially not allow you to climb further at all,.as if there was nothing there.
Alas, I thought it might be the fact the tower is full of layers of Trusses, Roblox’s defacto ladder part, and that they might be causing issues. So, I decided to remove trusses. After all, they were probably too complex physics-wise for my massive tower anyways - might as well replace it with a real ladder - As roblox allows that, right? Just put parts near each other, then, bam! Ladder.

Or. So I thought.
My new ladders did let me go up, but there was one catch;
If you separated from the ladder, you were then forbidden from going back up it.

Displayed below is a video of me testing out various potential configuration for ladders.
You can quickly see the problem night and day - If I jump off a ladder, I can’t re-grab onto it while in the air.
https://i.gyazo.com/a8748caa66a7529d2db8e0b022f9b2bc.mp4

This is absolutely destroying me mentally because I can’t bring myself to hijack my otherwise 100% default roblox character controller and try and code in some special ladder code myself. But I can’t seem to make ladders work. What is the magical configuration of parts required to allow me to climb like a normal truss, with minimal parts/complexity??? Is there some special shape I need to know?

Please. Save me.

P.S. How do I embed this video? I thought I’ve done it before.

3 Likes

Can you go more into this? I think trusses are the only solution here unfortunately and this seems easier to solve than potentially writing your own climbable ladder code.


Also I’m not sure if you made this topic before, but one of my replies under a topic like this was pointing out complex truss collision geometry, which turned out to be false. TrussParts (all style options) have box collision, not entirely sure why the mesh collision visualizer showed otherwise.

No, I really can’t - I never figured out the problem. My game spawns new layers to make an indefinitely vertical tower - each layer had a truss in them. At random points for 5-10 layers, climbing would cease working. Usually happened quite low and fast, and examining in studio led to no results - it was rare enough it almost never happened in studio, and the times it did, i found no malformations in the model.

Are these random points near the intersection of new layers? Maybe you could slightly overlap them to fix this?

Shouldn’t have an issue like that - trusses and ladders usually very easily span gaps.

And since roblox REFUSES to let people resize trusses normally, overlap = significant part count increases. Oof!

Try having your custom ladder with CanCollide set to false, then put an invisible truss over it.

2 Likes

…What?

I can’t even begin to describe how unusual of a suggestion this is, lol
can I have some reasoning on why this would do anything?

He has a point. The ladder doesn’t actually help you climb – its the invisible truss located within it that allows you to have the flexibility that the dynamic ladder doesn’t.

I do this often with ropes because I make it look like you can climb said rope-- but you actually don’t, you climb the invisible truss inside of it

5 Likes

Have you considered submitting a bug report for these random points? Are there repro steps I can follow or maybe a place file that has this bug in it? I can try and mess around and come up with a viable solution.

It happens maybe once in a thousand places, with absolutely no steps to reproduce or idea as to what the cause could be.

Go to 1:45 in this video:

Let me know if this helps at all.

This is because of your character’s falling animation, I’d suggest not allowing custom animations in the game.

2 Likes

True, maybe you could also use R6.

1 Like

I was trying to use parts instead of trusses to try and improve performance. Their hitbox doesn’t change when i try to show decomposition geometry so I’m pretty sure even transparent they’re a much more complex-shaped object than ladders - this is the system I was already using before and, that and the fact the truss shape means it’s impossible to ‘fit’ them to certain dynamic shapes I might need to make, means I don’t particularly wish to go back.

Did you try using the default animations as @PixelCrix suggested?

Make your game R6, many roblox obbies have R6 because it have lesser physics, in obby you often do ladder jumps and wall flick and ladder flick, this is why R6 is best for them, however, if your game is not an obby game and you still want to do that with R15( more physics), there is a way, lower the gravity of your game, and make the player animation better, the animation your using is basically hard to climb because of roblox physics, its real and true that its possible to climb any ladder in the air with R6

Trusses improve performance because roblox has built-in objects like meshes and truss

1 mesh is better than 100 parts
1 truss is better than 1000 parts

See when your making ladder, the client (player) has to load each part of the ladder, but with truss the player loads the truss only and will not lag the player, although many obby games do have the block trusses because they look better compared to Roblox truss, but when your going for performance, you shouldn’t use many parts

Yeah, 1 truss is better than 100 parts. But to cover the area I need, I have to place my trusses horizontally - Which means I’m using a ton of trusses in layers. At that point, a couple of flat layed parts quickly work better - You don’t need 100 parts vs 1 truss. Trusses are impossible to resize evenly, meaning you’re more likely to have 100 trusses than 100 parts to begin with! aha.

Followup:

  • No, I’m not going to use R6, disgusting. But, it does fix it.
  • No, changing animations to default did not help this.
  • Yes, I think I have found a solution!

Apparently, it’s the hitbox - If you select Inner hitbox rather than Outer in avatar settings, the ladder hitboxes are registered correctly. Simple 'as.

EDIT: Unmarked the solution because there still seems to be a lot of inconsistencies. I’ve for now turned player model sizes to default r15 as custom sizing seems to make it much worse.
Hitbox type has an effect but it is hard to get it consistent still.

2 Likes