Part Surface Weld Changes [Activated!]

Not sure if it’s related to this change, but people spawning in my game have their feet welded to the terrain.

https://gyazo.com/814116db640e8d511bb475d792a04b2d

As funny as it looks, they can’t move unless they remove the terrain block they spawned on.

17 Likes

The units in my game are getting welded to other parts in my map. I tried making everything smooth to no effect.
Please undo this/fix the issue. It is making my game unplayable.

10 Likes

@Garnold @Alkan @Deferend

The change has been reverted back to a Beta Feature.

8 Likes

Will this problem be returning if/when these changes are rolled out?

1 Like

Hope it won’t because Broken will go into another drain.

3 Likes

Just out of curiosity, what was the problem that caused these welding issues? Did MakeJoints accidentally get changed to weld everything?

5 Likes

No, we will make sure that this issue does not occur, its a bug.

The parts welding on insertion is on by default for clients (its on by default in Studio too, but it can be disabled), so that caused more things to be welding that weren’t before. I’ll let you know whatever the new solution is.

2 Likes

I thought that inserting models didn’t weld them to other things by default, unless the tool that inserts them manually creates the welds. This blows my mind. How would I reproduce this behavior?

Remember that joints were changed to be explicit and everything (models and worlds) that once used implicit surface joints are now automatically welded upon loading?

Maybe the backend that automatically converts old models to explicit joints depends on something that was changed in the update.

this was also a concern of mine, everything becoming solid objects, wheels welded to the frame and the ground, i honestly dont see why all this is necessary, i used surface welds and what not since 2010 and i never had a problem or complaint, i had full control over what a part is welded to, and what said part wont weld to, i get that your trying to simplify the system, but this is TO simple, having a part weld to everything automatically, and completely out of our control seems just ridiculous and a annoyance.

3 Likes

There are WeldConstraints. You can visually control which blocks are joined with them. You can even join a group of intersecting parts together by selecting all the parts and then clicking the create WeldConstraint option on the Model tab.

This allows you to visually edit joints as you see fit without accidentally joining your models to other things.

Of course, I believe it is possible for a plugin to visually-display legacy joints, such as those created while dragging bricks around in Studio, so you can break the ones you don’t want.

Though the WeldConstraints linger around when you duplicate and drag parts, you can quickly find and break them, which makes up for the extra effort.

4 Likes

ok, so dues the automatic welding permanently stay as something you can turn on and off on top of this?

Automatic welds are created with legacy welds. You can’t see them visually without a plugin, but they are automatically created and broken as you drag blocks around.

In constrast, WeldConstraints are completely manual. They don’t automatically break, and you need to create them with some button clicks as I described before, but you can see them visually using only built-in tools.

The sole exception I know of to their manual nature is that Explosions automatically break them by disabling them.

4 Likes

Heads up, we haven’t forgotten about this and we plan to globally release this tomorrow!

The previous bug was related to MoveTo, and has been fixed.

6 Likes

Hello, I just wanted to ask for a heads up on what to do if my game relies heavily on surface-types? Joining to outsiders seems to join smooth against smooth surfaces which is not ideal for major areas of my game. It’s following the brick-built style of classic games and the original surfaces worked perfectly.
Thank you!

If you game relies on building using original surface joints during gameplay, then you can use MakeJoints to still create the legacy joint types based on surfaces. This is described in the original thread. There’s also a reply that has a code example on how to recreate the original JoinToOutsiders behavior with MakeJoints. There may be other solutions for your case but I don’t know a lot of the details.

2 Likes

Thank you! I will put this to use.

1 Like

I’ve noticed recently that random welds have started to appear on parts, even when the parts are anchored.

Does this have anything to do with this update, and is there any way to disable it?

It’s kind of annoying and messes with my game.

3 Likes

Yes, just disable “Join Surfaces” via the button shown in the post’s image.

“Join Surfaces” should be off if you ever want to handle welds yourself with WeldConstraints.

Would it be possible to change it so it doesn’t affect anchored parts though?

It’d be a great feature to use if it were to only work with non-anchored parts (which are the only ones it’d have effect with anyways), but having to enable it and disable it continuously every time I want to switch between buildings can get tedious.

Thanks for the reply though! :+1:

We can look into it, however this is existing behavior of the surface join system. Surface joining itself is not a new feature (its been around since the beginning), the only change here is that now all SurfaceTypes join with each other with the same joint type. If you weren’t using it before there’s little reason to start now, WeldConstraints are still the preferred method.

1 Like