Forest Logo
search
package_2

world-weaver

By @chicken-ahm-12

Roblox

Mirrored from Wally

WorldWeaver

A powerful roblox terrain generation tool that lets you generate terrain procedurally. It provides you with an extensive set of settings that allow you to generate the type of terrian you want, with the type of biomes you want, similar to how minecraft works.

Getting Started

Proper Paths

Make sure the paths to modules are properly sourced. Especially the one sourcing the Painting module in Generator:

-- Generator.luau
local Painting = require(script.Parent.Painting)

Create a script

First write a script and make variables linking to the Modules Settings and Generator:

local Settings = require(path_to_settings_module)
local Generator = require(path_to_generator_module)

Create a settings object

Initialize a Settings object by running:

local new_Settings = Settings.new()

-- Changes to these new settings (Interpolation Values to be specific)
-- should be made here

-- ///////
new_Settings:BuildCache() -- this is necessary for proper smooth terrain

This ensures you can make different settings (such as different size, amplitudes, etc) to your liking or if there different maps at different places within the server, those maps could each have their own settings.

Generate Terrain

Step 1: Find this command box

Step 2: Paste your generation script (Where you create the settings object, make your desired changes and input into the generator, here

Step 3: Run

voila! run the script and watch your terrain generate realtime!

Best Practices

Generate test worlds

Instead of running in terminal, you could make a proper server script with proper paths and then generate a test world by playing the game. once you are satisfied with the generated map after tweaking it, you can save those settings in a script for future use and if you want to generate right away, copy those changes (or script) and generate in the terminal.

Save the settings of different kinds of maps

As stated above, if you like different maps with different characteristics, biomes etc (that you added or changed), you should save them in a script so you don't have to keep thinking what to change to achieve the same map that you did in the past.

Size on all axis are better off equal

Although this is not strictly necessary.

There are size parameters that control the size of your terrain:

Settings.MapWidth = 600
Settings.MapBreadth = 600

The best practice that ensures your terrain generates without hiccups would be to make these values equal, that is:

Settings.MapWidth = 300
Settings.MapBreadth = 300

Size should be a multiple of division

This setting is what controls how much area (in this case 600 by 600) will be generated in a single moment:

Settings.CaveDisabledMapDIV = 600 -- or 300 whatever you like

Make sure your width and breath are a multiple of this (in our case a multiple of 600):

Settings.MapWidth = 600 -- or 1200 or 1800
Settings.MapBreadth = 600 -- or 1200 or 1800 

or it should be less than the division itself

Settings.MapWidth = 300 -- or 175 or 500
Settings.MapBreadth = 300 -- or 175 or 500

Don't go for too many blocks

if the size is too large (like 1200 by 1200) roblox will have a hard time closing and or will lag after a good while in run-time

the best way to deal with this would be to create your own chunk loader and unloader that generates a certain chunk and ungenerates other (this might come in future updates)

In any case a size of 600 by 600 or 800 by 800 is a very big map in of itself so you don't need to worry about that in first place.

Use Roblox's in built terrain generator for generating large maps

If you want to make maps as large as 2000 by 2000 studs or More, you should use Roblox's in built terrain generator by setting:

Settings.useInBuiltTerrain = true

Though you would be better off setting fast blend to true as well for faster and efficient calculation of terrain:

Settings.fastBlend = true

FastBlend or normal Blend?

You can choose any, and see whose results you like the more. Normal blend blends more whereas fastblend gives more characteristics to biomes. Both look nice in their own way, so it is subjective. Although, if you are generating very large maps, going with fast blend is better.

Snapshots

(Smoothify = false) + (useInBuiltTerrain = false)

[image: Generated_Terrain] [image: Generated_Terrain]

(Smoothify = true) + (useInBuiltTerrain = false)

[image: Generated_Terrain]

(Smoothify = false) + (useInBuiltTerrain = true)

[image: Generated_Terrain]

(Smoothify = true) + (useInBuiltTerrain = true)

[image: Generated_Terrain]

Package Details

Install command (Click to copy)


Version

0.10.1

License

Apache-2.0

check_circle

Safe for commercial use

infoModified files must carry a notice of changes. If the package ships a NOTICE file, its attributions must be preserved.

Automated license review — not legal advice.