local a=64;local b=2;local c=512;local d=10;local e=0.05;local f=50;local g=0.2;local h=0.5;local i=10;local j=0.1;local k=0.1;local l=50;local m={}local function n(o,p,q,r)return math.noise(o*q,p*q,0)*r end;local function s()for o=0,c-a,a do m[o]={}for p=0,c-a,a do m[o][p]=n(o,p,e,d)end end end;local function t(o,p)local u=math.floor(o/a)*a;local v=math.floor(p/a)*a;return m[u][v]end;local function w(x,y,z)local A=Instance.new("Part")A.Size=Vector3.new(b,b,b)A.Position=x;A.Anchored=true;A.Material=y;A.Color=z;A.Parent=workspace end;local function B(x)local C=math.random(5,10)local D=2;for E=1,C do local F=x+Vector3.new(0,E*b,0)local G=Instance.new("Part")G.Size=Vector3.new(b,b,b)G.Position=F;G.Anchored=true;G.Material=Enum.Material.Wood;G.Color=Color3.fromRGB(101,67,33)G.Parent=workspace end;for o=-D,D do for H=-D,D do for p=-D,D do if math.sqrt(o^2+H^2+p^2)<=D then local I=x+Vector3.new(o*b,C*b+H*b,p*b)local J=Instance.new("Part")J.Size=Vector3.new(b,b,b)J.Position=I;J.Anchored=true;J.Material=Enum.Material.LeafyGrass;J.Color=Color3.fromRGB(34,139,34)J.Parent=workspace end end end end end;local function K(L,M)local N={}local O={}for o=L,L+a-b,b do for p=M,M+a-b,b do local P=t(o,p)local Q=math.floor(P/b)*b;local R=Q+f;local S=n(o,p,e,1)local T=S>h and"forest"or"plains"local y,z;for H=R-b,R,b do local x=Vector3.new(o,H,p)if H==R then y=Enum.Material.Grass;z=T=="forest"and Color3.fromRGB(34,139,34)or Color3.fromRGB(124,252,0)elseif H==R-b then y=Enum.Material.Slate;z=Color3.fromRGB(139,69,19)else break end;table.insert(N,{position=x,material=y,color=z})end;if S