Advertisement
PersonTheCat

Vanilla.cave (0.13b)

Feb 18th, 2019
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.46 KB | None | 0 0
  1. # ----------------------------------------------------------- #
  2. # ########################################################### #
  3. # ### Vanilla.cave Info ### #
  4. # ########################################################### #
  5. # This file contains all of the default values used by each #
  6. # preset. Any value that gets removed will default to its #
  7. # original counterpart here. #
  8. # ########################################################### #
  9. # ### Preset Format Info ### #
  10. # ########################################################### #
  11. # The format used by these presets is known as Hjson, a #
  12. # less picky and more readable counterpart to normal JSON. It #
  13. # accepts various comment styles, allows trailing commas in #
  14. # arrays, does not require commas in objects when elements #
  15. # are placed on new lines, and has other features that should #
  16. # prevent crashes related to syntax errors. You can view #
  17. # hjson.org for more info on using it. #
  18. # These presets have been extended with ".cave" by default #
  19. # so as to more clearly indicate their purpose; however, #
  20. # ".json" and ".hjson" are also accepted by the mod. #
  21. # ########################################################### #
  22. # ### Cat Language Cheat Sheet ### #
  23. # ########################################################### #
  24. # These are some of the keywords that get reused throughout #
  25. # the preset: #
  26. # * factor: Multiplies a value. #
  27. # * chance: 0.0-100.0% probability. #
  28. # * inverseChance: 1 / X chance. #
  29. # * frequency: Relative # of tries. #
  30. # ########################################################### #
  31. # ### Noise Blocks ### #
  32. # ########################################################### #
  33. # Noise blocks are also common. Here's an overview of what #
  34. # each value does: #
  35. # # Used anywhere that only produces values relative to #
  36. # # each (x, z) coordinate. What this will do is either #
  37. # # determine the minimum or maximum height of a block or #
  38. # # determine whether a particular horizontal space is #
  39. # # acceptable for decoration based on a threshold which #
  40. # # is calculated from `scale`. #
  41. # noise2D { #
  42. # # Limits the range of acceptable values. In a sense, #
  43. # # this effectively increases or decreases the width #
  44. # # of each peak of values generated. In most cases #
  45. # # throughout this mod, changing the scale in a noise #
  46. # # block alters the size of each area that gets #
  47. # # decorated. #
  48. # scale: floating point value #
  49. # # Alters the distance between peaks of values. #
  50. # frequency: floating point value #
  51. # # The maximum possible value produced by this #
  52. # # generator. #
  53. # minVal: integer #
  54. # # The maximum possible value produced by this #
  55. # # generator. #
  56. # maxVal: integer #
  57. # } #
  58. # # Used anywhere that produces values relative to each #
  59. # # (x, y, z) coordinate. What this will do is produce #
  60. # # 3-dimensional clusters of space. Just because one #
  61. # # particular y-coordinate is valid does not imply that #
  62. # # everything below it is also valid, as would be the #
  63. # # case with 2D noise. #
  64. # noise3D { #
  65. # # See scale above. #
  66. # scale: floating point value #
  67. # # See frequency above. #
  68. # frequency: floating point value #
  69. # # Stretches and skews the scale on the vertical axis. #
  70. # # Literally means that clusters generated will be #
  71. # # either shorter or taller. #
  72. # scaleY: floating point value #
  73. # # The number of generation passes. This effectively #
  74. # # increases the resolution of clusters (makes them #
  75. # # *less* smooth) at the cost of performance. #
  76. # octaves: integer value #
  77. # # The type of noise to be used by this generator. #
  78. # # Possible values include: Value, ValueFractal, #
  79. # # Perlin, PerlinFractal, Simplex, SimplexFractal, #
  80. # # Cellular, WhiteNoise, Cubic, and CubicFractal. #
  81. # # Not case sensitive. #
  82. # type: NoiseType value; from string #
  83. # # Determines how this noise will be fractalized, when #
  84. # # applicable. #
  85. # # Possible values include: FBM, Billow, and #
  86. # # RigidMulti. #
  87. # # Not case sensitive. #
  88. # fractal: FractalType value; from string #
  89. # # To-do: Include additional FastNoise parameters. #
  90. # } #
  91. # ----------------------------------------------------------- #
  92. {
  93. # Whether the preset is enabled globally.
  94. enabled: true
  95. # A list of biomes for tunnels, rooms, ravines, and most
  96. # (but not all) decorations to be restricted to.
  97. biomes: {
  98. # A list of registry names.
  99. names: [ ]
  100. # A list of biome IDs.
  101. IDs: [ ]
  102. # A list of Biome types.
  103. types: [ ]
  104. }
  105. useBiomeBlacklist: false
  106. # A list of dimension IDs for all features to be
  107. # restricted to.
  108. dimensions: [ ]
  109. useDimensionBlacklist: false
  110. # A list of blocks that can be replaced by this generator.
  111. # Bear in mind that very little world decoration has
  112. # occurred by the time this generator will run. This means
  113. # that almost nothing more than stone, dirt, and water
  114. # exist in the world at this point. Use this if you have
  115. # any other mods that might be adding blocks early on, or
  116. # if any other preset is placing blocks that this generator
  117. # should also be able to dig through.
  118. replaceableBlocks: [ "stone", "dirt" ]
  119. # Setting this field to true will automatically add all
  120. # WallDecorators, StoneClusters, etc. to the replaceableBlocks
  121. # list. These blocks usually should be added because
  122. # multiple tunnel sections can overlap after decorators have
  123. # been placed, resulting in unwanted, floating decorators.
  124. replaceDecorators: true
  125. # A collection of blocks that will be used instead of air
  126. # at various height levels. Supports random and even
  127. # noise-based placement.
  128. caveBlocks: [
  129. # Imitates the normal lava placement behavior.
  130. {
  131. # There are more parameters. See
  132. # underground_forest.cave for more info.
  133. states: [ "lava" ]
  134. # Maximum height bounds.
  135. maxHeight: 10
  136. }
  137. /* Defaults values; these do not spawn by default.
  138. { A comma might be missing, if this were here.
  139. states: []
  140. chance: 100.0
  141. minHeight: 0
  142. maxHeight: 50
  143. # This is a standard noise3D object. While it is more to
  144. # write, the fact that these are everywhere helps you
  145. # know that they're all the same.
  146. noise3D: {
  147. # 0.0 - 1.0 scale.
  148. scale: 0.1
  149. frequency: 50.00
  150. scaleY: 1.0
  151. # Number of generation passes. Increases
  152. # resolution at the cost of performance.
  153. ocaves: 1
  154. }
  155. }
  156. */
  157. ]
  158. # Used for decorating walls with various blocks. Supports
  159. # random and noise-based placement. Needs more documentation.
  160. wallDecorators: [
  161. /*
  162. {
  163. states: [ "stone:5", "gravel" ]
  164. chance: 5.0
  165. minHeight: 0
  166. maxHeight: 64
  167. directions: [ "side", "down" ]
  168. matchers: [ "stone" ]
  169. preference: replace_match
  170. }
  171. */
  172. ]
  173. # Single, crcular spaces found near the center of cave
  174. # systems.
  175. rooms: {
  176. # The radius in blocks.
  177. scale: 6
  178. # Vertical height multiple of scale.
  179. scaleY: 0.5
  180. }
  181. tunnels: {
  182. # The average number of tunnel systems to try and
  183. # spawn per chunk.
  184. frequency: 15
  185. # Mininum starting height.
  186. minHeight: 8
  187. # Maximum starting height.
  188. maxHeight: 128
  189. # The length in blocks of this tunnel. A value of 0
  190. # produces between 132-176.
  191. distance: 0
  192. # The 1 / X chance chance that multiple tunnels will
  193. # be spawned at each origin, instead of just one.
  194. spawnInSystemInverseChance: 4
  195. # The 1 / X chance that any origin will be skipped.
  196. # This has an effect of spawning each system in
  197. # isolated groups vs. everywhere.
  198. spawnIsolatedInverseChance: 7
  199. # Whether the preset is enabled globally.
  200. noiseYReduction: true
  201. # Whether the preset is enabled globally.
  202. resizeBranches: true
  203. # These values alter how much the horizontal angle
  204. # of each tunnel can change between segments.
  205. twistXZ: {
  206. # angle = angle^x
  207. exponent: 1
  208. # angle = angle * x
  209. factor: 0.75
  210. # angle = angle + (randomValue * x)
  211. randFactor: 4
  212. # angle first gets changed by x.
  213. startVal: 0
  214. }
  215. # These values alter how much the vertical angle
  216. # of each tunnel can change between segments.
  217. twistY: {
  218. exponent: 1
  219. factor: 0.9
  220. randFactor: 2
  221. startVal: 0
  222. }
  223. # These values alter the radius in blocks of each
  224. # tunnel.
  225. scale: {
  226. exponent: 1
  227. factor: 1
  228. randFactor: 0
  229. startVal: 0
  230. # startingValue = startingValue + (randomValue * x).
  231. startValRandFactor: 1
  232. }
  233. # scaleY is a multiple of scale on the vertical axis.
  234. # If scale == 6 and scaleY == 0.5, the height becomes 3.
  235. # These values alter scaleY between tunnel segments.
  236. scaleY: {
  237. exponent: 1
  238. factor: 1
  239. randFactor: 0
  240. startVal: 1
  241. }
  242. # The horizontal angle in radians.
  243. angleXZ: {
  244. startVal: 0
  245. startValRandFactor: 1
  246. }
  247. # The vertical angle in radians.
  248. angleY: {
  249. startVal: 0
  250. startValRandFactor: 0.25
  251. }
  252. }
  253. # Ravines are like tunnels, but with random variations in
  254. # horizontal scale. You could theoretically use this as
  255. # your main tunnels, if you're using multiple presets.
  256. ravines: {
  257. # The 1 / X chance for this ravine to start in any
  258. # given chunk.
  259. inverseChance: 50
  260. minHeight: 20
  261. maxHeight: 40
  262. distance: 0
  263. twistXZ: {
  264. exponent: 1
  265. factor: 0.5
  266. randFactor: 4
  267. startVal: 0
  268. }
  269. twistY: {
  270. exponent: 1
  271. factor: 0.8
  272. randFactor: 2
  273. startVal: 0
  274. }
  275. scale: {
  276. exponent: 1
  277. factor: 1
  278. randFactor: 0
  279. startVal: 0
  280. startValRandFactor: 2
  281. }
  282. scaleY: {
  283. exponent: 1
  284. factor: 1
  285. randFactor: 0
  286. # This is essentially the second most important
  287. # variable accounting for the look of ravines.
  288. startVal: 3
  289. }
  290. angleXZ: {
  291. startVal: 0
  292. startValRandFactor: 1
  293. }
  294. angleY: {
  295. startVal: 0
  296. startValRandFactor: 0.25
  297. }
  298. # Similar to noiseYReduction, but not as random.
  299. noiseYFactor: 0.7
  300. # Contains an optional noise2D block used to change
  301. # the look of ravine walls. Placing / uncommenting
  302. # this block will completely override the vanilla
  303. # ravine wall generation features, producing
  304. # smoother, more organic surfaces.
  305. wallNoise: {
  306. /*
  307. noise2D {
  308. # Scale is ignored in this context.
  309. scale: 0.5
  310. frequency: 0.1
  311. minVal: 0
  312. maxVal: 4
  313. }
  314. */
  315. }
  316. }
  317. # See caverns.json for another example of caverns. These
  318. # are the default values.
  319. caverns: {
  320. enabled: true
  321. minHeight: 10
  322. maxHeight: 50
  323. # Optional 3D noise block for the main cavern shapes.
  324. noise3D: {
  325. # This does refer to noise frequency, but its use in
  326. # the case of caverns has the opposite effect. Higher
  327. # values mean less frequent pockets of air.
  328. frequency: 0.0143
  329. # scale for noise-based objects is from 0-1.
  330. scale: 0.2
  331. scaleY: 0.5
  332. # The number of passes. Increases resolution at the
  333. # cost of performance.
  334. octaves: 1
  335. type: SimplexFractal
  336. fractal: FBM
  337. }
  338. # Optional 2D noise block for the cavern ceiling.
  339. # The value produced by ceilNoise is added to the terrain
  340. # height at any given coordinate. In order to stop caverns
  341. # from punching holes through the surface, use negative
  342. # values only.
  343. ceiling: {
  344. noise2D: {
  345. # No effect in this context.
  346. scale: 0.5
  347. frequency: 0.02
  348. minVal: -17
  349. maxVal: -3
  350. }
  351. }
  352. # Optional 2d noise block for the cavern floor.
  353. floor: {
  354. noise2D: {
  355. # No effect in this context.
  356. scale: 0.5
  357. frequency: 0.02
  358. minVal: 0
  359. maxVal: 8
  360. }
  361. }
  362. }
  363. # See stone_layers.cave for an example of stoneLayers. These are
  364. # just the default values, so you only need to specify the state
  365. # and maxHeight.
  366. stoneLayers: [
  367. /*
  368. { Default values; these don't spawn by default.
  369. state: null
  370. # This is necessary because multiple layers ideally
  371. # should not spawn at the exact same height.
  372. maxHeight: 0
  373. # Optional 2D noise block.
  374. noise2D: {
  375. scale: 0.5
  376. # The distance between this layer's peaks.
  377. frequency: 0.015
  378. # How many blocks down this layer can vary.
  379. minVal: -7
  380. # How many blocks up this layer can vary.
  381. maxVal: 7
  382. }
  383. }
  384. */
  385. ]
  386. # See stone_clusters.cave for an example of stoneClusters.
  387. stoneClusters: [
  388. /*
  389. { Default values; these don't spawn by default.
  390. # A list of blocks to spawn under these conditions.
  391. states: []
  392. # The 0 - 1 spawn frequency.
  393. frequency: 0.15
  394. # The radius of this cluster on the x-axis.
  395. radiusX: 16
  396. radiusY: 12
  397. radiusZ: 16
  398. radiusVariance: 6
  399. startingHeight: 32
  400. heightVariance: 16
  401. }
  402. */
  403. ]
  404. # See stalagmites_large.cave for an example of largeStalactites
  405. # and largeStalagmites. These are just the default values, so
  406. # you only need to specify the states.
  407. largeStalactites: [
  408. /*
  409. { Default values; these don't spawn by default.
  410. state: null
  411. # The maximum number of blocks this structure can be.
  412. maxLength: 3
  413. chance: 16.7
  414. minHeight: 11
  415. maxHeight: 55
  416. matchers: []
  417. # Optional noise block. Will perform better without.
  418. noise2D: {
  419. scale: 0.425
  420. frequency: 40.0
  421. # Not used at all in this context. Can be omitted.
  422. # -1 is effectively the default.
  423. minVal: -1
  424. # Not used at all in this context. Can be omitted.
  425. # -1 is effectively the default.
  426. maxVal: 1
  427. }
  428. }
  429. */
  430. ]
  431. # Same as largeStalactites. Spawns from the floor instead of
  432. # the ceiling.
  433. largeStalagmites: [ ]
  434. # See underground_forest.cave for an example of giantPillars.
  435. # These are the defaults. You just need to specify a state.
  436. giantPillars: [
  437. /*
  438. { Default values; these don't spawn by default.
  439. # This block makes up the body of the pillar.
  440. state: null
  441. # This may not be null if it does exist, but it can be
  442. # left out. If the field is not present, no stairs will
  443. # spawn.
  444. stairBlock: null
  445. # Number of spawn tries per chunk.
  446. frequency: 15
  447. minHeight: 10
  448. maxHeight: 50
  449. minLength: 4
  450. maxLength: 12
  451. }
  452. */
  453. ]
  454. # Structures are ideal for small decorations. Larger decorations
  455. # (16x16)+ will cause cascading generation lag and should be
  456. # handled by another mod, such as recurrent complex or OTG.
  457. # Structures will be centered around X and Z, but not Y. Most of
  458. # this information can be left out. See underground_forest.cave
  459. # for a better example. These are just the default values.
  460. structures: [
  461. /*
  462. { Default values; no structures spawn by default.
  463. # name refers to a resource location or file name.
  464. # It may not be null.
  465. name: null
  466. # The 0-1 ratio of blocks to be retained when spawning.
  467. integrity: 1.0
  468. # X, Y, Z spawn offset.
  469. offset: [0, 0, 0]
  470. # Number of tries per chunk. Should be low.
  471. frequency: 1
  472. # The percent chance any try will succeed.
  473. chance: 0.05
  474. minHeight: 10
  475. maxHeight: 50
  476. # Any relative coordinates that must be non-solid.
  477. # Example:
  478. # airMatchers: [
  479. # [0, 1, 0],
  480. # [0, 3, 0]
  481. # ]
  482. airMatchers: []
  483. solidMatchers: []
  484. # Whether to log the coordinates every time this structure
  485. # spawns.
  486. debugSpawns: false
  487. rotateRandomly: false
  488. }
  489. */
  490. ]
  491. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement