Jump to content

9 Screenshots

  • 4.8k
  • 37
  • 282.92 kB
  • Update details
    v1.1.1
    Released
    Download size 282.92 kB
    Total versions 11
    Typical update pace About every 17 days
    Freshness Updated yesterday

About Custom Generation

FCustomGeneration
Adds prefab containers to procedural map generation on the server and controls placement, terrain and standard generation components.
SECTION 01
Getting started
  1. Add a prefab container together with its layers to the required category.
  2. Start the server. A separate configuration file will be created for the container.
  3. Stop the server and configure its placement.
  4. On the next wipe, start the server normally. No additional action is required.

All generation changes are applied only when a new map is created during a wipe. Reloading the plugin or restarting the server does not modify an existing map. A new wipe is required for changes to placement, terrain, WorldConfig or generation components to take effect.

If you plan to use the full feature set, it is strongly recommended to configure and verify the map on a separate test server first. Placement, terrain and component settings may require several test wipes to get right.

Be aware that Facepunch may ban the server IP address for frequent wipes. Use a local server for testing or be prepared for this risk.

Custom structures are added to /data/FCustomGeneration/CustomMonuments/. Place the .prefab file and the layers saved with it in the appropriate folder:

Category Placement
Monument Ground
Island Island with its own terrain
Water Water surface
Underwater Seabed
FlyingIsland Specified altitude
Roadside Beside a road
ReplaceMonument In place of a standard monument

The category provides the initial configuration values. After the file is created, the placement type and all other parameters can be changed manually. Additional subfolders are also read, but they do not receive a special preset. For example, a Rail folder is used only for organisation and receives the regular ground settings.

SECTION 02
Editing a standard monument

The /data/FCustomGeneration/Monuments/ folder accepts .map files used to extend standard monuments. The .map filename must match the root prefab name of the standard monument. That prefab must also be present inside the map: the plugin uses it as the origin, rotation and scale reference, then copies the remaining objects and paths onto every instance created by the server.

This method does not create a new monument and has no separate placement configuration. It modifies the matching standard monument while the map is being created. A wipe is required for changes to appear.

SECTION 03
Custom monument configuration

A prefab container does not have to be a full monument. It can contain a small shed with a recycler and a few crates, a single object, flat terrain or a prepared building area, an island, a group of structures or an entire city.

Count and distances
Setting Effect
Enabled Includes the structure in generation
Target count Number of copies the plugin will attempt to place
World size count multiplier Adjusts the count for different world sizes. The final count is the target count multiplied by the curve value
Minimum world size The structure is not generated on smaller maps
Attempts per structure Number of positions checked for each copy. A larger value helps with strict filters but increases generation time
Minimum same type distance Spacing between copies of this container
Minimum different type distance Spacing from other monuments
Same prefab distance mode Any, Min or Max for copies of this container
Other prefab distance mode Any, Min or Max for other monuments

The world size count multiplier contains a list of points:

Field Meaning
Points Set of world sizes and their multipliers
World size World size associated with the multiplier
Multiplier Amount by which the target count is multiplied

The multiplier is interpolated linearly between points. Outside the defined range, the nearest end point is used.

Distance mode is configured separately for the same prefab and for other prefabs. Both fields accept these values:

Mode Result
Any First valid position
Min Position closer to other objects while respecting the minimum spacing
Max Most distant valid position

Larger counts, structure bounds, spacing values and filter sets reduce the chance that every requested copy can be placed.

Placement filters
Setting Check performed
Splat layers Ground surface type
Biomes Arid, Temperate, Tundra, Arctic, Jungle
Topology any At least one listed topology must match
All topologies The area must contain every listed topology
Topology not Areas containing the listed topologies are excluded
Topology check radius Size of the checked area around the position
Minimum distance to forbidden topology Additional spacing from roads, rivers, shores and other excluded areas
Check placement map Prevents use of an area already occupied by the map generator

The meaning of -1 and 0 depends on the field:

Value Use in Result
-1 Splat layers, Biomes, Topology any Any value is allowed
0 All topologies, Topology not The requirement or exclusion is disabled

