Author Topic: GSF Procedural Terrain Generator  (Read 40156 times)

How do I delete bricks on the terrain? I hammer them and it does nothing.

You can only hammer brick columns that are connected to the ground, that's where the Solid Ground option comes in. Also, if you set the Terrain Z-Scale to a value less than 1, you will need to enable Ground Gap-Filling as well.

You can only hammer brick columns that are connected to the ground, that's where the Solid Ground option comes in. Also, if you set the Terrain Z-Scale to a value less than 1, you will need to enable Ground Gap-Filling as well.
Okay, thanks!

Please add an option to disable the lower levels of dirt.

Please add an option to disable the lower levels of dirt.
I'll set it to two layers deep in the next update; the terrain depth has to be at least two layers.

Okay, thanks!
No problem :)


My terrain always comes out symmetrical and the trees are always in lines :(

Why is there client-sided code in the server.cs file and client-sided code inside server-sided functions aaaaaaaaaa help what is this scary code monster

And why can I use /PTG_GUI_RestrictionCheck to spam the server chat like hell?
You should just remove the message spam since opening the gui is nothing special and I assume all the buttons/whatever on it don't do anything on the server without being host?

Wait what is this

That's not terrain
What is that
« Last Edit: March 22, 2013, 09:31:07 AM by Zeblote »

Why is there client-sided code in the server.cs file and client-sided code inside server-sided functions aaaaaaaaaa help what is this scary code monster
There are only commands to the client in server.cs and commands to the server in client.cs; it's setup correctly.

That's not terrain
What is that
It's called "trolling" :)

-pic-
My terrain always comes out symmetrical and the trees are always in lines :(
Hmm, try changing the seed value and offsetting one of the Grid Start / End values like the default settings. Also, you can try stretching it out using Terrain XY-Scale.
« Last Edit: March 22, 2013, 10:09:24 AM by [GSF]Ghost »

There are only commands to the client in server.cs and commands to the server in client.cs; it's setup correctly.
Code: (server.cs) [Select]
function PTG_MainMenu_GUI::onWake()
{
commandToServer('PTG_GUI_RestrictionCheck');
}
function PTG_TempMainMenu_GUI::onWake()
{
commandToServer('PTG_GUI_RestrictionCheck');
}
function PTG_BiomeOptions_GUI::onWake()
{
commandToServer('PTG_GUI_RestrictionCheck');
}
function PTG_Preview_GUI::onWake()
{
commandToServer('PTG_GUI_RestrictionCheck');
}
function PTG_CustomHV_GUI::onWake()
{
commandToServer('PTG_GUI_RestrictionCheck');
}
Uhhh

Code: (client.cs) [Select]
if(!$Server::Dedicated)
Uhhh

Code: (GUIScripts.cs) [Select]
function ServerCmdPTG_GUI_IntStartRoutine(%client) <- server-sided function
-----
MessageBoxOK("PTG: ERROR!","Routine already started!"); <-client-sided code
-----

if($UseSd==0)
{
if(($GSx || $GSy)!=0)
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","When using custom height values, Grid Start X & Y must be = to 0.");
return;
}
if(($GEx<=0 || $GEx>($ChS*15)) || ($GEy<=0 || $GEy>($ChS*15)))
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","When using custom height values, Grid End X & Y must be > 0 and <= 15 Chunks (or the Chunk Size * 15).");
return;
}
}

if($GEx<=$GSx || $GEy<=$GSy)
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","Grid Start must be < Grid End.");
return;
}
if($FloI==1 && ($SanL>0 || $WatL>0))
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","Please set the Sand and Water Levels to 0 when generating Floating Islands.");
return;
}
if($PrevPass==1)
{
PrevList.clear();
PrevList.Extent = (($GEx-$GSx)*2) @ " " @ (($GEy-$GSy)*2);
canvas.pushDialog(PTG_Preview_GUI);
}
if($PrevPass!=1)
{
if($ModTer==1)
{
if($AddOn__Brick_ModTer_4xPack==-1)
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","Brick_ModTer_4xPack is not enabled! Make sure you have downloaded and enabled the Add-On before generating Modular Terrain, or disable the Modular Terrain option to use Large Cube bricks instead.");
return;
}
if($PlaC==1)
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","Please disable Plate-Capping when using the Modular Terrain option.");
return;
}
if($TerHS!=1 && $TerHS!=2)
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","Please set the Terrain Z-Scale to either 1 or 2 when using the Modular Terrain option.");
return;
}
$FxCB = brick4Cube1Data;
$STxCB = brick16Cube1PTGMTData;
$WtB = brick32wPTGMTData;
}
if($ModTer==0)
{
if($AddOn__Brick_Large_Cubes==-1)
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","Brick_Large_Cubes is not enabled! Make sure you have downloaded and enabled the Add-On before generating terrain, or enable the Modular Terrain option instead.");
return;
}
$FxCB = brick4xCubeData;
$STxCB = brick16xCubeData;
$WtB = brick32xWaterData;
}
if($GFill==1)
{
if($SolG==0)
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","Please enable Solid Ground when using the Ground Gap-Filling option.");
return;
}
if($TerHS==1 || $TerHS==2)
{
canvas.popDialog(PTG_MainMenu_GUI);
canvas.pushDialog(PTG_MainMenu_GUI);
MessageBoxOK("PTG: ERROR!","Ground Gap-Filling is not necessary when Terrain Z-Scale is set to a value of either 1 or 2.");
return;
}
}
%clN=$cl.Name;

^^^^ client- and server-sided random mixture
Uhhhhhhhh

I don't think that's setup correctly :(

onWake is being handled server-sided to detect if anyone opens a GUI. I even tested it before release to make sure.

onWake is handled over the server if anyone opens a GUI. I even tested it before release to make sure.
What

GUI is entirely client-sided

And you just ignored the rest of my post, shame on you :c


GUI is entirely client-sided
I even tested it before release to make sure.

And you just ignored the rest of my post, shame on you :c
That's because you're trolling, also your posts have been reported.

That's because you're trolling
How am I trolling?
also your posts have been reported.
lol
« Last Edit: March 22, 2013, 10:53:28 AM by Zeblote »

Only problem:

>someone spends a lot of time making really nice terrain

>constantly accused of using Generator

Also: how the forget do you think Zeblote is trolling?
« Last Edit: March 22, 2013, 11:17:25 AM by The Brighter Dark »

Only problem:

>someone spends a lot of time making really nice terrain

>constantly accused of using Generator

Also: how the !@#$%^&* do you think Zeblote is trolling?
Yeah that might be an issue, however there are certain things the generator can't do, such as cliffs, etc.

How am I trolling?
aaaaaaaaaa help what is this scary code monster
...
That's not terrain
What is that
It's the way you're coming across. If you have honest concerns regarding the add-on I will be more than happy to listen to those concerns. How exactly did you end up with missing terrain? Also, the add-on will support Super Admins in the near future, so I left in some mix-matched code segments. I tested onWake, however, and it does work server-sided.
« Last Edit: March 22, 2013, 11:29:30 AM by [GSF]Ghost »