I was going through some old projects and stumbled upon some code where I was playing around with random generation. Releasing here for those who are interested in that kind of thing. I had consolidated them all into one script, Though I have added in the old scripts if you wanted to see those.
https://create.roblox.com/store/asset/78663988678893/GeneratorScripts
You can switch between the different generations by changing selectedGenerator:
local generators = {
Arena = generateArena,
Platform = generatePlatform,
Rocks = generateRocks,
Sphere = generateSphere,
NoiseStone = generateNoiseStone,
FloatingIsland = generateFloatingIsland,
RockMoundCluster = generateRockMoundCluster,
}
local selectedGenerator = generators.Arena
Each generator has its own config in the main script. There are more variables you can adjust in the config. Just go to the selected module and look at the default variables/config
For Example
local ARENA_CONFIG = {
Name = "BattleArena",
ReplaceExisting = true,
Center = Vector3.new(0, 5, 0),
Radius = 300,
RegularPartCount = 2500,
ClusterCount = 7,
MinClusterSize = 150,
MaxClusterSize = 150,
PartSize = 15,
MoundHeight = 8,
WallHeight = 150,
WallPartCount = 2500,
BaseEnabled = true,
BaseThickness = 2,
}
export type BattleArenaConfig = {
Name: string?,
Parent: Instance?,
Center: Vector3?,
Radius: number?,
RegularPartCount: number?,
ClusterCount: number?,
MinClusterSize: number?,
MaxClusterSize: number?,
ClusterRadiusScale: number?,
PartSize: number?,
MinPartHeight: number?,
MaxPartHeight: number?,
MoundHeight: number?,
WallHeight: number?,
WallPartCount: number?,
WallJitter: number?,
NoiseAmount: number?,
YieldEvery: number?,
BaseEnabled: boolean?,
BaseThickness: number?,
TerrainMaterial: Enum.Material?,
TerrainColor: Color3?,
BaseMaterial: Enum.Material?,
BaseColor: Color3?,
BaseTransparency: number?,
ReplaceExisting: boolean?,
Seed: number?,
}
Photos:






