Talvieno

DFSL WIP #2

Aug 28th, 2014
460
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 73.36 KB | None | 0 0
  1. indentations are not necessary. Anything not included in brackets is a comment.
  2. welcome to DFSL.
  3.  
  4. TO DO:
  5. add no_vegetation_perturb
  6.  
  7. [BP_FILE:body_default]
  8. [CREATURE_FILE:creature_amphibians]
  9. [CREATURE_FILE:creature_annelids]
  10. [CREATURE_FILE:creature_birds]
  11. [CREATURE_FILE:creature_birds_new]
  12. [CREATURE_FILE:creature_bug_slug_new]
  13. [CREATURE_FILE:creature_desert_new]
  14. [CREATURE_FILE:creature_domestic]
  15. [CREATURE_FILE:creature_insects]
  16. [CREATURE_FILE:creature_large_mountain]
  17. [CREATURE_FILE:creature_large_ocean]
  18. [CREATURE_FILE:creature_large_tropical]
  19. [CREATURE_FILE:creature_large_tundra]
  20. [CREATURE_FILE:creature_mountain_new]
  21. [CREATURE_FILE:creature_next_underground]
  22. [CREATURE_FILE:creature_ocean_new]
  23. [CREATURE_FILE:creature_other]
  24. [CREATURE_FILE:creature_reptiles]
  25. [CREATURE_FILE:creature_riverlakepool_new]
  26. [CREATURE_FILE:creature_savage_tropical]
  27. [CREATURE_FILE:creature_small_mammal_new]
  28. [CREATURE_FILE:creature_small_mammals]
  29. [CREATURE_FILE:creature_small_ocean]
  30. [CREATURE_FILE:creature_small_riverlake]
  31. [CREATURE_FILE:creature_standard]
  32. [CREATURE_FILE:creature_subterranean]
  33. [CREATURE_FILE:creature_temperate_new]
  34. [CREATURE_FILE:creature_tropical_new]
  35. [CREATURE_FILE:creature_tundra_taiga_new]
  36.  
  37.  
  38. A list of all the body parts for creatures. If you don't want a bodypart included, just don't add it here.
  39.  
  40. BODY is the main tag. What comes next is the bodypart, both added to the raws and pulled from the files.
  41. The number is the weight - i.e. how often it gets placed.
  42. [BODY:BASIC_1PARTBODY:32]
  43. [DESCRIPTION:ADJ:snake-like] an adjective for the description
  44. [DESCRIPTION:NOUN:creature] a noun for the description
  45. [BODY:BASIC_1PARTBODY_THOUGHT:4]
  46. [BODY:BASIC_1PARTBODY_FLYING_HEAD_FLAG_THOUGHT:2]
  47. [BODY:BASIC_2PARTBODY:83]
  48. [BODY:BASIC_3PARTARMS:2]
  49. [BODY:BASIC_3PARTLEGS:2]
  50. [BODY:BASIC_FRONTLEGS:2]
  51. [BODY:BASIC_REARLEGS:2]
  52. [BODY:ARMS_STANCE:4]
  53. [BODY:7HEADNECKS:2]
  54. [BODY:BASIC_HEAD:95]
  55. [BODY:BASIC_HEAD_NECK:12]
  56. [BODY:BODY_HEAD:4]
  57. [DESCRIPTION:ADJ:fearsome]
  58. [DESCRIPTION:NOUN:creature]
  59. [BODY:BODY_WITH_HEAD_FLAG:9]
  60. [DESCRIPTION:NOUN:creature] I'm so creative.
  61. [DESCRIPTION:VERB:is made of a mass of appendages resembling human fingers] this one is actually better.
  62. [DESCRIPTION:VERB:creeps along the ground like a starfish]
  63. [BODY:HUMANOID:9]
  64. [DESCRIPTION:ADJ:humanoid]
  65. [DESCRIPTION:VERB:walks on two legs]
  66. [DESCRIPTION:VERB:uses its long arms to strangle its prey] this might not make sense anymore.
  67. [BODY:HUMANOID_HOOF:2]
  68. [BODY:HUMANOID_NECK:36]
  69. [DESCRIPTION:ADJ:humanoid]
  70. [DESCRIPTION:VERB:walks on two legs]
  71. [DESCRIPTION:VERB:uses its long arms to strangle its prey] this might not make sense anymore.
  72. [BODY:HUMANOID_NECK_HOOF:4]
  73. [BODY:HUMANOID_LEGLESS_NECK:8]
  74. [DESCRIPTION:ADJ:bat-like]
  75. [DESCRIPTION:NOUN:creature]
  76. [BODY:HUMANOID_NECK_FLIER:5]
  77. [DESCRIPTION:ADJ:bat-like]
  78. [DESCRIPTION:NOUN:creature]
  79. [BODY:2WINGS:71]
  80. [BODY:HUMANOID_ARMLESS:5]
  81. [DESCRIPTION:NOUN:creature]
  82. [DESCRIPTION:NOUN:walks with two clawed legs]
  83. [BODY:HUMANOID_LEGLESS:6]
  84. [BODY:HUMANOID_4ARMS:4]
  85. [DESCRIPTION:ADJ:four-armed]
  86. [DESCRIPTION:NOUN:creature]
  87. [BODY:HUMANOID_6ARMS:2]
  88. [BODY:HUMANOID_LEGLESS_4ARMS:2]
  89. [BODY:HUMANOID_LEGLESS_6ARMS:2]
  90. [BODY:HUMANOID_NECK_4ARMS:2]
  91. [BODY:4ARMS_STANCE:3]
  92. [BODY:HUMANOID_NECK_2HEAD:2]
  93. [BODY:HUMANOID_SIMPLE:12]
  94. [DESCRIPTION:ADJ:man-shaped]
  95. [PREFLIST:simplicity] adds something to the list of preferences a dwarf can have for the creature. poorly implemented, I suppose, as few of these parts use it.
  96. [BODY:QUADRUPED:3]
  97. [DESCRIPTION:ADJ:long-bodied]
  98. [DESCRIPTION:NOUN:quadruped]
  99. [DESCRIPTION:VERB:runs on four legs] a verb for the description
  100. [BODY:QUADRUPED_NECK_FRONT_GRASP:24]
  101. [BODY:QUADRUPED_NECK:108] very common body type.
  102. [DESCRIPTION:ADJ:long-bodied]
  103. [DESCRIPTION:NOUN:quadruped]
  104. [DESCRIPTION:VERB:runs on four legs] a verb for the description
  105. [BODY:QUADRUPED_NECK_HOOF:28]
  106. [BODY:INSECT:31]
  107. [PREFLIST:high-pitched buzz:buzzing]will choose one of the two.
  108. [DESCRIPTION:NOUN:insect]
  109. [BODY:INSECT_4LEGS_2ARMS:3]
  110. [PREFLIST:mystical feel]
  111. [PREFLIST:mysticism]
  112. [BODY:SPIDER:62]
  113. [DESCRIPTION:ADJ:spider-like]
  114. [DESCRIPTION:DESC:has long, spindly legs]
  115. [BODY:CRAB_BODY:2]
  116. [BODY:TWO_NO_CLAW_TENTACLES:2]
  117. [BODY:TENTACLE_MOUTH:2]
  118. [BODY:TENTACLE_TEETH:2]
  119. [BODY:8_SIMPLE_HEAD_ARMS:4]
  120. [BODY:2_HEAD_CLUBBED_TENTACLES:3]
  121. [BODY:FOUR_TENTACLES:2]
  122. [BODY:SIX_TENTACLES:2]
  123. [BODY:TAIL:238]
  124. [BODY:SHELL:13]
  125. [BODY:TAIL_STANCE:3]
  126. [BODY:TAIL_STINGER:5]
  127. [BODY:UPPERBODY_PINCERS:7]
  128. [BODY:2EYES:371]obviously common
  129. [BODY:3EYES:2]
  130. [BODY:4EYES:2]
  131. [BODY:2EYESTALKS:5]
  132. [BODY:2TUSKS:7]
  133. [BODY:NOSE:210]
  134. [BODY:SNOUT_NOSMELL:3]
  135. [BODY:TRUNK:2]
  136. [BODY:2EARS:91]
  137. [BODY:2LUNGS:269]
  138. [BODY:MOUTH:322]
  139. [BODY:PROBOSCIS:2]
  140. [BODY:BEAK:55]
  141. [BODY:HEART:386]
  142. [BODY:GUTS:382]
  143. [BODY:GIZZARD:57]
  144. [BODY:ORGANS:339]
  145. [BODY:HUMANOID_JOINTS:89]
  146. [BODY:THROAT:251]
  147. [BODY:NECK:253]
  148. [BODY:SPINE:336]
  149. [BODY:BRAIN:387]
  150. [BODY:SKULL:337]
  151. [BODY:CASQUE:2]
  152. [BODY:HEAD_HORN:3]
  153. [BODY:2HEAD_HORN:15]
  154. [BODY:2HEAD_HORN_NUMBERED:2]
  155. [BODY:2HEAD_ANTLER:8]
  156. [BODY:1EYE:2]
  157. [BODY:BODY_EYE:2]
  158. [BODY:BODY_EYELID:2]
  159. [BODY:5FINGERS:32]
  160. [BODY:4FINGERS:24]
  161. [BODY:2FINGERS:2]
  162. [BODY:5TOES:16]
  163. [BODY:4TOES:65]
  164. [BODY:3TOES:5]
  165. [BODY:2TOES:6]
  166. [BODY:5TOES_FQ_REG:34]here it gets messy.
  167. [BODY:4TOES_FQ_REG:49]
  168. [BODY:3TOES_FQ_REG:4]
  169. [BODY:5TOES_RQ_REG:43]
  170. [BODY:4TOES_RQ_REG:36]
  171. [BODY:3TOES_RQ_REG:8]
  172. [BODY:5TOES_RQ_ANON:25]
  173. [BODY:5TOES_FQ_FINGERS:24]
  174. [BODY:4TOES_FQ_FINGERS:4]
  175. [BODY:SIDE_FINS:66]
  176. [BODY:DORSAL_FIN:59]
  177. [BODY:SIDE_FLIPPERS:7]
  178. [BODY:FRONT_BODY_FLIPPERS:9]
  179. [BODY:REAR_BODY_FLIPPERS:13]
  180. [BODY:1HUMP:2]
  181. [BODY:2HUMPS:2]
  182. [BODY:CHEEKS:5]
  183. [BODY:EYELIDS:5]
  184. [BODY:TONGUE:184]
  185. [BODY:FORKED_TONGUE:4]
  186. [BODY:LIPS:2]
  187. [BODY:FACIAL_FEATURES:50]
  188. [BODY:ONE_EYELID:2]
  189. [BODY:RIBCAGE:335]
  190. [BODY:GENERIC_TEETH_WITH_LARGE_EYE_TEETH:72]
  191. [BODY:GENERIC_TEETH_WITH_FANGS:14]
  192. [BODY:RODENT_TEETH:30]
  193. [BODY:GENERIC_TEETH:76]
  194. [BODY:TEETH:77]
  195. [BODY:HAND_FOOT_CENTAUR_NECK:2]
  196. [DESCRIPTION:ADJ:hideous]
  197. [BODY:LARGE_MANDIBLES:2]
  198. [BODY:BILL:8]
  199. [BODY:HUMANOID_ARMLESS_NECK:58]
  200. [DESCRIPTION:DESC:has a long neck]
  201. [DESCRIPTION:DESC:has long legs]
  202. [PREFLIST:long necks]
  203. [DESCRIPTION:DESC:bird-like]
  204. [BODY:TUSK:2]
  205.  
  206.  
  207. [LIST:liquids]defines a new list. This one is for liquids.
  208. [ADD:liquids:blood]adds "blood" to the list "liquids".
  209. [ADD:liquids:goo]the "add to list" lines can really be placed anywhere, but I'm putting them here mostly for simplicity.
  210. [ADD:liquids:slime]
  211. [ADD:liquids:mucus]
  212. [ADD:liquids:filth]
  213. [ADD:liquids:bile]
  214. [ADD:liquids:ooze]
  215.  
  216. [LIST:letters]
  217. [ADD:letters:a]
  218. [ADD:letters:a]adding an entry more than once increases the chances of it being used, as you might expect
  219. [ADD:letters:b]
  220. [ADD:letters:c]
  221. [ADD:letters:d]
  222. [ADD:letters:e]
  223. [ADD:letters:e]
  224. [ADD:letters:f]
  225. [ADD:letters:g]
  226. [ADD:letters:h]
  227. [ADD:letters:i]
  228. [ADD:letters:i]
  229. [ADD:letters:j]
  230. [ADD:letters:k]
  231. [ADD:letters:l]
  232. [ADD:letters:m]
  233. [ADD:letters:n]
  234. [ADD:letters:o]
  235. [ADD:letters:o]
  236. [ADD:letters:p]
  237. [ADD:letters:q]
  238. [ADD:letters:r]
  239. [ADD:letters:s]
  240. [ADD:letters:t]
  241. [ADD:letters:u]
  242. [ADD:letters:u]
  243. [ADD:letters:v]
  244. [ADD:letters:w]
  245. [ADD:letters:x]
  246. [ADD:letters:y]
  247. [ADD:letters:z]
  248.  
  249. [LIST:adj]
  250. [ADD:adj:freakish]
  251. [ADD:adj:scary]
  252. [ADD:adj:terrifying]
  253. [ADD:adj:calming]
  254. [ADD:adj:elegant]
  255. [ADD:adj:impressive]
  256. [ADD:adj:bizarre]
  257. [ADD:adj:enormous]
  258. [ADD:adj:awesome]
  259. [ADD:adj:unnerving]
  260. [ADD:adj:freakish]
  261. [ADD:adj:long]
  262. [ADD:adj:lustrous]
  263. [ADD:adj:frightening]
  264. [ADD:adj:drooping]
  265. [ADD:adj:sinister]
  266. [ADD:adj:graceful]
  267. [ADD:adj:gruesome]
  268.  
  269. [LIST:bloodColor]
  270. [ADD:bloodColor:BLACK]
  271. [ADD:bloodColor:BLUE]
  272. [ADD:bloodColor:GREEN]
  273. [ADD:bloodColor:AQUA]
  274. [ADD:bloodColor:RED]
  275. [ADD:bloodColor:VIOLET]
  276. [ADD:bloodColor:BROWN]
  277. [ADD:bloodColor:ASH_GRAY]
  278. [ADD:bloodColor:GRAY]
  279. [ADD:bloodColor:DARK_BLUE]
  280. [ADD:bloodColor:TURQUOISE]
  281. [ADD:bloodColor:DARK_VIOLET]
  282. [ADD:bloodColor:YELLOW]
  283. [ADD:bloodColor:WHITE]
  284.  
  285. [LIST:skinColor]
  286. [ADD:skinColor:CLEAR:1]
  287. [ADD:skinColor:MIDNIGHT_BLUE:1]
  288. [ADD:skinColor:WHITE:1]
  289. [ADD:skinColor:BLACK:1]
  290. [ADD:skinColor:GREEN:1]
  291. [ADD:skinColor:BLUE:1]
  292. [ADD:skinColor:ECRU:1]
  293. [ADD:skinColor:GRAY:1]
  294. [ADD:skinColor:TAUPE_PALE:1]
  295. [ADD:skinColor:PINK:1]
  296. [ADD:skinColor:GOLDENROD:1]
  297.  
  298. [LIST:colors]
  299. [ADD:colors:7:0:0]after "colors:", all instances of ":" are ignored and added to the string. Not true for brackets.
  300. [ADD:colors:1:0:0]
  301. [ADD:colors:7:0:1]
  302. [ADD:colors:0:0:1]
  303. [ADD:colors:2:0:0]
  304. [ADD:colors:1:0:1]
  305. [ADD:colors:7:0:0]
  306. [ADD:colors:0:0:1]
  307. [ADD:colors:7:0:1]
  308. [ADD:colors:5:0:1]
  309. [ADD:colors:6:0:1]the order of these matches certain other color lists and is important.
  310.  
  311. [LIST:scaleList]
  312. [ADD:scaleList:GOLD:1]
  313. [ADD:scaleList:RED:1]
  314. [ADD:scaleList:WHITE:1]
  315. [ADD:scaleList:CRIMSON:1]
  316. [ADD:scaleList:BLACK:1]
  317.  
  318. [LIST:scaleColor]
  319. [ADD:scaleColor:5:0:0]color doesn't even look like a word to me anymore.
  320. [ADD:scaleColor:4:0:1]
  321. [ADD:scaleColor:7:0:1]
  322. [ADD:scaleColor:4:0:0]
  323. [ADD:scaleColor:0:0:1]these match the scaleList values.
  324.  
  325. [LIST:hairList]
  326. [ADD:hairList:GRAY:1]
  327. [ADD:hairList:BLACK:1]
  328. [ADD:hairList:YELLOW:1]
  329. [ADD:hairList:DARK_VIOLET:1]
  330. [ADD:hairList:BROWN:1]
  331. [ADD:hairList:WHITE:1]
  332. [ADD:hairList:BLACK:1]
  333.  
  334. [LIST:featherList]
  335. [ADD:featherList:BROWN:1]
  336. [ADD:featherList:PURPLE:1]
  337. [ADD:featherList:GRAY:1]
  338. [ADD:featherList:BLACK:1]
  339.  
  340. [LIST:slimeList]
  341. [ADD:slimeList:BROWN:1]
  342. [ADD:slimeList:GREEN:1]
  343. [ADD:slimeList:CRIMSON:1]
  344. [ADD:slimeList:YELLOW:1]
  345. [ADD:slimeList:WHITE:1]
  346. [ADD:slimeList:GRAY:1]
  347. [ADD:slimeList:BLACK:1]
  348. [ADD:slimeList:DARK_VIOLET:1]
  349. [ADD:slimeList:DARK_GREEN:1]
  350.  
  351. [LIST:slimeColor]
  352. [ADD:slimeColor:6:0:0]
  353. [ADD:slimeColor:2:0:1]
  354. [ADD:slimeColor:4:0:0]
  355. [ADD:slimeColor:6:0:1]
  356. [ADD:slimeColor:7:0:1]
  357. [ADD:slimeColor:7:0:0]
  358. [ADD:slimeColor:0:0:1]
  359. [ADD:slimeColor:5:0:0]
  360. [ADD:slimeColor:2:0:0]in case it wasn't obvious, this matches slimelist. Oh, and by the way, the number of items in each list MUST be equal.
  361.  
  362. [LIST:eyeList]
  363. [ADD:eyeList:IRIS_EYE_PURPLE:1]
  364. [ADD:eyeList:IRIS_EYE_RED:1]
  365. [ADD:eyeList:BLACK:1]
  366. [ADD:eyeList:BLACK:1]
  367. [ADD:eyeList:BLACK:1]
  368. [ADD:eyeList:IRIS_EYE_GREEN:1]
  369. [ADD:eyeList:IRIS_EYE_BROWN:1]
  370. [ADD:eyeList:BLACK:1]
  371. [ADD:eyeList:BLACK:1]this is all heavily weighted towards black. I don't remember why.
  372. [ADD:eyeList:IRIS_EYE_GREEN:1]
  373. [ADD:eyeList:BLACK:1]
  374. [ADD:eyeList:IRIS_EYE_RED:1]
  375. [ADD:eyeList:BLACK:1]
  376. [ADD:eyeList:BLACK:1]
  377. [ADD:eyeList:GREEN:1]
  378. [ADD:eyeList:IRIS_EYE_BROWN:1]
  379. [ADD:eyeList:IRIS_EYE_GOLD:1]
  380. [ADD:eyeList:IRIS_EYE_YELLOW:1]
  381.  
  382. [LIST:stoneName]
  383. [ADD:stoneName:siltstone]
  384. [ADD:stoneName:mudstone]
  385. [ADD:stoneName:claystone]
  386. [ADD:stoneName:rock salt]
  387. [ADD:stoneName:dolomite]
  388. [ADD:stoneName:chert]
  389. [ADD:stoneName:chalk]
  390. [ADD:stoneName:granite]
  391. [ADD:stoneName:diorite]
  392. [ADD:stoneName:gabbro]
  393. [ADD:stoneName:rhyolite]
  394. [ADD:stoneName:basalt]
  395. [ADD:stoneName:andesite]
  396. [ADD:stoneName:dacite]
  397. [ADD:stoneName:obsidian]
  398. [ADD:stoneName:quartzite]
  399. [ADD:stoneName:slate]
  400. [ADD:stoneName:phyllite]
  401. [ADD:stoneName:schist]
  402. [ADD:stoneName:gneiss]
  403. [ADD:stoneName:marble]
  404.  
  405. [LIST:stoneID]
  406. [ADD:stoneID:SILTSTONE]
  407. [ADD:stoneID:MUDSTONE]
  408. [ADD:stoneID:CLAYSTONE]
  409. [ADD:stoneID:ROrCK_SALT]
  410. [ADD:stoneID:DOLOMITE]
  411. [ADD:stoneID:CHERT]
  412. [ADD:stoneID:CHALK]
  413. [ADD:stoneID:GRANITE]
  414. [ADD:stoneID:DIORITE]
  415. [ADD:stoneID:GABBRO]
  416. [ADD:stoneID:RHYOLITE]
  417. [ADD:stoneID:BASALT]
  418. [ADD:stoneID:ANDESITE]
  419. [ADD:stoneID:DACITE]
  420. [ADD:stoneID:OBSIDIAN]
  421. [ADD:stoneID:QUARTZITE]
  422. [ADD:stoneID:SLATE]
  423. [ADD:stoneID:PHYLLITE]
  424. [ADD:stoneID:SCHIST]
  425. [ADD:stoneID:GNEISS]
  426. [ADD:stoneID:MARBLE]
  427.  
  428. [LIST:stoneColor]
  429. [ADD:stoneColor:6:0:0]
  430. [ADD:stoneColor:6:0:0]
  431. [ADD:stoneColor:0:0:1]
  432. [ADD:stoneColor:7:0:1]
  433. [ADD:stoneColor:7:0:1]
  434. [ADD:stoneColor:6:0:0]
  435. [ADD:stoneColor:7:0:1]
  436. [ADD:stoneColor:7:0:0]
  437. [ADD:stoneColor:0:0:1]
  438. [ADD:stoneColor:0:0:1]
  439. [ADD:stoneColor:0:0:1]
  440. [ADD:stoneColor:0:0:1]
  441. [ADD:stoneColor:0:0:1]
  442. [ADD:stoneColor:0:0:1]
  443. [ADD:stoneColor:0:0:1]
  444. [ADD:stoneColor:7:0:1]
  445. [ADD:stoneColor:0:0:1]
  446. [ADD:stoneColor:0:0:1]
  447. [ADD:stoneColor:6:0:0]
  448. [ADD:stoneColor:7:0:1]
  449. [ADD:stoneColor:7:0:1]
  450.  
  451. [LIST:metalName]
  452. [ADD:metalName:iron]
  453. [ADD:metalName:gold]
  454. [ADD:metalName:silver]
  455. [ADD:metalName:copper]
  456. [ADD:metalName:nickel]
  457. [ADD:metalName:zinc]
  458. [ADD:metalName:bronze]
  459. [ADD:metalName:brass]
  460. [ADD:metalName:steel]
  461. [ADD:metalName:platinum]
  462. [ADD:metalName:tin]
  463. [ADD:metalName:lead]
  464. [ADD:metalName:aluminum]
  465.  
  466. [LIST:metalID]
  467. [ADD:metalID:IRON]
  468. [ADD:metalID:GOLD]
  469. [ADD:metalID:SILVER]
  470. [ADD:metalID:COPPER]
  471. [ADD:metalID:NICKEL]
  472. [ADD:metalID:ZINC]
  473. [ADD:metalID:BRONZE]
  474. [ADD:metalID:BRASS]
  475. [ADD:metalID:STEEL]
  476. [ADD:metalID:PLATINUM]
  477. [ADD:metalID:TIN]
  478. [ADD:metalID:LEAD]
  479. [ADD:metalID:ALUMINUM]
  480.  
  481. [LIST:metalColor]
  482. [ADD:metalColor:0:0:1]
  483. [ADD:metalColor:6:0:1]
  484. [ADD:metalColor:7:0:1]
  485. [ADD:metalColor:6:0:0]
  486. [ADD:metalColor:7:0:0]
  487. [ADD:metalColor:7:0:0]
  488. [ADD:metalColor:6:0:0]
  489. [ADD:metalColor:6:0:1]
  490. [ADD:metalColor:0:0:1]
  491. [ADD:metalColor:7:0:1]
  492. [ADD:metalColor:7:0:0]
  493. [ADD:metalColor:0:0:1]
  494. [ADD:metalColor:7:0:1]
  495.  
  496. [BEGIN] All variables defined above this tag are permanent. All the ones below are reset every time you make a creature.
  497.  
  498. =======Split======= just to show it's the end of the last section.
  499.  
  500.  
  501. [IF:%RND:0:33%:1] 1in 33 chance of adding next stuff
  502. [TAG_ADD:{CANOPENDOORS}{EQUIPS}{INTELLIGENT}] 1 in 33 chance of possible free civ. {these brackets} are converted to the standard raw type as the actual file is compiled.
  503. [CAN_OPEN_DOORS] set value to true, same for next two
  504. [EQUIPS]
  505. [INTELLIGENT]
  506. Megabeasts and semimegabeasts come next. Their stuff is just easier to add earlier on.
  507. [ELSEIF:%RND:1:100%:1] 1 in 100 chance of a semimegabeast, after the 1 in 33 chance of a new civ.
  508. [CAN_CIV:FALSE]
  509. [SEMI]
  510. [TAG_ADD:{SEMIMEGABEAST}{DIFFICULTY:5}]
  511. [TAG_ADD: {ATTACK_TRIGGER:50:5000:50000}]
  512. [TAG_ADD:{CAN_LEARN}{CAN_SPEAK}{CANOPENDOORS}{EQUIPS}{FANCIFUL}]
  513. [TAG_ADD:{BUILDINGDESTROYER:2}]
  514. [INT:L1:%RND:2:6%] defining a new integer. These are messily done. Careful with them. Defining a
  515. variable is permanent (for this particular creature) - it can be used across the entire script,
  516. regardless of whether it was inside a loop or if/then statement. All variables are removed and reset
  517. (except for the ones defined above the BEGIN tag) at the start of every creature creation phase.
  518. [FOR:i:1:L1] for i = 1 to L1, or for (i=1;i<L1;i++); for java coders
  519. [TAG_ADD:{SPHERE:%RANDOM_SPHERE%}]adds a random sphere.
  520. [X] end if/end loop tag. empty lines can be used too. Comment lines don't count.
  521. [IF:%RND:1:4%:<>:1]if random number between 1 and 4 is not 1
  522. [TAG_ADD:{LAIR:SIMPLE_BURROW:100}] you're a little nothing.
  523. [ELSE] the else script tag thing. If this is called, then YAUR A MINOTAUR type beast.
  524. [TAG_ADD:{PERSONALITY:BRAVERY:75:90:100}]
  525. [TAG_ADD:{NATURAL_SKILL:WRESTLING:6}]
  526. [TAG_ADD:{NATURAL_SKILL:BITE:3}]
  527. [TAG_ADD:{NATURAL_SKILL:GRASP_STRIKE:6}]
  528. [TAG_ADD:{NATURAL_SKILL:STANCE_STRIKE:6}]
  529. [TAG_ADD:{NATURAL_SKILL:MELEE_COMBAT:8}]
  530. [TAG_ADD:{NATURAL_SKILL:DODGING:6}]
  531. [TAG_ADD:{NATURAL_SKILL:AXE:8}]
  532. [TAG_ADD:{NATURAL_SKILL:SWORD:8}]
  533. [TAG_ADD:{NATURAL_SKILL:DAGGER:8}]
  534. [TAG_ADD:{NATURAL_SKILL:PIKE:8}]
  535. [TAG_ADD:{NATURAL_SKILL:MACE:8}]
  536. [TAG_ADD:{NATURAL_SKILL:HAMMER:8}]
  537. [TAG_ADD:{NATURAL_SKILL:WHIP:8}]
  538. [TAG_ADD:{NATURAL_SKILL:SPEAR:8}]
  539. [TAG_ADD:{NATURAL_SKILL:SITUATIONAL_AWARENESS:12}]
  540. [TAG_ADD:{PHYS_ATT_RANGE:STRENGTH:1000:1100:1150:1250:1350:1550:2250}]
  541. [TAG_ADD:{PHYS_ATT_RANGE:TOUGHNESS:1000:1100:1150:1250:1350:1550:2250}]
  542. [TAG_ADD:{PHYS_ATT_RANGE:AGILITY:1000:1100:1150:1250:1350:1550:2250}]
  543. [TAG_ADD:{PHYS_ATT_RANGE:ENDURANCE:1000:1100:1150:1250:1350:1550:2250}]
  544. [TAG_ADD:{PHYS_ATT_RANGE:RECUPERATION:1000:1100:1150:1250:1350:1550:2250}]
  545. [TAG_ADD:{PHYS_ATT_RANGE:DISEASE_RESISTANCE:1000:1100:1150:1250:1350:1550:2250}]
  546. [TAG_ADD:{MENT_ATT_RANGE:FOCUS:1000:1100:1150:1250:1350:1550:2250}]
  547. [TAG_ADD:{MENT_ATT_RANGE:WILLPOWER:1000:1100:1150:1250:1350:1550:2250}]
  548. [TAG_ADD:{MENT_ATT_RANGE:MEMORY:2000:2100:2150:2250:2350:2550:3250}]
  549. [TAG_ADD:{MENT_ATT_RANGE:SPATIAL_SENSE:2000:2100:2150:2250:2350:2550:3250}]
  550. [TAG_ADD:{MENT_ATT_RANGE:KINESTHETIC_SENSE:1000:1100:1150:1250:1350:1550:2250}]
  551. [TAG_ADD:{LAIR:LABYRINTH:100}]
  552. [TAG_ADD:{LAIR_HUNTER}]
  553. [TAG_ADD:{LAIR_HUNTER_SPEECH:lair_hunter_minotaur.txt}]
  554. [TAG_ADD:{HABIT_NUM:TEST_ALL}]
  555. [TAG_ADD:{HABIT:GRIND_BONE_MEAL:100}]
  556. [TAG_ADD:{HABIT:EAT_BONE_PORRIDGE:100}]
  557. [TAG_ADD:{HABIT:USE_ANY_MELEE_WEAPON:100}]this time, using a blank line to end the if/then, just to show how it works:
  558.  
  559. [ELSEIF:%RND:1:100%:1]1 in 100 megabeast... after civs and semimegabeasts.
  560. greetings. this is your captain sspeaking. You are all screwed. Thank you for choosing Talv Airlines, and I bid you all a good day.
  561. [CAN_CIV:FALSE] just to keep the big ol' brutes from making their own civs.
  562. [IF:%RND:0:3%:1]
  563. [TAG_ADD:{MEGABEAST}{DIFFICULTY:15}] 11 or higher doesn't get assigne in adv mode quests.
  564. [ELSE]
  565. [TAG_ADD:{MEGABEAST}{DIFFICULTY:10}]
  566. [X]
  567. [TAG_ADD: {ATTACK_TRIGGER:80:10000:100000}]
  568. [TAG_ADD:{FANCIFUL}{LARGE_PREDATOR}{LIKES_FIGHTING}{NOFEAR}{NOEXERT}]
  569. [TAG_ADD:{FREQUENCY:5}]
  570. [TAG_ADD:{GRASSTRAMPLE:50}]
  571. [TAG_ADD:{PETVALUE:10000}]
  572. [TAG_ADD:{PET_EXOTIC}{TRAINABLE}{MOUNT_EXOTIC}]
  573. [INT:L2:%RND:2:6%]
  574. [FOR:i:1:L2]
  575. [TAG_ADD:{SPHERE:%RANDOM_SPHERE%}] I'll show off by ending this with a blank line:
  576.  
  577. [IF:%RND:0:1%:1]
  578. [TAG_ADD:{NOSTUN}{NOPAIN}]
  579.  
  580. [INT:X1:%RND:1:4%]
  581. [IF:X1:1]
  582. [TAG_ADD:{LAIR:WILDERNESS_LOCATION:100}]
  583. [ELSEIF:X1:2]
  584. [TAG_ADD:{LAIR:SHRINE:100}]
  585. [ELSE]
  586. [TAG_ADD:{LAIR:SIMPLE_BURROW:100}]
  587.  
  588. [X1:%RND:1:4%] setting variables is easy.
  589. First, a dash of dragon.
  590. [IF:X1:1] I'll admit, though, using Toady's raws format is a bit messy with operators.
  591. [TAG_ADD:{MENT_ATT_RANGE:WILLPOWER:3000:3500:3750:4000:4250:4500:5000}]
  592. [TAG_ADD:{HABIT_NUM:TEST_ALL}]
  593. [TAG_ADD:{HABIT:COLLECT_WEALTH:100}]
  594. [TAG_ADD:{NATURAL_SKILL:BITE:6}]
  595. [TAG_ADD:{NATURAL_SKILL:GRASP_STRIKE:6}]
  596. [TAG_ADD:{NATURAL_SKILL:RANGED_COMBAT:6}]
  597. [TAG_ADD:{NATURAL_SKILL:MELEE_COMBAT:6}]
  598. [TAG_ADD:{NATURAL_SKILL:DODGING:6}]
  599. [TAG_ADD:{NATURAL_SKILL:SITUATIONAL_AWARENESS:6}]
  600. [ELSEIF:X1:2]A case of colossus.
  601. don't do anything!
  602. [ELSEIF:X1:3]A hint of hydra.
  603. [TAG_ADD:{LAIR_HUNTER}]
  604. [TAG_ADD:{NATURAL_SKILL:BITE:6}]
  605. [TAG_ADD:{NATURAL_SKILL:GRASP_STRIKE:6}]
  606. [TAG_ADD:{NATURAL_SKILL:MELEE_COMBAT:6}]
  607. [TAG_ADD:{NATURAL_SKILL:DODGING:6}]
  608. [TAG_ADD:{NATURAL_SKILL:SITUATIONAL_AWARENESS:6}]
  609. [ELSE]A ray of roc.
  610. [TAG_ADD:{HABIT_NUM:TEST_ALL}]
  611. [TAG_ADD:{HABIT:GIANT_NEST:100}]
  612. [TAG_ADD:{NATURAL_SKILL:BITE:6}]
  613. [TAG_ADD:{NATURAL_SKILL:STANCE_STRIKE:6}]
  614. [TAG_ADD:{NATURAL_SKILL:MELEE_COMBAT:6}]
  615. [TAG_ADD:{NATURAL_SKILL:DODGING:6}]
  616. [TAG_ADD:{NATURAL_SKILL:SITUATIONAL_AWARENESS:6}]
  617. [X]
  618. [INT:R:%RND:1:4%]
  619. [IF:R:4] cue skyrim theme
  620. [IS_FIRE_BREATHER]
  621. [ADD_TAG:{CAN_DO_INTERACTION:MATERIAL_EMISSION}]
  622. [ADD_TAG: {CDI:ADV_NAME:Breathe fire}]I am a servant of the secret fire
  623. [ADD_TAG: {CDI:USAGE_HINT:ATTACK}]
  624. [ADD_TAG: {CDI:BP_REQUIRED:BY_CATEGORY:MOUTH}]
  625. [ADD_TAG: {CDI:FLOW:DRAGONFIRE}] Wielder of the flame of anor
  626. [ADD_TAG: {CDI:TARGET:C:LINE_OF_SIGHT}]
  627. [ADD_TAG: {CDI:TARGET_RANGE:C:15}]
  628. [ADD_TAG: {CDI:MAX_TARGET_NUMBER:C:1}]
  629. [ADD_TAG: {CDI:WAIT_PERIOD:50}]
  630. [ADD_TAG:{FIREIMMUNE_SUPER}]
  631. [ELSEIF:R:3] It's made of bronze.
  632. [IS_BRONZE]
  633. [ADD_TAG:{NOT_BUTCHERABLE}]
  634. [X]
  635. [X]
  636.  
  637. Here's the stuff for pets.
  638.  
  639. [IF:can_civ:false] if the civilization cannnot be made into a civ, basically
  640. [IF:%RND:0:277%:<:61]if a random number between 0 and 277 is less than 61
  641. [TAG_ADD:{PET}]
  642. [ELSEIF:%RND:0:277%:<:30] this fixes a bug in the old version
  643. [TAG_ADD:{PET_EXOTIC}] the blank line ends the if statement:
  644.  
  645. [IF:%RND:0:277%:<:150]
  646. [TAG_ADD:{MOUNT_EXOTIC}]
  647. [DESCRIPTION:VERB:can be ridden] yeah, you can add these here too.
  648.  
  649. [IF:%RND:0:277%:<:4]
  650. [TAG_ADD:{GLOWTILE:9}{GLOWCOLOR:%RND:1:7%:0:1}]bit of fanciness that activates the RND stuff and adds a number to the tag between 1 and 7.
  651.  
  652. [IF:%RND:0:277%:<:28]
  653. [TAG_ADD:{TRAINABLE}]
  654. [DESCRIPTION:VERB:can be trained for war]
  655. [X]
  656. [X]
  657.  
  658.  
  659. double line break to end the if-then statements. the bracketed X is optional.
  660.  
  661. tag stuff.
  662.  
  663. [IF:MEGABEAST:FALSE]
  664. [IF:%RND:1:1000:%:<:7]
  665. [TAG_ADD:{AT_PEACE_WITH_WILDLIFE}]
  666. [DESCRIPTION:DESC:few natural predators]
  667. [PREFLIST:peacefulness]
  668.  
  669. [IF:%RND:1:1000:%:<:4]
  670. [TAG_ADD:{ADOPTS_OWNER}]
  671. [PREFLIST:aloofness]
  672.  
  673. [IF:%RND:1:1000:%:<:4]
  674. [TAG_ADD:{AMBUSHPREDATOR}]
  675. [PREFLIST:mystery]
  676. [DESCRIPTION:VERB:waits for its prey to pass before striking]
  677.  
  678. [IF:%RND:1:1000:%:<:72]
  679. [TAG_ADD:{BUILDINGDESTROYER:1}]
  680. [ELSEIF:%RND:1:1000:%:<:4]
  681. [TAG_ADD:{BUILDINGDESTROYER:2}]
  682.  
  683. [IF:%RND:1:1000:%:<:72]
  684. [TAG_ADD:{INTELLIGENT}]
  685. [INTELLIGENT]
  686. [PREFLIST:distinct culture]
  687. [DESCRIPTION:VERB:is very intelligent]
  688. [ELSEIF:%RND:1:1000:%:<:25]
  689. [TAG_ADD:{CAN_LEARN}{SLOW_LEARNER}]
  690. [ELSEIF:%RND:1:1000:%:<:72]
  691. [TAG_ADD:{CAN_LEARN}]
  692. [DESCRIPTION:ADJ:intelligent]
  693. [DESCRIPTION:VERB:likes learning new things]
  694.  
  695. [IF:%RND:1:1000:%:<:137]
  696. [TAG_ADD:{CANOPENDOORS}]
  697. [CAN_OPEN_DOORS]
  698.  
  699. [IF:%RND:1:1000:%:<:130]
  700. [TAG_ADD:{EQUIPS}]
  701. [DESCRIPTION:VERB:can equip weapons and armor]
  702.  
  703. [IF:%RND:1:1000:%:<:76]
  704. [TAG_ADD:{FANCIFUL}]
  705. [DESRIPTION:ADJ:well-known]
  706.  
  707. [IF:%RND:1:1000:%:<:365]
  708. [TAG_ADD:{GRASSTRAMPLE:0}]
  709. [ELSEIF:%RND:1:1000:%:<:7]
  710. [TAG_ADD:{GRASSTRAMPLE:10}]
  711. [ELSEIF:%RND:1:1000:%:<:36]
  712. [TAG_ADD:{GRASSTRAMPLE:20}]
  713. [ELSEIF:%RND:1:1000:%:<:76]
  714. [TAG_ADD:{GRASSTRAMPLE:50}]
  715.  
  716. [IF:%RND:1:1000:%:<:181]
  717. [TAG_ADD:{GRAZER}]
  718. [DESCRIPTION:NOUN:grazer]
  719. [IS_GRAZER]
  720.  
  721. [IF:%RND:1:1000:%:<:4]
  722. [TAG_ADD:{HUNTS_VERMIN}]
  723. [DESCRIPTION:VERB:hunts vermin]
  724.  
  725. [IF:%RND:1:1000:%:<:274]
  726. [TAG_ADD:{LARGE_PREDATOR}]
  727. [OR]
  728. [DESCRIPTION:NOUN:predator]
  729. [BREAK]
  730. [X]
  731. [IS_HUNTER]
  732.  
  733. [IF:%RND:1:1000:%:<:87]
  734. [TAG_ADD:{LIKES_FIGHTING}]
  735. [DESCRIPTION:ADJ:violent]
  736. [PREFLIST:attitude]
  737. [LIKES_FIGHTING]
  738.  
  739. [IF:%RND:1:1000:%:<:43]
  740. [TAG_ADD:{LOOSE_CLUSTERS}]
  741. [DESCRIPTION:VERB:likes wandering alone]
  742.  
  743. [IF:%RND:1:1000:%:<:509]
  744. [TAG_ADD:{MEANDERER}]
  745. [IS_ROAMER]
  746. [X]
  747. [X]
  748. [IF:%RND:1:1000:%:<:112]
  749. [TAG_ADD:{AMPHIBIOUS}]
  750. [DESCRIPTION:VERB:is at home both in water and on land]
  751. [AMPHIBIOUS]
  752.  
  753. [IF:%RND:1:1000:%:<:117]
  754. [TAG_ADD:{BONECARN}]
  755. [DESCRIPTION:VERB:feigns eath until a victim passes by:likes to gnaw on old bones:eats the bones of the dead]
  756. [PREFLIST:savage ways:primitive habits]
  757.  
  758. [IF:%RND:1:1000:%:<:195]
  759. [TAG_ADD:CARNIVORE]
  760. [OR] chooses one at random from the following, before a line break or bracketed capital X
  761. [DESCRIPTION:NOUN:carnivore]
  762. [DESCRIPTION:ADJ:carnivorous]
  763. [X]
  764. [OR]
  765. [DESCRIPTION:ADJ:predatory]
  766. [BREAK] a chance to do nothing at all.
  767. [X]
  768. [OR]
  769. [DESCRIPTION:ADJ:scavenging]
  770. [BREAK]
  771. [X]
  772. [PREFLIST:eating habits]
  773.  
  774. [IF:%RND:1:1000:%:<:79]
  775. [TAG_ADD:{CURIOUSBEAST_EATER}]
  776. [CURIOUS_COUNT:+:1]
  777. [TYPE_CUR:eating the provisions of outposts]
  778.  
  779. [IF:%RND:1:1000:%:<:43]
  780. [TAG_ADD:{CURIOUSBEAST_GUZZLER}]
  781. [CURIOUS_COUNT:+:1]
  782. [TYPE_CUR:drinking the provisions of outposts]
  783.  
  784. [IF:%RND:1:1000:%:<:43]
  785. [TAG_ADD:{CURIOUSBEAST_ITEM}]
  786. [CURIOUS_COUNT:+:1]
  787. [TYPE_CUR:stealing items from outposts]
  788.  
  789. [IF:%RND:1:1000:%:<:126]
  790. [TAG_ADD:{EXTRAVISION}]
  791.  
  792. [IF:%RND:1:1000:%:<:25]
  793. [TAG_ADD:{FIREIMMUNE}]
  794. [DESCRIPTION:ADJ:fire-immune]
  795. [ELSEIF:%RND:1:1000:%:<:7]
  796. [TAG_ADD:{FIREIMMUNE_SUPER}]
  797. [DESCRIPTION:ADJ:fire-immune]
  798.  
  799. [IF:%RND:1:1000:%:<:4]
  800. [TAG_ADD:{FLEEQUICK}]
  801.  
  802. [IF:%RND:1:1000:%:<:125] birds. for the birds. all the birds. all is birds.
  803. [TAG_ADD:{FLIER}]
  804. [FLIES]
  805.  
  806. [IF:%RND:1:1000:%:<:11]
  807. [TAG_ADD:{LIGHT_GEN}]
  808. [DESCRIPTION:VERB:glows with its own light]
  809.  
  810. [IF:%RND:1:1000:%:<:7]
  811. [TAG_ADD:{LOCKPICKER}]
  812. [DESCRIPTION:VERB:likes wandering alone]
  813.  
  814. [IF:%RND:1:1000:%:<:18]
  815. [TAG_ADD:{MAGMA_VISION}]
  816. [DESCRIPTION:DESC:feels at home in magma]
  817.  
  818. [IF:%RND:1:1000:%:<:7]
  819. [TAG_ADD:{MISCHIEVOUS}]
  820. [DESCRIPTION:ADJ:mischievous]
  821. [DESCRIPTION:DESC:is very curious about everything]
  822.  
  823. [IF:%RND:1:1000:%:<:116]
  824. [TAG_ADD:{NO_DIZZINESS}]
  825.  
  826. [IF:%RND:1:1000:%:<:350]
  827. [TAG_ADD:{NO_DRINK}]
  828.  
  829. [IF:%RND:1:1000:%:<:54]
  830. [TAG_ADD:{NO_EAT}]
  831.  
  832. [IF:%RND:1:1000:%:<:65]
  833. [TAG_ADD:{NO_FEVERS}]
  834. [DESCRIPTION:VERB:never becomes ill]
  835.  
  836. [IF:%RND:1:1000:%:<:231]
  837. [TAG_ADD:{NO_SLEEP}]
  838. [OR]
  839. [DESCRIPTION:VERB:never seems to sleep]
  840. [BREAK]
  841. [X]
  842.  
  843. [IF:%RND:1:1000:%:<:65]
  844. [TAG_ADD:{NO_THOUGHT_CENTER_FOR_MOVEMENT}]
  845. [HAS_BRAIN]
  846.  
  847. [IF:%RND:1:1000:%:<:246]
  848. [TAG_ADD:{NOBONES}]
  849.  
  850. [IF:%RND:1:1000:%:<:65]
  851. [TAG_ADD:{NOBREATHE}]
  852. [NO_BREATHE]
  853.  
  854. [IF:%RND:1:1000:%:<:61]
  855. [TAG_ADD:{NOEMOTION}]
  856. [DESCRIPTION:ADJ:unemotional]
  857.  
  858.  
  859. [IF:CURIOUS_COUNT:>:1]
  860. [DESCRIPTION:VERB:is fond of raiding the supplies of outposts]
  861. [DESCRIPTION:VERB:is a very curious creature]
  862. [ELSEIF:CURIOUS_COUNT:1]
  863. [DESCRIPTION:VERB:is a very curious creature]
  864. [DESCRIPTION:VERB:is fond of %TYPE_CUR%] fancy line for adding the contents of a string.
  865. [X]
  866.  
  867. now we mark all intelligent creatures that are civ-able as sentient.
  868. [IF:INTELLIGENT]
  869. [IF:CAN_OPEN_DOORS]
  870. [IF:EQUIPS]
  871. [SENTIENT]
  872. [X]
  873. [X]
  874. [X]
  875.  
  876.  
  877.  
  878. original code has a comment here: ____________BIG SPLIT HERE___________
  879.  
  880. [IF:IS_HUNTER]
  881. [IF:FLIES]
  882. [DESCRIPTION:VERB:hunt its prey through flight]
  883.  
  884. [IF:LIKES_FIGHTING]
  885. [DESCRIPTION:VERB:likes to kill passing creatures]
  886. [X]
  887. [ELSE]
  888. [IF:FLIES]
  889. [DESCRIPTION:VERB:flies to escape enemies]
  890.  
  891. [IF:LIKES_FIGHTING]
  892. [DESCRIPTION:VERB:likes to fight passing creatures]
  893. [X]
  894. [X]
  895.  
  896. [IF:IS_GRAZER]
  897. [FOODWORD:plants]
  898. [X]
  899. [IF:IS_HUNTER]
  900. [FOODWORD:prey]
  901. [X]
  902.  
  903. Biome stuff.
  904. All of these are default vanilla values, extracted from the original raws with a program I threw together.
  905. I excluded the rarest combinations for the sake of keeping this short.
  906. Therefore, if something happens only once in the raws, RandCreatures won't imitate it.
  907. In the old version, biomes were chosen at random, though weighted.
  908. That means a creature could be found in two completely different biomes, like frozen tundra and jungle.
  909. This fixes that. And you have full access to it - congrats. :)
  910.  
  911. [BIOME:ANY_POOL:11] biome starter:tag to add to raws:weight against other starter tags
  912. [ANY_LAKE:2] the 2 is the chance to add alongside above biome tag; in this case 2*(100/11)%, or about an 18% chance.
  913. [NOT_FREEZING:2]
  914.  
  915. [BIOME:FOREST_TAIGA:19]
  916. [GRASSLAND_TEMPERATE:5]
  917. [SAVANNA_TEMPERATE:5]
  918. [SHRUBLAND_TEMPERATE:7]
  919. [ANY_TEMPERATE_FOREST:14]
  920. [ANY_DESERT:4]
  921. [MOUNTAIN:3]
  922. [TUNDRA:6]
  923. [ANY_TEMPERATE_WETLAND:3]
  924.  
  925. [BIOME:ANY_TROPICAL:5]
  926. [DESERT_BADLAND:4]
  927. [DESERT_ROCK:4]
  928. [DESERT_SAND:4]
  929.  
  930. [BIOME:GRASSLAND_TEMPERATE:27]
  931. [FOREST_TAIGA:5]
  932. [SAVANNA_TEMPERATE:24]
  933. [SHRUBLAND_TEMPERATE:20]
  934. [FOREST_TEMPERATE_BROADLEAF:3]
  935. [FOREST_TEMPERATE_CONIFER:3]
  936. [MARSH_TEMPERATE_FRESHWATER:2]
  937. [MARSH_TEMPERATE_SALTWATER:2]
  938. [ANY_TEMPERATE_FOREST:9]
  939. [ANY_DESERT:7]
  940. [TUNDRA:5]
  941. [SAVANNA_TROPICAL:2]
  942. [GRASSLAND_TROPICAL:2]
  943. [ANY_TEMPERATE_WETLAND:4]
  944. [SHRUBLAND_TROPICAL:2]
  945.  
  946. [BIOME:SAVANNA_TEMPERATE:25]
  947. [FOREST_TAIGA:5]
  948. [GRASSLAND_TEMPERATE:24]
  949. [SHRUBLAND_TEMPERATE:21]
  950. [FOREST_TEMPERATE_BROADLEAF:3]
  951. [FOREST_TEMPERATE_CONIFER:3]
  952. [MARSH_TEMPERATE_FRESHWATER:2]
  953. [MARSH_TEMPERATE_SALTWATER:2]
  954. [ANY_TEMPERATE_FOREST:9]
  955. [ANY_DESERT:6]
  956. [TUNDRA:3]
  957. [SAVANNA_TROPICAL:2]
  958. [GRASSLAND_TROPICAL:2]
  959. [ANY_TEMPERATE_WETLAND:4]
  960. [SHRUBLAND_TROPICAL:2]
  961.  
  962. [BIOME:SHRUBLAND_TEMPERATE:30]
  963. [FOREST_TAIGA:7]
  964. [GRASSLAND_TEMPERATE:20]
  965. [SAVANNA_TEMPERATE:21]
  966. [FOREST_TEMPERATE_BROADLEAF:3]
  967. [FOREST_TEMPERATE_CONIFER:3]
  968. [ANY_TEMPERATE_FOREST:18]
  969. [ANY_DESERT:6]
  970. [MOUNTAIN:4]
  971. [TUNDRA:4]
  972. [SAVANNA_TROPICAL:2]
  973. [GRASSLAND_TROPICAL:2]
  974. [ANY_TEMPERATE_WETLAND:4]
  975. [ANY_TROPICAL_FOREST:2]
  976. [SHRUBLAND_TROPICAL:4]
  977.  
  978. [BIOME:FOREST_TEMPERATE_BROADLEAF:9]
  979. [GRASSLAND_TEMPERATE:3]
  980. [SAVANNA_TEMPERATE:3]
  981. [SHRUBLAND_TEMPERATE:3]
  982. [FOREST_TEMPERATE_CONIFER:2]
  983. [FOREST_TROPICAL_CONIFER:2]
  984. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  985.  
  986. [BIOME:FOREST_TEMPERATE_CONIFER:3]
  987. [GRASSLAND_TEMPERATE:3]
  988. [SAVANNA_TEMPERATE:3]
  989. [SHRUBLAND_TEMPERATE:3]
  990. [FOREST_TEMPERATE_BROADLEAF:2]
  991.  
  992. [BIOME:MARSH_TEMPERATE_FRESHWATER:9]
  993. [GRASSLAND_TEMPERATE:2]
  994. [SAVANNA_TEMPERATE:2]
  995. [MARSH_TEMPERATE_SALTWATER:7]
  996. [MARSH_TROPICAL_FRESHWATER:6]
  997. [MARSH_TROPICAL_SALTWATER:5]
  998. [SWAMP_TEMPERATE_FRESHWATER:3]
  999. [SWAMP_TROPICAL_FRESHWATER:2]
  1000.  
  1001. [BIOME:MARSH_TEMPERATE_SALTWATER:7]
  1002. [GRASSLAND_TEMPERATE:2]
  1003. [SAVANNA_TEMPERATE:2]
  1004. [MARSH_TEMPERATE_FRESHWATER:7]
  1005. [MARSH_TROPICAL_FRESHWATER:5]
  1006. [MARSH_TROPICAL_SALTWATER:5]
  1007.  
  1008. [BIOME:OCEAN_ARCTIC:22]
  1009. [OCEAN_TEMPERATE:13]
  1010. [RIVER_TEMPERATE_FRESHWATER:4]
  1011. [RIVER_TEMPERATE_BRACKISHWATER:4]
  1012. [RIVER_TEMPERATE_SALTWATER:4]
  1013.  
  1014. [BIOME:ANY_WETLAND:9]
  1015. [ANY_TEMPERATE_FOREST:3]
  1016. [FOREST_TROPICAL_CONIFER:2]
  1017. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  1018. [ANY_SHRUBLAND:6]
  1019. [ANY_SAVANNA:6]
  1020. [ANY_GRASSLAND:7]
  1021. [ANY_DESERT:5]
  1022. [MOUNTAIN:2]
  1023. [TUNDRA:2]
  1024. [ANY_FOREST:3]
  1025.  
  1026. [BIOME:ANY_TEMPERATE_FOREST:38]
  1027. [FOREST_TAIGA:14]
  1028. [GRASSLAND_TEMPERATE:9]
  1029. [SAVANNA_TEMPERATE:9]
  1030. [SHRUBLAND_TEMPERATE:18]
  1031. [ANY_WETLAND:3]
  1032. [FOREST_TROPICAL_CONIFER:2]
  1033. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  1034. [ANY_SHRUBLAND:3]
  1035. [ANY_SAVANNA:3]
  1036. [ANY_GRASSLAND:3]
  1037. [ANY_DESERT:7]
  1038. [MOUNTAIN:5]
  1039. [TUNDRA:4]
  1040. [ANY_TEMPERATE_WETLAND:4]
  1041. [ANY_TROPICAL_FOREST:5]
  1042. [SHRUBLAND_TROPICAL:2]
  1043.  
  1044. [BIOME:FOREST_TROPICAL_CONIFER:5]
  1045. [FOREST_TEMPERATE_BROADLEAF:2]
  1046. [ANY_WETLAND:2]
  1047. [ANY_TEMPERATE_FOREST:2]
  1048. [FOREST_TROPICAL_DRY_BROADLEAF:4]
  1049. [ANY_SHRUBLAND:2]
  1050. [ANY_SAVANNA:2]
  1051. [ANY_GRASSLAND:2]
  1052. [ANY_DESERT:3]
  1053.  
  1054. [BIOME:FOREST_TROPICAL_DRY_BROADLEAF:7]
  1055. [FOREST_TEMPERATE_BROADLEAF:2]
  1056. [ANY_WETLAND:2]
  1057. [ANY_TEMPERATE_FOREST:2]
  1058. [FOREST_TROPICAL_CONIFER:4]
  1059. [ANY_SHRUBLAND:2]
  1060. [ANY_SAVANNA:2]
  1061. [ANY_GRASSLAND:2]
  1062. [ANY_DESERT:2]
  1063. [FOREST_TROPICAL_MOIST_BROADLEAF:3]
  1064.  
  1065. [BIOME:ANY_SHRUBLAND:9]
  1066. [ANY_WETLAND:6]
  1067. [ANY_TEMPERATE_FOREST:3]
  1068. [FOREST_TROPICAL_CONIFER:2]
  1069. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  1070. [ANY_SAVANNA:9]
  1071. [ANY_GRASSLAND:9]
  1072. [ANY_DESERT:7]
  1073. [MOUNTAIN:3]
  1074. [TUNDRA:3]
  1075. [ANY_FOREST:5]
  1076.  
  1077. [BIOME:ANY_SAVANNA:9]
  1078. [ANY_WETLAND:6]
  1079. [ANY_TEMPERATE_FOREST:3]
  1080. [FOREST_TROPICAL_CONIFER:2]
  1081. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  1082. [ANY_SHRUBLAND:9]
  1083. [ANY_GRASSLAND:9]
  1084. [ANY_DESERT:7]
  1085. [MOUNTAIN:3]
  1086. [TUNDRA:3]
  1087. [ANY_FOREST:5]
  1088.  
  1089. [BIOME:ANY_GRASSLAND:11]
  1090. [ANY_WETLAND:7]
  1091. [ANY_TEMPERATE_FOREST:3]
  1092. [FOREST_TROPICAL_CONIFER:2]
  1093. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  1094. [ANY_SHRUBLAND:9]
  1095. [ANY_SAVANNA:9]
  1096. [ANY_DESERT:8]
  1097. [MOUNTAIN:3]
  1098. [TUNDRA:3]
  1099. [ANY_FOREST:5]
  1100.  
  1101. [BIOME:ANY_DESERT:27]
  1102. [FOREST_TAIGA:4]
  1103. [GRASSLAND_TEMPERATE:7]
  1104. [SAVANNA_TEMPERATE:6]
  1105. [SHRUBLAND_TEMPERATE:6]
  1106. [ANY_WETLAND:5]
  1107. [ANY_TEMPERATE_FOREST:7]
  1108. [FOREST_TROPICAL_CONIFER:3]
  1109. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  1110. [ANY_SHRUBLAND:7]
  1111. [ANY_SAVANNA:7]
  1112. [ANY_GRASSLAND:8]
  1113. [MOUNTAIN:6]
  1114. [TUNDRA:6]
  1115. [SAVANNA_TROPICAL:4]
  1116. [GRASSLAND_TROPICAL:4]
  1117. [ANY_TEMPERATE_WETLAND:2]
  1118. [ANY_TROPICAL_FOREST:2]
  1119. [SHRUBLAND_TROPICAL:2]
  1120. [SWAMP_MANGROVE:2]
  1121. [ANY_FOREST:5]
  1122.  
  1123. [BIOME:MOUNTAIN:17]
  1124. [FOREST_TAIGA:3]
  1125. [SHRUBLAND_TEMPERATE:4]
  1126. [ANY_WETLAND:2]
  1127. [ANY_TEMPERATE_FOREST:5]
  1128. [ANY_SHRUBLAND:3]
  1129. [ANY_SAVANNA:3]
  1130. [ANY_GRASSLAND:3]
  1131. [ANY_DESERT:6]
  1132. [TUNDRA:5]
  1133. [SWAMP_MANGROVE:2]
  1134. [ANY_FOREST:3]
  1135.  
  1136. [BIOME:TUNDRA:17]
  1137. [FOREST_TAIGA:6]
  1138. [GRASSLAND_TEMPERATE:5]
  1139. [SAVANNA_TEMPERATE:3]
  1140. [SHRUBLAND_TEMPERATE:4]
  1141. [ANY_WETLAND:2]
  1142. [ANY_TEMPERATE_FOREST:4]
  1143. [ANY_SHRUBLAND:3]
  1144. [ANY_SAVANNA:3]
  1145. [ANY_GRASSLAND:3]
  1146. [ANY_DESERT:6]
  1147. [MOUNTAIN:5]
  1148. [ANY_TEMPERATE_WETLAND:2]
  1149. [ANY_FOREST:2]
  1150. [GLACIER:4]
  1151.  
  1152. [BIOME:SAVANNA_TROPICAL:27]
  1153. [GRASSLAND_TEMPERATE:2]
  1154. [SAVANNA_TEMPERATE:2]
  1155. [SHRUBLAND_TEMPERATE:2]
  1156. [ANY_DESERT:4]
  1157. [GRASSLAND_TROPICAL:23]
  1158. [ANY_TROPICAL_FOREST:7]
  1159. [SHRUBLAND_TROPICAL:22]
  1160.  
  1161. [BIOME:GRASSLAND_TROPICAL:23]
  1162. [GRASSLAND_TEMPERATE:2]
  1163. [SAVANNA_TEMPERATE:2]
  1164. [SHRUBLAND_TEMPERATE:2]
  1165. [ANY_DESERT:4]
  1166. [SAVANNA_TROPICAL:23]
  1167. [ANY_TROPICAL_FOREST:6]
  1168. [SHRUBLAND_TROPICAL:18]
  1169.  
  1170. [BIOME:ANY_TEMPERATE_WETLAND:4]
  1171. [FOREST_TAIGA:3]
  1172. [GRASSLAND_TEMPERATE:4]
  1173. [SAVANNA_TEMPERATE:4]
  1174. [SHRUBLAND_TEMPERATE:4]
  1175. [ANY_TEMPERATE_FOREST:4]
  1176. [ANY_DESERT:2]
  1177. [TUNDRA:2]
  1178.  
  1179. [BIOME:FOREST_TROPICAL_MOIST_BROADLEAF:25]
  1180. [FOREST_TROPICAL_DRY_BROADLEAF:3]
  1181. [SHRUBLAND_TROPICAL:2]
  1182. [SWAMP_MANGROVE:2]
  1183.  
  1184. [BIOME:ANY_TROPICAL_FOREST:21]
  1185. [SHRUBLAND_TEMPERATE:2]
  1186. [ANY_TEMPERATE_FOREST:5]
  1187. [ANY_DESERT:2]
  1188. [SAVANNA_TROPICAL:7]
  1189. [GRASSLAND_TROPICAL:6]
  1190. [SHRUBLAND_TROPICAL:11]
  1191. [SWAMP_MANGROVE:4]
  1192. [SWAMP_TROPICAL_FRESHWATER:2]
  1193. [SWAMP_TROPICAL_SALTWATER:2]
  1194.  
  1195. [BIOME:LAKE_TEMPERATE_SALTWATER:3]
  1196. [LAKE_TEMPERATE_BRACKISHWATER:3]
  1197. [LAKE_TEMPERATE_FRESHWATER:3]
  1198. [RIVER_TEMPERATE_FRESHWATER:2]
  1199. [RIVER_TEMPERATE_BRACKISHWATER:2]
  1200. [RIVER_TEMPERATE_SALTWATER:2]
  1201.  
  1202. [BIOME:LAKE_TEMPERATE_BRACKISHWATER:10]
  1203. [LAKE_TEMPERATE_SALTWATER:3]
  1204. [LAKE_TEMPERATE_FRESHWATER:10]
  1205. [RIVER_TEMPERATE_FRESHWATER:6]
  1206. [RIVER_TEMPERATE_BRACKISHWATER:6]
  1207. [RIVER_TEMPERATE_SALTWATER:2]
  1208. [POOL_TEMPERATE_FRESHWATER:2]
  1209. [POOL_TEMPERATE_BRACKISHWATER:2]
  1210.  
  1211. [BIOME:LAKE_TEMPERATE_FRESHWATER:15]
  1212. [LAKE_TEMPERATE_SALTWATER:3]
  1213. [LAKE_TEMPERATE_BRACKISHWATER:10]
  1214. [RIVER_TEMPERATE_FRESHWATER:10]
  1215. [RIVER_TEMPERATE_BRACKISHWATER:6]
  1216. [RIVER_TEMPERATE_SALTWATER:2]
  1217. [POOL_TEMPERATE_FRESHWATER:3]
  1218. [POOL_TEMPERATE_BRACKISHWATER:2]
  1219.  
  1220. [BIOME:SHRUBLAND_TROPICAL:29]
  1221. [GRASSLAND_TEMPERATE:2]
  1222. [SAVANNA_TEMPERATE:2]
  1223. [SHRUBLAND_TEMPERATE:4]
  1224. [ANY_TEMPERATE_FOREST:2]
  1225. [ANY_DESERT:2]
  1226. [SAVANNA_TROPICAL:22]
  1227. [GRASSLAND_TROPICAL:18]
  1228. [FOREST_TROPICAL_MOIST_BROADLEAF:2]
  1229. [ANY_TROPICAL_FOREST:11]
  1230. [SWAMP_MANGROVE:2]
  1231. [SWAMP_TROPICAL_FRESHWATER:2]
  1232. [SWAMP_TROPICAL_SALTWATER:2]
  1233.  
  1234. [BIOME:ANY_TEMPERATE_LAKE:4]
  1235. [ANY_TEMPERATE_MARSH:2]
  1236. [ANY_TEMPERATE_RIVER:2]
  1237.  
  1238. [BIOME:ANY_TEMPERATE_MARSH:2]
  1239. [ANY_TEMPERATE_LAKE:2]
  1240.  
  1241. [BIOME:SWAMP_MANGROVE:10]
  1242. [ANY_DESERT:2]
  1243. [MOUNTAIN:2]
  1244. [FOREST_TROPICAL_MOIST_BROADLEAF:2]
  1245. [ANY_TROPICAL_FOREST:4]
  1246. [SHRUBLAND_TROPICAL:2]
  1247. [ANY_FOREST:2]
  1248. [MARSH_TROPICAL_FRESHWATER:2]
  1249. [MARSH_TROPICAL_SALTWATER:2]
  1250. [SWAMP_TEMPERATE_FRESHWATER:2]
  1251. [SWAMP_TROPICAL_FRESHWATER:6]
  1252. [SWAMP_TROPICAL_SALTWATER:6]
  1253.  
  1254. [BIOME:ANY_FOREST:6]
  1255. [ANY_WETLAND:3]
  1256. [ANY_SHRUBLAND:5]
  1257. [ANY_SAVANNA:5]
  1258. [ANY_GRASSLAND:5]
  1259. [ANY_DESERT:5]
  1260. [MOUNTAIN:3]
  1261. [TUNDRA:2]
  1262. [SWAMP_MANGROVE:2]
  1263.  
  1264. [BIOME:ANY_OCEAN:18]
  1265. [ANY_LAKE:3]
  1266. [ANY_RIVER:3]
  1267.  
  1268. [BIOME:ANY_LAKE:6]
  1269. [ANY_POOL:2]
  1270. [ANY_OCEAN:3]
  1271. [ANY_RIVER:4]
  1272.  
  1273. [BIOME:ANY_RIVER:5]
  1274. [ANY_OCEAN:3]
  1275. [ANY_LAKE:4]
  1276.  
  1277. [BIOME:MARSH_TROPICAL_FRESHWATER:7]
  1278. [MARSH_TEMPERATE_FRESHWATER:6]
  1279. [MARSH_TEMPERATE_SALTWATER:5]
  1280. [SWAMP_MANGROVE:2]
  1281. [MARSH_TROPICAL_SALTWATER:6]
  1282. [RIVER_TROPICAL_FRESHWATER:2]
  1283. [RIVER_TROPICAL_BRACKISHWATER:2]
  1284. [SWAMP_TEMPERATE_FRESHWATER:2]
  1285. [SWAMP_TROPICAL_FRESHWATER:3]
  1286. [SWAMP_TROPICAL_SALTWATER:2]
  1287.  
  1288. [BIOME:MARSH_TROPICAL_SALTWATER:6]
  1289. [MARSH_TEMPERATE_FRESHWATER:5]
  1290. [MARSH_TEMPERATE_SALTWATER:5]
  1291. [SWAMP_MANGROVE:2]
  1292. [MARSH_TROPICAL_FRESHWATER:6]
  1293. [SWAMP_TROPICAL_FRESHWATER:2]
  1294. [SWAMP_TROPICAL_SALTWATER:2]
  1295.  
  1296. [BIOME:NOT_FREEZING:28]
  1297. [ANY_POOL:2]
  1298.  
  1299. [BIOME:OCEAN_TEMPERATE:39]
  1300. [OCEAN_ARCTIC:13]
  1301. [RIVER_TEMPERATE_FRESHWATER:6]
  1302. [RIVER_TEMPERATE_BRACKISHWATER:6]
  1303. [RIVER_TEMPERATE_SALTWATER:6]
  1304. [OCEAN_TROPICAL:17]
  1305.  
  1306. [BIOME:ANY_TROPICAL_WETLAND:3]
  1307.  
  1308. [BIOME:ANY_TEMPERATE_SWAMP:2]
  1309.  
  1310. [BIOME:RIVER_TEMPERATE_FRESHWATER:16]
  1311. [OCEAN_ARCTIC:4]
  1312. [LAKE_TEMPERATE_SALTWATER:2]
  1313. [LAKE_TEMPERATE_BRACKISHWATER:6]
  1314. [LAKE_TEMPERATE_FRESHWATER:10]
  1315. [OCEAN_TEMPERATE:6]
  1316. [RIVER_TEMPERATE_BRACKISHWATER:12]
  1317. [RIVER_TEMPERATE_SALTWATER:7]
  1318. [RIVER_TROPICAL_FRESHWATER:2]
  1319. [POOL_TEMPERATE_FRESHWATER:2]
  1320. [POOL_TEMPERATE_BRACKISHWATER:2]
  1321.  
  1322. [BIOME:RIVER_TEMPERATE_BRACKISHWATER:12]
  1323. [OCEAN_ARCTIC:4]
  1324. [LAKE_TEMPERATE_SALTWATER:2]
  1325. [LAKE_TEMPERATE_BRACKISHWATER:6]
  1326. [LAKE_TEMPERATE_FRESHWATER:6]
  1327. [OCEAN_TEMPERATE:6]
  1328. [RIVER_TEMPERATE_FRESHWATER:12]
  1329. [RIVER_TEMPERATE_SALTWATER:7]
  1330. [POOL_TEMPERATE_FRESHWATER:2]
  1331. [POOL_TEMPERATE_BRACKISHWATER:2]
  1332.  
  1333. [BIOME:RIVER_TEMPERATE_SALTWATER:7]
  1334. [OCEAN_ARCTIC:4]
  1335. [LAKE_TEMPERATE_SALTWATER:2]
  1336. [LAKE_TEMPERATE_BRACKISHWATER:2]
  1337. [LAKE_TEMPERATE_FRESHWATER:2]
  1338. [OCEAN_TEMPERATE:6]
  1339. [RIVER_TEMPERATE_FRESHWATER:7]
  1340. [RIVER_TEMPERATE_BRACKISHWATER:7]
  1341.  
  1342. [BIOME:OCEAN_TROPICAL:31]
  1343. [OCEAN_TEMPERATE:17]
  1344. [RIVER_TROPICAL_FRESHWATER:2]
  1345. [RIVER_TROPICAL_BRACKISHWATER:2]
  1346. [RIVER_TROPICAL_SALTWATER:2]
  1347. [LAKE_TROPICAL_FRESHWATER:2]
  1348. [LAKE_TROPICAL_BRACKISHWATER:2]
  1349. [LAKE_TROPICAL_SALTWATER:2]
  1350.  
  1351. [BIOME:RIVER_TROPICAL_FRESHWATER:11]
  1352. [MARSH_TROPICAL_FRESHWATER:2]
  1353. [RIVER_TEMPERATE_FRESHWATER:2]
  1354. [OCEAN_TROPICAL:2]
  1355. [RIVER_TROPICAL_BRACKISHWATER:7]
  1356. [RIVER_TROPICAL_SALTWATER:6]
  1357. [LAKE_TROPICAL_FRESHWATER:9]
  1358. [LAKE_TROPICAL_BRACKISHWATER:5]
  1359. [LAKE_TROPICAL_SALTWATER:5]
  1360. [SWAMP_TROPICAL_FRESHWATER:2]
  1361.  
  1362. [BIOME:RIVER_TROPICAL_BRACKISHWATER:7]
  1363. [MARSH_TROPICAL_FRESHWATER:2]
  1364. [OCEAN_TROPICAL:2]
  1365. [RIVER_TROPICAL_FRESHWATER:7]
  1366. [RIVER_TROPICAL_SALTWATER:6]
  1367. [LAKE_TROPICAL_FRESHWATER:5]
  1368. [LAKE_TROPICAL_BRACKISHWATER:5]
  1369. [LAKE_TROPICAL_SALTWATER:5]
  1370. [SWAMP_TROPICAL_FRESHWATER:2]
  1371.  
  1372. [BIOME:RIVER_TROPICAL_SALTWATER:6]
  1373. [OCEAN_TROPICAL:2]
  1374. [RIVER_TROPICAL_FRESHWATER:6]
  1375. [RIVER_TROPICAL_BRACKISHWATER:6]
  1376. [LAKE_TROPICAL_FRESHWATER:5]
  1377. [LAKE_TROPICAL_BRACKISHWATER:5]
  1378. [LAKE_TROPICAL_SALTWATER:5]
  1379.  
  1380. [BIOME:LAKE_TROPICAL_FRESHWATER:10]
  1381. [OCEAN_TROPICAL:2]
  1382. [RIVER_TROPICAL_FRESHWATER:9]
  1383. [RIVER_TROPICAL_BRACKISHWATER:5]
  1384. [RIVER_TROPICAL_SALTWATER:5]
  1385. [LAKE_TROPICAL_BRACKISHWATER:6]
  1386. [LAKE_TROPICAL_SALTWATER:6]
  1387.  
  1388. [BIOME:LAKE_TROPICAL_BRACKISHWATER:6]
  1389. [OCEAN_TROPICAL:2]
  1390. [RIVER_TROPICAL_FRESHWATER:5]
  1391. [RIVER_TROPICAL_BRACKISHWATER:5]
  1392. [RIVER_TROPICAL_SALTWATER:5]
  1393. [LAKE_TROPICAL_FRESHWATER:6]
  1394. [LAKE_TROPICAL_SALTWATER:6]
  1395.  
  1396. [BIOME:LAKE_TROPICAL_SALTWATER:6]
  1397. [OCEAN_TROPICAL:2]
  1398. [RIVER_TROPICAL_FRESHWATER:5]
  1399. [RIVER_TROPICAL_BRACKISHWATER:5]
  1400. [RIVER_TROPICAL_SALTWATER:5]
  1401. [LAKE_TROPICAL_FRESHWATER:6]
  1402. [LAKE_TROPICAL_BRACKISHWATER:6]
  1403.  
  1404. [BIOME:SWAMP_TEMPERATE_FRESHWATER:4]
  1405. [MARSH_TEMPERATE_FRESHWATER:3]
  1406. [SWAMP_MANGROVE:2]
  1407. [MARSH_TROPICAL_FRESHWATER:2]
  1408. [SWAMP_TROPICAL_FRESHWATER:3]
  1409. [SWAMP_TROPICAL_SALTWATER:2]
  1410.  
  1411. [BIOME:SWAMP_TROPICAL_FRESHWATER:7]
  1412. [MARSH_TEMPERATE_FRESHWATER:2]
  1413. [ANY_TROPICAL_FOREST:2]
  1414. [SHRUBLAND_TROPICAL:2]
  1415. [SWAMP_MANGROVE:6]
  1416. [MARSH_TROPICAL_FRESHWATER:3]
  1417. [MARSH_TROPICAL_SALTWATER:2]
  1418. [RIVER_TROPICAL_FRESHWATER:2]
  1419. [RIVER_TROPICAL_BRACKISHWATER:2]
  1420. [SWAMP_TEMPERATE_FRESHWATER:3]
  1421. [SWAMP_TROPICAL_SALTWATER:6]
  1422.  
  1423. [BIOME:DESERT_BADLAND:5]
  1424. [ANY_TROPICAL:4]
  1425. [DESERT_ROCK:5]
  1426. [DESERT_SAND:5]
  1427.  
  1428. [BIOME:DESERT_ROCK:5]
  1429. [ANY_TROPICAL:4]
  1430. [DESERT_BADLAND:5]
  1431. [DESERT_SAND:5]
  1432.  
  1433. [BIOME:DESERT_SAND:5]
  1434. [ANY_TROPICAL:4]
  1435. [DESERT_BADLAND:5]
  1436. [DESERT_ROCK:5]
  1437.  
  1438. [BIOME:SWAMP_TROPICAL_SALTWATER:6]
  1439. [ANY_TROPICAL_FOREST:2]
  1440. [SHRUBLAND_TROPICAL:2]
  1441. [SWAMP_MANGROVE:6]
  1442. [MARSH_TROPICAL_FRESHWATER:2]
  1443. [MARSH_TROPICAL_SALTWATER:2]
  1444. [SWAMP_TEMPERATE_FRESHWATER:2]
  1445. [SWAMP_TROPICAL_FRESHWATER:6]
  1446.  
  1447. [BIOME:GLACIER:4]
  1448. [TUNDRA:4]
  1449.  
  1450. [BIOME:SUBTERRANEAN_CHASM:44]
  1451. [SUBTERRANEAN_WATER:3]
  1452.  
  1453. [BIOME:SUBTERRANEAN_WATER:17]
  1454. [SUBTERRANEAN_CHASM:3]
  1455.  
  1456. [BIOME:SUBTERRANEAN_LAVA:5]
  1457.  
  1458. [BIOME:ANY_LAND:9]
  1459.  
  1460. [BIOME:POOL_TEMPERATE_FRESHWATER:3]
  1461. [LAKE_TEMPERATE_BRACKISHWATER:2]
  1462. [LAKE_TEMPERATE_FRESHWATER:3]
  1463. [RIVER_TEMPERATE_FRESHWATER:2]
  1464. [RIVER_TEMPERATE_BRACKISHWATER:2]
  1465. [POOL_TEMPERATE_BRACKISHWATER:2]
  1466.  
  1467. [BIOME:POOL_TEMPERATE_BRACKISHWATER:2]
  1468. [LAKE_TEMPERATE_BRACKISHWATER:2]
  1469. [LAKE_TEMPERATE_FRESHWATER:2]
  1470. [RIVER_TEMPERATE_FRESHWATER:2]
  1471. [RIVER_TEMPERATE_BRACKISHWATER:2]
  1472. [POOL_TEMPERATE_FRESHWATER:2]
  1473.  
  1474. [BIOME:ANY_TEMPERATE_RIVER:2]
  1475. [ANY_TEMPERATE_LAKE:2]
  1476.  
  1477.  
  1478.  
  1479. =======splitting this off for clarity=======
  1480.  
  1481. [IF:CANCIV:FALSE]
  1482. [IF:%RND:0:277%:<:8]
  1483. [TAG_ADD:{GOOD}]
  1484. [DESCRIPTION:VERB:good]
  1485. [ELSEIF:%RND:0:269%:<:24]
  1486. [TAG_ADD:{EVIL}]
  1487. [DESCRIPTION:VERB:evil]
  1488. [X]
  1489. [IF:%RND:0:277%:<:181]
  1490. [TAG_ADD:{BENIGN}]
  1491. [ELSEIF:%RND:0:96%:<:15]
  1492. [TAG_ADD:{SAVAGE}]
  1493. [X]
  1494. [X]
  1495. [IF:SENTIENT]
  1496. [TAG_REMOVE:{PET}]
  1497. [TAG_REMOVE:{PET_EXOTIC}]
  1498. [TAG_REMOVE:{MOUNT_EXOTIC}]
  1499. [TAG_REMOVE:{TRAINABLE}]
  1500. [X]
  1501. =======Split=======
  1502. After all of the above is sorted out, this one line executes the body creation code. Not modifiable.
  1503. It can't be modifiable, really. After all, if you were able to modify the body creation code, some very
  1504. bad stuff would happen... like your creature not working. Or Dwarf Fortress crashing.
  1505.  
  1506. [GENERATE_CREATURE]
  1507.  
  1508. [SKIN_TYPE:SKIN]
  1509. [IF:%RND:1:4%:=:1]
  1510. [SKIN_TYPE:SCALE]
  1511. [HAS_HAIR:FALSE]
  1512. [X]
  1513. [INT:rnd:%RND:1:25%]
  1514.  
  1515. [IF:IS_BRONZE]
  1516. [TAG_ADD:{TISSUE:BRONZE}]
  1517. [TAG_ADD: {TISSUE_NAME:bronze:bronze}]
  1518. [TAG_ADD: {TISSUE_MATERIAL:INORGANIC:BRONZE}]
  1519. [TAG_ADD: {MUSCULAR}]
  1520. [TAG_ADD: {FUNCTIONAL}]
  1521. [TAG_ADD: {STRUCTURAL}]
  1522. [TAG_ADD: {RELATIVE_THICKNESS:1}]
  1523. [TAG_ADD: {CONNECTS}]
  1524. [TAG_ADD: {TISSUE_SHAPE:LAYER}]
  1525. [TAG_ADD:{TISSUE_LAYER:BY_CATEGORY:ALL:BRONZE}]
  1526. [TAG_ADD:{ITEMCORPSE:STATUE:NO_SUBTYPE:INORGANIC:BRONZE}]
  1527. [TAG_ADD:{ITEMCORPSE_QUALITY:5}]
  1528. [ELSEIF:RND:<:21]
  1529. [TAG_ADD:{BODY_DETAIL_PLAN:STANDARD_MATERIALS}]
  1530. [IF:SKIN_TYPE:SKIN]
  1531. [IF:%RND:0:1%:=:1]
  1532. [TAG_ADD: {REMOVE_MATERIAL:HAIR}]
  1533. [HAS_HAIR:FALSE]
  1534. [X]
  1535. [X]
  1536. [IF:%RND:1:4%:=:1:&:HAS_RIBCAGE:=:FALSE:&:HAS_SPINE:=:FALSE:&:HAS_TEETH:=:FALSE:&:HAS_JOINTS:=:FALSE:&:HAS_SKULL:=:FALSE]
  1537. [TAG_ADD: {REMOVE_MATERIAL:BONE}]
  1538. [HAS_BONE:FALSE]
  1539. [X]
  1540. [IF:%RND:1:8%:=:1]
  1541. [TAG_ADD: {REMOVE_MATERIAL:CARTILAGE}]
  1542. [HAS_CARTILAGE:FALSE]
  1543. [X]
  1544. [IF:%RND:1:3%:=:1:&:HAS_CARTILAGE:=:FALSE:&:HAS_BONE]
  1545. [CHITIN_BONE]
  1546. [TAG_ADD: {REMOVE_MATERIAL:BONE}]
  1547. [TAG_ADD: {USE_MATERIAL_TEMPLATE:CHITIN:CHITIN_TEMPLATE}]
  1548. [X]
  1549. [IF:SKINTYPE:SCALE]
  1550. [TAG_ADD: {REMOVE_MATERIAL:HAIR}]
  1551. [HAS_HAIR:FALSE]
  1552. [TAG_ADD: {REMOVE_MATERIAL:SKIN}]
  1553. [IF:%RND:1:0%:=:1]
  1554. [HAS_LEATHER:FALSE]
  1555. [X]
  1556. [TAG_ADD: {USE_MATERIAL_TEMPLATE:SCALE:SCALE_TEMPLATE}]
  1557. [TAG_ADD: {USE_MATERIAL_TEMPLATE:TOOTH:CHITIN_TEMPLATE}]
  1558. [X]
  1559. [IF:HAS_HORN]
  1560. [TAG_ADD: {USE_MATERIAL_TEMPLATE:HORN:HORN_TEMPLATE}]
  1561. [X]
  1562. [IF:HAS_HOOF]
  1563. [TAG_ADD: {USE_MATERIAL_TEMPLATE:HOOF:HOOF_TEMPLATE}]
  1564. [X]
  1565. [IF:HAS_TUSK]
  1566. [TAG_ADD: {USE_MATERIAL_TEMPLATE:IVORY:TOOTH_TEMPLATE}]
  1567. [X]
  1568. [IF:%RND:1:15%:1:&:SKIN_TYPE:SKIN]
  1569. [TAG_ADD: {USE_MATERIAL_TEMPLATE:FEATHER:FEATHER_TEMPLATE}]
  1570. [HAS_FEATHER]
  1571. [X]
  1572. [TAG_ADD:{BODY_DETAIL_PLAN}:STANDARD_TISSUES}]
  1573. [IF:SKIN_TYPE:SKIN:&:HAS_HAIR:FALSE]
  1574. [TAG_ADD: {REMOVE_TISSUE:HAIR}]
  1575. [DESCRIPTION:ADJ:hairless]
  1576. [X]
  1577. [IF:HAS_BONE:FALSE]
  1578. [TAG_ADD: {REMOVE_TISSUE:BONE}]
  1579. [X]
  1580. [IF:HAS_CARTILAGE:FALSE]
  1581. [TAG_ADD: {REMOVE_TISSUE:CARTILAGE}]
  1582. [X]
  1583. [IF:SKIN_TYPE:SCALE]
  1584. [TAG_ADD: {REMOVE_TISSUE:HAIR}]
  1585. [TAG_ADD: {REMOVE_TISSUE:SKIN}]
  1586. [TAG_ADD: {USE_TISSUE_TEMPLATE:SCALE:SCALE_TEMPLATE}]
  1587. [TAG_ADD: {USE_TISSUE_TEMPLATE:TOOTH:CHITIN_TEMPLATE}]
  1588. [X]
  1589. [IF:HAS_HORN]
  1590. [TAG_ADD: {USE_TISSUE_TEMPLATE:HORN:HORN_TEMPLATE}]
  1591. [TAG_ADD: {USE_TISSUE_TEMPLATE:HOOF:HOOF_TEMPLATE}]
  1592. [X]
  1593. [IF:HAS_TUSK]
  1594. [TAG_ADD: {USE_TISSUE_TEMPLATE:IVORY:IVORY_TEMPLATE}]
  1595. [X]
  1596. [IF:HAS_FEATHER]
  1597. [TAG_ADD: {USE_TISSUE_TEMPLATE:FEATHER:FEATHER_TEMPLATE}]
  1598. [X]
  1599. [IF:CHITIN_BONE]
  1600. [TAG_ADD: {REMOVE_TISSUE:BONE}]
  1601. [TAG_ADD: {USE_TISSUE_TEMPLATE:CHITIN:CHITIN:TEMPLATE}]
  1602. [X]
  1603. [IF:HAS_HAIR:FALSE:&:HAS_BONSE:FALSE]
  1604. [DESCRIPTION:ADJ:slimy]
  1605. [DESCRIPTION:ADJ:boneless]
  1606. [TAG_ADD:{BODY_DETAIL_PLAN:EXOSKELETON_TISSUE_LAYERS:%SKIN_TYPE%:FAT:MUSCLE}]
  1607. [ELSE]
  1608. [TAG_ADD:{BODY_DETAIL_PLAN:VERTEBRATE_TISSUE_LAYERS:%SKIN_TYPE%:FAT:MUSCLE:]
  1609. } ](this is to clear things up in notepad++. not read by the program.
  1610. [IF:CHITIN_BONE]
  1611. [TAG_APPEND:CHITIN:]
  1612. [ELSEIF:HAS_BONE]
  1613. [TAG_APPEND:BONE:]
  1614. [ELSE]
  1615. [TAG_APPEND:NONE:]
  1616. [X]
  1617. [IF:HAS_CARTILAGE]
  1618. [TAG_APPEND:CARTILAGE}]
  1619. [ELSEIF:CHITIN_BONE]
  1620. [TAG_APPEND:CHITIN}]
  1621. [ELSE]
  1622. [TAG_APPEND:NONE}]
  1623. [X]
  1624. [X]
  1625. [IF:%RND:1:6%:6:&:HASHAIR]
  1626. [TAG_ADD:{BODY_DETAIL_PLAN:BODY_HAIR_TISSUE_LAYERS:HAIR}]
  1627. [PREFLIST:manes]
  1628. [ADD_HAIR]
  1629. [DESCRIPTION:DESC:a thick mane]
  1630. [DESCRIPTION:VERB:is covered in thick fur]
  1631. [IF:EYECOUNT:2:&:HAS_MOUTH:&:HAS_NOSE:&:HAS_EARS]
  1632. [DESCRIPTION:DESC:a mane circling its face]
  1633. [X]
  1634. [X]
  1635. [TAG_ADD:{BODY_DETAIL_PLAN:STANDARD_HEAD_POSITIONS}]
  1636. [IF:%RND:0:2%:1]
  1637. [TAG_ADD:{BODY_DETAIL_PLAN:HUMANOID_HEAD_POSITIONS}]
  1638. [X]
  1639. [IF:HAS_RIBCAGE]
  1640. [TAG_ADD:{BODY_DETAIL_PLAN:HUMANOID_RIBCAGE_POSITIONS}]
  1641. [X]
  1642. [IF:%RND:0:2%:1]
  1643. [TAG_ADD:{BODY_DETAIL_PLAN:HUMANOID_RELSIZES}]
  1644. [X]
  1645. [IF:HAS_FEATHER]
  1646. [TAG_ADD:{BODY_DETAIL_PLAN:BODY_FEATHER_TISSUE_LAYERS:FEATHER}]
  1647. [DESCRIPTION:ADJ:feathered]
  1648. [DESCRIPTION:DESC:feathers covering its body]
  1649. [X]
  1650. otherwise...
  1651. [ELSEIF:rnd:21]
  1652. [PREFLIST:chittering]
  1653. [SKIN_TYPE:CHITIN]
  1654. [TAG_ADD:{BODY_DETAIL_PLAN:CHITIN_MATERIALS}]
  1655. [TAG_ADD: {USE_MATERIAL_TEMPLATE:TOOTH:CHITIN_TEMPLATE}]
  1656. [IF:HAS_HORN]
  1657. [TAG_ADD:{USE_MATERIAL_TEMPLATE:HORN:HORN_TEMPLATE}]
  1658. [X]
  1659. [IF:HAS_HOOF]
  1660. [TAG_ADD:{USE_MATERIAL_TEMPLATE:HOOF:HOOF_TEMPLATE}]
  1661. [X]
  1662. [IF:HAS_TUSK]
  1663. [TAG_ADD:{USE_MATERIAL_TEMPLATE:IVORY:TOOTH_TEMPLATE}]
  1664. [X]
  1665. [IF:HAS_FEATHER]
  1666. [TAG_ADD:{USE_MATERIAL_TEMPLATE:FEATHER:FEATHER_TEMPLATE}]
  1667. [X]
  1668. [TAG_ADD:{BODY_DETAIL_PLAN:CHITIN_TISSUES}]
  1669. [TAG_ADD: {USE_TISSUE_TEMPLATE:TOOTH:CHITIN_TEMPLATE}]
  1670. [IF:HAS_HORN]
  1671. [TAG_ADD: {USE_TISSUE_TEMPLATE:HORN:HORN_TEMPLATE}]
  1672. [X]
  1673. [IF:HAS_HOOF]
  1674. [TAG_ADD: {USE_TISSUE_TEMPLATE:HOOF:HOOF_TEMPLATE}]
  1675. [X]
  1676. [IF:HAS_TUSK]
  1677. [TAG_ADD: {USE_TISSUE_TEMPLATE:IVORY:IVORY_TEMPLATE}]
  1678. [X]
  1679. [IF:HAS_FEATHER]
  1680. [TAG_ADD: {USE_TISSUE_TEMPLATE:FEATHER:FEATHER_TEMPLATE}]
  1681. [X]
  1682. [TAG_ADD:{BODY_DETAIL_PLAN:EXOSKELETON_TISSUE_LAYERS:CHITIN:FAT:MUSCLE}]
  1683. [TAG_ADD:{BODY_DETAIL_PLAN:STANDARD_HEAD_POSITIONS}]
  1684. [ELSEIF:rnd:22]
  1685. [SKIN_TYPE:FLESH]
  1686. [PREFLIST:warmth]
  1687. [TAG_ADD:{USE_MATERIAL_TEMPLATE:FLESH:MUSCLE_TEMPLATE}]
  1688. [TAG_ADD:{USE_TISSUE_TEMPLATE:FLESH_TEMPLATE}]
  1689. [TAG_ADD:{TISSUE_LAYER:BY_CATEGORY:ALL:FLESH}]
  1690. [IF:%CONTAINS:BODYPART_LIST:BASIC_1PARTBODY%]checking a list for an item. painful.
  1691. [DESCRIPTION:NOUN:ball of skin]
  1692. [X]
  1693. [ELSEIF:rnd:23]
  1694. [SKIN_TYPE:STONE]
  1695. [INT:thisStone:%RND:0:$COUNT:stoneName$%]"lk" doesn't mean anything, it's just a random variable name. This
  1696. line creates lk as an integer between 0 and stoneName's count (stoneName is a list defined near the top of
  1697. this file). Using this line, I can have the same values for both stoneName and stoneID, making sure the
  1698. stone strings match. the $$ are a hopefully temporary way to stack stuff inside other stuff.
  1699. [PREFLIST:rockiness]
  1700. [DESCRIPTION:VERB:is made entirely of stone]
  1701. [TAG_ADD:{TISSUE:ROCK}]
  1702. [TAG_ADD: {TISSUE_NAME:%stoneName(thisStone)%:NP}]pulls the stone name from index "lk". All you
  1703. need to do to pull a string from a list is just put %theName% inside percent signs. Putting an integer in
  1704. parentheses behind it is optional. Without parentheses, it pulls a random variable.
  1705. [TAG_ADD: {TISSUE_MATERIAL:INORGANIC:%stoneID(thisStone)%}]pulls the stonetype matching the
  1706. randomly-pulled stone name
  1707. [TAG_ADD: {MUSCULAR}]
  1708. [TAG_ADD: {FUNCTIONAL}]
  1709. [TAG_ADD: {STRUCTURAL}]
  1710. [TAG_ADD: {RELATIVE_THICKNESS:1}]
  1711. [TAG_ADD: {CONNECTS}]
  1712. [TAG_ADD: {TISSUE_SHAPE:LAYER}]
  1713. [TAG_ADD:{TISSUE_LAYER:BY_CATEGORY:ALL:ROCK}]
  1714. [ELSE] wet-type creatures last.
  1715. [SKIN_TYPE:WET]
  1716. [INT:thisLiquid:%RND:0:liquids.Count%]"count" can be capitalized or lowercase. hopefully.
  1717. [PREFLIST:%liquids(thisLiquid)%]
  1718. [DESCRIPTION:VERB:is made entirely of %liquids(thisLiquid)%]
  1719. [TAG_ADD:{USE_MATERIAL_TEMPLATE:BLOOD:BLOOD_TEMPLATE}] regardless of what it's made of, it acts like
  1720. blood.
  1721. [TAG_ADD:{TISSUE:BLOOD}]
  1722. [TAG_ADD: {TISSUE_NAME:%liquids(thisLiquid)%:NP}]
  1723. [TAG_ADD: {TISSUE_MATERIAL:LOCAL_CREATURE_MAT:BLOOD}]
  1724. [TAG_ADD: {TISSUE_MAT_STATE:LIQUID}]
  1725. [TAG_ADD: {MUSCULAR}]
  1726. [TAG_ADD: {FUNCTIONAL}]
  1727. [TAG_ADD: {STRUCTURAL}]
  1728. [TAG_ADD: {RELATIVE_THICKNESS:1}]
  1729. [TAG_ADD: {CONNECTS}]
  1730. [TAG_ADD: {TISSUE_SHAPE:LAYER}]
  1731. [TAG_ADD:{TISSUE_LAYER:BY_CATEGORY:ALL:BLOOD}]
  1732. [X]
  1733.  
  1734. and we're finally done. NOW FOR THE NEXT PART.
  1735.  
  1736. [IF:%RND:0:20%:10]
  1737. [TAG_ADD:{BODYGLOSS:PAW}]
  1738. [X]
  1739. [IF:%RND:0:30%:10]
  1740. [TAG_ADD:{BODYGLOSS:MAW}]
  1741. [X]
  1742. [IF:%RND:0:1%:1:&:HAS_HEART]
  1743. [TAG_ADD:{SELECT_TISSUE_LAYER:HEART:BY_CATEGORY:HEART}]
  1744. [IF:HAS_THROAT]
  1745. [TAG_ADD:{PLUS_TISSUE_LAYER:SKIN:BY_CATEGORY:THROAT}]
  1746.  
  1747. [TAG_ADD: {TL_MAJOR_ARTERIES}]
  1748. [X]
  1749.  
  1750. [IF:HAS_TOES]
  1751. [rnd:%RND:1:4%]
  1752. [IF:rnd:1]
  1753. [TAG_ADD:{USE_MATERIAL_TEMPLATE:NAIL:NAIL_TEMPLATE}]
  1754. [TAG_ADD:{USE_TISSUE_TEMPLATE:NAIL:NAIL_TEMPLATE}]
  1755. [TAG_ADD:{TISSUE_LAYER:BY_CATEGORY:TOE:NAIL:FRONT}]
  1756. [HAS_NAILS]
  1757. [HAS_TOENAILS]
  1758. [ELSEIF:rnd:2]
  1759. [TAG_ADD:{USE_MATERIAL_TEMPLATE:TALON:NAIL_TEMPLATE}]
  1760. [TAG_ADD:{USE_TISSUE_TEMPLATE:TALON:TALON_TEMPLATE}]
  1761. [TAG_ADD:{TISSUE_LAYER:BY_CATEGORY:TOE:TALON:FRONT}]
  1762. [HAS_TALON]
  1763. [DESCRIPTION:DESC:taloned feet]
  1764. [ELSEIF:rnd:3]
  1765. [TAG_ADD:{USE_MATERIAL_TEMPLATE:CLAW:NAIL_TEMPLATE}]
  1766. [TAG_ADD:{USE_TISSUE_TEMPLATE:CLAW:CLAW_TEMPLATE}]
  1767. [TAG_ADD:{TISSUE_LAYER:BY_CATEGORY:TOE:CLAW:FRONT}]
  1768. [DESCRIPTION:DESC:clawed toes]
  1769. [HAS_CLAWS]
  1770. [HAS_TOECLAWS]
  1771. [X]
  1772. [X]
  1773. [IF:HAS_FINGERS]
  1774. [rnd:%RND:1:3%]
  1775. [IF:rnd:1]
  1776. [IF:HAS_NAILS:FALSE]This is important, to make sure you only add the tissue/material
  1777. templates once.
  1778. [TAG_ADD:{USE_MATERIAL_TEMPLATE:NAIL:NAIL_TEMPLATE}]
  1779. [TAG_ADD:{USE_TISSUE_TEMPLATE:NAIL:NAIL_TEMPLATE}]
  1780.  
  1781. [HAS_FINGERNAILS] In the 34.11 version of RandCreatures, this was inside the above
  1782. if/then statement... which seems erroneous to me. I think the effect of it would be to stop creatures
  1783. from being able to attack with their fingernails if they didn't have toenails. I've fixed it here.
  1784. [TAG_ADD:{TISSUE_LAYER:BY_CATEGORY:FINGER:NAIL:FRONT}]
  1785. [ELSEIF:rnd:2]
  1786. [IF:HAS_CLAWS:FALSE]
  1787. [TAG_ADD:{USE_MATERIAL_TEMPLATE:CLAW:NAIL_TEMPLATE}]
  1788. [TAG_ADD:{USE_TISSUE_TEMPLATE:CLAW:CLAW_TEMPLATE}]
  1789.  
  1790. [HAS_FINGERCLAWS]
  1791. [TAG_ADD:{TISSUE_LAYER:BY_CATEGORY:FINGER:CLAW:FRONT}]
  1792. [DESCRIPTION:DESC:clawed fingers] Might be better for a preflist item... I don't know.
  1793. [X]
  1794. [X]
  1795. [IF:%RND:0:2%:!=:0] if a random number between zero and two isn't zero, then:
  1796. [TAG_ADD:{USE_MATERIAL_TEMPLATE:SINEW:SINEW_TEMPLATE}]
  1797. [TAG_ADD:{TENDONS:LOCAL_CREATURE_MAT:SINEW:200}]
  1798. [TAG_ADD:{LIGAMENTS:LOCAL_CREATURE_MAT:SINEW:200}]
  1799. [x]putting this x in lowercase to remind me to watch for typos.
  1800.  
  1801. [TAG_ADD:{HAS_NERVES}] all creatures have nerves. No exceptions, apparently... may change.
  1802.  
  1803. =======Split=======
  1804. This section is stuff that gets added later, but needs to be calculated RIGHT NOW, for
  1805. use with the creature gait speed code stuff.
  1806.  
  1807. First up, age and weight.
  1808.  
  1809. [DOUBLE:maxAge:%DECRND:10:100%] new stuff. define a double of your choice. decrnd pulls
  1810. a random decimal number.
  1811. [DOUBLE:tempDec:%DECRND:1.4:2%]
  1812. [DOUBLE:maxAge2:%maxAge:*:tempDec%] messy, but it's the way it has to be. I'm not trying
  1813. to write something incredible here - just something that works. I may fix it later and
  1814. allow you to stack things like random calls and arithmetic functions, but til then...
  1815. [DOUBLE:bodySize2]these are never null.
  1816. [IF:CAN_CIV] if creature isn't a megabeast, then:
  1817. Here's a bit of magic: multiplies everything in the tag.
  1818. [bodySize2:=*:%DECRND:1:2%:%DECRND:1:2%:%DECRND:1:2%:%DECRND:1:2%:%DECRND:1:2%:%DECRND:1:2%:%DECRND:1:2%:%DECRND:1:5%:%DECRND:1:5%:%DECRND:1:5%:%DECRND:1:5%:%DECRND:1:5%:%DECRND:1:5%:%DECRND:1:5%]
  1819. [bodySize2:=*:%SQRT:bodySize2%:1.4142] too much new math.
  1820. [bodySize2:=*:bodySize2:bodySize2] a simple square.
  1821. The math behind this: with that last square, small creature stay small, big creatures get bigger. Easy as math.
  1822. Average body size is around 75000, right where I originally wanted it in the first
  1823. release (at least, if everything goes well). A larger size (x2) starts out about 75000 and
  1824. ends up being around 150000. A x2 normal increase becomes a x4 increase. The above is all
  1825. subject to change. I want to make sure I get the occasional "gigantic" creature. Send me
  1826. any better code you come up with if you want; I may implement it. (with you credited,
  1827. of course.)
  1828. [ELSEIF:SEMI:FALSE]
  1829. [bodySize2:%RND:8000000:25000000%] very big creatures.
  1830. [ELSEIF:SEMI]
  1831. [bodySize2:%RND:220000:9000000%] funny that vanilla semimegabeasts are tiny comparatively.
  1832. [X]
  1833. [tempDec:%RND:2:25%]
  1834. [INT:bodySize1:%RND:bodySize2:tempDec%] RandCreatures knows how to round off decimal numbers before multiiplying with integers, yay
  1835. [tempDec:%RND:10:50%]
  1836. [INT:bodySize0:%RND:bodySize1:tempDec%] boy, this is going to be fun to put in. I'm writing the script out first so I know exactly what I need... might not be the best approach.
  1837. [IF:maxAge:>:100]
  1838. [DESCRIPTION:VERB:lives to an old age]
  1839. [X]
  1840. [tempDec:=/:maxAge:%RND:1:10%]/ and - don't work the same way. you only get to use them with two numbers.
  1841. [INT:bodyAge:%MAX:2:tempDec%]
  1842. And now we're ready to add the body size and age tags. We'll add them later. Far later.
  1843.  
  1844. =======Split=======
  1845. splitting this off from the other stuff. (note: the ==split== thing doesn't do anything, by the way - it's
  1846. just a comment.) The reason is... This is totally new code. Toady added creature gaits to 40.xx, so I have
  1847. to find a way to deal with it. Watch out, world. Protyping coming through.
  1848.  
  1849. relevant tags: has_wings, is_biped, is_quadruped, has_fins, has_stance, has_tail, has_grasp, can_fly,
  1850. can_swim, bodysize, grazer, likes_fighting, no_vegetation_perturb, slow_learner, meanderer, flier... may be more that affect it
  1851.  
  1852.  
  1853. STANDARD_BIPED_GAITS: ranges from 1 to 41, standard 30?
  1854. STANDARD_QUADRUPED_GAITS: ranges from 2 to 87, standard 10-45
  1855. STANDARD_CLIMBING_GAITS: ranges from 1 to 56, standard 1-15
  1856. STANDARD_SWIMMING_GAITS: ranges from 1 to 40, standard 1-35
  1857. STANDARD_CRAWLING_GAITS: ranges from 1 to 12, standard 1-12
  1858. STANDARD_FLYING_GAITS: ranges from 15 to 87, standard 15-35
  1859. STANDARD_WALK_CRAWL_GAITS: ranges from 1 to 20, standard 1-10
  1860.  
  1861. fullTotal
  1862. Biped Gaits: 13% 100% 1442 1190 942 587 2440 3499 1.0
  1863. Quadruped Gaits: 31% 100% 1424 1066 830 396 2430 3520 1.0
  1864. Climbing Gaits: 43% 100% 5431 5009 4615 3625 6346 7450 1.0
  1865. Swimming Gaits: 100% 100% 5638 5358 5092 4289 6453 7337 1.0
  1866. Flying Gaits: 18% 100% 1214 936 704 445 2232 3289 1.0
  1867. Crawling Gaits: 91% 100% 7526 7264 7022 6249 8222 8970 1.0
  1868. Walk_crawl Gaits: 14% 100% 6905 6623 6358 5102 7658 8481 1.0
  1869.  
  1870. min
  1871. Biped Gaits: 100% 2% 900 708 515 286 1900 2900 0.62
  1872. Quadruped Gaits: 100% 0% 900 464 322 175 1839 2889 0.63
  1873. Climbing Gaits: 100% 0% 3063 2310 1558 752 4210 5659 0.56
  1874. Swimming Gaits: 100% 0% 941 729 518 288 1947 2963 0.17
  1875. Flying Gaits: 100% 1% 900 597 412 213 1900 2900 0.74
  1876. Crawling Gaits: 100% 0% 4790 4239 3696 1316 5863 7255 0.64
  1877. Walk_crawl Gaits: 100% 2% 3730 3432 3141 1097 4678 5733 0.54
  1878.  
  1879. max
  1880. Biped Gaits: 100% 2% 5487 5239 5004 3601 6285 7122 3.81
  1881. Quadruped Gaits: 100% 0% 2380 1994 1609 689 3465 4738 1.67
  1882. Climbing Gaits: 100% 0% 9000 8900 8825 8775 9500 9900 1.66
  1883. Swimming Gaits: 100% 0% 8612 8462 8335 7857 9171 9677 1.53
  1884. Flying Gaits: 100% 1% 2206 1692 1178 585 3400 4900 1.82
  1885. Crawling Gaits: 100% 0% 9000 8900 8825 8775 9500 9900 1.2
  1886. Walk_crawl Gaits: 100% 2% 9000 8900 8825 8775 9500 9900
  1887.  
  1888. div
  1889. Biped trait: 6.1 7.4 9.72 12.59 3.31 2.46
  1890. Quadruped trait: 2.64 4.3 5.0 3.94 1.88 1.64
  1891. Climbing trait: 2.94 3.85 5.66 11.67 2.26 1.75
  1892. Swimming trait: 9.15 11.61 16.09 27.28 4.71 3.27
  1893. Flying trait: 2.45 2.83 2.86 2.75 1.79 1.69
  1894. Crawling trait: 1.88 2.1 2.39 6.67 1.62 1.36
  1895. Walk_crawl trait: 2.41 2.59 2.81 8.0 2.03 1.73
  1896.  
  1897. deviation
  1898. Biped trait: 1.0 0.83 0.65 0.41 1.69 2.43
  1899. Quadruped trait: 1.0 0.75 0.58 0.28 1.71 2.47
  1900. Climbing trait: 1.0 0.92 0.85 0.67 1.17 1.37
  1901. Swimming trait: 1.0 0.95 0.9 0.76 1.14 1.3
  1902. Flying trait: 1.0 0.77 0.58 0.37 1.84 2.71
  1903. Crawling trait: 1.0 0.97 0.93 0.83 1.09 1.19
  1904. Walk_crawl trait: 1.0 0.96 0.92 0.74 1.11 1.23
  1905.  
  1906. gait tag: first initializes, second defines type being edited, third defines chance of the tag being added, fourth defines multiplication weight of standard speeds
  1907. [IF:HAS_WINGS]
  1908. [GAIT:BIPED:2:0.62]
  1909. [GAIT:QUADRUPED:0:0.63]
  1910. [GAIT:CLIMBING:20:1.4]
  1911. [GAIT:SWIMMING:14:1.53]
  1912. [GAIT:FLYING:66:0.74]
  1913. [GAIT:CRAWLING:16:1.15]
  1914. [GAIT:WALK_CRAWL:2:1.3]
  1915. [X]
  1916. [IF:IS_BIPED]
  1917. [GAIT:BIPED:97:0.99]
  1918. [GAIT:CLIMBING:51:1.05]
  1919. [GAIT:SWIMMING:29:1.21]
  1920. [GAIT:FLYING:74:0.74]
  1921. [GAIT:CRAWLING:33:0.88]
  1922. [GAIT:WALK_CRAWL:4:0.54]
  1923. [X]
  1924. [IF:IS_QUADRUPED]
  1925. [GAIT:QUADRUPED:98:1.01]
  1926. [GAIT:CLIMBING:27:0.56]
  1927. [GAIT:SWIMMING:40:1.28]
  1928. [GAIT:CRAWLING:45:1.02]
  1929. [GAIT:WALK_CRAWL:27:0.89]
  1930. [X]
  1931. [IF:HAS_FINS]
  1932. [GAIT:SWIMMING:19:0.17]
  1933. [GAIT:CRAWLING:0:1.2]
  1934. [GAIT:WALK_CRAWL:2:1.3]
  1935. [X]
  1936. [IF:HAS_FLIPPERS]
  1937. [GAIT:CLIMBING:0:1.21]
  1938. [GAIT:SWIMMING:3:0.22]
  1939. [GAIT:CRAWLING:2:1.2]
  1940. [GAIT:WALK_CRAWL:8:1.3]
  1941. [X]
  1942. [IF:UNDER_SWIM]
  1943. [GAIT:CLIMBING:2:1.43]
  1944. [GAIT:SWIMMING:23:0.2]
  1945. [GAIT:CRAWLING:1:1.09]
  1946. [GAIT:WALK_CRAWL:4:1.13]
  1947. [X]
  1948. [IF:HAS_STANCE]
  1949. [GAIT:BIPED:86:1.01]
  1950. [GAIT:QUADRUPED:96:0.93]
  1951. [GAIT:CLIMBING:91:0.98]
  1952. [GAIT:SWIMMING:73:1.09]
  1953. [GAIT:FLYING:81:0.92]
  1954. [GAIT:CRAWLING:76:0.95]
  1955. [GAIT:WALK_CRAWL:17:0.98]
  1956. [X]
  1957. [IF:HAS_TAIL]
  1958. [GAIT:BIPED:16:0.62]
  1959. [GAIT:QUADRUPED:96:0.99]
  1960. [GAIT:CLIMBING:27:0.84]
  1961. [GAIT:SWIMMING:64:0.88]
  1962. [GAIT:FLYING:6:0.74]
  1963. [GAIT:CRAWLING:48:1.0]
  1964. [GAIT:WALK_CRAWL:51:0.8]
  1965. [X]
  1966. [IF:HAS_GRASP]
  1967. [GAIT:BIPED:65:1.04]
  1968. [GAIT:QUADRUPED:0:0.63]
  1969. [GAIT:CLIMBING:38:0.72]
  1970. [GAIT:SWIMMING:16:1.17]
  1971. [GAIT:FLYING:6:0.74]
  1972. [GAIT:CRAWLING:18:0.81]
  1973. [GAIT:WALK_CRAWL:6:0.68]
  1974. [X]
  1975. [IF:CAN_FLY]
  1976. [GAIT:BIPED:11:2.41]
  1977. [GAIT:CLIMBING:35:1.39]
  1978. [GAIT:SWIMMING:13:1.52]
  1979. [GAIT:FLYING:100:1.0]
  1980. [GAIT:CRAWLING:21:1.1]
  1981. [GAIT:WALK_CRAWL:4:1.3]
  1982. [X]
  1983. [IF:CAN_SWIM]
  1984. [GAIT:BIPED:90:1.05]
  1985. [GAIT:QUADRUPED:99:1.0]
  1986. [GAIT:CLIMBING:80:0.91]
  1987. [GAIT:SWIMMING:100:1.0]
  1988. [GAIT:FLYING:72:0.74]
  1989. [GAIT:CRAWLING:84:0.99]
  1990. [GAIT:WALK_CRAWL:72:0.91]
  1991. [X]
  1992. [IF:IS_TINY]
  1993. [GAIT:BIPED:6:3.81]
  1994. [GAIT:QUADRUPED:16:1.56]
  1995. [GAIT:CLIMBING:43:1.35]
  1996. [GAIT:SWIMMING:33:1.07]
  1997. [GAIT:FLYING:81:0.92]
  1998. [GAIT:CRAWLING:37:1.14]
  1999. [GAIT:WALK_CRAWL:44:1.13]
  2000. [X]
  2001. [IF:IS_HUGE]
  2002. [GAIT:BIPED:25:0.66]
  2003. [GAIT:QUADRUPED:36:0.93]
  2004. [GAIT:CLIMBING:12:0.83]
  2005. [GAIT:SWIMMING:23:0.79]
  2006. [GAIT:FLYING:3:0.74]
  2007. [GAIT:CRAWLING:21:0.87]
  2008. [GAIT:WALK_CRAWL:21:0.89]
  2009. [X]
  2010. [IF:IS_GRAZER]
  2011. [GAIT:QUADRUPED:34:0.71]
  2012. [GAIT:CLIMBING:0:1.66]
  2013. [GAIT:SWIMMING:11:1.41]
  2014. [GAIT:CRAWLING:12:1.06]
  2015. [X]
  2016. [IF:SLOW_LEARNER]
  2017. [GAIT:BIPED:13:0.68]
  2018. [GAIT:CLIMBING:5:0.91]
  2019. [GAIT:SWIMMING:2:0.98]
  2020. [GAIT:CRAWLING:2:0.67]
  2021. [GAIT:WALK_CRAWL:2:0.95]
  2022. [X]
  2023. [IF:IS_MEANDERER]
  2024. [GAIT:BIPED:11:0.7]
  2025. [GAIT:QUADRUPED:66:0.79]
  2026. [GAIT:CLIMBING:19:0.67]
  2027. [GAIT:SWIMMING:39:1.15]
  2028. [GAIT:FLYING:10:0.74]
  2029. [GAIT:CRAWLING:37:1.05]
  2030. [GAIT:WALK_CRAWL:10:0.64]
  2031. [X]
  2032. [IF:IS_SAVAGE]
  2033. [GAIT:BIPED:6:0.62]
  2034. [GAIT:QUADRUPED:5:0.63]
  2035. [GAIT:CLIMBING:5:0.84]
  2036. [GAIT:SWIMMING:3:0.81]
  2037. [GAIT:FLYING:1:1.82]
  2038. [GAIT:CRAWLING:4:0.64]
  2039. [GAIT:WALK_CRAWL:2:1.3]
  2040. [X]
  2041. [IF:SWIMS_INNATE]
  2042. [GAIT:BIPED:60:1.14]
  2043. [GAIT:QUADRUPED:99:1.0]
  2044. [GAIT:CLIMBING:62:1.01]
  2045. [GAIT:SWIMMING:92:0.99]
  2046. [GAIT:FLYING:71:0.74]
  2047. [GAIT:CRAWLING:76:1.0]
  2048. [GAIT:WALK_CRAWL:72:0.91]
  2049. [X]
  2050. [IF:IS_VERMIN]
  2051. [GAIT:BIPED:6:3.81]
  2052. [GAIT:QUADRUPED:6:1.67]
  2053. [GAIT:CLIMBING:32:1.37]
  2054. [GAIT:SWIMMING:20:0.83]
  2055. [GAIT:FLYING:52:1.02]
  2056. [GAIT:CRAWLING:22:1.12]
  2057. [GAIT:WALK_CRAWL:29:1.2]
  2058. [X]
  2059. [IF:IS_WARBEAST]
  2060. [GAIT:QUADRUPED:18:0.65]
  2061. [GAIT:CLIMBING:5:0.56]
  2062. [GAIT:SWIMMING:7:1.2]
  2063. [GAIT:FLYING:3:0.74]
  2064. [GAIT:CRAWLING:8:0.91]
  2065. [X]
  2066.  
  2067. like the body assembler, the gait calculator is so wizardly complex that I
  2068. decided to take it out the main code. I had to write a program to write the code. (okay, not
  2069. really - but I did have to write a program that assembled all the above data for me. You can
  2070. tweak them however you want - it'll make a noticeable difference if you do a bunch of crazy
  2071. stuff to it. DO NOT CHANGE IT TOO MUCH!!! you will wind up with sloths and/or bolts of
  2072. lightning (in creature form) if you change it anywhere outside the 0.2-4 zone.
  2073. watch it. be careful. And don't delete this next line:
  2074.  
  2075. [CALCULATE_GAITS]
  2076.  
  2077. The way CALCULATE_GAITS works:
  2078. The program takes all the GAIT info it's been given. For each type (#2) it adds
  2079.  
  2080.  
  2081.  
  2082. ========Split========
  2083.  
  2084. [IF:%RND:0:7%:1]
  2085. [TAG_ADD:{USE_MATERIAL_TEMPLATE:ICHOR:ICHOR_TEMPLATE}]
  2086. [TAG_ADD:{BLOOD:LOCAL_CREATURE_MAT:ICHOR:LIQUID}]
  2087. [TAG_ADD:{CREATURE_CLASS:GENERAL_POISON}]
  2088. [TAG_ADD:{GETS_WOUND_INFECTIONS}]
  2089. [TAG_ADD:{GETS_INFECTIONS_FROM_ROT}]
  2090. [TAG_ADD:{USE_MATERIAL_TEMPLATE:PUS:PUS_TEMPLATE}]
  2091. [TAG_ADD:{PUS:LOCAL_CREATURE_MAT:PUS:LIQUID}]
  2092. [ELSE]
  2093. [TAG_ADD:{USE_MATERIAL_TEMPLATE:BLOOD:BLOOD_TEMPLATE}]
  2094. [IF:%RND:0:25%:1]
  2095. [TAG_ADD:{STATE_COLOR:ALL:%bloodColor%}]
  2096. [X]
  2097. [TAG_ADD:{BLOOD:LOCAL_CREATURE_MAT:BLOOD:LIQUID}]
  2098. [TAG_ADD:{CREATURE_CLASS:GENERAL_POISON}]
  2099. [TAG_ADD:{GETS_WOUND_INFECTIONS}]
  2100. [TAG_ADD:{GETS_INFECTIONS_FROM_ROT}]
  2101. [TAG_ADD:{USE_MATERIAL_TEMPLATE:PUS:PUS_TEMPLATE}]
  2102. [TAG_ADD:{PUS:LOCAL_CREATURE_MAT:PUS:LIQUID}]
  2103. [X]
  2104.  
  2105. And now we add the bodysize/age stuff I mentioned way up there somewhere.
  2106.  
  2107. [TAG_ADD:{BODY_SIZE:0:0:%bodySize0%}]
  2108. [TAG_ADD:{BODY_SIZE:1:0:%bodySize1%}] perhaps a bit unimaginative, but give me a break, look at all the other stuff I'm doing.
  2109. [TAG_ADD:{BODY_SIZE:%bodyAge%:%bodySize2%}]
  2110. [TAG_ADD:{MAXAGE:%maxAge%:%maxAge2%}]
  2111. [DOUBLE:thisIt:%DECRND:1:3%]Can't remember why I called it this. Probably a throwaway name.
  2112. [IF:thisIt:<:1.25] yay, doubles
  2113. [DESCRIPTION:VERB:matures at an old age]
  2114. [ELSEIF:thisIt:>:2.75]
  2115. [DESCRIPTION:VERB:matures at a young age] there was a typo in the original that said "an" instead of "a".
  2116. [X]
  2117. [INT:nextAge:=/:bodyAge:thisIt]
  2118. [TAG_ADD:{CHILD:%nextAge%}]
  2119. [TAG_ADD:{ALL_ACTIVE}] whoa, did I really do this? Huh. This is definitely subject to
  2120. change. I don't have a clue why I would've done this.
  2121.  
  2122. And now size stuff. These are Toady's own interpretations of sizes.
  2123. [IF:bodySize:>:0:&:bodySize:<:10000]
  2124. [DESCRIPTION:SIZE:tiny]
  2125. [X]
  2126. [IF:bodySize:>:1000:&:bodySize:<:59000]
  2127. [DESCRIPTION:SIZE:small]
  2128. [X]
  2129. [IF:bodySize:>:3000:&:bodySize:<:137000]
  2130. [DESCRIPTION:SIZE:medium-sized]
  2131. [X]
  2132. [IF:bodySize:>:92000:&:bodySize:<:4608000]
  2133. [DESCRIPTION:SIZE:huge]
  2134. [X]
  2135. [IF:bodySize:>:138000:&:bodySize:<:6912000]
  2136. [DESCRIPTION:SIZE:large]
  2137. [X]
  2138. [IF:bodySize:>:588000]
  2139. [DESCRIPTION:SIZE:gigantic]
  2140. [IF:HAS_BEAK]
  2141. [DESCRIPTION:DESC:uses its beak to pluck up unsuspecting intruders] stole this from Toady.
  2142. [X]
  2143. [X]
  2144.  
  2145. More stuff!
  2146. [INT:rndX:%RND:1:4%]
  2147. [IF:rndX:2]
  2148. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:LENGTH:90:95:98:100:102:105:110}]
  2149. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:HEIGHT:90:95:98:100:102:105:110}]
  2150. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:BROADNESS:90:95:98:100:102:105:110}]
  2151. [ELSEIF:rndX:3]
  2152. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:LENGTH:80:95:98:100:102:105:120}]
  2153. this is where "tunnels through the rocks" came in. It appeared far too often. I'm removing it in this version. Add it if you wish.
  2154. DESCRIPTION:VERB:tunnels through the rocks
  2155. [IF:%CONTAINS:BODYPART_LIST:BASIC_1PARTBODY%]
  2156. [DESCRIPTION:DESC:hundreds of feet moving along the bottom of its body]
  2157. [X]
  2158. [ELSEIF:rndX:4]
  2159. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:HEIGHT:90:95:98:100:102:105:110}]
  2160. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:BROADNESS:90:95:98:100:102:105:110}]
  2161. [X]
  2162. 2150 lines of script already. This is... truly dizzying. I can't imagine what I'm going to have to write in the actual program.
  2163.  
  2164. ========Attack info========
  2165. It's possible to get a lot more random than this, but I don't want to. I want my creatures
  2166. to rip your eyes out and batter you to little bloody pieces, and then grind what's left
  2167. of you into pulp. Before chopping up what's left and regurgitating it to their young.
  2168. Basically, I want it to hurt as if they're really trying.None of my creatures
  2169. should EVER come across as pathetic by nature.
  2170.  
  2171. [IF:HAS_BEAK]
  2172. [TAG_ADD:{ATTACK:BITE:BODYPART:BY_CATEGORY:BEAK}]
  2173. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2174. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2175. [TAG_ADD: {ATTACK_CONTACT_PERC:100}] these may change off of "100" later. no idea though.
  2176. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2177. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2178. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2179. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2180. [X]
  2181. [IF:HAS_TALON]
  2182. [IF:HAND_TOE:FALSE]handtoe may be obsolete.
  2183. [TAG_ADD:{ATTACKSCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:STANCE:BY_CATEGORY:ALL:TALON}]
  2184. [ELSE]
  2185. [TAG_ADD:{ATTACKSCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:GRASP:BY_CATEGORY:ALL:TALON}]
  2186. [X]
  2187. [IF:%RND:0:1%:1]
  2188. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2189. [ELSE]
  2190. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  2191. [X]
  2192. [TAG_ADD: {ATTACK_VERB:snatch at:snatches at}]
  2193. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2194. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2195. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2196. [TAG_ADD: {ATTACK_PRIORITY:SECOND}]
  2197. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2198. [X]
  2199. [IF:HAS_FOOT]
  2200. [TAG_ADD:{ATTACK:KICK:BODYPART:BY_TYPE:STANCE}]
  2201. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  2202. [TAG_ADD: {ATTACK_VERB:kick:kicks}]
  2203. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2204. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2205. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2206. [X]
  2207. [IF:HAS_TEETH:&:TRUE_HEAD:&:HAS_HEAD]
  2208. [TAG_ADD:{ATTACK:BITE:CHILD_BODYPART_GROUP:BY_CATEGORY:HEAD:BY_CATEGORY:TOOTH}]
  2209. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2210. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2211. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2212. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2213. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2214. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2215. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2216. [X]
  2217. [IF:HAS_TEETH:FALSE:&:HAS_MOUTH]
  2218. [TAG_ADD:{ATTACK:BITE:BODYPART:BY_CATEGORY:MOUTH}]
  2219. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2220. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2221. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2222. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2223. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2224. [X]
  2225. [IF:HAS_FINGERCLAWS]
  2226. [TAG_ADD:{ATTACK:SCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:GRASP:BY_CATEGORY:FINGER:CLAW}]
  2227. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2228. [TAG_ADD: {ATTACK_VERB:scratch:scratches}]
  2229. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2230. [TAG_ADD: {ATTACK_PENETRATIN_PERC:100}]
  2231. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2232. [IF:%RND:0:1%:1]
  2233. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2234. [ELSE]
  2235. [TAG_ADD: {ATTACK_PRIORITY:SECOND}]
  2236. [X]
  2237. [X]
  2238. [IF:HAS_HAND]
  2239. [TAG_ADD:{ATTACK:PUNCH:BODYPART:BY_TYPE:GRASP}]
  2240. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2241. [TAG_ADD: {ATTACK_VERB:punch:punches}]
  2242. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2243. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2244. [TAG_ADD: {ATTACK_PRIORITY:SECOND}]
  2245. [X]
  2246. [IF:NO_TENTACLE:FALSE]oh god, it's hentai DF all over again
  2247. [TAG_ADD:{ATTACK:BITE:CHILD_BODYPART_GROUP:BY_CATEGORY:TENTACLE:BY_CATEGORY:TOOTH}]
  2248. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2249. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2250. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2251. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2252. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2253. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2254. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2255. [X]
  2256. [IF:HAS_MANDIBLES]
  2257. [TAG_ADD:{ATTACK:BITE:CHILD_BODYPART_GROUP:BY_CATEGORY:HEAD:BY_CATEGORY:MANDIBLE}]
  2258. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2259. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2260. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2261. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2262. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2263. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2264. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2265. [X]
  2266. [IF:HAS_FINGERNAILS]
  2267. [TAG_ADD:{ATTACK:SCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:GRASP:BY_CATEGORY:FINGER:NAIL}]
  2268. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2269. [TAG_ADD: {ATTACK_VERB:scratch:scratches}]
  2270. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2271. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2272. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2273. [TAG_ADD: {ATTACK_PRIORITY:SECOND}]
  2274. [X]
  2275. [IF:HAS_TOENAILS]
  2276. [TAG_ADD:{ATTACK:SCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:STANCE:BY_CATEGORY:TOE:NAIL}]
  2277. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2278. [TAG_ADD: {ATTACK_VERB:scratch:scratches}]
  2279. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2280. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2281. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2282. [TAG_ADD: {ATTACK_PRIORITY:SECOND}]
  2283. [X]
  2284. [IF:HAS_TOECLAWS]
  2285. [TAG_ADD:{ATTACK:CLAW:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:STANCE:BY_CATEGORY:ALL:CLAW}]
  2286. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2287. [TAG_ADD: {ATTACK_VERB:claw:claws}]
  2288. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2289. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2290. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2291. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2292. [X]
  2293. [IF:HAS_TUSK:&:TRUE_HEAD]
  2294. [TAG_ADD:{ATTACK:BITE:CHILD_BODYPART_GROUP:BY_CATEGORY:HEAD:BY_CATEGORY:TUSK}]
  2295. [IF:%RND:0:1%:1]
  2296. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2297. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2298. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2299. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2300. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2301. [ELSE]
  2302. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2303. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2304. [TAG_ADD: {ATTACK_VERB:gore:gores}]
  2305. [X]
  2306. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2307. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2308. [X]
  2309. [IF:HAS_UPPERBODYPINCERS]
  2310. [TAG_ADD:{ATTACK:SLAP:BODYPART:BY_CATEGORY:PINCER}]
  2311. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2312. [TAG_ADD: {ATTACK_VERB:snatch:snatches}]
  2313. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2314. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2315. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2316. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2317. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2318. [X]
  2319. [IF:HAS_PROBOSCIS]
  2320. [TAG_ADD:{ATTACK:BITE:BODYPART:BY_CATEGORY:PROBOSCIS}]
  2321. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2322. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2323. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2324. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2325. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2326. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2327. [TAG_ADD: {SPECIALATTACK_SUCK_BLOOD:25:50}]
  2328. [X]
  2329.  
  2330. ========Other stuff========
  2331. [IF:%RND:0:1%:1]
  2332. [TAG_ADD:{HOMEOTHERM:100%RND:10:67%}]This could really use changed - I don't remember why I made it this bizarre. Was it a strange point of pride? I may never know.
  2333. [X]
  2334. [IF:%RND:0:1%:1]This is going to have to go higher because of gait changes.
  2335. [TAG_ADD:{SWIMS_INNATE}]
  2336. [IF:SKIN_TYPE:SKIN:&:AMPHIBIOUS]
  2337. [DESCRIPTION:NOUN:amphibian]
  2338. [X]
  2339. [X]
  2340.  
  2341. ========Final description info========
  2342. [IF:IS_SOLITARY]
  2343. [IF:IS_HUNTER]
  2344. [DESCRIPTION:VERB:prefers to hunt alone]
  2345.  
  2346. [IF:IS_ROAMER]
  2347. [DESCRIPTION:VERB:patrols its territory by itself]
  2348.  
  2349. [IF:IS_GRAZER]
  2350. [DESCRIPTION:VERB:likes lots of room to graze]
  2351.  
  2352. [ELSEIF:IN_GROUPS]
  2353. [IF:IS_HUNTER]
  2354. [DESCRIPTION:VERB:hunts in packs]
  2355.  
  2356. [IF:IS_ROAMER]
  2357. [DESCRIPTION:VERB:roams from place to place with others]
  2358.  
  2359. [IF:IS_GRAZER]
  2360. [DESCRIPTION:VERB:is found grazing in groups]
  2361.  
  2362. [X]
  2363. [IF:%CONTAINS:BODYPART_LIST:TRUNK%]
  2364. [DESCRIPTION:VERB:lifts %foodWord% up with its long trunk to eat]
  2365. [X]
  2366.  
  2367. ========Gender Bending========
  2368. [INT:xxx:%RND:0:1%]
  2369. [IF:xxx:0]
  2370. [TAG_ADD:{CASTE:FEMALE}]
  2371. [TAG_ADD: {FEMALE}]
  2372. [IF:%RND:0:1%:1]
  2373. [TAG_ADD: {MULTIPLE_LITTER_RARE}]
  2374. [X]
  2375. [TAG_ADD:{CASTE:MALE}]
  2376. [TAG_ADD: {MALE}]
  2377. [ELSE]
  2378. [IF:%RND:0:1%:1]
  2379. [TAG_ADD:{BODY_DETAIL_PLAN:LEATHERY_EGG_MATERIALS}]
  2380. [ELSE]
  2381. [TAG_ADD:{BODY_DETAIL_PLAN:EGG_MATERIALS}]
  2382. [X]
  2383. [TAG_ADD:{CASTE:FEMALE}]
  2384. [TAG_ADD: {FEMALE}]
  2385. [TAG_ADD: {LAYS_EGGS}]
  2386. [TAG_ADD: {EGG_MATERIAL:LOCAL_CREATURE_MAT:EGGSHEL:SOLID}]
  2387. [TAG_ADD: {EGG_MATERIAL:LOCAL_CREATURE_MAT:EGG_WHITE:LIQUID}]
  2388. [TAG_ADD: {EGG_MATERIAL:LOCAL_CREATURE_MAT:EGG_YOLK:LIQUID}]
  2389. [TAG_ADD: {EGG_SIZE:%bodySize0:=*:bodySize0:1.1%}]
  2390. [INT:cs:%RND:1:10%]
  2391. [INT:cs2:%RND:1:5%]
  2392. [cs2:=*:cs2:cs]
  2393. [TAG_ADD: {CLUTCH_SIZE:%cs%:%cs2%}]
  2394. [TAG_ADD:{CASTE:MALE}]
  2395. [TAG_ADD: {MALE}]
  2396. [X]
  2397. [TAG_ADD:{SELECT_CASTE:ALL}]
  2398. Now we be awesome. Or... rather... we just give dragons their stuff. Bronze colossus stuff is up with the body detail info, in casse you're a little lost.
  2399. [IF:IS_FIREBREATHER]
  2400. [TAG_ADD:{SELECT_MATERIAL:ALL}]
  2401. [TAG_ADD: {MULTIPLY_VALUE:15}] Could be more random.
  2402. [TAG_ADD: {COLDDAM_POINT:NONE}]
  2403. [TAG_ADD: {HEADDAM_POINT:NONE}]
  2404. [TAG_ADD: {IGNITE_POINT:NONE}]
  2405. [TAG_ADD: {IF_EXISTS_SET_MELTING_POINT:55000}]
  2406. [TAG_ADD: {IF_EXISTS_SET_BOILING_POINT:57000}]
  2407. [TAG_ADD: {SPEC_HEAT:30000}]
  2408. [TAG_ADD:{SELECT_MATERIAL:BLOOD}]
  2409. [TAG_ADD: {MELTING_POINT:10000}]
  2410. [X]
  2411.  
  2412.  
  2413. [X] This is an intentional mistake to catch bugs.
  2414.  
  2415. ========Coloration========
  2416. [IF:skinType:!:STONE]
  2417. [IF:skinType:SKIN]
  2418. [INT:skinNum:%RND:1:$COUNT:skinList$%]
  2419. [TAG_ADD: {SET_TL_GROUP:BY_CATEGORY:ALL:SKIN}]
  2420. [TAG_ADD: {TL_COLOR_MODIFIER:%skinList:skinNum%}] some of these array values may be wrong
  2421. [TAG_ADD: {TLCM_NOUN:skin:SINGULAR}]
  2422. [TAG_SET:4:{COLOR:%colorList:skinNum%}]
  2423. [DESCRIPTION:ADJ:%colorToString:skinList:skinNum%}] internal function. takes a DF color (0:0:1, for instance) and turns it into its corresponding color.
  2424. [ELSEIF:skinType:CHITIN]
  2425. [TAG_ADD: {SET_TL_GROUP:BY_CATEGORY:ALL:CHITIN}]
  2426. [TAG_ADD: {TL_COLOR_MODIFIER:BLACK:1}]
  2427. [TAG_ADD: {TLCM_NOUN:exterior:SINGULAR}]
  2428. [TAG_SET:4:{COLOR:0:0:1}]
  2429. [DESCRIPTION:ADJ:black}]
  2430. [ELSEIF:skinType:SCALE]
  2431. [INT:skinNum:%RND:1:$COUNT:scaleList$%]
  2432. [TAG_ADD: {SET_TL_GROUP:BY_CATEGORY:ALL:SCALE}]
  2433. [TAG_ADD: {TL_COLOR_MODIFIER:%scaleList:skinNum%}]
  2434. [TAG_ADD: {TLCM_NOUN:scales:PLURAL}]
  2435. [TAG_SET:4:{COLOR:%scaleColor:skinNum%}]
  2436. [DESCRIPTION:ADJ:%colorToString:scaleList:skinNum%]
  2437. [ELSEIF:skinType:FLESH]
  2438. [INT:skinNum:%RND:1:$COUNT:skinList$%]
  2439. [TAG_ADD: {SET_TL_GROUP:BY_CATEGORY:ALL:FLESH}]
  2440. [TAG_ADD: {TL_COLOR_MODIFIER:%skinList:skinNum%}]
  2441. [TAG_ADD: {TLCM_NOUN:flesh:SINGULAR}]
  2442. [TAG_SET:4:{COLOR:%scaleColor:skinNum%}]
  2443. [DESCRIPTION:ADJ:%colorToString:skinList:skinNum%}]
  2444. [ELSEIF:skintype:WET]
  2445. [INT:skinNum:%RND:1:$COUNT:slimeColor$%]
  2446. [TAG_ADD: {SET_TL_GROUP:BY_CATEGORY:ALL:BLOOD}]
  2447. [TAG_ADD: {TL_COLOR_MODIFIER:%slimeColor:skinNum%}]
  2448. [TAG_ADD: {TLCM_NOUN:%thisType%:SINGULAR}] wayyyy, up there, thisType is the type of goo that the creatuer is made of.
  2449. [TAG_SET:4:{COLOR:%dumbList:skinNum%}]
  2450. [DESCRIPTION:ADJ:%colorToString:slimeColor:skinNum%}]
  2451. [X]
  2452. [IF:ADD_HAIR]
  2453. [INT:hairInt:%RND:1:$COUNT:hairList$%]
  2454. [TAG_ADD: {SET_TL_GROUP:BY_CATEGORY:ALL:HAIR}]
  2455. [TAG_ADD: {TL_COLOR_MODIFIER:%hairList:hairInt%}]
  2456. [TAG_ADD: {TLCM_NOUN:hair:SINGULAR}]
  2457. [IF:%R01%] I don't remember what this calls at the moment.
  2458. [DESCRIPTION:ADJ:SET_LAST:%colorToString:hairList:hairInt%] ooh, funky. This is gettin' all complex up in here.
  2459. [X]
  2460. [X]
  2461. [IF:HAS_FEATHER]
  2462. [INT:featherInt:%RND:1:featherList%] Alternate option: using a list as an integer returns the list size
  2463. [TAG_ADD: {SET_TL_GROUP:BY_CATEGORY:ALL:FEATHER}]
  2464. [TAG_ADD: {TL_COLOR_MODIFIER:%featherList:featherInt%}]
  2465. [TAG_ADD: {TLCM_NOUN:feathers:PLURAL}]
  2466. [IF%R01%]
  2467. [DESCRIPTION:ADJ:SET_LAST:%colorToString:featherList:featherInt%]
Advertisement
Add Comment
Please, Sign In to add comment