The Script Is Kinda Old Possibly From 2014 Or 2013?
I Wanted To Make The Terrain Infinite And I Want To Add Water And Make Triangle Terrain
Here’s The Script
if game.Workspace:FindFirstChild(“terrainFolder”) then game.Workspace:FindFirstChild(“terrainFolder”):Destroy() game.SoundService.TerrainSound:Destroy() end
local seed = math.randomseed(os.time())
local terrainFolder = Instance.new(“Folder”,game.workspace)
terrainFolder.Name = “terrainFolder”
script.Parent.TerrainSky.Position = Vector3.new(0,150,0)
script.Parent.TerrainSky.Parent = terrainFolder
local grass = Instance.new(“Part”)
grass.Material = Enum.Material.Grass
grass.BrickColor = BrickColor.new(“Grime”)
grass.Locked = true
grass.Anchored = true
grass.Name = “Grass”
local mountain = Instance.new(“Part”)
mountain.BrickColor = BrickColor.new(“Reddish brown”)
mountain.Material = Enum.Material.Slate
mountain.Locked = true
mountain.Anchored = true
mountain.Name = “Mountain”
local tree = script.Parent.Tree:Clone()
local structures = script.Parent.Structures:GetChildren()
for i=1, 400 do
local terrain = grass:Clone()
terrain.Size = Vector3.new(math.random(100,2000),math.random(10,100),math.random(100,2000))
terrain.Position = Vector3.new(math.random(-3000,3000),0,math.random(-3000,3000))
terrain.Parent = terrainFolder
end
for i=1, 100 do
local terrain = mountain:Clone()
terrain.Size = Vector3.new(math.random(50,300),math.random(100,400),math.random(50,300))
terrain.Position = Vector3.new(math.random(-3000,3000),20,math.random(-3000,3000))
terrain.Parent = terrainFolder
end
for i=1, 1000 do
local newTree = tree:Clone()
local pointA = Vector3.new(math.random(-3000,3000),300,math.random(-3000,3000))
local pointB = pointA + Vector3.new(0,-1000,0)
local ray = Ray.new(pointA,pointB)
local part,pos = workspace:FindPartOnRay(ray)
newTree:SetPrimaryPartCFrame(CFrame.new(pos))
newTree.Parent = terrainFolder
end
for i=1, 100 do
local structure = structures[math.random(#structures)]:Clone()
local pointA = Vector3.new(math.random(-2000,2000),300,math.random(-2000,2000))
local pointB = pointA + Vector3.new(0,-1000,0)
local ray = Ray.new(pointA,pointB)
local part,pos = workspace:FindPartOnRay(ray)
structure:SetPrimaryPartCFrame(CFrame.new(pos))
structure.Parent = terrainFolder
end
script.Parent.TerrainSound:Play()
script.Parent.TerrainSound.Parent = game.SoundService
script.Parent:Destroy()
And I Wanted To Make The Terrain Look Natural And I Wanted To Make Sky Islands
Around Make It 20% To Spawn