Do not use 0 for Splat layers, Biomes or Topology any. The server reports that mask as invalid. In the current version it effectively applies no restriction, but -1 is the supported value for "any". An empty string in All topologies or Topology not has the same effect as 0.

For a large structure, do not check only its centre. Increase the topology radius and leave enough clearance from forbidden areas. A wide radius combined with a long exclusion list can remove almost every available position.

Search area

Search area mode accepts one of three values:

Mode Search region
Terrain Inside the main map
ExtendedTerrain Inside and outside the main map
OutsideTerrain Outside the map boundary only

Additional settings:

Setting Effect
Extra bounds Search distance beyond the main map
Min distance outside terrain Minimum outward distance from the map edge
Max distance outside terrain Maximum outward distance. A value of 0 removes the limit
Min terrain edge distance Prevents placement directly against the map boundary
Extra terrain edge padding Adds clearance for the structure bounds
Use terrain filters outside map Applies splat, biome, topology and placement-map checks outside the main area
Clamp height/water checks to map edge Uses the nearest available edge sample for positions outside the map

For an offshore structure outside the playable island, OutsideTerrain usually needs a minimum outward distance and a maximum distance limit. Without an upper limit, the structure may be placed far from the island.

For ExtendedTerrain and OutsideTerrain, set Extra bounds or a positive maximum distance outside terrain. If both are 0, the search area does not extend beyond the map and OutsideTerrain cannot find a position. When terrain filters outside the map are disabled, splat, biome, topology and the placement map are skipped there; height, water, terrain difference and monument distances are still checked.

SECTION 04
Placement type and height
Placement type
Value Behaviour
Ground Placement on terrain
Water Placement at ocean level
Underwater Underwater placement with seabed checks
Flying Placement at a specified altitude
Roadside Finds a side road and aligns the structure to its direction

Roadside requires a correctly prepared road or trail inside the container. The first such path is used for alignment; rail paths are skipped. Direction and height come from the selected server road segment, so height mode, random yaw and a fixed map point do not apply to Roadside.

Height mode
Value Height source
Auto Ground uses terrain, Water uses ocean level, Underwater uses the seabed, and Flying uses absolute height
Terrain Terrain surface or seabed
Water Ocean level
Absolute World zero height

Height offset is applied after the base height is calculated. A positive value raises the structure and a negative value lowers it.

Terrain height sample mode accepts one of four values:

Value Calculation
Center Height at the centre
Average Average height across the structure area
Min Lowest sampled point
Max Highest sampled point

Terrain height sample radius multiplier changes the sampled area. A value of 1 uses the regular structure bounds. A value that is too large may include a nearby slope.

Max terrain height difference rejects uneven areas. A small value produces flatter placement but reduces the number of available positions. A larger value makes placement easier but increases the chance that an edge will be above ground or inside a slope.

The maximum terrain difference check applies only to Ground placement. When terrain layers are disabled, a height layer stored in the container is not used for height selection or terrain difference checks.

Water depth

Minimum water depth rejects shallow water. Maximum water depth prevents placement in excessively deep water. A value of 0 disables the upper limit.

The full structure area is checked, so a large platform or island needs sufficient depth at its edges as well.

SECTION 05
Container terrain

When Apply terrain layers is enabled, the container supplies:

  • terrain shape;
  • surface textures;
  • terrain transparency;
  • biome data;
  • topology data.

Smoothing joins the new terrain to the map:

Setting Effect
Height smoothing passes More passes soften the transition more strongly
Height smoothing outside distance Width of the transition around the structure
Height smoothing inside distance Smoothing inside the structure bounds. A value of 0 disables the inset; a large value changes the prepared centre area
Height smoothing strength Smoothing intensity from 0 to 1

Increase the outside distance to correct a sharp edge. If the centre is being deformed, reduce the inside distance and smoothing strength.

SECTION 06
RustEdit loot and vending presets

If a container or shop uses a custom RustEdit preset, copy the preset file into the plugin folder:

