Author Topic: Procedural Terrain Generator v3 [Working on v3.1]  (Read 78052 times)

Issue was resolved; I packaged fxDTSBrick::addEvent (which is called before serverCmdAddEvent) and inserted a check to make sure the wrench brick exists before continuing. I also might be able to add a work-around for setting up events for details when public brick ownership is enabled. Thanks guys

This is awesome! I'd also love to test.



This is awesome! I'd also love to test.
id like to test
i'll test, why not
All testing slots are full, sorry guys. =/



Update:

Mass Biome Detail Listing is done!
Instead of being limited to the 18 detail slots provided per biome, you have an option of listing up to 400 per biome.



Third Party Support
A new function was included that will allow you to load client presets on the server-side via gamemode files. To use the function, first save your GUI settings as a client-side preset, and move the save file from "Config/Client/PTGv3/Presets/" to "Config/Server/PTGv3/ServerPresets/". Then use the "PTG_LoadServerPreset(%fpPreset,%noFallDamage,%autoHalt,%autoClearFunc,%autoReset);" command to load the settings. This function also automatically load default settings to the server for you before you spawn, so you no longer have to upload your GUI settings before starting a routine. You also no longer have to join your dedicated server to start a routine since default settings will be loaded for you, however you can also use the PTGRmt dedicated server command to change presets remotely through this function.

To set up the function via gamemodes, just replace "%fpPreset" with the name of your server preset file (filepath and extension are filtered out automatically), "%noFallDamange" as true or false (if true, this will disable fall damage while a preset is loading, useful to prevent players from falling to their doom while terrain is being cleared, "%autoHalt" as true / false (this will automatically stop any generation or clearing routines that are currently running, and wait for them to finish before continuing, "%autoClearFunc" with the clearing method if you want terrain to be cleared before continuing (i.e. "None" / "", "Clear", "Clear-Save", "ClearAll", "ClearAll-Save" or "Purge"), and "%autoReset" with true / false if you want the function to automatically reset the first minigame that's running after the preset is finished loading.


New ModTer Options
You can now define different ModTer types for Clouds and Floating Islands, instead of having them use the same type as Terrain. For instance, you can set Terrain to use Cubes only, Clouds to Use Cubes & Ramps and Floating Islands to use Cubes & Wedges.


New Brick Options
Options have been included under Routines options to prevent destroying detail bricks, boundary bricks and terrain bricks in certain cases. You can choose to disable destruction of biome details, boundaries and / or terrain unless using the admin wand, as well as to prevent destroying detail bricks if they are under public ownership.


Changed Multi-User Permissions
I thought it would be best to leave permissions for Server Commands, Events, GUI Access, Dynamic Stream Bricks and Build / Settings Uploading to Admin Only, instead of only allowing Super Admins to have access to them. You can still set these options to being Host-only if desired, which is how they are set up as default.


Changed Schedules / Delays
Schedule delays were altered to take the fast packets update into account. It's highly recommended to just disable fast packets with the most recent revision that was included, but various delays are still included just encase.



Preset Error Reports (mentioned before)
When loading client presets into the GUI, you will be notified of any bricks and /or prints that couldn't be found on the server (however, you can disable this option for the rest of the game instance if preferred).



Added "Ensure FIFO Chunk Removal" Option
For some reason, chunk objects are sometimes added to the top of the chunks sim group during infinite terrain generation (despite the chunk id number), which causes problems during culling. Once enabled, this feature will make sure to grab the lowest chunk id in the group and check it's proximity before removal, thus preventing the culling system from being overwhelmed.


Other Small Changes
- Added "please wait" message when loading a list of all .bls saves in the Build Load GUI
- Finished static object that overlays chunks when using the Remove Chunk command
- Fixed small issues with floating islands and detail offsets
- Fixed issue with public ownership (also loads onplant-events either way)
- Fixed issue with rapidly starting a new routine while uploading settings
- Fixed issue with disabled prints still showing in GUIs
- Fixed overwriting presets and prevented overwriting nested presets (folders / .zip files)
- Disabled the option to allow caves to generate for Skylands (too complex to implement right now)
- Various other fixes


Random / Awesome Pics:
« Last Edit: December 13, 2015, 01:35:16 PM by [GSF]Ghost »

just curious

when will the testers receive the pre-release

just curious

when will the testers receive the pre-release
I'm hoping to have Modular Terrain and a few other features completed before the final testing stage begins, but the Pre-Release version will be released to the testers sometime this week

i'm fine with testing
it looks amazing anyways


Update: PTG is now 99% complete and has entered Pre-Release stage! I'll be sending the generator to the testers later today; the add-on's release should only be a few days away at this point. Recent changes include:


Additions / changes to Flat Areas
- You can now choose whether or not to allow detail bricks to generate on flat areas.
- Added a new option to make terrain seamless even when flat areas are enabled (doesn't work yet with floating islands or skylands for some reason)
- Included various fixes, such as color / print selection of terrain, crash issue when both flat areas and build loading were enabled, issue with mountains, etc.



Fnished Modular Terrain support for Skylands



Finished smart detail placement when using Modular Terrain
- Detail bricks are now only added on areas where ModTer doesn't generate, or if the detail bricks are 3 times larger than the ModTer brick.



Made improvements to chunk highlight static objects
- When you choose to highlight chunk objects (either by using the /PTGReveal chat command or by selecting the Show / Hide button in the Chunk Manager), the highlight objects will automatically update as chunks are added, loaded or removed. Also, they automatically adjust their height as new player bricks are planted inside.
- Highlight objects also adapt to variations in chunk sizes, and now take detail bricks into account as well when determining their height.



Other Changes / Additions:
- Fixed issues with plate-capping (mainly for Skylands).
- You can now upload GUI settings while clearing terrain.



Can't wait. I'll also try help by screening the code for things that could be improved.

I'm looking forward to help beta test, the generated terrain so far looks incredibly impressive

Can't wait. I'll also try help by screening the code for things that could be improved.
That would be great, especially in making sure the packages are parented correctly (as was an issue with Item Storage).



Alright, I'm starting to send out the add-on! Hopefully, this last phase of testing should last only a few days; I have a potential release window in mind. For the testers, please post any issues you find in this topic.


There are some issues I'm already aware of though that don't need to be reported:
- Loaded builds sometimes generate in mid-air for floating islands and skylands, and generating builds on the water surfaces sometimes causes them to collide with shore terrain bricks
- Flat areas cause large openings / seams to appear in terrain for floating islands and skylands
- GUI previews are slightly off and need to be adjusted
- The "Ensure Seamless Terrain for ModTer" option under Advanced settings hasn't been set up yet


Also, the main things I could use help testing include:
- Making sure everything is intuitive enough / user-friendly
- Using the dynamic stream bricks
- Using the generator on dedicated servers (and especially grabbing a client from planted bricks on dedicated and normal servers)
- Making sure the add-on doesn't interfere with other add-ons
- Third Party Support - server preset loading
« Last Edit: December 17, 2015, 05:30:29 PM by [GSF]Ghost »