Welder - Lightweight Module For Model Welding

What is Welder?

Welder is an open-sourced ModuleScript that makes it extremely easy to weld every BasePart inside of a Model to the Model’s PrimaryPart. So easy, in fact, that it only takes two lines of code!

How do I get Welder?

Welder is a ModuleScript that can be required from another script and be used from there. But you can also take the ModuleScript from Roblox:

https://www.roblox.com/library/5718676928/Welder

To require() Welder, first make a ServerScript inside of your Model (your Model must have a PrimaryPart in order for Welder to work. You’ll get a warning in the output window if the Model’s PrimaryPart is nil). Then, replace print("Hello world!") with the following code bellow:

local Welder = require(5718676928)

How do I use Welder?

As I mentioned earlier, using Welder is very easy. Right after you require() Welder, simply call Weld() and pass in the Model as an argument:

local Welder = require(5718676928)
Welder:Weld(script.Parent)

To “un-weld” the Model, simply call Unweld() and pass in the Model as an argument:

local Welder = require(5718676928)
Welder:Weld(script.Parent)

Welder:Unweld(script.Parent)

Important things to note

Welder will only work for Models, and the Model must have a PrimaryPart. If it’s PrimaryPart is nil, Welder will print a warning in the output window.

Welder will also unanchor every BasePart it welds. To weld without changing any BasePart’s anchored state, use the following code:

local Welder = require(5718676928)
Welder:WeldKeepAnchoredState(script.Parent)

Welder Documentation

Documentation for Welder can be found here and on GitHub.

Thanks for taking the time to hear me out! If you have questions, comments, or feedback you can DM me here on the DevForum or post a reply bellow.

5 Likes

Welder [v1.1] now supports tools! If your tool has a BasePart named “Handle”, you can use welder to weld the tool’s descendants. Also supports :Unweld(), as well as :WeldKeepAnchoredState().

local Welder = require(5718676928)
Welder:Weld(script.Parent) -- pass in path to tool

If your Tool is missing a BasePart named “Handle”, Welder will output a warning.

1 Like