Blocky Terrain plugin

title by me


I haven’t seen any plugins that let you use click and drag to build so I made one which you can get for free here


the ui

This post is a quick overview of notable features and things to know when using it


Controls

Untitled (4)

  1. Click + Drag: Make a part

  1. Ctrl + Click: Extrude a part

  1. Hold R + Hold Click: Rotates part

  1. Alt + Click: Move a part

  1. Shift + Click: Delete a part

die

Scroll wheel: Used in combination with 1 - 4

You can also find the controls in the plugin description & help panel

Features

Untitled (2)

Remove Unseen Faces

This detects if you can’t see a face of a part from the outside and replaces it with a mesh without that face
It’s limited to 2 faces currently

The face checking also updates when you extrude or rotate a part
Keep in mind this won’t work with surfaces since meshes don’t support them, and also this works better when parts aren’t rotated
The collision of the meshes are set to Box

Master Offset

What the part will be offset by no matter what
It’s useful if you’re working on a grid and it doesn’t align perfectly

Rotate x5

Whether when rotating using Ctrl - R, it’ll snap to the increment times 5

+ 1

Adds a number to the end of the name (Part1, Part2, etc.)
No idea if anyone’s going to use this, but it could make for some pretty cool procedural animations
Re-toggle it to reset the part count

code:
local TweenService = game:GetService("TweenService")

local Info = TweenInfo.new(
	1,
	Enum.EasingStyle.Quad,
	Enum.EasingDirection.Out
)
local Properties = {
	Transparency = 0
}

for i = 1, #workspace.test:GetChildren() do -- change test to your directory
	task.wait(0.05)
	
	local Tween = TweenService:Create(
		workspace.test["Part".. i],
		Info,
		Properties
	) Tween:Play()
	
	Tween.Completed:Connect(function()
		Tween:Destroy()
	end)
end

Color Variance

How much each parts color is randomized
You can toggle between randomizing all colors (RGB) or just the brightness (V)

Surfaces

You have 5 to pick from: Studs, Inlet, Universal, Weld, and Smooth

surfaces

Scroll Direction

Changes what direction mouse scroll scales the part you’re placing

scroll

Shape

You can change the shape to any 1 of roblox's default primitives
Note that for scaling cylinders, you have to rotate them afterwards if you want them to face upright as there's no global rotation

After scaling a sphere, if the size is, lets say (10, 4, 8), it’ll get resized to the smallest of the 3 which makes it (4, 4, 4) | Just a tiny convenience

Add X color every block placement

image

This lets you specify how much color you want to add or subtract each time you place a block [delete or undo don’t affect this]
Using this you can achieve cool gradients like this:

image

Info

Untitled (3)

1: To change the scale/transparency of the UI, go into CoreGui (File → Studio Settings → Explorer → Show CoreGui button near the bottom) and change these int values
This plugin’s UI extends across most of the screen so setting scale to anything larger to the default will make some things hidden so keep that in mind

the


2: Turn off tools (Select, Move, etc.) while using this plugin, it causes you to select things on accident



3: Parts on any axis sized under 0.1 will be deleted

It’s to stop very thin parts being created + you’re not really meant to build that small


4: The Rotation (y) option is like 25% broken, it treats your input as if the part isn’t rotated

It’s a compromise to stop really weird scaling bugs (to see this, make a gui object and change its rotation then try scaling it) and if I find some way to fix it in the future I’ll implement it

5: You have to type the material manually


Here’s some things I made using the plugin:

you could probably make something better I spent < 20 minutes on each of these

also, special thanks to ElectricNinja01, who helped me with the UI, and epicrobloxpro1994, who let me use his avatar in the speech bubble images lol

If you have any bug reports let me know, and if I have the time I’ll add any suggestions
I hope you find this useful bye

35 Likes

oh this is gonna be awesome to mess with

COOL RESOURCE!!

4 Likes

This looks so USEFUL and AMAZING!!!

Perfect for Simple but Detailed builds!
And the Studs mode would be Awesome for Complex terrain on Old Styled games!

I am **Definitely ** going to mess around with this.

I could make Ultimate Looking Maps with this for Novetus… :grin:

3 Likes

I’m happy you guys like the plugin

I went ahead and added 5 things, Left Alt to move parts, clamping the part size to 2048 when extruding so it doesn’t accidentally shift, a small axis line when scaling, rotating, or moving, replacing the ghost part with an adornment so it doesn’t get in the way when selecting, and an option called Remove Unseen Faces which you can read more about in the Features tab on the post

Oh yeah and I also fixed you not being able to set bottom as a scroll direction (just had to change a value from 5 to 6)

I recommend making the ribbon tools unselected when you open the plugin so it doesn’t break, It can be done using plugin:SelectRibbonTool(Enum.RibbonTool.None)

other then that, I would use this for custom floors and such

1 Like

I tried that before and it doesn’t work, it shows an error saying that setting it to none isn’t allowed

edit: figured it out you have to use ‘plugin:Activate(true)’ instead

this looks very cool for building old roblox styled environments, all blocky and cool, I approve this resource.

1 Like

The extrude on this is very helpful

1 Like