File Folder
.lprof /data/FCustomGeneration/CustomMonuments/_Presets/LootPresets
.vprof /data/FCustomGeneration/CustomMonuments/_Presets/VendingPresets

For loot containers, the plugin uses the preset item list, minimum and maximum item count, blueprint chance and refresh time. NPC vending machines receive the sell orders from the vending preset.

Loaded presets are stored inside the generated map file. The map can then be moved to another server without separate .lprof and .vprof files, but FCustomGeneration must be installed. The version embedded in the map takes priority. Generate the map again after changing a preset, otherwise the map will continue using the older embedded version.

The map also stores entities added by the plugin, building blocks, IO connections and the required topology data. FCustomGeneration restores them on the destination server.

SECTION 07
Paths

The plugin transfers every path from the prefab container. A single structure can contain multiple roads, trails and railway paths at the same time.

The connection type is selected automatically: Rail for a path with railway topology, Trail for a trail and Road for a regular road. Every detected path receives its own entry in the custom structure configuration, where the first and last ends can be enabled independently. A road and a railway path inside the same prefab container can therefore use different settings.

When the configuration is first created, it uses the values stored in the prefab container. If RustEdit saved both ends of a railway path as disabled, enable the required ends in the configuration and wipe the server so the railway generator can use the structure on the new map.

The path direction inside the container determines which side connects to the external path. Roadside placement also requires enough free road length and no nearby intersection.

SECTION 08
Map point

Use map point enables a fixed map region. When disabled, the plugin searches the complete selected search area.

The map is divided into nine regions from left to right: 1-3 are at the top, 4-6 in the middle and 7-9 at the bottom. 5 is the centre. Map point offset X and Map point offset Z move the position within the selected region.

Water depth, terrain, topology and distance rules are still checked. If the selected point does not satisfy them, the plugin searches for another valid position.

With a map point enabled, no more than one copy is created regardless of Target count. The fixed Yaw value is used; Random yaw does not apply in this mode.

SECTION 09
Rotation, scale and map marker
  • Yaw sets a fixed rotation.
  • Random yaw selects the angle automatically. It is normally disabled for roads, entrances and bridges.
  • Scale changes the model size, bounds, paths, check radius and required free area.
  • Create Monument topology marks the occupied area as a monument.
  • Clear topologies after spawn removes selected topology types inside the structure area.
  • Map marker text creates a map label. An empty value disables it.

After increasing the scale, you may also need more spacing from other objects, the map boundary and the shore.

SECTION 10
Replacing a standard monument
Setting Behaviour
Enabled Enables replacement
Original monuments List of matches against standard object paths
Replace chance percent 100 replaces every matching object; 0 disables replacement
Keep original monument Keeps the standard object together with the custom structure
Use original rotation Copies the orientation of the replaced monument

Replacement count is determined by the number of matching standard monuments and the replacement chance. Target count, attempts, filters, distances and map point are not used for replacement. Minimum world size still applies. Height offset, scale, layers, paths, topology and the map marker are applied to every completed replacement.

Use a sufficiently specific part of the original path. A short generic match can affect several different objects. Keeping both the original and custom structures is suitable only for an overlay prepared for that monument.

SECTION 11
General plugin settings
Shallow water

This section raises and smooths the seabed within the selected depth range.

Setting Effect
Enabled Enables shallow water processing
Beach depth Target depth of the processed area
Depth limit Range of seabed depths included in processing
Edge smooth radius Width of the transition
Lerp power Smoothness of the transition
Max rise Maximum amount by which the seabed can be raised above the target

A wider depth range and smoothing radius produce a larger shallow-water area and a more visible change to the shore.

Other settings
Setting Effect
Server browser map name Replaces the displayed map name. An empty value keeps the standard name
Prefab blacklist Removes standard objects by a match in their name
Log custom monument spawn results Records the requested and actual count after generation
Existing prefabs on map points Places existing game objects in one of the nine map regions

Use precise entries in the prefab blacklist. A generic word may remove several unrelated groups of decoration.

