<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>World :: Catur Documentation</title>
    <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/index.html</link>
    <description>The World describes a procedural 3D terrain (height from noise), its edges, fog of war, minimap and generation parameters. Passed to the board as the world block.&#xA;Setters Setter Effect edgeType(ECEdgeType) How the world border is shaped. material(UMaterialInterface*) Material applied to the terrain mesh. worldTopography(UCNoiseDataAsset*) Mandatory base noise defining terrain height. clusterTopography(UCNoiseDataAsset*) Optional noise for room-cluster areas. clusterShiftTopography(UCNoiseDataAsset*) Optional shift noise for non-room cluster areas. roomAndCorridorTopography(UCNoiseDataAsset*) Optional shift noise for rooms and corridors. fogOfWar(FCBP_FogOfWar) Fog of war settings → FCBP_FogOfWar. worldEffector(FCBP_WorldEffector) Generation parameters → FCBP_WorldEffector. shadowEffector(FCBP_ShadowEffector) Shadow settings → FCBP_ShadowEffector. roomAndCorridorSoftener(EAlphaBlendOption) Blend curve smoothing room/corridor edges into the terrain. The map (minimap) block exists but has no fluent setter yet.</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 20 Jul 2024 21:09:28 +0200</lastBuildDate>
    <atom:link href="https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>FCBP_WorldEffector</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/worldeffector/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/worldeffector/index.html</guid>
      <description>Terrain generation parameters. Passed with .worldEffector(...).&#xA;Setters Setter Effect worldMakerClass(TSubclassOf&lt;UCAbstractWorldmaker&gt;) World maker that builds the terrain. If null, defaults to the procedural-mesh maker. actorWakeUpDistanceMeter(float) Distance (meters) at which NPCs on the terrain pop on/off. cellSizeMeter(float) Size of one terrain tile, in meters. numberOfCellToDrawAround(int) How many tiles are drawn around the pawn. nbMinPointPerCellSide(int) Minimum mesh resolution per cell side. maxLODFactor(int) Maximum LOD reduction factor for distant tiles. followAndBuildTilesAroundPawn(bool) When true, tiles stream around the moving pawn. When false, the world is static (no tracking). Default true. collisionOnFullLODOnly(bool) When true, only full-resolution tiles get collision. removeFurthestTiles(bool) When true, farthest tiles are removed — only effective if followAndBuildTilesAroundPawn is true. curvaturLODReduction(double) LOD reduction driven by curvature; clamped to ≥ 0. 0 = full resolution everywhere. calculateNormal(bool) When true, computes mesh normals. Default true. poolSizeStart(int) Tile pool size at boot. poolSizeRun(int) Tile pool size at runtime. Example FCBP_WorldEffector effector = FCBP_WorldEffector() .worldMakerClass(retrieveClass&lt;UCAbstractWorldmaker&gt;(&#34;WORLD_MAKER&#34;)) .actorWakeUpDistanceMeter(100.0f) .cellSizeMeter(200.0f) .numberOfCellToDrawAround(40) .nbMinPointPerCellSide(8) .maxLODFactor(10) .followAndBuildTilesAroundPawn(true) .collisionOnFullLODOnly(false) .removeFurthestTiles(false) .curvaturLODReduction(4.0) .calculateNormal(true) .poolSizeStart(64) .poolSizeRun(64);</description>
    </item>
    <item>
      <title>FCBP_FogOfWar</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/fogofwar/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/fogofwar/index.html</guid>
      <description>World-level fog of war settings (the fog system itself). Passed with .fogOfWar(...) on the world. Not to be confused with FCBP_FogOfWarRevealer (per-entity reveal).&#xA;Setters Setter Effect renderTargetSizePixel(int) Square resolution of the fog render target (used for both width and height, and fed to the fog material as cdryxFogOfWarRTResolution). If &lt;= 0, forced to 10 with a warning. Default 1024. withBlur(bool) Sets the fog material scalar cdryxFogOfWarEnableBlur (1 or 0): blurs the fog edges. Default false. blurSize(float) Fog material scalar cdryxFogOfWarBlurSize: blur kernel size (effective only when blur is on). Default 7. blurForce(float) Fog material scalar cdryxFogOfWarBlurForce: blur strength (effective only when blur is on). Default 15. lineOfSightIntensityPercentage(float) Divided by 100, fed to the fog material scalar cdryxFogOfWarLineOfSightIntensity: opacity/clarity of the currently-visible area. 100 = ratio 1.0. Default 100. revealedAreaIntensityPercentage(float) Divided by 100, fed to the fog material scalar cdryxFogOfWarRevealAreaIntensity: clarity of the already-explored-but-not-visible area. 2.5 = ratio 0.025. Default 2.5. postProcessMaterialForReavealArea(UMaterialInterface*) Post-process material used to render the revealed area. Example FCBP_FogOfWar fog = FCBP_FogOfWar() .renderTargetSizePixel(1024) .withBlur(true) .blurSize(7.0f) .blurForce(15.0f) .lineOfSightIntensityPercentage(100.0f) .revealedAreaIntensityPercentage(2.5f) .postProcessMaterialForReavealArea(retrieveAsset&lt;UMaterialInterface&gt;(&#34;FOG_PP&#34;));</description>
    </item>
    <item>
      <title>FCBP_ShadowEffector</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/shadoweffector/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/shadoweffector/index.html</guid>
      <description>Shadow definition applied to world / tiles. It derives from the engine’s shadow definition and exposes no fluent setters of its own; it is passed as a whole block to .shadowEffector(...).&#xA;Example FCBP_ShadowEffector shadow = FCBP_ShadowEffector();</description>
    </item>
    <item>
      <title>FCBP_Cluster</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/cluster/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/cluster/index.html</guid>
      <description>A cluster of rooms connected by corridors. Passed to the board as a room-cluster entry.&#xA;Setters Setter Effect mainTag(FName) Tag identifying this cluster. count(uint8) How many clusters of this type to generate. corridorMinWidthMeter(float) Minimum corridor width, in meters. corridorMaxWidthMeter(float) Maximum corridor width, in meters. straightCorridor(bool) When true, corridors are straight instead of winding. clusterMarginMeter(float) Margin kept around the whole cluster, in meters (default 100). corridorBreaks(uint8) Number of breaks (bends) per corridor. roomDescriptions(TArray&lt;FCBP_Room&gt;) The rooms in this cluster → FCBP_Room. optionalSpecificTopography(UCNoiseDataAsset*) Optional noise overriding the cluster terrain. optionalSpecificShiftTopography(UCNoiseDataAsset*) Optional shift noise for this cluster. Example FCBP_Cluster cluster = FCBP_Cluster() .mainTag(&#34;DUNGEON&#34;) .count(3) .corridorMinWidthMeter(3.0f) .corridorMaxWidthMeter(5.0f) .straightCorridor(false) .clusterMarginMeter(100.0f) .corridorBreaks(0) .roomDescriptions({ FCBP_Room().mainTag(&#34;ROOM&#34;).count(1) }) .optionalSpecificTopography(retrieveAsset&lt;UCNoiseDataAsset&gt;(&#34;CLUSTER_NOISE&#34;)) .optionalSpecificShiftTopography(retrieveAsset&lt;UCNoiseDataAsset&gt;(&#34;CLUSTER_SHIFT_NOISE&#34;));</description>
    </item>
    <item>
      <title>FCBP_Room</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/room/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/room/index.html</guid>
      <description>One room type inside a cluster. Used in the array of FCBP_Cluster.roomDescriptions(...).&#xA;Setters Setter Effect mainTag(FName) Tag identifying this room type. count(uint8) How many rooms of this type to generate. stairHeightInMeter(float) Step height of generated stairs, in meters. Default 0.2. isPlayerStartPoint(bool) When true, the player(s) spawn in this room. isPlayerCoursePoint(bool) When true, the room is a waypoint on the player’s course. minSizeMeter(float) Minimum room size, in meters. maxSizeMeter(float) Maximum room size, in meters. marginMeter(float) Margin kept around the room, in meters. interaction(FCBP_RoomInteraction) Room interaction → FCBP_RoomInteraction. npcs(TArray&lt;FCBP_ACPRoomRule&gt;) NPC assignment rules → FCBP_ACPRoomRule. The hook onSpawnCondition is a skill, documented in the Skills section.</description>
    </item>
    <item>
      <title>FCBP_RoomInteraction</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/roominteraction/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/roominteraction/index.html</guid>
      <description>Interaction rules of a room. Passed with .interaction(...) on a room.&#xA;Setters Setter Effect interactWithPlayerOnly(bool) When true, the room interaction/overlap only validates against the player. Default true. interactOnceOnly(bool) When true, the room interaction is consumed once, then stops. Default false. The hooks canInteractSkill, onBeginOverlapSkill, onEndOverlapSkill are skills, documented in the Skills section.&#xA;Example FCBP_RoomInteraction interaction = FCBP_RoomInteraction() .interactWithPlayerOnly(true);</description>
    </item>
    <item>
      <title>FCBP_ACPRoomRule</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/roomrule/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/roomrule/index.html</guid>
      <description>Assigns NPCs to a room. Used in the array of FCBP_Room.npcs(...).&#xA;Setters Setter Effect npcTag(FName) The mainTag of the NPC to place in the room. count(uint8) How many of this NPC to spawn. spawnProbabilities(TArray&lt;FCBP_ACPSpawnProbability&gt;) Spawn probability windows → FCBP_ACPSpawnProbability. biome(FName) Biome filter restricting where this rule applies. Example FCBP_ACPRoomRule rule = FCBP_ACPRoomRule() .npcTag(&#34;SPIDER&#34;) .count(2) .spawnProbabilities({ FCBP_ACPSpawnProbability() .probabilityMinWindow(0.0f) .probabilityMaxWindow(1.0f) }) .biome(&#34;FOREST&#34;);</description>
    </item>
    <item>
      <title>FCBP_ACPSpawnProbability</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/spawnprobability/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/spawnprobability/index.html</guid>
      <description>A spawn probability window for a room NPC rule. Used in the array of FCBP_ACPRoomRule.spawnProbabilities(...).&#xA;Setters Setter Effect probabilityMinWindow(float) Lower bound (0..1) of the spawn window. probabilityMaxWindow(float) Upper bound (0..1) of the spawn window. At spawn, a random value in 0..1 is drawn: the NPC spawns if it falls inside [min, max]. [0, 1] = always spawns; disjoint windows across several entries = mutually exclusive choices; min &gt; max = never. The onRoomNPCSpawnConditionSkill hook adds a scripted veto.</description>
    </item>
    <item>
      <title>FCBP_TileAndGrass</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/tileandgrass/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/tileandgrass/index.html</guid>
      <description>A hexagonal tile/grass population layer (foliage, rocks, grass) scattered on the terrain. Passed to the board as a grass-and-tile-paving entry.&#xA;Setters Setter Effect mesh(TArray&lt;FCBP_Tile&gt;) The meshes to scatter → FCBP_Tile. biome(FName) Biome filter restricting where this layer applies. onlyIf(CRoomType) Restricts the layer to a room type (room, corridor…). tileEffector(FCBP_TileEffector) Placement rules → FCBP_TileEffector. roomEffector(FCBP_RoomEffector) Distance-to-room filter → FCBP_RoomEffector. corridorEffector(FCBP_CorridorEffector) Distance-to-edge filter → FCBP_CorridorEffector. shadowEffector(FCBP_ShadowEffector) Shadow settings → FCBP_ShadowEffector. Example FCBP_TileAndGrass grass = FCBP_TileAndGrass() .mesh({ FCBP_Tile() .mesh(retrieveAsset&lt;UStaticMesh&gt;(&#34;GRASS&#34;)) .percentBelowFloor(10.0f) }) .biome(&#34;FOREST&#34;) .onlyIf(CRoomType::UNSET) .tileEffector(FCBP_TileEffector() .numberToDrawAroundPlayer(40) .alignToSlope(true)) .roomEffector(FCBP_RoomEffector() .rateDistanceToRoomLowerBound(0.0f) .rateDistanceToRoomUpperBound(1.0f)) .corridorEffector(FCBP_CorridorEffector() .rateDistanceToEdgeLowerBound(0.0f) .rateDistanceToEdgeUpperBound(1.0f)) .shadowEffector(FCBP_ShadowEffector());</description>
    </item>
    <item>
      <title>FCBP_Tile</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/tile/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/tile/index.html</guid>
      <description>One static mesh entry placed on the terrain. Used in the array of FCBP_TileAndGrass.mesh(...).&#xA;Setters Setter Effect mesh(UStaticMesh*) The static mesh to scatter on the terrain. percentBelowFloor(float) How much of the mesh is sunk below the floor (bury percentage). Example FCBP_Tile tile = FCBP_Tile() .mesh(retrieveAsset&lt;UStaticMesh&gt;(&#34;GRASS_MESH&#34;)) .percentBelowFloor(10.0f);</description>
    </item>
    <item>
      <title>FCBP_TileEffector</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/tileeffector/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/tileeffector/index.html</guid>
      <description>Placement rules for scattered tiles/grass. Passed with .tileEffector(...).&#xA;Setters Setter Effect collision(bool) Whether placed instances have collision. Default true. tileSizeInMeter(float) Size of one placement cell, in meters. Also the base length for jitter. numberToDrawAroundPlayer(int) How many instances are drawn around the player. alignToSlope(bool) When true, instances orient to the terrain normal. randomRotate(bool) When true, instances get a random yaw. minJitterAsTileSizePercent(float) Minimum random position offset, as a percent of tile size (0 = no jitter). maxJitterAsTileSizePercent(float) Maximum random position offset, percent of tile size. minScalePercent(float) Minimum per-instance random scale. Default 1. maxScalePercent(float) Maximum per-instance random scale. Default 1. minNormalLimit(float) Lowest allowed slope, as the Z of the surface normal: 0 = vertical wall, 0.5 ≈ 45°, 1 = flat ground. Default 0. maxNormalLimit(float) Highest allowed slope (same scale). Default 1. The slope filter is active only if min≠0 or max≠1. minVerticalLimitInMeter(float) Lowest altitude allowed. ⚠️ Not wired in the current hexa conversion. maxVerticalLimitInMeter(float) Highest altitude allowed. ⚠️ Not wired in the current hexa conversion. Example FCBP_TileEffector effector = FCBP_TileEffector() .collision(true) .tileSizeInMeter(1.0f) .numberToDrawAroundPlayer(50) .alignToSlope(true) .randomRotate(true) .minJitterAsTileSizePercent(0.0f) .maxJitterAsTileSizePercent(0.0f) .minScalePercent(1.0f) .maxScalePercent(1.0f) .minVerticalLimitInMeter(-10000.0f) .maxVerticalLimitInMeter(10000.0f) .minNormalLimit(0.0f) .maxNormalLimit(1.0f);</description>
    </item>
    <item>
      <title>FCBP_RoomEffector</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/roomeffector/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/roomeffector/index.html</guid>
      <description>Restricts tile/grass placement by distance to rooms. Passed with .roomEffector(...).&#xA;Setters Setter Effect rateDistanceToRoomLowerBound(float) Lower bound (0..1) of the distance-to-room range where placement is allowed. rateDistanceToRoomUpperBound(float) Upper bound (0..1) of that range. onlyForRoom(TArray&lt;FName&gt;) Restricts placement to the listed room tags. Example FCBP_RoomEffector effector = FCBP_RoomEffector() .rateDistanceToRoomLowerBound(0.0f) .rateDistanceToRoomUpperBound(1.0f) .onlyForRoom({ &#34;BOSS_ROOM&#34; });</description>
    </item>
    <item>
      <title>FCBP_CorridorEffector</title>
      <link>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/corridoreffector/index.html</link>
      <pubDate>Sat, 20 Jul 2024 21:09:28 +0200</pubDate>
      <guid>https://doc.cdryx.net/CdryxAIOUPlugin/fluent/world/corridoreffector/index.html</guid>
      <description>Restricts tile/grass placement by distance to corridor edges. Passed with .corridorEffector(...).&#xA;Setters Setter Effect rateDistanceToEdgeLowerBound(float) Lower bound (0..1) of the distance-to-edge range where placement is allowed. rateDistanceToEdgeUpperBound(float) Upper bound (0..1) of that range. Example FCBP_CorridorEffector effector = FCBP_CorridorEffector() .rateDistanceToEdgeLowerBound(0.0f) .rateDistanceToEdgeUpperBound(1.0f);</description>
    </item>
  </channel>
</rss>