This blacklist operates independently from WorldConfig. Inside WorldConfig, its blacklist is checked before its whitelist. A whitelist entry does not restore an object that has already been blocked by the blacklist.

Each map-point prefab entry contains:

Setting Effect
Enabled Enables the entry
Prefab path Standard game object to create
Category Generation group to which the object is added
Replace original prefab Removes regular procedural copies of this object
Map point Region from 1 to 9
Offset X Horizontal offset on the X axis
Offset Z Horizontal offset on the Z axis
Height offset Raises or lowers the object
Yaw Object orientation
Scale Object size
SECTION 12
World generation settings
Setting Effect
Unlock map size limit Allows world sizes above the standard limit
Remove grass on map Removes grass and bushes across the map
Allow building on roads Removes the building restriction from road topology
Disable subway/tunnel generation Removes the underground railway and its entrances
Monument priority Gives selected standard monuments an earlier placement position

A larger map requires more memory and more generation time. When road building is enabled, players can block traffic. A long monument priority list leaves less space for other objects.

WorldConfig

Use WorldConfig replaces the standard world settings with values from this section.

Setting Effect
JSON string Internal WorldConfig string. Leave it empty; the separate fields below are used instead
Tier 0 fraction Share of areas with entry-level loot
Tier 1 fraction Share of areas with mid-level loot
Tier 2 fraction Share of areas with high-level loot
Arid fraction Share of the desert biome
Temperate fraction Share of the temperate biome
Tundra fraction Share of the tundra biome
Arctic fraction Share of the arctic biome
Jungle fraction Share of the jungle biome
Main roads Enables or disables main roads
Side roads Enables or disables side roads
Trails Enables or disables trails
Rivers Enables or disables rivers
Power lines Enables or disables power lines
Above-ground railway Enables or disables the surface railway
Underground railway Enables or disables the underground railway
Underwater laboratories Enables or disables underwater laboratories
WorldConfig blacklist Standard prefabs that cannot be generated
WorldConfig whitelist When not empty, only matching prefabs are generated

Tier 0 to Tier 2 values are normalised against their total. Arid, Temperate, Tundra and Arctic are normalised in the same way; Jungle is handled separately. Setting all four main biome values to zero produces a fully temperate distribution. A very small biome share reduces the available space for monuments restricted to that biome.

Generation components

The list comes from the current server build and is written to the configuration when the server starts. The section may be empty before the first start. Once the list appears, stop the server, change the required values and create a new map on the next wipe. These changes are not applied to an existing map.

Component names are not translated in the configuration. Use the exact English name.

Entry setting Effect
Name : Название Exact component name
Enabled? : Включен? Whether the component runs
Apply values? : Применять значения? Applies parameters from the Values section
Values : Значения Component parameters available for editing

If an entry only contains Enabled, that component can only be enabled or disabled. Apply values and Values only appear for components with available parameters. Components without Values are therefore not listed separately in this guide.

PlaceMonuments components commonly expose:

Setting Effect
TargetCount Maximum number of different prefabs the component will attempt to place
TargetCountWorldSizeMultiplier Adjusts the limit according to world size
MinWorldSize Skips the component on smaller maps
MinDistanceSameType Spacing between monuments from the same set
MinDistanceDifferentType Spacing from other monuments
DistanceSameType and DistanceDifferentType Any, Min or Max position selection
Filter Allowed biomes, surface and topology

TargetCount does not create multiple copies of the same standard prefab. If a set contains three eligible variants, a value of 1000 still places no more than three. This applies to sets such as Desert Military (PlaceMonuments), Fishing Villages (PlaceMonuments), Oasis (PlaceMonuments), Lakes (PlaceMonuments), Caves (PlaceMonuments) and Underwater Labs (PlaceMonuments).

For PlaceMonuments, TargetCount 0 means no overall limit; it does not disable the component. Use Enabled to disable it. This differs from Target count in a custom monument configuration, where 0 prevents the structure from being created.

Main Monuments (PlaceMonuments) is a set of different main monuments. Increasing TargetCount above the number of available prefabs adds nothing, while lowering it limits how many different monuments can be selected from the set. The final count also depends on world size, each prefab's minimum world size, filters and available space.

Road, trail and river components may expose Width, TerrainOffset, length and count limits, selection mode and smoothing. A MaxPathCount below 0 keeps the standard number of paths, 0 removes all paths and a positive value sets the maximum.

Underwater Labs (GenerateDungeonBase) exposes segment count, budget and floor limits for the initial section, start extension, end extension and open-socket filling stages.

Only change fields added by the plugin to the Values section of that component. Disabling an early stage affects later stages. Without the road topology pass there is no road texture, road mesh or roadside decoration. Without a river there is nothing for later river stages to process.

SECTION 13
Terrain configuration

This experimental section changes the shape of the procedural map. When it is disabled, the server uses standard terrain generation.

Setting Standard value Effect
Enabled false Applies the values from this section
Island intensity 0.1 Strength of the island shape and balance between land and water; range 0 to 1
Terrain blend scale 1 Scale of the transition between the main terrain forms
Terrain shape scale 4 Size and strength of large terrain forms
Terrain base offset -0.4 Moves the base shape up or down
Terrain sample step 0.05 Sampling step for large terrain detail
Terrain detail sample step 0.05 Sampling step for fine terrain detail
Terrain blend half 0.5 Centre of the transition between terrain forms
Terrain blend start 0.25 Point at which blending starts
Terrain blend end 0.75 Point at which blending ends
Terrain height range multiplier 2.75 Overall difference between lowlands and peaks
Terrain world size scale 800 Size of terrain features relative to the map
Terrain noise frequency A 0.0002 Frequency of large shape changes
Terrain noise frequency B 0.0009 Frequency of additional shape changes
Terrain height bias -0.1 Additional offset applied to calculated height
Terrain angle degrees 180 Angular range used to build the terrain shape
Ridge height offset -0.15 Vertical position of ridges
Ridge noise blend 0.3 Amount by which ridges blend with the main terrain
Ridge noise offset -0.02 Threshold at which ridges appear
Ridge noise scale 0.025 Size of the primary ridge form
Ridge noise scale secondary 0.03 Size of the secondary ridge form
Mountain detail height scale 0.04 Amplitude of fine mountain detail
Mountain height scale 0.07 Overall mountain height; range 0 to 0.3
Mountain noise offset -0.01 Threshold at which mountain areas appear
Mountain noise scale 0.035 Size of mountain forms
Lowland height scale 0.002 Strength of detail in lowlands
Base noise octaves 6 Complexity of large forms; range 1 to 16
Detail noise octaves 8 Amount of fine detail; range 1 to 16

Terrain blend start must be below terrain blend half, and terrain blend half must be below terrain blend end. Both offsets affect the final height. A higher frequency produces smaller features. More octaves add detail and increase processing time.

SECTION 14
If a monument was not placed

Check the following in order:

  1. The structure is enabled, target count is above zero, and world size is not below the configured minimum.
  2. Biome, surface and topology settings do not conflict.
  3. Distance values and check radius are not excessive.
  4. The permitted terrain height difference is not too small.
  5. Water is deep enough across the complete structure area.
  6. Search area matches the selected placement type.
  7. Attempts per structure is sufficient for the selected restrictions.
Problem Adjustment
Fewer copies were placed Reduce spacing or the number of filters, or increase attempts
Object is inside the terrain Raise height offset or select Average or Max
Object is above the terrain Lower height offset or select Average or Min
A hill or depression appears around the object Check terrain layer transfer, then reduce smoothing inside distance and strength
A water object was placed close to shore Increase minimum water depth and distance from shore topology
Selected map point was not used Relax its filters or adjust offset X and Z
Changes are not visible on the current map Generation settings take effect on the next wipe
  • Love 1

User Feedback

About Us

Codefling is the largest marketplace for plugins, maps, tools, and more, making it easy for customers to discover new content and for creators to monetize their work.

Downloads
3m
Total downloads
Customers
12k
Customers served
Files Sold
170.7k
Total sales
Payments
3.7m
Processed total
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.