Advertisement
Talvieno

RandCreatures script WIP #6

Sep 13th, 2014
1,613
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 120.29 KB | None | 0 0
  1. Indentations are not necessary. Anything not included in brackets
  2. is a comment. All blank lines are read as "[X]". All lines with
  3. comments but no brackets (like these) are ignored entirely.
  4. Welcome to DFSL.
  5.  
  6. TO DO:
  7. add support for the following new tags:
  8. - CANNOT_CLIMB oddly, not used in the raws... probably because no climber gait means they can't climb.
  9. - CANNOT_JUMP creatures with no stance BP get this, as well as quadrupeds over size 1000000
  10. - CHANGE_FREQUENCY_PERC not used in vanilla raws
  11. - LOW_LIGHT_VISION (1/10) chance of getting LOW_LIGHT_VISION:10000
  12. - MULTIPART_FULL_VISION given to creatures with multiple heads
  13. - NO_VEGETATION_PERTURB given to good bipeds and quadrupeds
  14. - ODOR_LEVEL (1/50) chance of getting ODOR_LEVEL:0
  15. - ORIENTATION not used in vanilla raws - I suspect in there solely for modders
  16. - SMELL_TRIGGER all bizarre composition creatures get this at SMELL_TRIGGER:10000, while there's a 1/67 chance of creatures getting random 10-90
  17. - STANCE_CLIMBER creatures that climb without hands get STANCE_CLIMBER,NATURAL_SKILL:CLIMBING:15
  18. - VISION_ARC (1/8) chance of getting VISION_ARC:50:310)
  19. - ATTACK_PREPARE_AND_RECOVER
  20. - ATTACK_FLAG_BAD_MULTIATTACK
  21. - ATTACK_FLAG_INDEPENDENT_MULTIATTACK for creatures with 7head_necksc
  22. add support for the following old tags
  23. - more with UNDERGROUND DEPTH
  24. - VIEWRANGE not used in vanilla
  25. - VOCALIZATION will take some creativity
  26. - SECRETION
  27. mammals don't lay eggs
  28. no furry fish or birds
  29. benign
  30. DIURNAL/NOCTURNAL/CREPUSCULAR/ALL_ACTIVE <-- add these
  31. add spitting
  32. add fish
  33. correct old attack tags
  34. figure out petvalue
  35. add interactions
  36. add iron man and fleshy blob thing raws, and cave floater
  37. flesh out civ creatures (ment_att, phys_att, etc)
  38. add biome cluster/action additions
  39. rearrange things to speed up creature creation time
  40.  
  41. Description: A (size), (adj) (noun) (with (desc)) and (desc). It (verb) and (verb).
  42. OR: A (size), (adj) (noun) (that (verb)) and has (desc). It (verb) and has (desc).
  43. OR: A (size), (adj) (noun) (that (verb)) and (verb). It has (desc) and (verb).
  44. OR even: A (size), (adj) (noun) with desc and desc. It has desc and verb.
  45. OR A (size) (adj) (adj) (noun)
  46. OR A (size) (noun)
  47. OR A (adj) (size) (noun)
  48. So a myriad of different description types to keep things interesting. We'll be fine. The last version only had one.
  49.  
  50.  
  51. [ADD:BP_FILE:body_default]adds "body_default.txt" to the BP_FILE list, which is read from only once at READ_BP_FILES.
  52. This, BODY_TYPES and BODY_DATA are the only normal internal lists that are absolutely permanent. The others are defined
  53. once per creature gen. The only normal internal boolean that is absolutely permanent is ADD_UNDERGROUND_DEPTH... but
  54. that's likely a bug.
  55.  
  56. [READ_BP_FILES] This reads in the BP files from the BP file list. It doesn't parse them yet. The BODY tag does that.
  57.  
  58. [ADD:BODY_DATA:APERTURE]
  59. [ADD:BODY_DATA:BREATHE]
  60. [ADD:BODY_DATA:CIRCULATION]
  61. [ADD:BODY_DATA:CONNECTOR]
  62. [ADD:BODY_DATA:DIGIT]
  63. [ADD:BODY_DATA:EMBEDDED]
  64. [ADD:BODY_DATA:FLIER]
  65. [ADD:BODY_DATA:GUTS]
  66. [ADD:BODY_DATA:HEAR]
  67. [ADD:BODY_DATA:INTERNAL]
  68. [ADD:BODY_DATA:JOINT]
  69. [ADD:BODY_DATA:LIMB]
  70. [ADD:BODY_DATA:LEFT]
  71. [ADD:BODY_DATA:MOUTH]
  72. [ADD:BODY_DATA:NERVOUS]
  73. [ADD:BODY_DATA:PREVENTS_PARENT_COLLAPSE]
  74. [ADD:BODY_DATA:RIGHT]
  75. [ADD:BODY_DATA:SKELETON]
  76. [ADD:BODY_DATA:SIGHT]
  77. [ADD:BODY_DATA:SMELL]
  78. [ADD:BODY_DATA:SMALL]
  79. [ADD:BODY_DATA:SOCKET]
  80. [ADD:BODY_DATA:THROAT]
  81. [ADD:BODY_DATA:THOUGHT]
  82. [ADD:BODY_DATA:TOTEMABLE]
  83. [ADD:BODY_DATA:UNDER_PRESSURE]
  84. [ADD:BODY_DATA:VERMIN_BUTCHER_ITEM]
  85.  
  86. [ADD:BODY_TYPES:GRASP]
  87. [ADD:BODY_TYPES:HEAD]
  88. [ADD:BODY_TYPES:LOWERBODY]
  89. [ADD:BODY_TYPES:UPPERBODY]
  90. [ADD:BODY_TYPES:STANCE]
  91.  
  92.  
  93.  
  94.  
  95. A list of all the body parts for creatures. If you don't want a bodypart included, just don't add it here.
  96.  
  97. BODY is the main tag. What comes next is the bodypart, both added to the raws and pulled from the files.
  98. The number is the weight - i.e. how often it gets placed.
  99. [BODY:BASIC_1PARTBODY:32]
  100. [ADD:DESCADJ:snake-like] an adjective for the description
  101. [ADD:DESCNOUN:creature] a noun for the description
  102. [BODY:BASIC_1PARTBODY_THOUGHT:4]
  103. [BODY:BASIC_1PARTBODY_FLYING_HEAD_FLAG_THOUGHT:2]
  104. [BODY:BASIC_2PARTBODY:83]
  105. [BODY:BASIC_3PARTARMS:2]
  106. [BODY:BASIC_3PARTLEGS:2]
  107. [BODY:BASIC_FRONTLEGS:2]
  108. [BODY:BASIC_REARLEGS:2]
  109. [BODY:ARMS_STANCE:4]
  110. [BODY:7HEADNECKS:2]
  111. [BODY:BASIC_HEAD:95]
  112. [BODY:BASIC_HEAD_NECK:12]
  113. [BODY:BODY_HEAD:4]
  114. [ADD:DESCADJ:fearsome]
  115. [ADD:DESCNOUN:creature]
  116. [BODY:BODY_WITH_HEAD_FLAG:9]
  117. [ADD:DESCNOUN:creature] I'm so creative.
  118. [ADD:DESCVERB:is made of a mass of appendages resembling human fingers] this one is actually better.
  119. [ADD:DESCVERB:creeps along the ground like a starfish]
  120. [BODY:HUMANOID:9]
  121. [ADD:DESCADJ:humanoid]
  122. [ADD:DESCVERB:walks on two legs]
  123. [ADD:DESCVERB:uses its long arms to strangle its prey] this might not make sense anymore.
  124. [BODY:HUMANOID_HOOF:2]
  125. [BODY:HUMANOID_NECK:36]
  126. [ADD:DESCADJ:humanoid]
  127. [ADD:DESCVERB:walks on two legs]
  128. [ADD:DESCVERB:uses its long arms to strangle its prey] this might not make sense anymore.
  129. [BODY:HUMANOID_NECK_HOOF:4]
  130. [BODY:HUMANOID_LEGLESS_NECK:8]
  131. [ADD:DESCADJ:bat-like]
  132. [ADD:DESCNOUN:creature]
  133. [BODY:HUMANOID_NECK_FLIER:5]
  134. [ADD:DESCADJ:bat-like]
  135. [ADD:DESCNOUN:creature]
  136. [BODY:2WINGS:71]
  137. [BODY:HUMANOID_ARMLESS:5]
  138. [ADD:DESCNOUN:creature]
  139. [ADD:DESCNOUN:walks with two clawed legs]
  140. [BODY:HUMANOID_LEGLESS:6]
  141. [BODY:HUMANOID_4ARMS:4]
  142. [ADD:DESCADJ:four-armed]
  143. [ADD:DESCNOUN:creature]
  144. [BODY:HUMANOID_6ARMS:2]
  145. [BODY:HUMANOID_LEGLESS_4ARMS:2]
  146. [BODY:HUMANOID_LEGLESS_6ARMS:2]
  147. [BODY:HUMANOID_NECK_4ARMS:2]
  148. [BODY:4ARMS_STANCE:3]
  149. [BODY:HUMANOID_NECK_2HEAD:2]
  150. [BODY:HUMANOID_SIMPLE:12]
  151. [ADD:DESCADJ:man-shaped]
  152. [ADD: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.
  153. [BODY:QUADRUPED:3]
  154. [ADD:DESCADJ:long-bodied]
  155. [ADD:DESCNOUN:quadruped]
  156. [ADD:DESCVERB:runs on four legs] a verb for the description
  157. [BODY:QUADRUPED_NECK_FRONT_GRASP:24]
  158. [BODY:QUADRUPED_NECK:108] very common body type.
  159. [ADD:DESCADJ:long-bodied]
  160. [ADD:DESCNOUN:quadruped]
  161. [ADD:DESCVERB:runs on four legs] a verb for the description
  162. [BODY:QUADRUPED_NECK_HOOF:28]
  163. [BODY:INSECT:31]
  164. [ADD:PREFLIST:high-pitched buzz:buzzing]will choose one of the two.
  165. [ADD:DESCNOUN:insect]
  166. [BODY:INSECT_4LEGS_2ARMS:3]
  167. [ADD:PREFLIST:mystical feel]
  168. [ADD:PREFLIST:mysticism]
  169. [BODY:SPIDER:62]
  170. [ADD:DESCADJ:spider-like]
  171. [ADD:DESCDESC:has long, spindly legs]
  172. [BODY:CRAB_BODY:2]
  173. [BODY:TWO_NO_CLAW_TENTACLES:2]
  174. [BODY:TENTACLE_MOUTH:2]
  175. [BODY:TENTACLE_TEETH:2]
  176. [BODY:8_SIMPLE_HEAD_ARMS:4]
  177. [BODY:2_HEAD_CLUBBED_TENTACLES:3]
  178. [BODY:FOUR_TENTACLES:2]
  179. [BODY:SIX_TENTACLES:2]
  180. [BODY:TAIL:238]
  181. [BODY:SHELL:13]
  182. [BODY:TAIL_STANCE:3]
  183. [BODY:TAIL_STINGER:5]
  184. [BODY:UPPERBODY_PINCERS:7]
  185. [BODY:2EYES:371]obviously common
  186. [BODY:3EYES:2]
  187. [BODY:4EYES:2]
  188. [BODY:2EYESTALKS:5]
  189. [BODY:2TUSKS:7]
  190. [BODY:NOSE:210]
  191. [BODY:SNOUT_NOSMELL:3]
  192. [BODY:TRUNK:2]
  193. [BODY:2EARS:91]
  194. [BODY:2LUNGS:269]
  195. [BODY:MOUTH:322]
  196. [BODY:PROBOSCIS:2]
  197. [BODY:BEAK:55]
  198. [BODY:HEART:386]
  199. [BODY:GUTS:382]
  200. [BODY:GIZZARD:57]
  201. [BODY:ORGANS:339]
  202. [BODY:HUMANOID_JOINTS:89]
  203. [BODY:THROAT:251]
  204. [BODY:NECK:253]
  205. [BODY:SPINE:336]
  206. [BODY:BRAIN:387]
  207. [BODY:SKULL:337]
  208. [BODY:CASQUE:2]
  209. [BODY:HEAD_HORN:3]
  210. [BODY:2HEAD_HORN:15]
  211. [BODY:2HEAD_HORN_NUMBERED:2]
  212. [BODY:2HEAD_ANTLER:8]
  213. [BODY:1EYE:2]
  214. [BODY:BODY_EYE:2]
  215. [BODY:BODY_EYELID:2]
  216. [BODY:5FINGERS:32]
  217. [BODY:4FINGERS:24]
  218. [BODY:2FINGERS:2]
  219. [BODY:5TOES:16]
  220. [BODY:4TOES:65]
  221. [BODY:3TOES:5]
  222. [BODY:2TOES:6]
  223. [BODY:5TOES_FQ_REG:34]here it gets messy.
  224. [BODY:4TOES_FQ_REG:49]
  225. [BODY:3TOES_FQ_REG:4]
  226. [BODY:5TOES_RQ_REG:43]
  227. [BODY:4TOES_RQ_REG:36]
  228. [BODY:3TOES_RQ_REG:8]
  229. [BODY:5TOES_RQ_ANON:25]
  230. [BODY:5TOES_FQ_FINGERS:24]
  231. [BODY:4TOES_FQ_FINGERS:4]
  232. [BODY:SIDE_FINS:66]
  233. [BODY:DORSAL_FIN:59]
  234. [BODY:SIDE_FLIPPERS:7]
  235. [BODY:FRONT_BODY_FLIPPERS:9]
  236. [BODY:REAR_BODY_FLIPPERS:13]
  237. [BODY:1HUMP:2]
  238. [BODY:2HUMPS:2]
  239. [BODY:CHEEKS:5]
  240. [BODY:EYELIDS:5]
  241. [BODY:TONGUE:184]
  242. [BODY:FORKED_TONGUE:4]
  243. [BODY:LIPS:2]
  244. [BODY:FACIAL_FEATURES:50]
  245. [BODY:ONE_EYELID:2]
  246. [BODY:RIBCAGE:335]
  247. [BODY:GENERIC_TEETH_WITH_LARGE_EYE_TEETH:72]
  248. [BODY:GENERIC_TEETH_WITH_FANGS:14]
  249. [BODY:RODENT_TEETH:30]
  250. [BODY:GENERIC_TEETH:76]
  251. [BODY:TEETH:77]
  252. [BODY:HAND_FOOT_CENTAUR_NECK:2]
  253. [ADD:DESCADJ:hideous]
  254. [BODY:LARGE_MANDIBLES:2]
  255. [BODY:BILL:8]
  256. [BODY:HUMANOID_ARMLESS_NECK:58]
  257. [ADD:DESCDESC:has a long neck]
  258. [ADD:DESCDESC:has long legs]
  259. [ADD:PREFLIST:long necks]
  260. [ADD:DESCDESC:bird-like]
  261. [BODY:TUSK:2]
  262.  
  263. bodyparts are automatically loaded and don't need a special command to do so.
  264.  
  265.  
  266. [LIST:liquids]defines a new list. This one is for liquids.
  267. [ADD:liquids:blood]adds "blood" to the list "liquids".
  268. [ADD:liquids:goo]the "add to list" lines can really be placed anywhere, but I'm putting them here mostly for simplicity.
  269. [ADD:liquids:slime]
  270. [ADD:liquids:mucus]
  271. [ADD:liquids:filth]
  272. [ADD:liquids:bile]
  273. [ADD:liquids:ooze]
  274.  
  275. [LIST:letters]
  276. [ADD:letters:a]
  277. [ADD:letters:a]adding an entry more than once increases the chances of it being used, as you might expect
  278. [ADD:letters:b]
  279. [ADD:letters:c]
  280. [ADD:letters:d]
  281. [ADD:letters:e]
  282. [ADD:letters:e]
  283. [ADD:letters:f] [ADD:letters:g] a test to make sure multiple tags on a line works
  284. [ADD:letters:h][ADD:letters:i] another test to make sure multiple tags works
  285. [ADD:letters:i]
  286. [ADD:letters:j]
  287. [ADD:letters:k]
  288. [ADD:letters:l]
  289. [ADD:letters:m]
  290. [ADD:letters:n]
  291. [ADD:letters:o]
  292. [ADD:letters:o]
  293. [ADD:letters:p]
  294. [ADD:letters:q]
  295. [ADD:letters:r]
  296. [ADD:letters:s]
  297. [ADD:letters:t]
  298. [ADD:letters:u]
  299. [ADD:letters:u]
  300. [ADD:letters:v]
  301. [ADD:letters:w]
  302. [ADD:letters:x]
  303. [ADD:letters:y]
  304. [ADD:letters:z]
  305. [X] optional as always.
  306. [LIST:adj]
  307. [ADD:adj:freakish]
  308. [ADD:adj:scary]
  309. [ADD:adj:terrifying]
  310. [ADD:adj:calming]
  311. [ADD:adj:elegant]
  312. [ADD:adj:impressive]
  313. [ADD:adj:bizarre]
  314. [ADD:adj:enormous]
  315. [ADD:adj:awesome]
  316. [ADD:adj:unnerving]
  317. [ADD:adj:freakish]
  318. [ADD:adj:long]
  319. [ADD:adj:lustrous]
  320. [ADD:adj:frightening]
  321. [ADD:adj:drooping]
  322. [ADD:adj:sinister]
  323. [ADD:adj:graceful]
  324. [ADD:adj:gruesome]
  325.  
  326. [LIST:bloodColor]
  327. [ADD:bloodColor:BLACK]
  328. [ADD:bloodColor:BLUE]
  329. [ADD:bloodColor:GREEN]
  330. [ADD:bloodColor:AQUA]
  331. [ADD:bloodColor:RED]
  332. [ADD:bloodColor:VIOLET]
  333. [ADD:bloodColor:BROWN]
  334. [ADD:bloodColor:ASH_GRAY]
  335. [ADD:bloodColor:GRAY]
  336. [ADD:bloodColor:DARK_BLUE]
  337. [ADD:bloodColor:TURQUOISE]
  338. [ADD:bloodColor:DARK_VIOLET]
  339. [ADD:bloodColor:YELLOW]
  340. [ADD:bloodColor:WHITE]
  341.  
  342. [LIST:skinColor]
  343. [ADD:skinColor:CLEAR:1]
  344. [ADD:skinColor:MIDNIGHT_BLUE:1]
  345. [ADD:skinColor:WHITE:1]
  346. [ADD:skinColor:BLACK:1]
  347. [ADD:skinColor:GREEN:1]
  348. [ADD:skinColor:BLUE:1]
  349. [ADD:skinColor:ECRU:1]
  350. [ADD:skinColor:GRAY:1]
  351. [ADD:skinColor:TAUPE_PALE:1]
  352. [ADD:skinColor:PINK:1]
  353. [ADD:skinColor:GOLDENROD:1]
  354.  
  355. [LIST:colors]
  356. [ADD:colors:7:0:0]after "colors:", all instances of ":" are ignored and added to the string. Not true for brackets.
  357. [ADD:colors:1:0:0]
  358. [ADD:colors:7:0:1]
  359. [ADD:colors:0:0:1]
  360. [ADD:colors:2:0:0]
  361. [ADD:colors:1:0:1]
  362. [ADD:colors:7:0:0]
  363. [ADD:colors:0:0:1]
  364. [ADD:colors:7:0:1]
  365. [ADD:colors:5:0:1]
  366. [ADD:colors:6:0:1]the order of these matches certain other color lists and is important.
  367.  
  368. [LIST:scaleList]
  369. [ADD:scaleList:GOLD:1]
  370. [ADD:scaleList:RED:1]
  371. [ADD:scaleList:WHITE:1]
  372. [ADD:scaleList:CRIMSON:1]
  373. [ADD:scaleList:BLACK:1]
  374.  
  375. [LIST:scaleColor]
  376. [ADD:scaleColor:5:0:0]color doesn't even look like a word to me anymore.
  377. [ADD:scaleColor:4:0:1]
  378. [ADD:scaleColor:7:0:1]
  379. [ADD:scaleColor:4:0:0]
  380. [ADD:scaleColor:0:0:1]these match the scaleList values.
  381.  
  382. [LIST:hairList]
  383. [ADD:hairList:GRAY:1]
  384. [ADD:hairList:BLACK:1]
  385. [ADD:hairList:YELLOW:1]
  386. [ADD:hairList:DARK_VIOLET:1]
  387. [ADD:hairList:BROWN:1]
  388. [ADD:hairList:WHITE:1]
  389. [ADD:hairList:BLACK:1]
  390.  
  391. [LIST:featherList]
  392. [ADD:featherList:BROWN:1]
  393. [ADD:featherList:PURPLE:1]
  394. [ADD:featherList:GRAY:1]
  395. [ADD:featherList:BLACK:1]
  396.  
  397. [LIST:slimeList]
  398. [ADD:slimeList:BROWN:1]
  399. [ADD:slimeList:GREEN:1]
  400. [ADD:slimeList:CRIMSON:1]
  401. [ADD:slimeList:YELLOW:1]
  402. [ADD:slimeList:WHITE:1]
  403. [ADD:slimeList:GRAY:1]
  404. [ADD:slimeList:BLACK:1]
  405. [ADD:slimeList:DARK_VIOLET:1]
  406. [ADD:slimeList:DARK_GREEN:1]
  407.  
  408. [LIST:slimeColor]
  409. [ADD:slimeColor:6:0:0]
  410. [ADD:slimeColor:2:0:1]
  411. [ADD:slimeColor:4:0:0]
  412. [ADD:slimeColor:6:0:1]
  413. [ADD:slimeColor:7:0:1]
  414. [ADD:slimeColor:7:0:0]
  415. [ADD:slimeColor:0:0:1]
  416. [ADD:slimeColor:5:0:0]
  417. [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.
  418.  
  419. [LIST:eyeList]
  420. [ADD:eyeList:IRIS_EYE_PURPLE:1]
  421. [ADD:eyeList:IRIS_EYE_RED:1]
  422. [ADD:eyeList:BLACK:1]
  423. [ADD:eyeList:BLACK:1]
  424. [ADD:eyeList:BLACK:1]
  425. [ADD:eyeList:IRIS_EYE_GREEN:1]
  426. [ADD:eyeList:IRIS_EYE_BROWN:1]
  427. [ADD:eyeList:BLACK:1]
  428. [ADD:eyeList:BLACK:1]this is all heavily weighted towards black. I don't remember why.
  429. [ADD:eyeList:IRIS_EYE_GREEN:1]
  430. [ADD:eyeList:BLACK:1]
  431. [ADD:eyeList:IRIS_EYE_RED:1]
  432. [ADD:eyeList:BLACK:1]
  433. [ADD:eyeList:BLACK:1]
  434. [ADD:eyeList:GREEN:1]
  435. [ADD:eyeList:IRIS_EYE_BROWN:1]
  436. [ADD:eyeList:IRIS_EYE_GOLD:1]
  437. [ADD:eyeList:IRIS_EYE_YELLOW:1]
  438.  
  439. [LIST:stoneName]
  440. [ADD:stoneName:siltstone]
  441. [ADD:stoneName:mudstone]
  442. [ADD:stoneName:claystone]
  443. [ADD:stoneName:rock salt]
  444. [ADD:stoneName:dolomite]
  445. [ADD:stoneName:chert]
  446. [ADD:stoneName:chalk]
  447. [ADD:stoneName:granite]
  448. [ADD:stoneName:diorite]
  449. [ADD:stoneName:gabbro]
  450. [ADD:stoneName:rhyolite]
  451. [ADD:stoneName:basalt]
  452. [ADD:stoneName:andesite]
  453. [ADD:stoneName:dacite]
  454. [ADD:stoneName:obsidian]
  455. [ADD:stoneName:quartzite]
  456. [ADD:stoneName:slate]
  457. [ADD:stoneName:phyllite]
  458. [ADD:stoneName:schist]
  459. [ADD:stoneName:gneiss]
  460. [ADD:stoneName:marble]
  461.  
  462. [LIST:stoneID]
  463. [ADD:stoneID:SILTSTONE]
  464. [ADD:stoneID:MUDSTONE]
  465. [ADD:stoneID:CLAYSTONE]
  466. [ADD:stoneID:ROrCK_SALT]
  467. [ADD:stoneID:DOLOMITE]
  468. [ADD:stoneID:CHERT]
  469. [ADD:stoneID:CHALK]
  470. [ADD:stoneID:GRANITE]
  471. [ADD:stoneID:DIORITE]
  472. [ADD:stoneID:GABBRO]
  473. [ADD:stoneID:RHYOLITE]
  474. [ADD:stoneID:BASALT]
  475. [ADD:stoneID:ANDESITE]
  476. [ADD:stoneID:DACITE]
  477. [ADD:stoneID:OBSIDIAN]
  478. [ADD:stoneID:QUARTZITE]
  479. [ADD:stoneID:SLATE]
  480. [ADD:stoneID:PHYLLITE]
  481. [ADD:stoneID:SCHIST]
  482. [ADD:stoneID:GNEISS]
  483. [ADD:stoneID:MARBLE]
  484.  
  485. [LIST:stoneColor]
  486. [ADD:stoneColor:6:0:0]
  487. [ADD:stoneColor:6:0:0]
  488. [ADD:stoneColor:0:0:1]
  489. [ADD:stoneColor:7:0:1]
  490. [ADD:stoneColor:7:0:1]
  491. [ADD:stoneColor:6:0:0]
  492. [ADD:stoneColor:7:0:1]
  493. [ADD:stoneColor:7:0:0]
  494. [ADD:stoneColor:0:0:1]
  495. [ADD:stoneColor:0:0:1]
  496. [ADD:stoneColor:0:0:1]
  497. [ADD:stoneColor:0:0:1]
  498. [ADD:stoneColor:0:0:1]
  499. [ADD:stoneColor:0:0:1]
  500. [ADD:stoneColor:0:0:1]
  501. [ADD:stoneColor:7:0:1]
  502. [ADD:stoneColor:0:0:1]
  503. [ADD:stoneColor:0:0:1]
  504. [ADD:stoneColor:6:0:0]
  505. [ADD:stoneColor:7:0:1]
  506. [ADD:stoneColor:7:0:1]
  507.  
  508. [LIST:metalName]
  509. [ADD:metalName:iron]
  510. [ADD:metalName:gold]
  511. [ADD:metalName:silver]
  512. [ADD:metalName:copper]
  513. [ADD:metalName:nickel]
  514. [ADD:metalName:zinc]
  515. [ADD:metalName:bronze]
  516. [ADD:metalName:brass]
  517. [ADD:metalName:steel]
  518. [ADD:metalName:platinum]
  519. [ADD:metalName:tin]
  520. [ADD:metalName:lead]
  521. [ADD:metalName:aluminum]
  522.  
  523. [LIST:metalID]
  524. [ADD:metalID:IRON]
  525. [ADD:metalID:GOLD]
  526. [ADD:metalID:SILVER]
  527. [ADD:metalID:COPPER]
  528. [ADD:metalID:NICKEL]
  529. [ADD:metalID:ZINC]
  530. [ADD:metalID:BRONZE]
  531. [ADD:metalID:BRASS]
  532. [ADD:metalID:STEEL]
  533. [ADD:metalID:PLATINUM]
  534. [ADD:metalID:TIN]
  535. [ADD:metalID:LEAD]
  536. [ADD:metalID:ALUMINUM]
  537.  
  538. [LIST:metalColor]
  539. [ADD:metalColor:0:0:1]
  540. [ADD:metalColor:6:0:1]
  541. [ADD:metalColor:7:0:1]
  542. [ADD:metalColor:6:0:0]
  543. [ADD:metalColor:7:0:0]
  544. [ADD:metalColor:7:0:0]
  545. [ADD:metalColor:6:0:0]
  546. [ADD:metalColor:6:0:1]
  547. [ADD:metalColor:0:0:1]
  548. [ADD:metalColor:7:0:1]
  549. [ADD:metalColor:7:0:0]
  550. [ADD:metalColor:0:0:1]
  551. [ADD:metalColor:7:0:1]
  552.  
  553. [LIST:skullList]
  554. [ADD:thick] As of now you can just say "add" so long as you remember to keep it in the same area as the place the list is defined.
  555. [ADD:large]
  556. [ADD:strong]
  557. [ADD:thin]
  558. [ADD:small]
  559. [ADD:weak]
  560.  
  561. [LIST:neckList]
  562. [ADD:thick]
  563. [ADD:long]
  564. [ADD:dexterous]
  565. [ADD:thin]
  566. [ADD:short]
  567. [ADD:stiff]
  568.  
  569. [LIST:earList]
  570. [ADD:small]
  571. [ADD:large]
  572. [ADD:tiny]
  573. [ADD:huge]
  574. [ADD:long]
  575. [ADD:short]
  576. [ADD:pointed]
  577. [ADD:tall] this is a test comment
  578. [ADD:flat]
  579. [ADD:cute]
  580. [ADD:drooping]
  581.  
  582. [LIST:beakList]
  583. [ADD:(neckList)]
  584. [ADD:(skullList)]
  585. [ADD:curved]
  586. [ADD:straight]
  587. [ADD:long]
  588. [ADD:short]
  589. [ADD:(earList)]
  590.  
  591. [LIST:tentacleList]
  592. [ADD:(largeNumber) tentacle-like arms] This line is beautiful. when calling this line it'll pull a random one from the associated list.
  593. [ADD:(largeNumber) waving tentacles]
  594. [ADD:(largeNumber) long tentacles]
  595. [ADD:(largeNumber) senewy tentacles]
  596. [ADD:(largeNumber) suckered tentacles]
  597.  
  598. [LIST:toothList1]
  599. [ADD:rows of ]
  600. [ADD:a mouth full of ]
  601. [ADD:a face full of ]
  602. [ADD:a row of ]
  603. [ADD:(largeNumber) ]
  604. [ADD: ](yes, it's blank)
  605.  
  606. [LIST:oceanList]
  607. [ADD:marine]
  608. [ADD:underwater]
  609. [ADD:sea]
  610. [ADD:oceanic]
  611. [ADD:ocean]
  612.  
  613. [LIST:toothList2]
  614. [ADD:blunted]
  615. [ADD:dull]
  616. [ADD:short]
  617. [ADD:razor-like]
  618. [ADD:shark]
  619. [ADD:incredibly long]
  620. [ADD:incredibly sharp]
  621. [ADD:shark-like]
  622. [ADD:razor-sharp]
  623. [ADD:dangerous]
  624. [ADD:sharp]
  625.  
  626. [LIST:eyeAdj]
  627. [ADD:small ]
  628. [ADD:large ]
  629. [ADD:tiny ]
  630. [ADD:huge ]
  631. [ADD:deep ]
  632. [ADD:glassy ]
  633. [ADD:cute ]
  634. [ADD:scary ]
  635.  
  636. [LIST:strangeList1]
  637. [ADD:horrifying]
  638. [ADD:alarming]
  639. [ADD:appalling]
  640. [ADD:daunting]
  641. [ADD:disgusting]
  642. [ADD:dismaying]
  643. [ADD:frightening]
  644. [ADD:intimidating]
  645. [ADD:outrageous]
  646. [ADD:petrifying]
  647. [ADD:shocking]
  648. [ADD:sickening]
  649. [ADD:terrifying]
  650.  
  651. [LIST:strangeList2]
  652. [ADD:freakish]
  653. [ADD:bizarre]
  654. [ADD:freaky]
  655. [ADD:grotesque]
  656. [ADD:odd]
  657. [ADD:strange]
  658. [ADD:weird]
  659. [ADD:outlandish]
  660.  
  661. [LIST:largeNumber]
  662. [ADD:many]
  663. [ADD:multiple]
  664. [ADD:numerous]
  665. [ADD:countless]
  666. [ADD:innumerable]
  667. [ADD:myriad of]
  668. [ADD:numberless]
  669. [ADD:uncounted]
  670.  
  671. [LIST:mouthAdj]
  672. [ADD:gaping]
  673. [ADD:cavernous]
  674. [ADD:broad]
  675. [ADD:great]
  676. [ADD:wide]
  677. [ADD:(strangeList2)]
  678. [ADD:tiny]
  679. [ADD:small]
  680. [ADD:(strangeList1)]
  681. [ADD:large]
  682. [ADD:deep]
  683. [ADD:expansive]
  684. [ADD:weak]
  685.  
  686. [LIST:mouthlessCreature] I added a lot.
  687. [ADD:is said to feed on evil alone]
  688. [ADD:absorbs nutrients through its skin]
  689. [ADD:feeds on fear]
  690. [ADD:is a very mysterious creature]
  691. [ADD:is said to feed on fear]
  692. [ADD:is said to be very mysterious]
  693. [ADD:is unexplained by science]
  694. [ADD:saps the life from those around it]
  695. [ADD:is said to feed on sources of heat]
  696.  
  697. [LIST:soundList1]
  698. [ADD:resounding]
  699. [ADD:earsplitting]
  700. [ADD:electrifying]
  701. [ADD:emphatic]
  702. [ADD:forceful]
  703. [ADD:loud]
  704. [ADD:ringing]
  705. [ADD:roaring]
  706. [ADD:thundering]
  707. [ADD:thunderous]
  708. [ADD:booming]
  709. [ADD:deep]
  710. [ADD:noisy]
  711.  
  712. [LIST:soundList2]
  713. [ADD:hoots]
  714. [ADD:hisses]
  715. [ADD:howls]
  716. [ADD:screams]
  717. [ADD:whistling]
  718. [ADD:calls]
  719.  
  720. [LIST:randomPriority]
  721. [ADD:MAIN]
  722. [ADD:SECOND]
  723.  
  724. [LIST:tailList]
  725. [ADD:a long prehensile]
  726. [ADD:an enormous]
  727. [ADD:a (beakList)]
  728.  
  729. [LIST:hornList]
  730. [ADD:large horns]
  731. [ADD:short horns]
  732. [ADD:long curved horns]
  733. [ADD:curving horns]
  734. [ADD:long thin horns]
  735. [ADD:thick horns]
  736. [ADD:spiral horns]
  737. [ADD:needle-like horns]
  738. [ADD:spiraling horns]
  739. [ADD:small horns]
  740. [ADD:short curved horns]
  741. [ADD:long thick horns]
  742. [ADD:short thin horns]
  743. [ADD:short thick horns]
  744. [ADD:long straight horns]
  745. [ADD:short straight horns]
  746.  
  747. [LIST:randomSphere] A carefully-made list of spheres, chosen specifically to be good megabeast attributes.
  748. [ADD:BIRTH]
  749. [ADD:BLIGHT]
  750. [ADD:CAVERNS]
  751. [ADD:CHAOS]
  752. [ADD:CHILDREN]
  753. [ADD:CRAFTS]
  754. [ADD:CREATION]
  755. [ADD:DARKNESS]
  756. [ADD:DEATH]
  757. [ADD:DEFORMITY]
  758. [ADD:DISEASE]
  759. [ADD:DREAMS]
  760. [ADD:EARTH]
  761. [ADD:FAMILY]
  762. [ADD:FIRE]
  763. [ADD:FISH]
  764. [ADD:FISHING]
  765. [ADD:FORTRESSES]
  766. [ADD:HUNTING]
  767. [ADD:JEWELS]
  768. [ADD:LABOR]
  769. [ADD:LIGHTNING]
  770. [ADD:MARRIAGE]
  771. [ADD:METALS]
  772. [ADD:MINERALS]
  773. [ADD:MOON]
  774. [ADD:MOUNTAINS]
  775. [ADD:MUCK]
  776. [ADD:MURDER]
  777. [ADD:NATURE]
  778. [ADD:NIGHT]
  779. [ADD:NIGHTMARES]
  780. [ADD:PERSUASION]
  781. [ADD:PLANTS]
  782. [ADD:POETRY]
  783. [ADD:PREGNANCY]
  784. [ADD:RAIN]
  785. [ADD:REBIRTH]
  786. [ADD:SKY]
  787. [ADD:SPEECH]
  788. [ADD:STARS]
  789. [ADD:STORMS]
  790. [ADD:STRENGTH]
  791. [ADD:SUICIDE]
  792. [ADD:THEFT]
  793. [ADD:THUNDER]
  794. [ADD:TRADE]
  795. [ADD:TREES]
  796. [ADD:VALOR]
  797. [ADD:VICTORY]
  798. [ADD:VOLCANOS]
  799. [ADD:WAR]
  800. [ADD:WEALTH]
  801. [ADD:WEATHER]
  802. [ADD:WIND]
  803.  
  804. [LIST:biomeLocale]adding nothing to this list - it all gets added later.
  805.  
  806. =======Biome info=======
  807. Biome stuff.
  808. All of these are default vanilla values, extracted from the original raws with a program I threw together.
  809. I excluded the rarest combinations for the sake of keeping this short.
  810. Therefore, if something happens only once in the raws, RandCreatures won't imitate it.
  811. In the old version, biomes were chosen at random, though weighted.
  812. That means a creature could be found in two completely different biomes, like frozen tundra and jungle.
  813. This fixes that. And you have full access to it - congrats. :)
  814.  
  815.  
  816. biome starter:tag to add to raws:weight against other starter tags
  817. the 2 is the chance to add alongside above biome tag; in this case 2*(100/11)%, or about an 18% chance.
  818. [BIOME:ANY_POOL:11]
  819. [ANY_LAKE:2]
  820. [NOT_FREEZING:2]
  821. [X]
  822. [BIOME:FOREST_TAIGA:19]
  823. [GRASSLAND_TEMPERATE:5]
  824. [SAVANNA_TEMPERATE:5]
  825. [SHRUBLAND_TEMPERATE:7]
  826. [ANY_TEMPERATE_FOREST:14]
  827. [ANY_DESERT:4]
  828. [MOUNTAIN:3]
  829. [TUNDRA:6]
  830. [ANY_TEMPERATE_WETLAND:3]
  831. [X]
  832. [BIOME:ANY_TROPICAL:5]
  833. [DESERT_BADLAND:4]
  834. [DESERT_ROCK:4]
  835. [DESERT_SAND:4]
  836.  
  837. [BIOME:GRASSLAND_TEMPERATE:27]
  838. [FOREST_TAIGA:5]
  839. [SAVANNA_TEMPERATE:24]
  840. [SHRUBLAND_TEMPERATE:20]
  841. [FOREST_TEMPERATE_BROADLEAF:3]
  842. [FOREST_TEMPERATE_CONIFER:3]
  843. [MARSH_TEMPERATE_FRESHWATER:2]
  844. [MARSH_TEMPERATE_SALTWATER:2]
  845. [ANY_TEMPERATE_FOREST:9]
  846. [ANY_DESERT:7]
  847. [TUNDRA:5]
  848. [SAVANNA_TROPICAL:2]
  849. [GRASSLAND_TROPICAL:2]
  850. [ANY_TEMPERATE_WETLAND:4]
  851. [SHRUBLAND_TROPICAL:2]
  852.  
  853. [BIOME:SAVANNA_TEMPERATE:25]
  854. [FOREST_TAIGA:5]
  855. [GRASSLAND_TEMPERATE:24]
  856. [SHRUBLAND_TEMPERATE:21]
  857. [FOREST_TEMPERATE_BROADLEAF:3]
  858. [FOREST_TEMPERATE_CONIFER:3]
  859. [MARSH_TEMPERATE_FRESHWATER:2]
  860. [MARSH_TEMPERATE_SALTWATER:2]
  861. [ANY_TEMPERATE_FOREST:9]
  862. [ANY_DESERT:6]
  863. [TUNDRA:3]
  864. [SAVANNA_TROPICAL:2]
  865. [GRASSLAND_TROPICAL:2]
  866. [ANY_TEMPERATE_WETLAND:4]
  867. [SHRUBLAND_TROPICAL:2]
  868.  
  869. [BIOME:SHRUBLAND_TEMPERATE:30]
  870. [FOREST_TAIGA:7]
  871. [GRASSLAND_TEMPERATE:20]
  872. [SAVANNA_TEMPERATE:21]
  873. [FOREST_TEMPERATE_BROADLEAF:3]
  874. [FOREST_TEMPERATE_CONIFER:3]
  875. [ANY_TEMPERATE_FOREST:18]
  876. [ANY_DESERT:6]
  877. [MOUNTAIN:4]
  878. [TUNDRA:4]
  879. [SAVANNA_TROPICAL:2]
  880. [GRASSLAND_TROPICAL:2]
  881. [ANY_TEMPERATE_WETLAND:4]
  882. [ANY_TROPICAL_FOREST:2]
  883. [SHRUBLAND_TROPICAL:4]
  884.  
  885. [BIOME:FOREST_TEMPERATE_BROADLEAF:9]
  886. [GRASSLAND_TEMPERATE:3]
  887. [SAVANNA_TEMPERATE:3]
  888. [SHRUBLAND_TEMPERATE:3]
  889. [FOREST_TEMPERATE_CONIFER:2]
  890. [FOREST_TROPICAL_CONIFER:2]
  891. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  892.  
  893. [BIOME:FOREST_TEMPERATE_CONIFER:3]
  894. [GRASSLAND_TEMPERATE:3]
  895. [SAVANNA_TEMPERATE:3]
  896. [SHRUBLAND_TEMPERATE:3]
  897. [FOREST_TEMPERATE_BROADLEAF:2]
  898.  
  899. [BIOME:MARSH_TEMPERATE_FRESHWATER:9]
  900. [GRASSLAND_TEMPERATE:2]
  901. [SAVANNA_TEMPERATE:2]
  902. [MARSH_TEMPERATE_SALTWATER:7]
  903. [MARSH_TROPICAL_FRESHWATER:6]
  904. [MARSH_TROPICAL_SALTWATER:5]
  905. [SWAMP_TEMPERATE_FRESHWATER:3]
  906. [SWAMP_TROPICAL_FRESHWATER:2]
  907.  
  908. [BIOME:MARSH_TEMPERATE_SALTWATER:7]
  909. [GRASSLAND_TEMPERATE:2]
  910. [SAVANNA_TEMPERATE:2]
  911. [MARSH_TEMPERATE_FRESHWATER:7]
  912. [MARSH_TROPICAL_FRESHWATER:5]
  913. [MARSH_TROPICAL_SALTWATER:5]
  914.  
  915. [BIOME:OCEAN_ARCTIC:22]
  916. [OCEAN_TEMPERATE:13]
  917. [RIVER_TEMPERATE_FRESHWATER:4]
  918. [RIVER_TEMPERATE_BRACKISHWATER:4]
  919. [RIVER_TEMPERATE_SALTWATER:4]
  920.  
  921. [BIOME:ANY_WETLAND:9]
  922. [ANY_TEMPERATE_FOREST:3]
  923. [FOREST_TROPICAL_CONIFER:2]
  924. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  925. [ANY_SHRUBLAND:6]
  926. [ANY_SAVANNA:6]
  927. [ANY_GRASSLAND:7]
  928. [ANY_DESERT:5]
  929. [MOUNTAIN:2]
  930. [TUNDRA:2]
  931. [ANY_FOREST:3]
  932.  
  933. [BIOME:ANY_TEMPERATE_FOREST:38]
  934. [FOREST_TAIGA:14]
  935. [GRASSLAND_TEMPERATE:9]
  936. [SAVANNA_TEMPERATE:9]
  937. [SHRUBLAND_TEMPERATE:18]
  938. [ANY_WETLAND:3]
  939. [FOREST_TROPICAL_CONIFER:2]
  940. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  941. [ANY_SHRUBLAND:3]
  942. [ANY_SAVANNA:3]
  943. [ANY_GRASSLAND:3]
  944. [ANY_DESERT:7]
  945. [MOUNTAIN:5]
  946. [TUNDRA:4]
  947. [ANY_TEMPERATE_WETLAND:4]
  948. [ANY_TROPICAL_FOREST:5]
  949. [SHRUBLAND_TROPICAL:2]
  950.  
  951. [BIOME:FOREST_TROPICAL_CONIFER:5]
  952. [FOREST_TEMPERATE_BROADLEAF:2]
  953. [ANY_WETLAND:2]
  954. [ANY_TEMPERATE_FOREST:2]
  955. [FOREST_TROPICAL_DRY_BROADLEAF:4]
  956. [ANY_SHRUBLAND:2]
  957. [ANY_SAVANNA:2]
  958. [ANY_GRASSLAND:2]
  959. [ANY_DESERT:3]
  960.  
  961. [BIOME:FOREST_TROPICAL_DRY_BROADLEAF:7]
  962. [FOREST_TEMPERATE_BROADLEAF:2]
  963. [ANY_WETLAND:2]
  964. [ANY_TEMPERATE_FOREST:2]
  965. [FOREST_TROPICAL_CONIFER:4]
  966. [ANY_SHRUBLAND:2]
  967. [ANY_SAVANNA:2]
  968. [ANY_GRASSLAND:2]
  969. [ANY_DESERT:2]
  970. [FOREST_TROPICAL_MOIST_BROADLEAF:3]
  971.  
  972. [BIOME:ANY_SHRUBLAND:9]
  973. [ANY_WETLAND:6]
  974. [ANY_TEMPERATE_FOREST:3]
  975. [FOREST_TROPICAL_CONIFER:2]
  976. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  977. [ANY_SAVANNA:9]
  978. [ANY_GRASSLAND:9]
  979. [ANY_DESERT:7]
  980. [MOUNTAIN:3]
  981. [TUNDRA:3]
  982. [ANY_FOREST:5]
  983.  
  984. [BIOME:ANY_SAVANNA:9]
  985. [ANY_WETLAND:6]
  986. [ANY_TEMPERATE_FOREST:3]
  987. [FOREST_TROPICAL_CONIFER:2]
  988. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  989. [ANY_SHRUBLAND:9]
  990. [ANY_GRASSLAND:9]
  991. [ANY_DESERT:7]
  992. [MOUNTAIN:3]
  993. [TUNDRA:3]
  994. [ANY_FOREST:5]
  995.  
  996. [BIOME:ANY_GRASSLAND:11]
  997. [ANY_WETLAND:7]
  998. [ANY_TEMPERATE_FOREST:3]
  999. [FOREST_TROPICAL_CONIFER:2]
  1000. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  1001. [ANY_SHRUBLAND:9]
  1002. [ANY_SAVANNA:9]
  1003. [ANY_DESERT:8]
  1004. [MOUNTAIN:3]
  1005. [TUNDRA:3]
  1006. [ANY_FOREST:5]
  1007.  
  1008. [BIOME:ANY_DESERT:27]
  1009. [FOREST_TAIGA:4]
  1010. [GRASSLAND_TEMPERATE:7]
  1011. [SAVANNA_TEMPERATE:6]
  1012. [SHRUBLAND_TEMPERATE:6]
  1013. [ANY_WETLAND:5]
  1014. [ANY_TEMPERATE_FOREST:7]
  1015. [FOREST_TROPICAL_CONIFER:3]
  1016. [FOREST_TROPICAL_DRY_BROADLEAF:2]
  1017. [ANY_SHRUBLAND:7]
  1018. [ANY_SAVANNA:7]
  1019. [ANY_GRASSLAND:8]
  1020. [MOUNTAIN:6]
  1021. [TUNDRA:6]
  1022. [SAVANNA_TROPICAL:4]
  1023. [GRASSLAND_TROPICAL:4]
  1024. [ANY_TEMPERATE_WETLAND:2]
  1025. [ANY_TROPICAL_FOREST:2]
  1026. [SHRUBLAND_TROPICAL:2]
  1027. [SWAMP_MANGROVE:2]
  1028. [ANY_FOREST:5]
  1029.  
  1030. [BIOME:MOUNTAIN:17]
  1031. [FOREST_TAIGA:3]
  1032. [SHRUBLAND_TEMPERATE:4]
  1033. [ANY_WETLAND:2]
  1034. [ANY_TEMPERATE_FOREST:5]
  1035. [ANY_SHRUBLAND:3]
  1036. [ANY_SAVANNA:3]
  1037. [ANY_GRASSLAND:3]
  1038. [ANY_DESERT:6]
  1039. [TUNDRA:5]
  1040. [SWAMP_MANGROVE:2]
  1041. [ANY_FOREST:3]
  1042.  
  1043. [BIOME:TUNDRA:17]
  1044. [FOREST_TAIGA:6]
  1045. [GRASSLAND_TEMPERATE:5]
  1046. [SAVANNA_TEMPERATE:3]
  1047. [SHRUBLAND_TEMPERATE:4]
  1048. [ANY_WETLAND:2]
  1049. [ANY_TEMPERATE_FOREST:4]
  1050. [ANY_SHRUBLAND:3]
  1051. [ANY_SAVANNA:3]
  1052. [ANY_GRASSLAND:3]
  1053. [ANY_DESERT:6]
  1054. [MOUNTAIN:5]
  1055. [ANY_TEMPERATE_WETLAND:2]
  1056. [ANY_FOREST:2]
  1057. [GLACIER:4]
  1058.  
  1059. [BIOME:SAVANNA_TROPICAL:27]
  1060. [GRASSLAND_TEMPERATE:2]
  1061. [SAVANNA_TEMPERATE:2]
  1062. [SHRUBLAND_TEMPERATE:2]
  1063. [ANY_DESERT:4]
  1064. [GRASSLAND_TROPICAL:23]
  1065. [ANY_TROPICAL_FOREST:7]
  1066. [SHRUBLAND_TROPICAL:22]
  1067.  
  1068. [BIOME:GRASSLAND_TROPICAL:23]
  1069. [GRASSLAND_TEMPERATE:2]
  1070. [SAVANNA_TEMPERATE:2]
  1071. [SHRUBLAND_TEMPERATE:2]
  1072. [ANY_DESERT:4]
  1073. [SAVANNA_TROPICAL:23]
  1074. [ANY_TROPICAL_FOREST:6]
  1075. [SHRUBLAND_TROPICAL:18]
  1076.  
  1077. [BIOME:ANY_TEMPERATE_WETLAND:4]
  1078. [FOREST_TAIGA:3]
  1079. [GRASSLAND_TEMPERATE:4]
  1080. [SAVANNA_TEMPERATE:4]
  1081. [SHRUBLAND_TEMPERATE:4]
  1082. [ANY_TEMPERATE_FOREST:4]
  1083. [ANY_DESERT:2]
  1084. [TUNDRA:2]
  1085.  
  1086. [BIOME:FOREST_TROPICAL_MOIST_BROADLEAF:25]
  1087. [FOREST_TROPICAL_DRY_BROADLEAF:3]
  1088. [SHRUBLAND_TROPICAL:2]
  1089. [SWAMP_MANGROVE:2]
  1090.  
  1091. [BIOME:ANY_TROPICAL_FOREST:21]
  1092. [SHRUBLAND_TEMPERATE:2]
  1093. [ANY_TEMPERATE_FOREST:5]
  1094. [ANY_DESERT:2]
  1095. [SAVANNA_TROPICAL:7]
  1096. [GRASSLAND_TROPICAL:6]
  1097. [SHRUBLAND_TROPICAL:11]
  1098. [SWAMP_MANGROVE:4]
  1099. [SWAMP_TROPICAL_FRESHWATER:2]
  1100. [SWAMP_TROPICAL_SALTWATER:2]
  1101.  
  1102. [BIOME:LAKE_TEMPERATE_SALTWATER:3]
  1103. [LAKE_TEMPERATE_BRACKISHWATER:3]
  1104. [LAKE_TEMPERATE_FRESHWATER:3]
  1105. [RIVER_TEMPERATE_FRESHWATER:2]
  1106. [RIVER_TEMPERATE_BRACKISHWATER:2]
  1107. [RIVER_TEMPERATE_SALTWATER:2]
  1108.  
  1109. [BIOME:LAKE_TEMPERATE_BRACKISHWATER:10]
  1110. [LAKE_TEMPERATE_SALTWATER:3]
  1111. [LAKE_TEMPERATE_FRESHWATER:10]
  1112. [RIVER_TEMPERATE_FRESHWATER:6]
  1113. [RIVER_TEMPERATE_BRACKISHWATER:6]
  1114. [RIVER_TEMPERATE_SALTWATER:2]
  1115. [POOL_TEMPERATE_FRESHWATER:2]
  1116. [POOL_TEMPERATE_BRACKISHWATER:2]
  1117.  
  1118. [BIOME:LAKE_TEMPERATE_FRESHWATER:15]
  1119. [LAKE_TEMPERATE_SALTWATER:3]
  1120. [LAKE_TEMPERATE_BRACKISHWATER:10]
  1121. [RIVER_TEMPERATE_FRESHWATER:10]
  1122. [RIVER_TEMPERATE_BRACKISHWATER:6]
  1123. [RIVER_TEMPERATE_SALTWATER:2]
  1124. [POOL_TEMPERATE_FRESHWATER:3]
  1125. [POOL_TEMPERATE_BRACKISHWATER:2]
  1126.  
  1127. [BIOME:SHRUBLAND_TROPICAL:29]
  1128. [GRASSLAND_TEMPERATE:2]
  1129. [SAVANNA_TEMPERATE:2]
  1130. [SHRUBLAND_TEMPERATE:4]
  1131. [ANY_TEMPERATE_FOREST:2]
  1132. [ANY_DESERT:2]
  1133. [SAVANNA_TROPICAL:22]
  1134. [GRASSLAND_TROPICAL:18]
  1135. [FOREST_TROPICAL_MOIST_BROADLEAF:2]
  1136. [ANY_TROPICAL_FOREST:11]
  1137. [SWAMP_MANGROVE:2]
  1138. [SWAMP_TROPICAL_FRESHWATER:2]
  1139. [SWAMP_TROPICAL_SALTWATER:2]
  1140.  
  1141. [BIOME:ANY_TEMPERATE_LAKE:4]
  1142. [ANY_TEMPERATE_MARSH:2]
  1143. [ANY_TEMPERATE_RIVER:2]
  1144.  
  1145. [BIOME:ANY_TEMPERATE_MARSH:2]
  1146. [ANY_TEMPERATE_LAKE:2]
  1147.  
  1148. [BIOME:SWAMP_MANGROVE:10]
  1149. [ANY_DESERT:2]
  1150. [MOUNTAIN:2]
  1151. [FOREST_TROPICAL_MOIST_BROADLEAF:2]
  1152. [ANY_TROPICAL_FOREST:4]
  1153. [SHRUBLAND_TROPICAL:2]
  1154. [ANY_FOREST:2]
  1155. [MARSH_TROPICAL_FRESHWATER:2]
  1156. [MARSH_TROPICAL_SALTWATER:2]
  1157. [SWAMP_TEMPERATE_FRESHWATER:2]
  1158. [SWAMP_TROPICAL_FRESHWATER:6]
  1159. [SWAMP_TROPICAL_SALTWATER:6]
  1160.  
  1161. [BIOME:ANY_FOREST:6]
  1162. [ANY_WETLAND:3]
  1163. [ANY_SHRUBLAND:5]
  1164. [ANY_SAVANNA:5]
  1165. [ANY_GRASSLAND:5]
  1166. [ANY_DESERT:5]
  1167. [MOUNTAIN:3]
  1168. [TUNDRA:2]
  1169. [SWAMP_MANGROVE:2]
  1170.  
  1171. [BIOME:ANY_OCEAN:18]
  1172. [ANY_LAKE:3]
  1173. [ANY_RIVER:3]
  1174.  
  1175. [BIOME:ANY_LAKE:6]
  1176. [ANY_POOL:2]
  1177. [ANY_OCEAN:3]
  1178. [ANY_RIVER:4]
  1179.  
  1180. [BIOME:ANY_RIVER:5]
  1181. [ANY_OCEAN:3]
  1182. [ANY_LAKE:4]
  1183.  
  1184. [BIOME:MARSH_TROPICAL_FRESHWATER:7]
  1185. [MARSH_TEMPERATE_FRESHWATER:6]
  1186. [MARSH_TEMPERATE_SALTWATER:5]
  1187. [SWAMP_MANGROVE:2]
  1188. [MARSH_TROPICAL_SALTWATER:6]
  1189. [RIVER_TROPICAL_FRESHWATER:2]
  1190. [RIVER_TROPICAL_BRACKISHWATER:2]
  1191. [SWAMP_TEMPERATE_FRESHWATER:2]
  1192. [SWAMP_TROPICAL_FRESHWATER:3]
  1193. [SWAMP_TROPICAL_SALTWATER:2]
  1194.  
  1195. [BIOME:MARSH_TROPICAL_SALTWATER:6]
  1196. [MARSH_TEMPERATE_FRESHWATER:5]
  1197. [MARSH_TEMPERATE_SALTWATER:5]
  1198. [SWAMP_MANGROVE:2]
  1199. [MARSH_TROPICAL_FRESHWATER:6]
  1200. [SWAMP_TROPICAL_FRESHWATER:2]
  1201. [SWAMP_TROPICAL_SALTWATER:2]
  1202.  
  1203. [BIOME:NOT_FREEZING:28]
  1204. [ANY_POOL:2]
  1205.  
  1206. [BIOME:OCEAN_TEMPERATE:39]
  1207. [OCEAN_ARCTIC:13]
  1208. [RIVER_TEMPERATE_FRESHWATER:6]
  1209. [RIVER_TEMPERATE_BRACKISHWATER:6]
  1210. [RIVER_TEMPERATE_SALTWATER:6]
  1211. [OCEAN_TROPICAL:17]
  1212.  
  1213. [BIOME:ANY_TROPICAL_WETLAND:3]
  1214.  
  1215. [BIOME:ANY_TEMPERATE_SWAMP:2]
  1216.  
  1217. [BIOME:ANY_TEMPERATE:1]
  1218. [FOREST_TAIGA:1]
  1219. [ANY_TROPICAL:1]
  1220.  
  1221. [BIOME:RIVER_TEMPERATE_FRESHWATER:16]
  1222. [OCEAN_ARCTIC:4]
  1223. [LAKE_TEMPERATE_SALTWATER:2]
  1224. [LAKE_TEMPERATE_BRACKISHWATER:6]
  1225. [LAKE_TEMPERATE_FRESHWATER:10]
  1226. [OCEAN_TEMPERATE:6]
  1227. [RIVER_TEMPERATE_BRACKISHWATER:12]
  1228. [RIVER_TEMPERATE_SALTWATER:7]
  1229. [RIVER_TROPICAL_FRESHWATER:2]
  1230. [POOL_TEMPERATE_FRESHWATER:2]
  1231. [POOL_TEMPERATE_BRACKISHWATER:2]
  1232.  
  1233. [BIOME:RIVER_TEMPERATE_BRACKISHWATER:12]
  1234. [OCEAN_ARCTIC:4]
  1235. [LAKE_TEMPERATE_SALTWATER:2]
  1236. [LAKE_TEMPERATE_BRACKISHWATER:6]
  1237. [LAKE_TEMPERATE_FRESHWATER:6]
  1238. [OCEAN_TEMPERATE:6]
  1239. [RIVER_TEMPERATE_FRESHWATER:12]
  1240. [RIVER_TEMPERATE_SALTWATER:7]
  1241. [POOL_TEMPERATE_FRESHWATER:2]
  1242. [POOL_TEMPERATE_BRACKISHWATER:2]
  1243.  
  1244. [BIOME:RIVER_TEMPERATE_SALTWATER:7]
  1245. [OCEAN_ARCTIC:4]
  1246. [LAKE_TEMPERATE_SALTWATER:2]
  1247. [LAKE_TEMPERATE_BRACKISHWATER:2]
  1248. [LAKE_TEMPERATE_FRESHWATER:2]
  1249. [OCEAN_TEMPERATE:6]
  1250. [RIVER_TEMPERATE_FRESHWATER:7]
  1251. [RIVER_TEMPERATE_BRACKISHWATER:7]
  1252.  
  1253. [BIOME:OCEAN_TROPICAL:31]
  1254. [OCEAN_TEMPERATE:17]
  1255. [RIVER_TROPICAL_FRESHWATER:2]
  1256. [RIVER_TROPICAL_BRACKISHWATER:2]
  1257. [RIVER_TROPICAL_SALTWATER:2]
  1258. [LAKE_TROPICAL_FRESHWATER:2]
  1259. [LAKE_TROPICAL_BRACKISHWATER:2]
  1260. [LAKE_TROPICAL_SALTWATER:2]
  1261.  
  1262. [BIOME:RIVER_TROPICAL_FRESHWATER:11]
  1263. [MARSH_TROPICAL_FRESHWATER:2]
  1264. [RIVER_TEMPERATE_FRESHWATER:2]
  1265. [OCEAN_TROPICAL:2]
  1266. [RIVER_TROPICAL_BRACKISHWATER:7]
  1267. [RIVER_TROPICAL_SALTWATER:6]
  1268. [LAKE_TROPICAL_FRESHWATER:9]
  1269. [LAKE_TROPICAL_BRACKISHWATER:5]
  1270. [LAKE_TROPICAL_SALTWATER:5]
  1271. [SWAMP_TROPICAL_FRESHWATER:2]
  1272.  
  1273. [BIOME:RIVER_TROPICAL_BRACKISHWATER:7]
  1274. [MARSH_TROPICAL_FRESHWATER:2]
  1275. [OCEAN_TROPICAL:2]
  1276. [RIVER_TROPICAL_FRESHWATER:7]
  1277. [RIVER_TROPICAL_SALTWATER:6]
  1278. [LAKE_TROPICAL_FRESHWATER:5]
  1279. [LAKE_TROPICAL_BRACKISHWATER:5]
  1280. [LAKE_TROPICAL_SALTWATER:5]
  1281. [SWAMP_TROPICAL_FRESHWATER:2]
  1282.  
  1283. [BIOME:RIVER_TROPICAL_SALTWATER:6]
  1284. [OCEAN_TROPICAL:2]
  1285. [RIVER_TROPICAL_FRESHWATER:6]
  1286. [RIVER_TROPICAL_BRACKISHWATER:6]
  1287. [LAKE_TROPICAL_FRESHWATER:5]
  1288. [LAKE_TROPICAL_BRACKISHWATER:5]
  1289. [LAKE_TROPICAL_SALTWATER:5]
  1290.  
  1291. [BIOME:LAKE_TROPICAL_FRESHWATER:10]
  1292. [OCEAN_TROPICAL:2]
  1293. [RIVER_TROPICAL_FRESHWATER:9]
  1294. [RIVER_TROPICAL_BRACKISHWATER:5]
  1295. [RIVER_TROPICAL_SALTWATER:5]
  1296. [LAKE_TROPICAL_BRACKISHWATER:6]
  1297. [LAKE_TROPICAL_SALTWATER:6]
  1298.  
  1299. [BIOME:LAKE_TROPICAL_BRACKISHWATER:6]
  1300. [OCEAN_TROPICAL:2]
  1301. [RIVER_TROPICAL_FRESHWATER:5]
  1302. [RIVER_TROPICAL_BRACKISHWATER:5]
  1303. [RIVER_TROPICAL_SALTWATER:5]
  1304. [LAKE_TROPICAL_FRESHWATER:6]
  1305. [LAKE_TROPICAL_SALTWATER:6]
  1306.  
  1307. [BIOME:LAKE_TROPICAL_SALTWATER:6]
  1308. [OCEAN_TROPICAL:2]
  1309. [RIVER_TROPICAL_FRESHWATER:5]
  1310. [RIVER_TROPICAL_BRACKISHWATER:5]
  1311. [RIVER_TROPICAL_SALTWATER:5]
  1312. [LAKE_TROPICAL_FRESHWATER:6]
  1313. [LAKE_TROPICAL_BRACKISHWATER:6]
  1314. [X]
  1315. [BIOME:SWAMP_TEMPERATE_FRESHWATER:4]
  1316. [MARSH_TEMPERATE_FRESHWATER:3]
  1317. [SWAMP_MANGROVE:2]
  1318. [MARSH_TROPICAL_FRESHWATER:2]
  1319. [SWAMP_TROPICAL_FRESHWATER:3]
  1320. [SWAMP_TROPICAL_SALTWATER:2]
  1321. [X]
  1322. [BIOME:SWAMP_TROPICAL_FRESHWATER:7]
  1323. [MARSH_TEMPERATE_FRESHWATER:2]
  1324. [ANY_TROPICAL_FOREST:2]
  1325. [SHRUBLAND_TROPICAL:2]
  1326. [SWAMP_MANGROVE:6]
  1327. [MARSH_TROPICAL_FRESHWATER:3]
  1328. [MARSH_TROPICAL_SALTWATER:2]
  1329. [RIVER_TROPICAL_FRESHWATER:2]
  1330. [RIVER_TROPICAL_BRACKISHWATER:2]
  1331. [SWAMP_TEMPERATE_FRESHWATER:3]
  1332. [SWAMP_TROPICAL_SALTWATER:6]
  1333. [X]
  1334. [BIOME:DESERT_BADLAND:5]
  1335. [ANY_TROPICAL:4]
  1336. [DESERT_ROCK:5]
  1337. [DESERT_SAND:5]
  1338. [X]
  1339. [BIOME:DESERT_ROCK:5]
  1340. [ANY_TROPICAL:4]
  1341. [DESERT_BADLAND:5]
  1342. [DESERT_SAND:5]
  1343. [X]
  1344. [BIOME:DESERT_SAND:5]
  1345. [ANY_TROPICAL:4]
  1346. [DESERT_BADLAND:5]
  1347. [DESERT_ROCK:5]
  1348. [X]
  1349. [BIOME:SWAMP_TROPICAL_SALTWATER:6]
  1350. [ANY_TROPICAL_FOREST:2]
  1351. [SHRUBLAND_TROPICAL:2]
  1352. [SWAMP_MANGROVE:6]
  1353. [MARSH_TROPICAL_FRESHWATER:2]
  1354. [MARSH_TROPICAL_SALTWATER:2]
  1355. [SWAMP_TEMPERATE_FRESHWATER:2]
  1356. [SWAMP_TROPICAL_FRESHWATER:6]
  1357. [X]
  1358. [BIOME:GLACIER:4]
  1359. [TUNDRA:4]
  1360. [X]
  1361. [BIOME:SUBTERRANEAN_CHASM:44]
  1362. [SUBTERRANEAN_WATER:3]
  1363. [ADD_UNDERGROUND_DEPTH]
  1364. [X]
  1365. [BIOME:SUBTERRANEAN_WATER:17]
  1366. [SUBTERRANEAN_CHASM:3]
  1367. [ADD_UNDERGROUND_DEPTH]
  1368. [X]
  1369. [BIOME:SUBTERRANEAN_LAVA:5]
  1370. [ADD_UNDERGROUND_DEPTH]
  1371. [X]
  1372. [BIOME:ANY_LAND:9]
  1373. Dun do anything.
  1374. [X]
  1375. [BIOME:POOL_TEMPERATE_FRESHWATER:3]
  1376. [LAKE_TEMPERATE_BRACKISHWATER:2]
  1377. [LAKE_TEMPERATE_FRESHWATER:3]
  1378. [RIVER_TEMPERATE_FRESHWATER:2]
  1379. [RIVER_TEMPERATE_BRACKISHWATER:2]
  1380. [POOL_TEMPERATE_BRACKISHWATER:2]
  1381.  
  1382. [BIOME:POOL_TEMPERATE_BRACKISHWATER:2]
  1383. [LAKE_TEMPERATE_BRACKISHWATER:2]
  1384. [LAKE_TEMPERATE_FRESHWATER:2]
  1385. [RIVER_TEMPERATE_FRESHWATER:2]
  1386. [RIVER_TEMPERATE_BRACKISHWATER:2]
  1387. [POOL_TEMPERATE_FRESHWATER:2]
  1388.  
  1389. [BIOME:ANY_TEMPERATE_RIVER:2]
  1390. [ANY_TEMPERATE_LAKE:2]
  1391.  
  1392.  
  1393. =======Creature creation======= a split just to show it's the end of the last section. It's a comment. It does nothing.
  1394.  
  1395. [BEGIN_CREATURE_CODE] All variables defined above this tag are permanent. All the ones below are reset every time you make a creature.
  1396. BEGIN_CREATURE_CODE clears all the lists made below this point, as well as the specific creature data, so we can start with a clean slate every time we make a new creature.
  1397.  
  1398.  
  1399. [STR:tile:(randomLetter)] pulls one letter at random out of the randomLetter list.
  1400. I don't have a UPPERCASE(randomLetter + randomLetter) thing yet. May eventually, I don't know.
  1401. This is a lot to tackle. It's not the first time I've made scripts, but it's the first time I've done it to this extent.
  1402. [STR:ina:1(UPPERCASE:tile)(UPPERCASE:randomLetter)(UPPERCASE:randomLetter)(UPPERCASE:randomLetter)(UPPERCASE:randomLetter)(UPPERCASE:randomLetter)(UPPERCASE:randomLetter)(UPPERCASE:randomLetter)]
  1403. [TAG_ADD:{CREATURE:CREATURE_(ina)_RC}] ends with RC so it won't conflict with other mods.
  1404. [TAG_ADD: {NAME:(ina):(ina)s:(ina)}] ITEM2
  1405. [TAG_ADD: {DESCRIPTION:}] ITEM4
  1406. [TAG_ADD: {COLOR:}] ITEM5
  1407. [TAG_ADD: {CASTE_NAME:(ina):(ina)s:(ina)}] ITEM5
  1408. [TAG_ADD: {CREATURE_TILE:(tile)}]ITEM6
  1409. [TAG_ADD: {PREFSTRING:}]ITEM7
  1410. [TAG_ADD: {NATURAL}{LARGE_ROAMING}] why did I do this? no idea. All creatures are natural and large-roaming.
  1411. [TAG_ADD: {PETVALUE:}]ITEM9. Resets later. Haven't gotten that far yet.
  1412.  
  1413. determine type. Yes, birds and fish are special. They have to be, otherwise I can't make sure they fly/swim.
  1414. [INT:tD:(RND:0:400)]
  1415. [IF:(tD:<:60)]
  1416. [CREATURE_TYPE:BIRD]
  1417. [ELSEIF:(tD:<:100)]
  1418. [CREATURE_TYPE:FISH]
  1419. [X]
  1420.  
  1421.  
  1422. [IF:((RND:0:33):1)] 1 in 33 chance of adding next stuff
  1423. [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.
  1424. [CAN_OPEN_DOORS] set value to true, same for next two
  1425. [EQUIPS]
  1426. [INTELLIGENT]
  1427. Megabeasts and semimegabeasts come next. Their stuff is just easier to add earlier on.
  1428. [ELSEIF:((RND:1:100):1)] 1 in 100 chance of a semimegabeast, after the 1 in 33 chance of a new civ.
  1429. [CAN_CIV:FALSE]
  1430. [SEMI]
  1431. [TAG_ADD:{SEMIMEGABEAST}{DIFFICULTY:5}]
  1432. [TAG_ADD: {ATTACK_TRIGGER:50:5000:50000}]
  1433. [TAG_ADD:{CAN_LEARN}{CAN_SPEAK}{CANOPENDOORS}{EQUIPS}{FANCIFUL}]
  1434. [TAG_ADD:{BUILDINGDESTROYER:2}]
  1435. [INT:L1:(RND:2:6)] defining a new integer. These are messily done. Careful with them. Defining a
  1436. variable is permanent (for this particular creature) - it can be used across the entire script,
  1437. regardless of whether it was inside a loop or if/then statement. All variables are removed and reset
  1438. (except for the ones defined above the BEGIN tag) at the start of every creature creation phase.
  1439. [FOR:i:1:L1] for i = 1 to L1, or for (i=1;i<L1;i++); for java coders
  1440. [TAG_ADD:{SPHERE:(randomSphere)}]adds a random sphere.
  1441. [X] end if/end loop tag. empty lines can be used too. Comment lines don't count.
  1442. [IF:((RND:1:4):<>:1)]if random number between 1 and 4 is not 1
  1443. [TAG_ADD:{LAIR:SIMPLE_BURROW:100}] you're a little nothing.
  1444. [ELSE] the else script tag thing. If this is called, then YAUR A MINOTAUR
  1445. [TAG_ADD:{PERSONALITY:BRAVERY:75:90:100}]
  1446. [TAG_ADD:{NATURAL_SKILL:WRESTLING:6}]
  1447. [TAG_ADD:{NATURAL_SKILL:BITE:3}]
  1448. [TAG_ADD:{NATURAL_SKILL:GRASP_STRIKE:6}]
  1449. [TAG_ADD:{NATURAL_SKILL:STANCE_STRIKE:6}]
  1450. [TAG_ADD:{NATURAL_SKILL:MELEE_COMBAT:8}]
  1451. [TAG_ADD:{NATURAL_SKILL:DODGING:6}]
  1452. [TAG_ADD:{NATURAL_SKILL:AXE:8}]
  1453. [TAG_ADD:{NATURAL_SKILL:SWORD:8}]
  1454. [TAG_ADD:{NATURAL_SKILL:DAGGER:8}]
  1455. [TAG_ADD:{NATURAL_SKILL:PIKE:8}]
  1456. [TAG_ADD:{NATURAL_SKILL:MACE:8}]
  1457. [TAG_ADD:{NATURAL_SKILL:HAMMER:8}]
  1458. [TAG_ADD:{NATURAL_SKILL:WHIP:8}]
  1459. [TAG_ADD:{NATURAL_SKILL:SPEAR:8}]
  1460. [TAG_ADD:{NATURAL_SKILL:SITUATIONAL_AWARENESS:12}]
  1461. [TAG_ADD:{PHYS_ATT_RANGE:STRENGTH:1000:1100:1150:1250:1350:1550:2250}]
  1462. [TAG_ADD:{PHYS_ATT_RANGE:TOUGHNESS:1000:1100:1150:1250:1350:1550:2250}]
  1463. [TAG_ADD:{PHYS_ATT_RANGE:AGILITY:1000:1100:1150:1250:1350:1550:2250}]
  1464. [TAG_ADD:{PHYS_ATT_RANGE:ENDURANCE:1000:1100:1150:1250:1350:1550:2250}]
  1465. [TAG_ADD:{PHYS_ATT_RANGE:RECUPERATION:1000:1100:1150:1250:1350:1550:2250}]
  1466. [TAG_ADD:{PHYS_ATT_RANGE:DISEASE_RESISTANCE:1000:1100:1150:1250:1350:1550:2250}]
  1467. [TAG_ADD:{MENT_ATT_RANGE:FOCUS:1000:1100:1150:1250:1350:1550:2250}]
  1468. [TAG_ADD:{MENT_ATT_RANGE:WILLPOWER:1000:1100:1150:1250:1350:1550:2250}]
  1469. [TAG_ADD:{MENT_ATT_RANGE:MEMORY:2000:2100:2150:2250:2350:2550:3250}]
  1470. [TAG_ADD:{MENT_ATT_RANGE:SPATIAL_SENSE:2000:2100:2150:2250:2350:2550:3250}]
  1471. [TAG_ADD:{MENT_ATT_RANGE:KINESTHETIC_SENSE:1000:1100:1150:1250:1350:1550:2250}]
  1472. [TAG_ADD:{LAIR:LABYRINTH:100}]
  1473. [TAG_ADD:{LAIR_HUNTER}]
  1474. [TAG_ADD:{LAIR_HUNTER_SPEECH:lair_hunter_minotaur.txt}]
  1475. [TAG_ADD:{HABIT_NUM:TEST_ALL}]
  1476. [TAG_ADD:{HABIT:GRIND_BONE_MEAL:100}]
  1477. [TAG_ADD:{HABIT:EAT_BONE_PORRIDGE:100}]
  1478. [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:
  1479.  
  1480. [ELSEIF:((RND:1:100):1)]1 in 100 megabeast... after civs and semimegabeasts.
  1481. greetings. this is your captain sspeaking. You are all screwed. Thank you for choosing Talv Airlines, and I bid you all a good day.
  1482. [CAN_CIV:FALSE] just to keep the big ol' brutes from making their own civs.
  1483. [IF:((RND:0:3):1)]
  1484. [TAG_ADD:{MEGABEAST}{DIFFICULTY:15}] 11 or higher doesn't get assigne in adv mode quests.
  1485. [ELSE]
  1486. [TAG_ADD:{MEGABEAST}{DIFFICULTY:10}]
  1487. [X]
  1488. [TAG_ADD: {ATTACK_TRIGGER:80:10000:100000}]
  1489. [TAG_ADD:{FANCIFUL}{LARGE_PREDATOR}{LIKES_FIGHTING}{NOFEAR}{NOEXERT}]
  1490. [TAG_ADD:{FREQUENCY:5}]
  1491. [TAG_ADD:{GRASSTRAMPLE:50}]
  1492. [TAG_ADD:{PETVALUE:10000}]
  1493. [TAG_ADD:{PET_EXOTIC}{TRAINABLE}{MOUNT_EXOTIC}]
  1494. [INT:L2:(RND:2:6)]
  1495. [FOR:i:1:L2]
  1496. [TAG_ADD:{SPHERE:(randomSphere)}] I'll show off by ending this with a blank line:
  1497.  
  1498. [IF:((RND:0:1):1)]
  1499. [TAG_ADD:{NOSTUN}{NOPAIN}]
  1500.  
  1501. [INT:X1:(RND:1:4)]
  1502. [IF:(X1:1)]
  1503. [TAG_ADD:{LAIR:WILDERNESS_LOCATION:100}]
  1504. [ELSEIF:(X1:2)]
  1505. [TAG_ADD:{LAIR:SHRINE:100}]
  1506. [ELSE]
  1507. [TAG_ADD:{LAIR:SIMPLE_BURROW:100}]
  1508.  
  1509. [X1:(RND:1:4)] setting variables is easy.
  1510. First, a dash of dragon.
  1511. [IF:(X1:1)] I'll admit, though, using Toady's raws format is a bit messy with operators.
  1512. [TAG_ADD:{MENT_ATT_RANGE:WILLPOWER:3000:3500:3750:4000:4250:4500:5000}]
  1513. [TAG_ADD:{HABIT_NUM:TEST_ALL}]
  1514. [TAG_ADD:{HABIT:COLLECT_WEALTH:100}]
  1515. [TAG_ADD:{NATURAL_SKILL:BITE:6}]
  1516. [TAG_ADD:{NATURAL_SKILL:GRASP_STRIKE:6}]
  1517. [TAG_ADD:{NATURAL_SKILL:RANGED_COMBAT:6}]
  1518. [TAG_ADD:{NATURAL_SKILL:MELEE_COMBAT:6}]
  1519. [TAG_ADD:{NATURAL_SKILL:DODGING:6}]
  1520. [TAG_ADD:{NATURAL_SKILL:SITUATIONAL_AWARENESS:6}]
  1521. [ELSEIF:(X1:2)]A case of colossus.
  1522. don't do anything!
  1523. [ELSEIF:(X1:3)]A hint of hydra.
  1524. [TAG_ADD:{LAIR_HUNTER}]
  1525. [TAG_ADD:{NATURAL_SKILL:BITE:6}]
  1526. [TAG_ADD:{NATURAL_SKILL:GRASP_STRIKE:6}]
  1527. [TAG_ADD:{NATURAL_SKILL:MELEE_COMBAT:6}]
  1528. [TAG_ADD:{NATURAL_SKILL:DODGING:6}]
  1529. [TAG_ADD:{NATURAL_SKILL:SITUATIONAL_AWARENESS:6}]
  1530. [ELSE]A ray of roc.
  1531. [TAG_ADD:{HABIT_NUM:TEST_ALL}]
  1532. [TAG_ADD:{HABIT:GIANT_NEST:100}]
  1533. [TAG_ADD:{NATURAL_SKILL:BITE:6}]
  1534. [TAG_ADD:{NATURAL_SKILL:STANCE_STRIKE:6}]
  1535. [TAG_ADD:{NATURAL_SKILL:MELEE_COMBAT:6}]
  1536. [TAG_ADD:{NATURAL_SKILL:DODGING:6}]
  1537. [TAG_ADD:{NATURAL_SKILL:SITUATIONAL_AWARENESS:6}]
  1538. [X]
  1539. [INT:R:(RND:1:4)]
  1540. [IF:(R:4)] cue skyrim theme
  1541. [IS_FIRE_BREATHER]
  1542. [ADD_TAG:{CAN_DO_INTERACTION:MATERIAL_EMISSION}]
  1543. [ADD_TAG: {CDI:ADV_NAME:Breathe fire}]I am a servant of the secret fire
  1544. [ADD_TAG: {CDI:USAGE_HINT:ATTACK}]
  1545. [ADD_TAG: {CDI:BP_REQUIRED:BY_CAT:MOUTH}]
  1546. [ADD_TAG: {CDI:FLOW:DRAGONFIRE}] Wielder of the flame of anor
  1547. [ADD_TAG: {CDI:TARGET:C:LINE_OF_SIGHT}]
  1548. [ADD_TAG: {CDI:TARGET_RANGE:C:15}]
  1549. [ADD_TAG: {CDI:MAX_TARGET_NUMBER:C:1}]
  1550. [ADD_TAG: {CDI:WAIT_PERIOD:50}]
  1551. [ADD_TAG:{FIREIMMUNE_SUPER}]
  1552. [ELSEIF:(R:3)] It's made of bronze.
  1553. [IS_BRONZE]
  1554. [ADD_TAG:{NOT_BUTCHERABLE}]
  1555. [X]
  1556. [X]
  1557.  
  1558. Here's the stuff for pets.
  1559.  
  1560. [IF:(can_civ:false)] if the civilization cannnot be made into a civ, basically
  1561. [IF:((RND:0:277):<:61)]if a random number between 0 and 277 is less than 61
  1562. [TAG_ADD:{PET}]
  1563. [ELSEIF:((RND:0:277):<:30)] this fixes a bug in the old version
  1564. [TAG_ADD:{PET_EXOTIC}] the blank line ends the if statement:
  1565.  
  1566. [IF:((RND:0:277):<:150)]
  1567. [TAG_ADD:{MOUNT_EXOTIC}]
  1568. [ADD:DESCVERB:can be ridden] yeah, you can add these here too.
  1569.  
  1570. [IF:((RND:0:277):<:4)]
  1571. [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.
  1572.  
  1573. [IF:((RND:0:277):<:28)]
  1574. [TAG_ADD:{TRAINABLE}]
  1575. [ADD:DESCVERB:can be trained for war]
  1576. [X]
  1577. [X]
  1578.  
  1579.  
  1580. double line break to end the if-then statements. the bracketed X is optional.
  1581.  
  1582. tag stuff.
  1583.  
  1584. [IF:(MEGABEAST:FALSE)]
  1585. [IF:((RND:1:1000):<:7)]
  1586. [TAG_ADD:{AT_PEACE_WITH_WILDLIFE}]
  1587. [ADD:DESCDESC:few natural predators]
  1588. [ADD:PREFLIST:peacefulness]
  1589.  
  1590. [IF:((RND:1:1000):<:4)]
  1591. [TAG_ADD:{ADOPTS_OWNER}]
  1592. [ADD:PREFLIST:aloofness]
  1593.  
  1594. [IF:((RND:1:1000):<:4)]
  1595. [TAG_ADD:{AMBUSHPREDATOR}]
  1596. [ADD:PREFLIST:mystery]
  1597. [ADD:DESCVERB:waits for its prey to pass before striking]
  1598.  
  1599. [IF:((RND:1:1000):<:72)]
  1600. [TAG_ADD:{BUILDINGDESTROYER:1}]
  1601. [ELSEIF:((RND:1:1000):<:4)]
  1602. [TAG_ADD:{BUILDINGDESTROYER:2}]
  1603.  
  1604. [IF:((RND:1:1000):<:72)]
  1605. [TAG_ADD:{INTELLIGENT}]
  1606. [INTELLIGENT]
  1607. [ADD:PREFLIST:distinct culture]
  1608. [ADD:DESCVERB:is very intelligent]
  1609. [ELSEIF:((RND:1:1000):<:25)]
  1610. [TAG_ADD:{CAN_LEARN}{SLOW_LEARNER}]
  1611. [ELSEIF:((RND:1:1000):<:72)]
  1612. [TAG_ADD:{CAN_LEARN}]
  1613. [ADD:DESCADJ:intelligent]
  1614. [ADD:DESCVERB:likes learning new things]
  1615.  
  1616. [IF:((RND:1:1000):<:137)]
  1617. [TAG_ADD:{CANOPENDOORS}]
  1618. [CAN_OPEN_DOORS]
  1619.  
  1620. [IF:((RND:1:1000):<:130)]
  1621. [TAG_ADD:{EQUIPS}]
  1622. [ADD:DESCVERB:can equip weapons and armor]
  1623.  
  1624. [IF:((RND:1:1000):<:76)]
  1625. [TAG_ADD:{FANCIFUL}]
  1626. [DESRIPTION:ADJ:well-known]
  1627.  
  1628. [IF:((RND:1:1000):<:365)]
  1629. [TAG_ADD:{GRASSTRAMPLE:0}]
  1630. [ELSEIF:((RND:1:1000):<:7)]
  1631. [TAG_ADD:{GRASSTRAMPLE:10}]
  1632. [ELSEIF:((RND:1:1000):<:36)]
  1633. [TAG_ADD:{GRASSTRAMPLE:20}]
  1634. [ELSEIF:((RND:1:1000):<:76)]
  1635. [TAG_ADD:{GRASSTRAMPLE:50}]
  1636.  
  1637. [IF:((RND:1:1000):<:181)]
  1638. [TAG_ADD:{GRAZER}]
  1639. [ADD:DESCNOUN:grazer]
  1640. [IS_GRAZER]
  1641.  
  1642. [IF:((RND:1:1000):<:4)]
  1643. [TAG_ADD:{HUNTS_VERMIN}]
  1644. [ADD:DESCVERB:hunts vermin]
  1645.  
  1646. [IF:((RND:1:1000):<:274)]
  1647. [TAG_ADD:{LARGE_PREDATOR}]
  1648. [OR]
  1649. [ADD:DESCNOUN:predator]
  1650. [BREAK]
  1651. [X]
  1652. [IS_HUNTER]
  1653.  
  1654. [IF:((RND:1:1000):<:87)]
  1655. [TAG_ADD:{LIKES_FIGHTING}]
  1656. [ADD:DESCADJ:violent]
  1657. [ADD:PREFLIST:attitude]
  1658. [LIKES_FIGHTING]
  1659.  
  1660. [IF:((RND:1:1000):<:43)]
  1661. [TAG_ADD:{LOOSE_CLUSTERS}]
  1662. [ADD:DESCVERB:likes wandering alone]
  1663.  
  1664. [IF:((RND:1:1000):<:509)]
  1665. [TAG_ADD:{MEANDERER}]
  1666. [IS_ROAMER]
  1667. [X]
  1668. [X]
  1669. [IF:((RND:1:1000):<:112)]
  1670. [TAG_ADD:{AMPHIBIOUS}]
  1671. [ADD:DESCVERB:is at home both in water and on land]
  1672. [AMPHIBIOUS]
  1673.  
  1674. [IF:((RND:1:1000):<:117)]
  1675. [TAG_ADD:{BONECARN}]
  1676. [ADD:DESCVERB:feigns eath until a victim passes by:likes to gnaw on old bones:eats the bones of the dead]
  1677. [ADD:PREFLIST:savage ways:primitive habits]
  1678.  
  1679. [IF:((RND:1:1000):<:195)]
  1680. [TAG_ADD:CARNIVORE]
  1681. [OR] chooses one at random from the following, before a line break or bracketed capital X
  1682. [ADD:DESCNOUN:carnivore]
  1683. [ADD:DESCADJ:carnivorous]
  1684. [X]
  1685. [OR]
  1686. [ADD:DESCADJ:predatory]
  1687. [BREAK] a chance to do nothing at all.
  1688. [X]
  1689. [OR]
  1690. [ADD:DESCADJ:scavenging]
  1691. [BREAK]
  1692. [X]
  1693. [ADD:PREFLIST:eating habits]
  1694.  
  1695. [IF:((RND:1:1000):<:79)]
  1696. [TAG_ADD:{CURIOUSBEAST_EATER}]
  1697. [CURIOUS_COUNT:+:1]
  1698. [TYPE_CUR:eating the provisions of outposts]
  1699.  
  1700. [IF:((RND:1:1000):<:43)]
  1701. [TAG_ADD:{CURIOUSBEAST_GUZZLER}]
  1702. [CURIOUS_COUNT:+:1]
  1703. [TYPE_CUR:drinking the provisions of outposts]
  1704.  
  1705. [IF:((RND:1:1000):<:43)]
  1706. [TAG_ADD:{CURIOUSBEAST_ITEM}]
  1707. [CURIOUS_COUNT:+:1]
  1708. [TYPE_CUR:stealing items from outposts]
  1709.  
  1710. [IF:(RND:1:1000):<:126]
  1711. [TAG_ADD:{EXTRAVISION}]
  1712.  
  1713. [IF:(RND:1:1000):<:25]
  1714. [TAG_ADD:{FIREIMMUNE}]
  1715. [ADD:DESCADJ:fire-immune]
  1716. [ELSEIF:(RND:1:1000):<:7]
  1717. [TAG_ADD:{FIREIMMUNE_SUPER}]
  1718. [ADD:DESCADJ:fire-immune]
  1719.  
  1720. [IF:((RND:1:1000):<:4)]
  1721. [TAG_ADD:{FLEEQUICK}]
  1722.  
  1723. [IF:((RND:1:1000):<:125)] birds. for the birds. all the birds. all is birds.
  1724. [TAG_ADD:{FLIER}]
  1725. [FLIES]
  1726.  
  1727. [IF:((RND:1:1000):<:11)]
  1728. [TAG_ADD:{LIGHT_GEN}]
  1729. [ADD:DESCVERB:glows with its own light]
  1730.  
  1731. [IF:((RND:1:1000):<:7)]
  1732. [TAG_ADD:{LOCKPICKER}]
  1733. [ADD:DESCVERB:likes wandering alone]
  1734.  
  1735. [IF:((RND:1:1000):<:18)]
  1736. [TAG_ADD:{MAGMA_VISION}]
  1737. [ADD:DESCDESC:feels at home in magma]
  1738.  
  1739. [IF:((RND:1:1000):<:7)]
  1740. [TAG_ADD:{MISCHIEVOUS}]
  1741. [ADD:DESCADJ:mischievous]
  1742. [ADD:DESCDESC:is very curious about everything]
  1743.  
  1744. [IF:((RND:1:1000):<:116)]
  1745. [TAG_ADD:{NO_DIZZINESS}]
  1746.  
  1747. [IF:((RND:1:1000):<:350)]
  1748. [TAG_ADD:{NO_DRINK}]
  1749.  
  1750. [IF:((RND:1:1000):<:54)]
  1751. [TAG_ADD:{NO_EAT}]
  1752.  
  1753. [IF:((RND:1:1000):<:65)]
  1754. [TAG_ADD:{NO_FEVERS}]
  1755. [ADD:DESCVERB:never becomes ill]
  1756.  
  1757. [IF:((RND:1:1000):<:231)]
  1758. [TAG_ADD:{NO_SLEEP}]
  1759. [OR]
  1760. [ADD:DESCVERB:never seems to sleep]
  1761. [BREAK]
  1762. [X]
  1763.  
  1764. [IF:((RND:1:1000):<:65)]
  1765. [TAG_ADD:{NO_THOUGHT_CENTER_FOR_MOVEMENT}]
  1766. [HAS_BRAIN]
  1767.  
  1768. [IF:((RND:1:1000):<:246)]
  1769. [TAG_ADD:{NOBONES}]
  1770.  
  1771. [IF:((RND:1:1000):<:65)]
  1772. [TAG_ADD:{NOBREATHE}]
  1773. [NO_BREATHE]
  1774.  
  1775. [IF:((RND:1:1000):<:61)]
  1776. [TAG_ADD:{NOEMOTION}]
  1777. [ADD:DESCADJ:unemotional]
  1778.  
  1779.  
  1780. [IF:(CURIOUS_COUNT:>:1)]
  1781. [ADD:DESCVERB:is fond of raiding the supplies of outposts]
  1782. [ADD:DESCVERB:is a very curious creature]
  1783. [ELSEIF:(CURIOUS_COUNT:1)]
  1784. [ADD:DESCVERB:is a very curious creature]
  1785. [ADD:DESCVERB:is fond of (TYPE_CUR)] fancy line for adding the contents of a string.
  1786. [X]
  1787.  
  1788. now we mark all intelligent creatures that are civ-able as sentient.
  1789. [IF:INTELLIGENT]
  1790. [IF:CAN_OPEN_DOORS]
  1791. [IF:EQUIPS]
  1792. [SENTIENT]
  1793. [X]
  1794. [X]
  1795. [X]
  1796.  
  1797.  
  1798.  
  1799. =======BIG SPLIT HERE=======
  1800.  
  1801. [IF:IS_HUNTER]
  1802. [IF:FLIES]
  1803. [ADD:DESCVERB:hunt its prey through flight]
  1804.  
  1805. [IF:LIKES_FIGHTING]
  1806. [ADD:DESCVERB:likes to kill passing creatures]
  1807. [X]
  1808. [ELSE]
  1809. [IF:FLIES]
  1810. [ADD:DESCVERB:flies to escape enemies]
  1811.  
  1812. [IF:LIKES_FIGHTING]
  1813. [ADD:DESCVERB:likes to fight passing creatures]
  1814. [X]
  1815. [X]
  1816.  
  1817. [IF:IS_GRAZER]
  1818. [FOODWORD:plants]
  1819. [X]
  1820. [IF:IS_HUNTER]
  1821. [FOODWORD:prey]
  1822. [X]
  1823.  
  1824. [IF:(CAN_CIV:FALSE)]
  1825. [DOUBLE:cn2:(DECRND:1:10)]
  1826. [DOUBLE:cnx:(DECRND:1:5)]
  1827. [DOUBLE:cn:(MAX:1:(cn2:/:cnx))]
  1828. [IF:(cn:1)]
  1829. [IS_SOLITARY]
  1830. [X]
  1831. [DOUBLE:pn:(RND:3:50)]
  1832. [TAG_ADD:{POPULATION_NUMBER:(pn:/:(DECRND:1.5:2.5)):(pn)}]
  1833. [TAG_ADD:{CLUSTER_NUMBER:(cn):(cn2)}]
  1834. [IF:(cn:>:7)]
  1835. [IF:(RND:0:1):1]
  1836. [ADD:DESCVERB:is dangerous when encountered in large numbers] this needs more of a reason to be here.
  1837. [ELSE]
  1838. [ADD:DESCVERB:travels in large groups]
  1839. [X]
  1840. [ELSEIF:(cn:<:4):&:(cn:>:1)]
  1841. [IF:((RND:0:1):1)]
  1842. [ADD:DESCVERB:tends to keep largely to itself]
  1843. [ELSE]
  1844. [ADD:DESCVERB:forms small, close-knit groups]
  1845. [X]
  1846. [X]
  1847. [IF:(cn2:>:1)]
  1848. [IN_GROUPS]
  1849. [X]
  1850. [X]
  1851.  
  1852. =======Biome info Pt2=======
  1853.  
  1854.  
  1855. [CALCULATE_BIOMES] just a line to make it utilize the data provided above. DO NOT REMOVE.
  1856.  
  1857. Now we add location description info.
  1858.  
  1859. [IF:(CREATURE_TYPE:!:FISH)]
  1860. [IF:(BIOME:ANY_POOL)]If the biome info exactly matches everything after (BIOME).
  1861. [ADD:biomeLocale:is found in relatively dry areas]
  1862. [ADD:biomeLocale:is found in swamps and marshland]
  1863. [ADD:biomeLocale:can be found in rivers and ponds]
  1864.  
  1865. [IF:(BIOME:FOREST_TAIGA:ANY_TEMPERATE:ANY_TROPICAL)]
  1866. [ADD:biomeLocale:is found in moist soil]
  1867.  
  1868. [IF:(BIOME:GRASSLAND_TEMPERATE:SAVANNA_TEMPERATE:SHRUBLAND_TEMPERATE:FOREST_TEMPERATE_BROADLEAF:FOREST_TEMPERATE_CONIFER)]
  1869. [ADD:biomeLocale:is found in temperate forests]
  1870. [ADD:biomeLocale:lives in temperate woodlands]
  1871.  
  1872. [IF:(BIOME:GRASSLAND_TEMPERATE:SAVANNA_TEMPERATE)]
  1873. [ADD:biomeLocale:is found in temperate pastures]
  1874.  
  1875. [IF:(BIOME:ANY_GRASSLAND:ANY_SAVANNA:ANY_TEMPERATE_FOREST:ANY_TROPICAL_FOREST:ANY_DESERT:ANY_WETLAND)]
  1876. [ADD:biomeLocale:can be found in most temperate regions]
  1877.  
  1878. [IF:(BIOME:LAKE_TEMPERATE_SALTWATER:LAKE_TEMPERATE_FRESHWATER:LAKE_TEMPERATE_BRACKISHWATER)]
  1879. [ADD:biomeLocale:is found in remote lakes]
  1880.  
  1881. [IF:(BIOME:ANY_WETLAND:ANY_TEMPERATE_FOREST:FOREST_TROPICAL_CONIFER:FOREST_TROPICAL_DRY_BROADLEAF:ANY_SHRUBLAND:ANY_SAVANNA:ANY_GRASSLAND:ANY_DESERT)]
  1882. [ADD:biomeLocale:is found in woodland regions]
  1883.  
  1884. [IF:(BIOME:FOREST_TROPICAL_MOIST_BROADLEAF)]
  1885. [ADD:biomeLocale:can be found in the rainforest]
  1886. [ADD:biomeLocale:is found in the tropical forests]
  1887. [ADD:biomeLocale:is found in the trees]
  1888. [ADD:biomeLocale:is found in the trees of the tropical forest]
  1889. [ADD:biomeLocale:is found swinging from the trees]
  1890. [ADD:biomeLocale:lives in the tropical rainforest]
  1891.  
  1892. [IF:(BIOME:OCEAN_ARCTIC)]
  1893. [ADD:biomeLocale:is found living on seaside cliffs in the colder climates]
  1894. [ADD:biomeLocale:ives on arctic shorelines]
  1895.  
  1896. [IF:(BIOME:ANY_TEMPERATE_FOREST)]
  1897. [ADD:biomeLocale:is found in open woodlands]
  1898. [ADD:biomeLocale:is found in the trees of temperate woodlands]
  1899. [ADD:biomeLocale:is found scurrying through the bushes and trees of the temperate forest]
  1900.  
  1901. [IF:(BIOME:NOT_FREEZING)]
  1902. [ADD:biomeLocale:is found in wooded areas]
  1903. ADD:biomeLocale:can be found under rotten logs and in gardens] wat? removing this til I have vermin info.
  1904. [ADD:biomeLocale:can be found almost anywhere outside]
  1905.  
  1906. [IF:(BIOME:SHRUBLAND_TROPICAL:SAVANNA_TROPICAL:GRASSLAND_TROPICAL)]
  1907. [ADD:biomeLocale:can be found roaming the grassland]
  1908. [ADD:biomeLocale:living in grass and woodland]
  1909. [ADD:biomeLocale:found in grasslands]
  1910.  
  1911. [IF:(BIOME:ANY_TEMPERATE_LAKE:ANY_TEMPERATE_MARSH)]
  1912. [ADD:biomeLocale:can be found in lakes and other bodies of water]
  1913.  
  1914. [IF:(BIOME:MOUNTAIN)]
  1915. [ADD:biomeLocale:can be found in the mountains]
  1916. [ADD:biomeLocale:can be found high in the mountains]
  1917. [ADD:biomeLocale:lives in the high mountains]
  1918.  
  1919. [IF:(BIOME:SHRUBLAND_TEMPERATE:SAVANNA_TEMPERATE:GRASSLAND_TEMPERATE)]
  1920. [ADD:biomeLocale:can be found anywhere from forests to deserts]
  1921. [ADD:biomeLocale:in the grassland]
  1922. [X]
  1923. [IF:(BIOME:FOREST_TAIGA:ANY_TEMPERATE_FOREST)]
  1924. [ADD:biomeLocale:is found in temperate woodland]
  1925. [ADD:biomeLocale:is found in temperate climates]
  1926. [ADD:biomeLocale:is found in temperate forests]
  1927. [ADD:biomeLocale:lives in temperate forests]
  1928.  
  1929. [IF:(BIOME:SHRUBLAND_TEMPERATE:SAVANNA_TEMPERATE:GRASSLAND_TEMPERATE)]
  1930. [ADD:biomeLocale:is found in woods and grassland]
  1931.  
  1932. [IF:(BIOME:ANY_TEMPERATE_FOREST:ANY_TROPICAL_FOREST:SHRUBLAND_TEMPERATE:SHRUBLAND_TROPICAL)]
  1933. [ADD:biomeLocale:is found most often in dense vegetation]
  1934.  
  1935. [IF:(BIOME:TUNDRA:FOREST_TAIGA:ANY_TEMPERATE_FOREST:SHRUBLAND_TEMPERATE)]
  1936. [ADD:biomeLocale:is found in temperate regions]
  1937.  
  1938. [IF:(BIOME:SWAMP_TEMPERATE_FRESHWATER:MARSH_TEMPERATE_FRESHWATER:SWAMP_TROPICAL_FRESHWATER:MARSH_TROPICAL_FRESHWATER:RIVER_TEMPERATE_FRESHWATER:RIVER_TROPICAL_FRESHWATER:RIVER_TEMPERATE_BRACKISHWATER:RIVER_TROPICAL_BRACKISHWATER)]
  1939. [ADD:biomeLocale:is found in rivers and marshlands]
  1940.  
  1941. [IF:(BIOME:ANY_TROPICAL_FOREST:SHRUBLAND_TROPICAL)]
  1942. [ADD:biomeLocale:is found in grasslands]
  1943.  
  1944. [IF:(BIOME:SAVANNA_TROPICAL:GRASSLAND_TROPICAL:SHRUBLAND_TROPICAL)]
  1945. [ADD:biomeLocale:is found in grasslands]
  1946. [ADD:biomeLocale:is found in the savanna]
  1947.  
  1948. [IF:(BIOME:ANY_TROPICAL:DESERT_BADLAND:DESERT_ROCK:DESERT_SAND)]
  1949. [ADD:biomeLocale:is found in grass and woodland]
  1950. [ADD:biomeLocale:is found in tropical jungles]
  1951.  
  1952. [IF:(BIOME:ANY_TROPICAL_FOREST:SHRUBLAND_TROPICAL:SWAMP_TROPICAL_FRESHWATER:SWAMP_TROPICAL_SALTWATER:SWAMP_MANGROVE)]
  1953. [ADD:biomeLocale:is found in almost any climate]
  1954.  
  1955. [IF:(BIOME:SAVANNA_TROPICAL:GRASSLAND_TROPICAL)]
  1956. [ADD:biomeLocale:is found in the grasslands]
  1957.  
  1958. [IF:(BIOME:FOREST_TROPICAL_MOIST_BROADLEAF:SWAMP_TROPICAL_FRESHWATER:SWAMP_TROPICAL_SALTWATER:SWAMP_MANGROVE)]
  1959. [ADD:biomeLocale:is found in the forest]
  1960.  
  1961. [IF:(BIOME:SWAMP_TROPICAL_FRESHWATER:MARSH_TROPICAL_FRESHWATER:SWAMP_TROPICAL_SALTWATER:MARSH_TROPICAL_SALTWATER:SWAMP_MANGROVE:RIVER_TROPICAL_SALTWATER:RIVER_TROPICAL_BRACKISHWATER:RIVER_TROPICAL_FRESHWATER)]
  1962. [ADD:biomeLocale:is found in coastal marshes and river deltas]
  1963.  
  1964. [IF:(BIOME:GRASSLAND_TROPICAL:SAVANNA_TROPICAL:ANY_DESERT)]
  1965. [ADD:biomeLocale:is found in tropical deserts]
  1966. [ADD:biomeLocale:moves through the savannah]
  1967.  
  1968. [IF:(BIOME:TUNDRA:GRASSLAND_TEMPERATE)]
  1969. [ADD:biomeLocale:is found in temperate forests]
  1970.  
  1971. [IF:(BIOME:SUBTERRANEAN_CHASM):&:(UNDERGROUND:2:3)]
  1972. [ADD:biomeLocale:is found crawling across the cavern floor]
  1973. [ADD:biomeLocale:is found deep under the earth]
  1974. [ADD:biomeLocale:is found deep underground]
  1975. [ADD:biomeLocale:is found far underground]
  1976. [ADD:biomeLocale:lives underground]
  1977.  
  1978. [IF:(BIOME:SUBTERRANEAN_CHASM):&:(UNDERGROUND:3:3)]tt
  1979. [ADD:biomeLocale:is found in deep caves]
  1980. [ADD:biomeLocale:is only found very near the underworld]test comment
  1981. [ADD:biomeLocale:is found deep underground]
  1982.  
  1983. [IF:(BIOME:SUBTERRANEAN_WATER):&:(UNDERGROUND:3:3)]
  1984. [ADD:biomeLocale:is found moving around the debris near underground pools]
  1985. [ADD:biomeLocale:lives near water underground]
  1986.  
  1987. [IF:(BIOME:SUBTERRANEAN_LAVA):&:(UNDERGROUND:3:5)]
  1988. [ADD:biomeLocale:lives in molten rock]
  1989.  
  1990. [IF:(BIOME:SUBTERRANEAN_CHASM):&:(UNDERGROUND:1:3)]
  1991. [ADD:biomeLocale:is found deep underground]
  1992. [ADD:biomeLocale:lives far underground]
  1993.  
  1994. [IF:(BIOME:SUBTERRANEAN_CHASM):&:(UNDERGROUND:1:2)]
  1995. [ADD:biomeLocale:is found deep underground]
  1996. [ADD:biomeLocale:is found underground]
  1997. [ADD:biomeLocale:lives underground]
  1998. [ADD:biomeLocale:lives deep underground]
  1999.  
  2000. [IF:(BIOME:SUBTERRANEAN_WATER):&:(UNDERGROUND:1:2)]
  2001. [ADD:biomeLocale:is found underground]
  2002. [ADD:biomeLocale:is found underground near water]
  2003. [ADD:biomeLocale:lives in underground swamps]
  2004. [ADD:biomeLocale:lives in watery ditches deep underground]
  2005. [ADD:biomeLocale:lives in caves]
  2006.  
  2007. [IF:(BIOME:SUBTERRANEAN_WATER):&:(UNDERGROUND:2:3)]
  2008. [ADD:biomeLocale:lives far underground near water and soil]
  2009.  
  2010. [IF:(BIOME:SUBTERRANEAN_CHASM):&:(UNDERGROUND:1:1)]
  2011. [ADD:biomeLocale:is found underground]
  2012.  
  2013. [IF:(BIOME:SUBTERRANEAN_WATER):&:(UNDERGROUND:1:3)]
  2014. [ADD:biomeLocale:is found deep under the earth]
  2015. [ADD:biomeLocale:live in the waters far under the earth]
  2016. [ADD:biomeLocale:live far underground] test comment
  2017.  
  2018. [IF:(BIOME:ANY_TEMPERATE_FOREST:ANY_TROPICAL_FOREST):&:IS_EVIL]
  2019. [ADD:biomeLocale:is found in evil forests]
  2020.  
  2021. [IF:(BIOME:LAKE_TROPICAL_SALTWATER:LAKE_TROPICAL_BRACKISHWATER:LAKE_TROPICAL_FRESHWATER)]
  2022. [ADD:biomeLocale:is found in remote lakes]
  2023.  
  2024. [IF:(BIOME:SAVANNA_TROPICAL:GRASSLAND_TROPICAL:SHRUBLAND_TROPICAL):&:IS_SAVAGE]
  2025. [ADD:biomeLocale:can be found in the wildest, most savage parts of the world]
  2026.  
  2027. [IF:(BIOME:ANY_TROPICAL:DESERT_BADLAND:DESERT_ROCK:DESERT_SAND):&:IS_SAVAGE]
  2028. [ADD:biomeLocale:is found in the wild lands]
  2029. [ADD:biomeLocale:is found in the savage wilderness]
  2030.  
  2031. [IF:(BIOME:ANY_TROPICAL_FOREST:SHRUBLAND_TROPICAL:SWAMP_TROPICAL_FRESHWATER:SWAMP_TROPICAL_SALTWATER:SWAMP_MANGROVE):AND:IS_SAVAGE]
  2032. [ADD:biomeLocale:is found in the most savage countryside]
  2033.  
  2034. [IF:IS_SAVAGE:&:(BIOME:SAVANNA_TROPICAL:GRASSLAND_TROPICAL:SHRUBLAND_TROPICAL)]
  2035. [ADD:biomeLocale:is found in the savage wilds]
  2036.  
  2037. [IF:IS_SAVAGE:&:(BIOME:DESERT_BADLAND:DESERT_ROCK:DESERT_SAND)]
  2038. [ADD:biomeLocale:is found in the savage lands]
  2039.  
  2040. [IF:(BIOME:SHRUBLAND_TEMPERATE:SAVANNA_TEMPERATE)]
  2041. [ADD:biomeLocale:is found in temperate regions]
  2042.  
  2043. [IF:IS_EVIL:&:(BIOME:SHRUBLAND_TEMPERATE:SAVANNAH_TEMPERATE:GRASSLAND_TEMPERATE:SHRUBLAND_TROPICAL:SAVANNAH_TROPICAL:GRASSLAND_TROPICAL)]
  2044. [ADD:biomeLocale:is found in the evil plains]
  2045.  
  2046. [IF:(BIOME:MOUNTAIN:GLACIER:TUNDRA)]
  2047. [ADD:biomeLocale:is found in the snowy wilds]
  2048.  
  2049. [IF:IS_CURIOUS_BEAST:&:(BIOME:ANY_DESERT:ANY_GRASSLAND:ANY_SAVANNA:ANY_SHRUBLAND:ANY_FOREST)]
  2050. [ADD:biomeLocale:can be found in forests an the streets of towns]
  2051.  
  2052. [IF:(BIOME:FOREST_TEMPERATE_BROADLEAF:ANY_TEMPERATE_SWAMP)]
  2053. [ADD:biomeLocale:is found in the woods and swamps]
  2054.  
  2055. [IF:(BIOME:ANY_GRASSLAND:ANY_DESERT)]
  2056. [ADD:biomeLocale:can be found in the mountains]
  2057.  
  2058. [IF:(BIOME:ANY_TEMPERATE_FOREST:SHRUBLAND_TEMPERATE:MOUNTAIN)]
  2059. [ADD:biomeLocale:is found from the mountains to the woodlands]
  2060.  
  2061. [IF:(BIOME:ANY_TROPICAL_FOREST:SWAMP_MANGROVE:SAVANNA_TROPICAL:GRASSLAND_TROPICAL)]
  2062. [ADD:biomeLocale:is found in the jungle]
  2063.  
  2064. [IF:(BIOME:FOREST_TROPICAL_MOIST_BROADLEAF:FOREST_TROPICAL_DRY_BROADLEAF)]
  2065. [ADD:biomeLocale:is found in the canopy of the jungle]
  2066.  
  2067. [IF:(BIOME:MARSH_TEMPERATE_FRESHWATER:MARSH_TEMPERATE_SALTWATER)]
  2068. [ADD:biomeLocale:lives in the marshand]
  2069.  
  2070. [IF:(BIOME:ANY_DESERT)]
  2071. [ADD:biomeLocale:lives in the desert]
  2072.  
  2073. [IF:(BIOME:TUNDRA:FOREST_TAIGA)]
  2074. [ADD:biomeLocale:lives in cold climates]
  2075.  
  2076. [IF:(BIOME:FOREST_TROPICAL_MOIST_BROADLEAF:SHRUBLAND_TROPICAL)]
  2077. [ADD:biomeLocale:lives in the tropical forests]
  2078.  
  2079. [IF:(BIOME:POOL_TEMPERATE_FRESHWATER:LAKE_TEMPERATE_FRESHWATER:SWAMP_TEMPERATE_FRESHWATER:MARSH_TEMPERATE_FRESHWATER)]
  2080. [ADD:biomeLocale:lives in the trees]
  2081.  
  2082. [IF:(BIOME:ANY_TROPICAL_WETLAND)]
  2083. [ADD:biomeLocale:lives in the trees]
  2084.  
  2085. [IF:(BIOME:ANY_TROPICAL_FOREST)]
  2086. [ADD:biomeLocale:lives in the trees]
  2087.  
  2088. [ELSE] for the fish
  2089. [IF:(BIOME:ANY_OCEAN)]
  2090. [ADD:biomeLocale:is found in coastal waters]
  2091. [ADD:biomeLocale:is found in any ocean]
  2092. [ADD:biomeLocale:lives in the sea]
  2093.  
  2094. [IF:(BIOME:OCEAN_TEMPERATE:OCEAN_TROPICAL)]
  2095. [ADD:biomeLocale:is found in coastal temperate waters]
  2096. [ADD:biomeLocale:is found along coastlines]
  2097. [ADD:biomeLocale:is found on the sea floor in temperate waters]
  2098. [ADD:biomeLocale:is found in the muddy coasts of both temperate and tropical waters]
  2099. [ADD:biomeLocale:is found in shallow seas]
  2100. [ADD:biomeLocale:is found in coral reefs]
  2101.  
  2102. [IF:(BIOME:OCEAN_TROPICAL)]
  2103. [ADD:biomeLocale:is found in tropical oceans]
  2104. [ADD:biomeLocale:can be found in shallow oceanic waters, and has also been known to travel up large rivers]
  2105. [ADD:biomeLocale:is found in shallow oceanic waters]
  2106. [ADD:biomeLocale:is found in coastal waters]
  2107. [ADD:biomeLocale:is found around coral reefs]
  2108. [ADD:biomeLocale:is found in open ocean]
  2109. [ADD:biomeLocale:can be found hunting in coral reefs]
  2110. [ADD:biomeLocale:is found in coral reefs]
  2111.  
  2112. [IF:(BIOME:OCEAN_TEMPERATE)]
  2113. [ADD:biomeLocale:is found in temperate oceans]
  2114. [ADD:biomeLocale:is found in near-tropical shores]
  2115. [ADD:biomeLocale:is found only in temperate waters]
  2116. [ADD:biomeLocale:is found in the muddy bottom of coastal run-offs and ponds]
  2117. [ADD:biomeLocale:is found off the coast]
  2118. [ADD:biomeLocale:lives in the ocean's muddy shallows]
  2119.  
  2120. [IF:(BIOME:OCEAN_ARCTIC:OCEAN_TEMPERATE)]
  2121. [ADD:biomeLocale:is found in freshwater]
  2122. [ADD:biomeLocale:is found on the muddy bottom of shallow seas]
  2123. [ADD:biomeLocale:lives on the bottom of the ocean]
  2124.  
  2125. [IF:(BIOME:OCEAN_TROPICAL:RIVER_TROPICAL_FRESHWATER:RIVER_TROPICAL_BRACKISHWATER:RIVER_TROPICAL_SALTWATER:LAKE_TROPICAL_FRESHWATER:LAKE_TROPICAL_BRACKISHWATER:LAKE_TROPICAL_SALTWATER)]
  2126. [ADD:biomeLocale:is found around coasts and islands]
  2127. [AND:biomeLocale:lives near the beach]
  2128.  
  2129. [IF:(BIOME:RIVER_TEMPERATE_FRESHWATER:RIVER_TEMPERATE_BRACKISHWATER:LAKE_TEMPERATE_FRESHWATER:LAKE_TEMPERATE_BRACKISHWATER)]
  2130. [ADD:biomeLocale:is found in lakes and streams]
  2131.  
  2132. [IF:(BIOME:RIVER_TROPICAL_FRESHWATER:LAKE_TROPICAL_FRESHWATER)]
  2133. [ADD:biomeLocale:is found in lakes and streams]
  2134. [ADD:biomeLocale:is found in tropical rivers and streams]
  2135. [ADD:biomeLocale:lives in inland waters]
  2136.  
  2137. [IF:(BIOME:RIVER_TEMPERATE_FRESHWATER:RIVER_TEMPERATE_BRACKISHWATER:LAKE_TEMPERATE_FRESHWATER:LAKE_TEMPERATE_BRACKISHWATER)]
  2138. [ADD:biomeLocale:is found in temperate lakes]
  2139.  
  2140. [IF:(BIOME:SUBTERRANEAN_WATER):&:(UNDERGROUND:1:2)]
  2141. [ADD:biomeLocale:is found in underground streams and ponds]
  2142. [ADD:biomeLocale:is found in underground streams]
  2143.  
  2144. [IF:(BIOME:ANY_OCEAN:ANY_LAKE:ANY_RIVER)]
  2145. [ADD:biomeLocale:is found in both salt and fresh water]
  2146.  
  2147. [IF:(BIOME:OCEAN_TEMPERATE:RIVER_TEMPERATE_FRESHWATER:RIVER_TEMPERATE_BRACKISHWATER:RIVER_TEMPERATE_SALTWATER)]
  2148. [ADD:biomeLocale:is found in brooks and streams]
  2149. [ADD:biomeLocale:lives in the ocean and swims up a river to breed]
  2150.  
  2151. [IF:(BIOME:OCEAN_ARCTIC:OCEAN_TEMPERATE:RIVER_TEMPERATE_FRESHWATER:RIVER_TEMPERATE_BRACKISHWATER:RIVER_TEMPERATE_SALTWATER)]
  2152. [ADD:biomeLocale:is found in tributaries and oceans]
  2153.  
  2154. [IF:(BIOME:LAKE_TEMPERATE_FRESHWATER:LAKE_TEMPERATE_BRACKISHWATER)]
  2155. [ADD:biomeLocale:is found in muddy inland waters]
  2156. [ADD:biomeLocale:is found scavenging in inland waters]
  2157. [ADD:biomeLocale:is found in inland waters]
  2158.  
  2159. [IF:(BIOME:RIVER_TEMPERATE_FRESHWATER:LAKE_TEMPERATE_FRESHWATER)]
  2160. [ADD:biomeLocale:is found in temperate lakes and rivers]
  2161. [ADD:biomeLocale:is found in temperate rivers and lakes]
  2162. [ADD:biomeLocale:is found in fresh water]
  2163.  
  2164. [IF:(BIOME:RIVER_TEMPERATE_FRESHWATER:RIVER_TEMPERATE_BRACKISHWATER:RIVER_TEMPERATE_SALTWATER:LAKE_TEMPERATE_FRESHWATER:LAKE_TEMPERATE_BRACKISHWATER:LAKE_TEMPERATE_SALTWATER)]
  2165. [ADD:biomeLocale:is found in coastal rivers and temperate lakes)]
  2166.  
  2167. [IF:(BIOME:RIVER_TROPICAL_FRESHWATER:RIVER_TROPICAL_BRACKISHWATER:RIVER_TROPICAL_SALTWATER:LAKE_TROPICAL_FRESHWATER:LAKE_TROPICAL_BRACKISHWATER:LAKE_TROPICAL_SALTWATER)]
  2168. [ADD:biomeLocale:is found in tropical lakes and rivers)]
  2169.  
  2170. [X]
  2171.  
  2172. vast schools
  2173. hunting alone
  2174. roaming wild, grazing on mushrooms, lurking, wandering the caves
  2175. action: grazing in; eating fruit in; in the sky of
  2176. cluster: in large groups
  2177. cluster: in groups
  2178. cluster: in pairs
  2179. cluster: ambushing its prey
  2180. cluster: hunting solitarily
  2181. cluster: hunting in packs
  2182. cluster: in herds
  2183. cluster: in flocks of many hundreds
  2184. cluster: in huge colonies
  2185. [IF:ADD_UNDERGROUND_DEPTH]
  2186. [INT:minD:(RND:1:3)]
  2187. [TAG_ADD:{UNDERGROUND_DEPTH:(minD):(minD:+:(RND:0:2))}]
  2188. [X]
  2189.  
  2190. =======splitting this off for clarity=======
  2191.  
  2192. [IF:(CAN_CIV:FALSE)]
  2193. [IF:((RND:0:277):<:8)]
  2194. [TAG_ADD:{GOOD}]
  2195. [ADD:DESCVERB:good]
  2196. [ELSEIF:((RND:0:269):<:24)]
  2197. [TAG_ADD:{EVIL}]
  2198. [ADD:DESCVERB:evil]
  2199. [X]
  2200. [IF:((RND:0:277):<:181)]
  2201. [TAG_ADD:{BENIGN}]
  2202. [ELSEIF:((RND:0:96):<:15)]
  2203. [TAG_ADD:{SAVAGE}]
  2204. [X]
  2205. [X]
  2206. [IF:SENTIENT]
  2207. [TAG_REMOVE:{PET}]
  2208. [TAG_REMOVE:{PET_EXOTIC}]
  2209. [TAG_REMOVE:{MOUNT_EXOTIC}]
  2210. [TAG_REMOVE:{TRAINABLE}]
  2211. [X]
  2212. =======Split=======
  2213. After all of the above is sorted out, this one line executes the body creation code. Not modifiable.
  2214. It can't be modifiable, really. After all, if you were able to modify the body creation code, some very
  2215. bad stuff would happen... like your creature not working. Or Dwarf Fortress crashing.
  2216.  
  2217. [GENERATE_CREATURE]
  2218.  
  2219. [SKIN_TYPE:SKIN]
  2220. [IF:((RND:1:4):=:1)]
  2221. [SKIN_TYPE:SCALE]
  2222. [HAS_HAIR:FALSE]
  2223. [X]
  2224. [INT:rndx:(RND:1:25)]
  2225.  
  2226. [IF:IS_BRONZE]
  2227. [TAG_ADD:{TISSUE:BRONZE}]
  2228. [TAG_ADD: {TISSUE_NAME:bronze:bronze}]
  2229. [TAG_ADD: {TISSUE_MATERIAL:INORGANIC:BRONZE}]
  2230. [TAG_ADD: {MUSCULAR}]
  2231. [TAG_ADD: {FUNCTIONAL}]
  2232. [TAG_ADD: {STRUCTURAL}]
  2233. [TAG_ADD: {RELATIVE_THICKNESS:1}]
  2234. [TAG_ADD: {CONNECTS}]
  2235. [TAG_ADD: {TISSUE_SHAPE:LAYER}]
  2236. [TAG_ADD:{TISSUE_LAYER:BY_CAT:ALL:BRONZE}]
  2237. [TAG_ADD:{ITEMCORPSE:STATUE:NO_SUBTYPE:INORGANIC:BRONZE}]
  2238. [TAG_ADD:{ITEMCORPSE_QUALITY:5}]
  2239. [ELSEIF:(rndx:<:21)]
  2240. [TAG_ADD:{BODY_DETAIL_PLAN:STANDARD_MATERIALS}]
  2241. [IF:(SKIN_TYPE:SKIN)]
  2242. [IF:((RND:0:1):=:1)]
  2243. [TAG_ADD: {REMOVE_MATERIAL:HAIR}]
  2244. [HAS_HAIR:FALSE]
  2245. [X]
  2246. [X]
  2247. [IF:((RND:1:4):=:1):&:(HAS_RIBCAGE:=:FALSE):&:(HAS_SPINE:=:FALSE):&:(HAS_TEETH:=:FALSE):&:(HAS_JOINTS:=:FALSE):&:(HAS_SKULL:=:FALSE)]
  2248. [TAG_ADD: {REMOVE_MATERIAL:BONE}]
  2249. [HAS_BONE:FALSE]
  2250. [X]
  2251. [IF:((RND:1:8):=:1)]
  2252. [TAG_ADD: {REMOVE_MATERIAL:CARTILAGE}]
  2253. [HAS_CARTILAGE:FALSE]
  2254. [X]
  2255. [IF:((RND:1:3):=:1):&:(HAS_CARTILAGE:=:FALSE):&:HAS_BONE]
  2256. [CHITIN_BONE]
  2257. [TAG_ADD: {REMOVE_MATERIAL:BONE}]
  2258. [TAG_ADD: {USE_MATERIAL_TEMPLATE:CHITIN:CHITIN_TEMPLATE}]
  2259. [X]
  2260. [IF:(SKIN_TYPE:SCALE)]
  2261. [TAG_ADD: {REMOVE_MATERIAL:HAIR}]
  2262. [HAS_HAIR:FALSE]
  2263. [TAG_ADD: {REMOVE_MATERIAL:SKIN}]
  2264. [IF:((RND:1:0):1)] backwards RND for debugging purposes.
  2265. [HAS_LEATHER:FALSE]
  2266. [X]
  2267. [TAG_ADD: {USE_MATERIAL_TEMPLATE:SCALE:SCALE_TEMPLATE}]
  2268. [TAG_ADD: {USE_MATERIAL_TEMPLATE:TOOTH:CHITIN_TEMPLATE}]
  2269. [CAN_HAVE_VENOM] for simplicity, only reptiles can be poisonous.
  2270. [X]
  2271. [IF:HAS_HORN]
  2272. [TAG_ADD: {USE_MATERIAL_TEMPLATE:HORN:HORN_TEMPLATE}]
  2273. [X]
  2274. [IF:HAS_HOOF]
  2275. [TAG_ADD: {USE_MATERIAL_TEMPLATE:HOOF:HOOF_TEMPLATE}]
  2276. [X]
  2277. [IF:HAS_TUSK]
  2278. [TAG_ADD: {USE_MATERIAL_TEMPLATE:IVORY:TOOTH_TEMPLATE}]
  2279. [X]
  2280. [IF:((RND:1:15):1):&:(SKIN_TYPE:SKIN)]
  2281. [TAG_ADD: {USE_MATERIAL_TEMPLATE:FEATHER:FEATHER_TEMPLATE}]
  2282. [HAS_FEATHER]
  2283. [X]
  2284. [TAG_ADD:{BODY_DETAIL_PLAN:STANDARD_TISSUES}]
  2285. [IF:(SKIN_TYPE:SKIN):&:(HAS_HAIR:FALSE)]
  2286. [TAG_ADD: {REMOVE_TISSUE:HAIR}d]
  2287. [ADD:DESCADJ:hairless]test
  2288. [X]
  2289. [IF:(HAS_BONE:FALSE)]
  2290. [TAG_ADD: {REMOVE_TISSUE:BONE}]
  2291. [X]
  2292. [IF:(HAS_CARTILAGE:FALSE)]
  2293. [TAG_ADD: {REMOVE_TISSUE:CARTILAGE}]
  2294. [X]
  2295. [IF:(SKIN_TYPE:SCALE)]
  2296. [TAG_ADD: {REMOVE_TISSUE:HAIR}]
  2297. [TAG_ADD: {REMOVE_TISSUE:SKIN}]
  2298. [TAG_ADD: {USE_TISSUE_TEMPLATE:SCALE:SCALE_TEMPLATE}]
  2299. [TAG_ADD: {USE_TISSUE_TEMPLATE:TOOTH:CHITIN_TEMPLATE}]
  2300. [X]
  2301. [IF:HAS_HORN]
  2302. [TAG_ADD: {USE_TISSUE_TEMPLATE:HORN:HORN_TEMPLATE}]
  2303. [TAG_ADD: {USE_TISSUE_TEMPLATE:HOOF:HOOF_TEMPLATE}]
  2304. [X]
  2305. [IF:HAS_TUSK]
  2306. [TAG_ADD: {USE_TISSUE_TEMPLATE:IVORY:IVORY_TEMPLATE}]
  2307. [X]
  2308. [IF:HAS_FEATHER]
  2309. [TAG_ADD: {USE_TISSUE_TEMPLATE:FEATHER:FEATHER_TEMPLATE}]
  2310. [X]
  2311. [IF:CHITIN_BONE]
  2312. [TAG_ADD: {REMOVE_TISSUE:BONE}]
  2313. [TAG_ADD: {USE_TISSUE_TEMPLATE:CHITIN:CHITIN:TEMPLATE}]
  2314. [X]
  2315. [IF:(HAS_HAIR:FALSE):&:(HAS_BONSE:FALSE)]
  2316. [ADD:DESCADJ:slimy]
  2317. [ADD:DESCADJ:boneless]
  2318. [TAG_ADD:{BODY_DETAIL_PLAN:EXOSKELETON_TISSUE_LAYERS:(SKIN_TYPE):FAT:MUSCLE}]
  2319. [ELSE]
  2320. [TAG_ADD:{BODY_DETAIL_PLAN:VERTEBRATE_TISSUE_LAYERS:(SKIN_TYPE):FAT:MUSCLE:]
  2321. } ]this is to clear things up in notepad++. not read by the program.
  2322. [IF:CHITIN_BONE]
  2323. [TAG_APPEND:CHITIN:]
  2324. [ELSEIF:HAS_BONE]
  2325. [TAG_APPEND:BONE:]
  2326. [ELSE]
  2327. [TAG_APPEND:NONE:]
  2328. [X]
  2329. [IF:HAS_CARTILAGE]
  2330. [TAG_APPEND:CARTILAGE}]
  2331. [ELSEIF:CHITIN_BONE]
  2332. [TAG_APPEND:CHITIN}]
  2333. [ELSE]
  2334. [TAG_APPEND:NONE}]
  2335. [X]
  2336. [X]
  2337. [IF:((RND:1:6):6):&:HASHAIR]
  2338. [TAG_ADD:{BODY_DETAIL_PLAN:BODY_HAIR_TISSUE_LAYERS:HAIR}]
  2339. [ADD:PREFLIST:manes]
  2340. [ADD_HAIR]
  2341. [ADD:DESCDESC:a thick mane]
  2342. [ADD:DESCVERB:is covered in thick fur]
  2343. [IF:(EYE_COUNT:2):&:HAS_MOUTH:&:HAS_NOSE:&:HAS_EARS]
  2344. [ADD:DESCDESC:a mane circling its face]
  2345. [X]
  2346. [X]
  2347. [TAG_ADD:{BODY_DETAIL_PLAN:STANDARD_HEAD_POSITIONS}]
  2348. [IF:((RND:0:2):1)]
  2349. [TAG_ADD:{BODY_DETAIL_PLAN:HUMANOID_HEAD_POSITIONS}]
  2350. [X]
  2351. [IF:HAS_RIBCAGE]
  2352. [TAG_ADD:{BODY_DETAIL_PLAN:HUMANOID_RIBCAGE_POSITIONS}]
  2353. [X]
  2354. [IF:((RND:0:2):1)]
  2355. [TAG_ADD:{BODY_DETAIL_PLAN:HUMANOID_RELSIZES}]
  2356. [X]
  2357. [IF:HAS_FEATHER]
  2358. [TAG_ADD:{BODY_DETAIL_PLAN:BODY_FEATHER_TISSUE_LAYERS:FEATHER}]
  2359. [ADD:DESCADJ:feathered]
  2360. [ADD:DESCDESC:feathers covering its body]
  2361. [X]
  2362. otherwise...
  2363. [ELSEIF:(rndx:21)]
  2364. [ADD:PREFLIST:chittering]
  2365. [SKIN_TYPE:CHITIN]
  2366. [TAG_ADD:{BODY_DETAIL_PLAN:CHITIN_MATERIALS}]
  2367. [TAG_ADD: {USE_MATERIAL_TEMPLATE:TOOTH:CHITIN_TEMPLATE}]
  2368. [IF:HAS_HORN]
  2369. [TAG_ADD:{USE_MATERIAL_TEMPLATE:HORN:HORN_TEMPLATE}]
  2370. [X]
  2371. [IF:HAS_HOOF]
  2372. [TAG_ADD:{USE_MATERIAL_TEMPLATE:HOOF:HOOF_TEMPLATE}]
  2373. [X]
  2374. [IF:HAS_TUSK]
  2375. [TAG_ADD:{USE_MATERIAL_TEMPLATE:IVORY:TOOTH_TEMPLATE}]
  2376. [X]
  2377. [IF:HAS_FEATHER]
  2378. [TAG_ADD:{USE_MATERIAL_TEMPLATE:FEATHER:FEATHER_TEMPLATE}]
  2379. [X]
  2380. [TAG_ADD:{BODY_DETAIL_PLAN:CHITIN_TISSUES}]
  2381. [TAG_ADD: {USE_TISSUE_TEMPLATE:TOOTH:CHITIN_TEMPLATE}]
  2382. [IF:HAS_HORN]
  2383. [TAG_ADD: {USE_TISSUE_TEMPLATE:HORN:HORN_TEMPLATE}]
  2384. [X]
  2385. [IF:HAS_HOOF]
  2386. [TAG_ADD: {USE_TISSUE_TEMPLATE:HOOF:HOOF_TEMPLATE}]
  2387. [X]
  2388. [IF:HAS_TUSK]
  2389. [TAG_ADD: {USE_TISSUE_TEMPLATE:IVORY:IVORY_TEMPLATE}]
  2390. [X]
  2391. [IF:HAS_FEATHER]
  2392. [TAG_ADD: {USE_TISSUE_TEMPLATE:FEATHER:FEATHER_TEMPLATE}]
  2393. [X]
  2394. [TAG_ADD:{BODY_DETAIL_PLAN:EXOSKELETON_TISSUE_LAYERS:CHITIN:FAT:MUSCLE}]
  2395. [TAG_ADD:{BODY_DETAIL_PLAN:STANDARD_HEAD_POSITIONS}]
  2396. [CAN_HAVE_VENOM] scorpion types can have poison too.
  2397. [ELSEIF:(rndx:22)]
  2398. [SKIN_TYPE:FLESH]
  2399. [ADD:PREFLIST:warmth]
  2400. [TAG_ADD:{USE_MATERIAL_TEMPLATE:FLESH:MUSCLE_TEMPLATE}]
  2401. [TAG_ADD:{USE_TISSUE_TEMPLATE:FLESH_TEMPLATE}]
  2402. [TAG_ADD:{TISSUE_LAYER:BY_CAT:ALL:FLESH}]
  2403. [IF:(CONTAINS:BP_LIST:BASIC_1PARTBODY)]checking a list for an item. painful.
  2404. [ADD:DESCNOUN:ball of skin]
  2405. [X]
  2406. [ELSEIF:(rndx:23)]
  2407. [SKIN_TYPE:STONE]
  2408. [INT:thisStone:(RND:0:stoneName)]"lk" doesn't mean anything, it's just a random variable name. This
  2409. line creates lk as an integer between 0 and stoneName's count (stoneName is a list defined near the top of
  2410. this file). Using this line, I can have the same values for both stoneName and stoneID, making sure the
  2411. stone strings match. and yes, you can stack commands in parentheses.
  2412. [ADD:PREFLIST:rockiness]
  2413. [ADD:DESCVERB:is made entirely of stone]
  2414. [TAG_ADD:{TISSUE:ROCK}]
  2415. [TAG_ADD: {TISSUE_NAME:(stoneName:thisStone):NP}]pulls the stone name from index "lk". All you
  2416. need to do to pull a string from a list is just put (theName) inside parentheses. Putting an integer
  2417. behind it is optional. Without a colon, it pulls a random variable.
  2418. [TAG_ADD: {TISSUE_MATERIAL:INORGANIC:(stoneID:thisStone)}]pulls the stonetype matching the
  2419. randomly-pulled stone name
  2420. [TAG_ADD: {MUSCULAR}]
  2421. [TAG_ADD: {FUNCTIONAL}]
  2422. [TAG_ADD: {STRUCTURAL}]
  2423. [TAG_ADD: {RELATIVE_THICKNESS:1}]
  2424. [TAG_ADD: {CONNECTS}]
  2425. [TAG_ADD: {TISSUE_SHAPE:LAYER}]
  2426. [TAG_ADD:{TISSUE_LAYER:BY_CAT:ALL:ROCK}]
  2427. [ELSE] wet-type creatures last.
  2428. [SKIN_TYPE:WET]
  2429. [INT:thisLiquid:(RND:0:liquids)]using a list as an int gives the max size.
  2430. [ADD:PREFLIST:(liquids:thisLiquid)]
  2431. [ADD:DESCVERB:is made entirely of (liquids:thisLiquid)]
  2432. [TAG_ADD:{USE_MATERIAL_TEMPLATE:BLOOD:BLOOD_TEMPLATE}] regardless of what it's made of, it acts like
  2433. blood.
  2434. [TAG_ADD:{TISSUE:BLOOD}]
  2435. [TAG_ADD: {TISSUE_NAME:(liquids:thisLiquid):NP}]
  2436. [TAG_ADD: {TISSUE_MATERIAL:LOCAL_CREATURE_MAT:BLOOD}]
  2437. [TAG_ADD: {TISSUE_MAT_STATE:LIQUID}]
  2438. [TAG_ADD: {MUSCULAR}]
  2439. [TAG_ADD: {FUNCTIONAL}]
  2440. [TAG_ADD: {STRUCTURAL}]
  2441. [TAG_ADD: {RELATIVE_THICKNESS:1}]
  2442. [TAG_ADD: {CONNECTS}]
  2443. [TAG_ADD: {TISSUE_SHAPE:LAYER}]
  2444. [TAG_ADD:{TISSUE_LAYER:BY_CAT:ALL:BLOOD}]
  2445. [X]
  2446.  
  2447. and we're finally done. NOW FOR THE NEXT PART.
  2448.  
  2449. [IF:((RND:0:20):10)]
  2450. [TAG_ADD:{BODYGLOSS:PAW}]
  2451. [X]
  2452. [IF:((RND:0:30):10)]
  2453. [TAG_ADD:{BODYGLOSS:MAW}]
  2454. [X]
  2455. [IF:((RND:0:1):1):&:HAS_HEART]
  2456. [TAG_ADD:{SELECT_TISSUE_LAYER:HEART:BY_CAT:HEART}]
  2457. [IF:HAS_THROAT]
  2458. [TAG_ADD:{PLUS_TISSUE_LAYER:SKIN:BY_CAT:THROAT}]
  2459.  
  2460. [TAG_ADD: {TL_MAJOR_ARTERIES}]
  2461. [X]
  2462.  
  2463. [IF:HAS_TOES]
  2464. [rndx:(RND:1:4)]
  2465. [IF:(rndx:1)]
  2466. [TAG_ADD:{USE_MATERIAL_TEMPLATE:NAIL:NAIL_TEMPLATE}]
  2467. [TAG_ADD:{USE_TISSUE_TEMPLATE:NAIL:NAIL_TEMPLATE}]
  2468. [TAG_ADD:{TISSUE_LAYER:BY_CAT:TOE:NAIL:FRONT}]
  2469. [HAS_NAILS]
  2470. [HAS_TOENAILS]
  2471. [ELSEIF:(rndx:2)]
  2472. [TAG_ADD:{USE_MATERIAL_TEMPLATE:TALON:NAIL_TEMPLATE}]
  2473. [TAG_ADD:{USE_TISSUE_TEMPLATE:TALON:TALON_TEMPLATE}]
  2474. [TAG_ADD:{TISSUE_LAYER:BY_CAT:TOE:TALON:FRONT}]
  2475. [HAS_TALON]
  2476. [ADD:DESCDESC:taloned feet]
  2477. [ELSEIF:(rndx:3)]
  2478. [TAG_ADD:{USE_MATERIAL_TEMPLATE:CLAW:NAIL_TEMPLATE}]
  2479. [TAG_ADD:{USE_TISSUE_TEMPLATE:CLAW:CLAW_TEMPLATE}]
  2480. [TAG_ADD:{TISSUE_LAYER:BY_CAT:TOE:CLAW:FRONT}]
  2481. [ADD:DESCDESC:clawed toes]
  2482. [HAS_CLAWS]
  2483. [HAS_TOECLAWS]
  2484. [X]
  2485. [X]
  2486. [IF:HAS_FINGERS]
  2487. [rndx:(RND:1:3)]
  2488. [IF:(rndx:1)]
  2489. [IF:(HAS_NAILS:FALSE)]This is important, to make sure you only add the tissue/material
  2490. templates once.
  2491. [TAG_ADD:{USE_MATERIAL_TEMPLATE:NAIL:NAIL_TEMPLATE}]
  2492. [TAG_ADD:{USE_TISSUE_TEMPLATE:NAIL:NAIL_TEMPLATE}]
  2493.  
  2494. [HAS_FINGERNAILS] In the 34.11 version of RandCreatures, this was inside the above
  2495. if/then statement... which seems erroneous to me. I think the effect of it would be to stop creatures
  2496. from being able to attack with their fingernails if they didn't have toenails. I've fixed it here.
  2497. [TAG_ADD:{TISSUE_LAYER:BY_CAT:FINGER:NAIL:FRONT}]
  2498. [ELSEIF:(rndx:2)]
  2499. [IF:(HAS_CLAWS:FALSE)]
  2500. [TAG_ADD:{USE_MATERIAL_TEMPLATE:CLAW:NAIL_TEMPLATE}]
  2501. [TAG_ADD:{USE_TISSUE_TEMPLATE:CLAW:CLAW_TEMPLATE}]
  2502.  
  2503. [HAS_FINGERCLAWS]
  2504. [TAG_ADD:{TISSUE_LAYER:BY_CAT:FINGER:CLAW:FRONT}]
  2505. [ADD:DESCDESC:clawed fingers] Might be better for a preflist item... I don't know.
  2506. [X]
  2507. [X]
  2508. [IF:((RND:0:2):!=:0)] if a random number between zero and two isn't zero, then:
  2509. [TAG_ADD:{USE_MATERIAL_TEMPLATE:SINEW:SINEW_TEMPLATE}]
  2510. [TAG_ADD:{TENDONS:LOCAL_CREATURE_MAT:SINEW:200}]
  2511. [TAG_ADD:{LIGAMENTS:LOCAL_CREATURE_MAT:SINEW:200}]
  2512. [X]putting this x in lowercase to remind me to watch for typos.
  2513.  
  2514. [TAG_ADD:{HAS_NERVES}] all creatures have nerves. No exceptions, apparently... may change.
  2515.  
  2516. =======Bodysize=======
  2517. This section is stuff that gets added later, but needs to be calculated RIGHT NOW, for
  2518. use with the creature gait speed code stuff.
  2519.  
  2520. First up, age and weight.
  2521.  
  2522. [DOUBLE:maxAge:(DECRND:10:100)] new stuff. define a double of your choice. decrnd pulls
  2523. a random decimal number.
  2524. [DOUBLE:tempDec:(DECRND:1.4:2)]
  2525. [DOUBLE:maxAge2:(maxAge:*:tempDec)] messy, but it's the way it has to be. I'm not trying
  2526. to write something incredible here - just something that works. I may fix it later and
  2527. allow you to stack things like random calls and arithmetic functions, but til then...
  2528. [DOUBLE:bodySize2]these are never null.
  2529. [IF:CAN_CIV] if creature isn't a megabeast, then:
  2530. Here's a bit of magic: multiplies everything in the tag.
  2531. [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))] a glorious line that multiplies everything together
  2532. [bodySize2:((SQRT:bodySize2):*:1.4142)] too much new math.
  2533. [bodySize2:(bodySize2:*:bodySize2)] a simple square.
  2534. The math behind this: with that last square, small creature stay small, big creatures get bigger. Easy as math.
  2535. Average body size is around 75000, right where I originally wanted it in the first
  2536. release (at least, if everything goes well). A larger size (x2) starts out about 75000 and
  2537. ends up being around 150000. A x2 normal increase becomes a x4 increase. The above is all
  2538. subject to change. I want to make sure I get the occasional "gigantic" creature. Send me
  2539. any better code you come up with if you want; I may implement it. (with you credited,
  2540. of course.)
  2541. [ELSEIF:(SEMI:FALSE)]
  2542. [bodySize2:(RND:8000000:25000000)] very big creatures.
  2543. [ELSEIF:SEMI]
  2544. [bodySize2:(RND:220000:9000000)] funny that vanilla semimegabeasts are tiny comparatively.
  2545. [X]
  2546. [INT:bodySize1:(bodySize2:/:(RND:2:25))] RandCreatures knows how to round off decimal numbers before multiiplying with integers, yay
  2547. [INT:bodySize0:(bodySize1:/:(RND:10:50))] 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.
  2548. [IF:(maxAge:>:100)]
  2549. [ADD:DESCVERB:lives to an old age]
  2550. [X]
  2551. [tempDec:(maxAge:/:(RND:1:10))]
  2552. [INT:bodyAge:(MAX:2:tempDec)]
  2553. And now we're ready to add the body size and age tags. We'll add them later. Far later.
  2554.  
  2555. ========Pus and poison========
  2556.  
  2557. [IF:((RND:0:7):1)]
  2558. [TAG_ADD:{USE_MATERIAL_TEMPLATE:ICHOR:ICHOR_TEMPLATE}]
  2559. [TAG_ADD:{BLOOD:LOCAL_CREATURE_MAT:ICHOR:LIQUID}]
  2560. [TAG_ADD:{CREATURE_CLASS:GENERAL_POISON}]
  2561. [TAG_ADD:{GETS_WOUND_INFECTIONS}]
  2562. [TAG_ADD:{GETS_INFECTIONS_FROM_ROT}]
  2563. [TAG_ADD:{USE_MATERIAL_TEMPLATE:PUS:PUS_TEMPLATE}]
  2564. [TAG_ADD:{PUS:LOCAL_CREATURE_MAT:PUS:LIQUID}]
  2565. [ELSE]
  2566. [TAG_ADD:{USE_MATERIAL_TEMPLATE:BLOOD:BLOOD_TEMPLATE}]
  2567. [IF:((RND:0:25):1)]
  2568. [TAG_ADD:{STATE_COLOR:ALL:(bloodColor)}]
  2569. [X]
  2570. [TAG_ADD:{BLOOD:LOCAL_CREATURE_MAT:BLOOD:LIQUID}]
  2571. [TAG_ADD:{CREATURE_CLASS:GENERAL_POISON}]
  2572. [TAG_ADD:{GETS_WOUND_INFECTIONS}]
  2573. [TAG_ADD:{GETS_INFECTIONS_FROM_ROT}]
  2574. [TAG_ADD:{USE_MATERIAL_TEMPLATE:PUS:PUS_TEMPLATE}]
  2575. [TAG_ADD:{PUS:LOCAL_CREATURE_MAT:PUS:LIQUID}]
  2576. [X]
  2577.  
  2578. NEW STUFF! CREATURES POISON YOU TO DEATH FOR KICKS! WORKS FOR MOTHER-IN-LAWS OF ALL AGES!
  2579.  
  2580. [IF:CAN_HAVE_VENOM:&:(CONTAINS:BP_CAT:MOUTH:FALSE):&:(CONTAINS:BP_CAT:TOOTH:FALSE):&:(CONTAINS:BP_CAT:STINGER:FALSE)]
  2581. [CAN_HAVE_VENOM:FALSE] Make sure nothing can have venom without a way to stick it to you.
  2582. [X]
  2583. [IF:((RND:0:277):<:17):&:CAN_HAVE_VENOM] little higher than average, but what the hey.
  2584. [ADD_TAG:{USE_MATERIAL_TEMPLATE:VENOM:CREATURE_EXTRACT_TEMPLATE}]
  2585. [ADD_TAG: {STATE_NAME:ALL_SOLID:frozen $NAME$ venom}] $NAME$ is replaced later with the creature's generated name.
  2586. [ADD_TAG: {STATE_ADJ:ALL_SOLID:frozen $NAME$ venom}]
  2587. [ADD_TAG: {STATE_NAME:LIQUID:$NAME$ venom}]
  2588. [ADD_TAG: {STATE_ADJ:LIQUID:$NAME$ venom}]
  2589. [ADD_TAG: {STATE_NAME:GAS:boiling $NAME$ venom}]
  2590. [ADD_TAG: {STATE_ADJ:GAS:boiling $NAME$ venom}]
  2591. [ADD_TAG: {PREFIX:NONE}]
  2592. [ADD_TAG: {ENTERS_BLOOD}]
  2593. [ADD_TAG: {SYNDROME}]
  2594. [ADD_TAG: {SYN_NAME:$NAME$ bite}]
  2595. [ADD_TAG: {SYN_AFFECTED_CLASS:GENERAL_POISON}]
  2596. [ADD_TAG: {SYN_IMMUNE_CREATURE:$ID$:ALL}]
  2597. [ADD_TAG: {SYN_INJECTED}]
  2598. [STR:var1]
  2599. [STR:var2]
  2600. [STR:var3]
  2601. [IF:((RND:0:15):<:14)] Pain
  2602. [IF:((RND:0:13):<:11)]
  2603. [var1:SIZE_DILUTES;] ; gets turned into :.
  2604. [X]
  2605. [IF:((RND:0:13):<:13)]
  2606. [var2:LOCALIZED;VASCULAR_ONLY;]
  2607. [X]
  2608. [ADD_TAG: {CE_PAIN:SEV:(RND:25:70:100):PROB:100:RESISTABLE:(var1)(var2)START:(RND:0:36:100):PEAK:(+RND:10:248:490):END:(+RND:100:1256:2390)}]
  2609. triple-number RND means there's a 50% chance of it being between A and B, and a
  2610. 50% chance of it being between B and C. The +RND means it adds that total to the end of
  2611. the last RND number, effectively slowly increasing it towards the right - just like it should.
  2612. [X]
  2613. [IF:((RND:0:15):<:8)] Swelling
  2614. [var1:]
  2615. [IF:((RND:0:6):<:5)]
  2616. [var1:SIZE_DILUTES;] ; gets turned into :.
  2617. [X]
  2618. [ADD_TAG: {CE_SWELLING:SEV:(RND:10:43:100):PROB:100:RESISTABLE:(var1)LOCALIZED:VASCULAR_ONLY:START:(RND:25:46:50):PEAK:(+RND:25:389:450):END:(+RND:1000:1021:1150)}]
  2619. [X]
  2620. [IF:((RND:0:15):<:7)] Dizziness
  2621. [var1:]
  2622. [var2:]
  2623. [var3:]
  2624. [IF:((RND:0:6):<:6)]
  2625. [var1:RESISTABLE;] ; gets turned into :.
  2626. [X]
  2627. [IF:((RND:0:6):<:5)]
  2628. [var2:SIZE_DILUTES;] ; gets turned into :.
  2629. [X]
  2630. [INT:i1:(RND:5:31:50)]
  2631. [INT:i2:(+RND:5:227:470)]
  2632. [INT:i3:(+RND:1000:6465:33590)]you can thank phantom spiders for this long number. thankfully weighted towards the low side... mostly.
  2633. [IF:((RND:0:6):<:6)]
  2634. [var3:;END;(i3)] ; gets turned into :.
  2635. [X]
  2636. [TAG_ADD: {CE_DIZZINESS:SEV:(RND:10:50):PROB:100:(var1)(var2)START:(i1):PEAK:(i2)(var3)}]
  2637. [X]
  2638. [IF:((RND:0:15):<:5)] Nausea. Always functionally the same, thankfully.
  2639. [TAG_ADD: {CE_NAUSEA:SEV:50:PROB:(RND:14:83:100):RESISTABLE:SIZE_DILUTES:START:(RND:50:122:400):PEAK:(+RND:100:318:450):END:(+RND:100:760:1000)}]
  2640. [X]
  2641. [IF:((RND:0:15):<:5)] Paralysis. Also always functionally the same.
  2642. [TAG_ADD: {CE_PARALYSIS:SEV:100:PROB:100:RESISTABLE:SIZE_DILUTS:START:(RND:5:49:125):PEAK:(+RND:5:117:450):END:(+RND:10:624:1100)}]
  2643. [X]
  2644. [IF:((RND:0:15):<:3)] Necrosis. Deadly awesome.
  2645. [var1:RESISTABLE;SIZE_DILUTES;LOCALIZED;VASCULAR_ONLY;]
  2646. [IF:((RND:0:2):<:1)] You're getting giant desert scorpion death.
  2647. [var1:RESISTABLE;BP;BY_TYPE;THOUGHT;ALL;BP;BY_TYPE;NERVOUS;ALL;]
  2648. [X]
  2649. [TAG_ADD: {CE_NECROSIS:SEV:100:PROB:(RND:37:79:100):(var1)START:(RND:50:67:100):PEAK:(+RND:400:633:750):END:(+RND:1900:2100:2200)}]
  2650. [X]
  2651. [IF:((RND:0:15):<:3)] Fever. Behaves the same way every time. Only difference is how likely you are to be affected.
  2652. [TAG_ADD: {CE_FEVER:SEV:50:PROB:(RND:14:71:100):RESISTABLE:SIZE_DILUTES:START:50:PEAK:500:END:1500}]
  2653. [X]
  2654. [IF:((RND:0:15):<:3)] Bleeding. It's never overly bad, and it never lasts long.
  2655. [TAG_ADD: {CE_BLEEDING:SEV:10:PROB:100:RESISTABLE:SIZE_DILUTES:LOCALIZED:VASCULAR_ONLY:START:(RND:10:37:50):PEAK:(+RND:20:23:25):END:(+RND:20:23:25)}]
  2656. [X]
  2657. [IF:((RND:0:15):<:2)] Bruising. Always the same.
  2658. [TAG_ADD: {CE_BRUISING:SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:LOCALIZED:VASCULAR_ONLY:START:50:PEAK:500:END:1500}]
  2659. [X]
  2660. [IF:((RND:0:15):<:2)] Blisters. Always the same.
  2661. [TAG_ADD: {CE_BLISTERS:SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:LOCALIZED:VASCULAR_ONLY:START:50:PEAK:500:END:1500}]
  2662. [X]
  2663. [IF:((RND:0:15):<:2)] Unconsciousness. You feeling lucky, punk?
  2664. [TAG_ADD: {CE_UNCONSCIOUSNESS:SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:START:50:PEAK:(RND:50:450):END:(RND:100:1000)}]
  2665. [X]
  2666. [IF:((RND:0:15):<:2)] Drowsiness. Always lasts a long time, but may take a while to reach its peak.
  2667. [TAG_ADD: {CE_DROWSINESS:SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:START:30:PEAK:(RND:70:470):END:(RND:1000:1100)}]
  2668. [X]
  2669. [IF:((RND:0:15):0)] Oozing. One in sixteen chance. Rare, to say the least, and always acts the same.
  2670. [TAG_ADD: {CE_OOZING:SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:LOCALIZED:VASCULAR_ONLY:START:50:PEAK:500:END:1500}]
  2671. [X]
  2672. [IF:((RND:0:15):0)] Numbness. Same as oozing. Lasts a freaking long time. Say thank you to phantom spiders.
  2673. [TAG_ADD: {CE_NUMBNESS:SEV:100:PROB:100:START:5:PEAK:10:END:33600}]
  2674. [X]
  2675. [IF:(TAG_LAST:SYNDROME)] If it hasn't added anything...
  2676. CRIPPLING PAIN!!! ...okay, just average pain.
  2677. [TAG_ADD: {CE_PAIN:SEV:70:PROB:100:RESISTABLE:SIZE_DILUTES:LOCALIZED:VASCULAR_ONLY:START:36:PEAK:248:END:1256}]
  2678. [X]
  2679. [IF:((RND:0:1):1)]
  2680. [TAG_ADD:{EXTRACT:LOCAL_CREATURE_MAT:VENOM}]
  2681. [X]
  2682. [X]
  2683. DROWSINESS:2/16 SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:START:30; PEAK 70-470 ; END 1000-1100
  2684. OOZING:1/16 CE_OOZING:SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:LOCALIZED:VASCULAR_ONLY:START:50:PEAK:500:END:1500
  2685. NUMBNESS:1/16 CE_NUMBNESS:SEV:100:PROB:100:START:5:PEAK:10:END:33600
  2686. DIZZINESS:7/16 sev:10-50; PROB:100; RESISTABLE optional (6/7); SIZE_DILUTES optional (5/7): START:5-31-50; PEAK 5-227-470; END optional (6/7) 1000-6465-33590
  2687. NAUSEA:5/16 sev:50; prob:14-83-100;resistable;size_dilutes; START: 50-122-400; PEAK: 100-318-450 ; END:100-760-1000
  2688. PARALYSIS:5/16 sev:100;prob:100;resistable;size_dilutes; START: 5-49-125; PEAK: 5-117-450 ; END: 10-624-1100
  2689. NECROSIS:3/16 sev:100;prob:37-79-100 ; resistable:size_dilutes:localized:vascular_only ; START: 50-67-100 ; PEAK: 400-633-750 ; END: 1900-2100-2200
  2690. FEVER:3/16 sev:50;prob:14-71-100;RESISTABLE:SIZE_DILUTE:START:50:PEAK:500:END:1500
  2691. BLEEDING:3/16 SEV:10:PROB:100:RESISTABLE:SIZE_DILUTES:LOCALIZED:VASCULAR_ONLY:START: 10-37-50 ; PEAK 20-23-25 ; END 20-23-25
  2692. BRUISING:2/16 CE_BRUISING:SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:LOCALIZED:VASCULAR_ONLY:START:50:PEAK:500:END:1500
  2693. BLISTERS:2/16 CE_BLISTERS:SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:LOCALIZED:VASCULAR_ONLY:START:50:PEAK:500:END:1500
  2694. UNCONSCIOUSNESS:2/16 CE_UNCONSCIOUSNESS:SEV:50:PROB:100:RESISTABLE:SIZE_DILUTES:START:50:PEAK:50-450:END:100-1000
  2695.  
  2696. And now we add the bodysize/age stuff I mentioned way up there somewhere.
  2697.  
  2698. [TAG_ADD:{BODY_SIZE:0:0:(bodySize0)}]
  2699. [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.
  2700. [TAG_ADD:{BODY_SIZE:(bodyAge):(bodySize2)}]
  2701. [TAG_ADD:{MAXAGE:(maxAge):(maxAge2)}]
  2702. [DOUBLE:thisIt:(DECRND:1:3)]Can't remember why I called it this. Probably a throwaway name.
  2703. [IF:(thisIt:<:1.25)] yay, doubles
  2704. [ADD:DESCVERB:matures at an old age]
  2705. [ELSEIF:(thisIt:>:2.75)]
  2706. [ADD:DESCVERB:matures at a young age] there was a typo in the original that said "an" instead of "a".
  2707. [X]
  2708. [INT:nextAge:(bodyAge:/:thisIt)]
  2709. [TAG_ADD:{CHILD:(nextAge)}]
  2710. [TAG_ADD:{ALL_ACTIVE}] whoa, did I really do this? Huh. This is definitely subject to
  2711. change. I don't have a clue why I would've done this.
  2712.  
  2713. [BOOL:NewBool:true]
  2714. [IF:NewBool] A portable test.
  2715. [X]
  2716.  
  2717. And now size stuff. These are Toady's own interpretations of sizes.
  2718. [IF:(bodySize2:>:0):&:(bodySize2:<:10000)]
  2719. [ADD:DESCSIZE:tiny]
  2720. [X]
  2721. [IF:(bodySize2:>:1000):&:(bodySize2:<:59000)]
  2722. [ADD:DESCSIZE:small]
  2723. [X]
  2724. [IF:(bodySize2:>:3000):&:(bodySize2:<:137000)]
  2725. [ADD:DESCSIZE:medium-sized]
  2726. [X]
  2727. [IF:(bodySize2:>:92000):&:(bodySize2:<:4608000)]
  2728. [ADD:DESCSIZE:huge]
  2729. [X]
  2730. [IF:(bodySize2:>:138000):&:(bodySize2:<:6912000)]
  2731. [ADD:DESCSIZE:large]
  2732. [X]
  2733. [IF:(bodySize2:>:588000)]
  2734. [ADD:DESCSIZE:gigantic]
  2735. [IF:HAS_BEAK]
  2736. [ADD:DESCDESC:uses its beak to pluck up unsuspecting intruders] stole this from Toady.
  2737. [X]
  2738. [X]
  2739.  
  2740. More stuff!
  2741. [INT:rndX2:(RND:1:4)]
  2742. [IF:(rndX2:2)]
  2743. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:LENGTH:90:95:98:100:102:105:110}]
  2744. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:HEIGHT:90:95:98:100:102:105:110}]
  2745. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:BROADNESS:90:95:98:100:102:105:110}]
  2746. [ELSEIF:(rndX2:3)]
  2747. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:LENGTH:80:95:98:100:102:105:120}]
  2748. 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.
  2749. ADD:DESCVERB:tunnels through the rocks
  2750. [IF:(CONTAINS:BP_LIST:BASIC_1PARTBODY)]
  2751. [ADD:DESCDESC:hundreds of feet moving along the bottom of its body]
  2752. [X]
  2753. [ELSEIF:(rndX2:4)]
  2754. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:HEIGHT:90:95:98:100:102:105:110}]
  2755. [TAG_ADD:{BODY_APPEARANCE_MODIFIER:BROADNESS:90:95:98:100:102:105:110}]
  2756. [X]
  2757. 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.
  2758.  
  2759. ========Attack info========
  2760. It's possible to get a lot more random than this, but I don't want to. I want my creatures
  2761. to rip your eyes out and batter you to little bloody pieces, and then grind what's left
  2762. of you into pulp. Before chopping up what's left and regurgitating it to their young.
  2763. Basically, I want it to hurt as if they're really trying.None of my creatures
  2764. should EVER come across as pathetic by nature.
  2765.  
  2766. [IF:(CONTAINS:BP_CAT:BEAK)]
  2767. [TAG_ADD:{ATTACK:BITE:BODYPART:BY_CAT:BEAK}]
  2768. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2769. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2770. [TAG_ADD: {ATTACK_CONTACT_PERC:100}] these may change off of "100" later. no idea though.
  2771. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2772. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2773. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2774. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2775. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2776. [X]
  2777. [IF:HAS_TALON]
  2778. [TAG_ADD:{ATTACK:SCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:STANCE:BY_CAT:ALL:TALON}]
  2779. [IF:((RND:0:1):1)]
  2780. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2781. [ELSE]
  2782. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  2783. [X]
  2784. [TAG_ADD: {ATTACK_VERB:snatch at:snatches at}]
  2785. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2786. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2787. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2788. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2789. [TAG_ADD: {ATTACK_PRIORITY:(randomPriority)}]
  2790. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2791. [X]
  2792. [IF:(CONTAINS:BP_TYPE:STANCE)]
  2793. [TAG_ADD:{ATTACK:KICK:BODYPART:BY_TYPE:STANCE}]
  2794. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  2795. [TAG_ADD: {ATTACK_VERB:kick:kicks}]
  2796. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2797. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:4:4}] A new line. 4:4. Guess that means slower? (Kidding, I know what it means.)
  2798. [TAG_ADD: {ATTACK_PRIORITY:SECOND}] This used to be MAIN... huh.
  2799. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2800. [TAG_ADD: {ATTACK_FLAG_BAD_MULTIATTACK}]
  2801. [X]
  2802. [IF:HAS_TEETH:&:TRUE_HEAD:&:HAS_HEAD]
  2803. [TAG_ADD:{ATTACK:BITE:CHILD_BP_GROUP:BY_CAT:HEAD:BY_CAT:TOOTH}]
  2804. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2805. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2806. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2807. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2808. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2809. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2810. [TAG_ADD: {ATTACK_PRIORITY:(randomPriority)}]
  2811. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2812. [IF:HAS_VENOM:&:(CONTAINS:BP_CAT:STINGER):FALSE]
  2813. [TAG_ADD: {SPECIALATTACK_INJECT_EXTRACT:LOCAL_CREATURE_MAT:POISON:LIQUID:100:100}]
  2814. [USED_VENOM] Just to say the venom has already been placed in a bodypart.
  2815. [X]
  2816. [X]
  2817. [IF:HAS_TEETH:FALSE:&:HAS_MOUTH]
  2818. [IF:HAS_VENOM:&:(CONTAINS:BP_CAT:STINGER):FALSE:&:USED_VENOM:FALSE]
  2819. [TAG_ADD:{ATTACK:STING:BODYPART:BY_CAT:MOUTH}]only one creature does this
  2820. [ELSE]
  2821. [TAG_ADD:{ATTACK:BITE:BODYPART:BY_CAT:MOUTH}]
  2822. [X]
  2823. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2824. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2825. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2826. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}] Just a mouth, still a good bite.
  2827. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2828. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2829. [IF:HAS_VENOM:&:(CONTAINS:BP_CAT:STINGER):FALSE:&:USED_VENOM:FALSE]
  2830. [TAG_ADD: {SPECIALATTACK_INJECT_EXTRACT:LOCAL_CREATURE_MAT:POISON:LIQUID:100:100}]
  2831. [USED_VENOM]
  2832. [X]
  2833. [X]
  2834. [IF:HAS_FINGERCLAWS] Huh, in the raws, only crundles have this now.
  2835. [TAG_ADD:{ATTACK:SCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:GRASP:BY_CAT:FINGER:CLAW}]only for crundles, but hey
  2836. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2837. [TAG_ADD: {ATTACK_VERB:scratch:scratches}]
  2838. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2839. [TAG_ADD: {ATTACK_PENETRATIN_PERC:100}]
  2840. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2841. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2842. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2843. [X]
  2844. [IF:HAS_TOECLAWS]
  2845. [TAG_ADD:{ATTACK:SCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:STANCE:BY_CAT:ALL:CLAW}]
  2846. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2847. [TAG_ADD: {ATTACK_VERB:scratch:scratches}]
  2848. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2849. [TAG_ADD: {ATTACK_PENETRATIN_PERC:100}]
  2850. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2851. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2852. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2853. [X]
  2854. [IF:HAS_HAND]
  2855. [TAG_ADD:{ATTACK:PUNCH:BODYPART:BY_TYPE:GRASP}]
  2856. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2857. [TAG_ADD: {ATTACK_VERB:punch:punches}]
  2858. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2859. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2860. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2861. [TAG_ADD: {ATTACK_PRIORITY:MAIN}] Used to be "second", but got an overhaul.
  2862. [X]
  2863. [IF:NO_TENTACLE:FALSE]oh god, it's hentai DF all over again
  2864. [TAG_ADD:{ATTACK:BITE:CHILD_BP_GROUP:BY_CAT:TENTACLE:BY_CAT:TOOTH}] In vanilla, only Green Devourers get this.
  2865. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2866. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2867. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2868. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2869. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2870. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2871. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2872. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2873. [X]
  2874. [IF:HAS_MANDIBLES] In vanilla raws, only the bugbat gets this.
  2875. [TAG_ADD:{ATTACK:BITE:CHILD_BP_GROUP:BY_CAT:HEAD:BY_CAT:MANDIBLE}]
  2876. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2877. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2878. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2879. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2880. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2881. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2882. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2883. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2884. [X]
  2885. [IF:HAS_FINGERNAILS]
  2886. [TAG_ADD:{ATTACK:SCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:GRASP:BY_CAT:FINGER:NAIL}]
  2887. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2888. [TAG_ADD: {ATTACK_VERB:scratch:scratches}]
  2889. [TAG_ADD: {ATTACK_CONTACT_PERC:100}] Honestly, are this value
  2890. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}] and this value ever anything but 100 in the vanilla raws? I fail to see the point of these lines...
  2891. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2892. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2893. [TAG_ADD: {ATTACK_PRIORITY:SECOND}]
  2894. [X]
  2895. [IF:HAS_TOENAILS] Fixed for the new version.
  2896. [TAG_ADD:{ATTACK:SCRATCH:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:STANCE:BY_CAT:ALL:NAIL}]
  2897. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2898. [TAG_ADD: {ATTACK_VERB:scratch:scratches}]
  2899. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2900. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2901. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2902. [TAG_ADD: {ATTACK_PRIORITY:SECOND}]
  2903. [X]
  2904. [IF:HAS_TOECLAWS] Cave dragon, dragon, hydra.
  2905. [TAG_ADD:{ATTACK:CLAW:CHILD_TISSUE_LAYER_GROUP:BY_TYPE:STANCE:BY_CAT:ALL:CLAW}]
  2906. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2907. [TAG_ADD: {ATTACK_VERB:claw:claws}]
  2908. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2909. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2910. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2911. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2912. [TAG_ADD: {ATTACK_PRIORITY:(randomPriority)}]
  2913. [X]
  2914. [IF:HEAD_BODY:&:(CONTAINS:BP_CAT:TUSK)] Just for gorlak-likes
  2915. [TAG_ADD:{ATTACK:BITE:CHILD_BP_GROUP:BY_CAT:HEAD:BY_CAT:TUSK}]
  2916. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2917. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2918. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2919. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2920. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2921. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2922. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2923. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2924. [X]
  2925. [IF:(CONTAINS:BP_CAT:PINCER)]
  2926. [TAG_ADD:{ATTACK:PINCER:BODYPART:BY_CAT:PINCER}]
  2927. [TAG_ADD: {ATTACK_SKILL:GRASP_STRIKE}]
  2928. [TAG_ADD: {ATTACK_VERB:snatch:snatches}]
  2929. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2930. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2931. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2932. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2933. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2934. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2935. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2936. [X]
  2937. [IF:(CONTAINS:BP_CAT:PROBOSCIS)]
  2938. [TAG_ADD:{ATTACK:BITE:BODYPART:BY_CAT:PROBOSCIS}]odd, can't find this in vanilla raws anymore
  2939. [TAG_ADD: {ATTACK_SKILL:BITE}]
  2940. [TAG_ADD: {ATTACK_VERB:bite:bites}]
  2941. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2942. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2943. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  2944. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2945. [TAG_ADD: {ATTACK_FLAG_CANLATCH}]
  2946. [TAG_ADD: {SPECIALATTACK_SUCK_BLOOD:25:50}]
  2947. [X]
  2948. New stuff
  2949. [IF:(CONTAINS:BP_CAT:STINGER)]
  2950. [TAG_ADD:{ATTACK:STING:BODYPART:BY_CAT:STINGER}] only one creature has this
  2951. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  2952. [TAG_ADD: {ATTACK_VERB:sting:stings}]
  2953. [TAG_ADD: {ATTACK_CONTACT_PERC:5}]
  2954. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  2955. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  2956. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:4:4}]
  2957. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2958. [IF:HAS_VENOM]
  2959. [TAG_ADD: {SPECIALATTACK_INJECT_EXTRACT:LOCAL_CREATURE_MAT:POISON:LIQUID:100:100}]
  2960. [USED_VENOM]
  2961. [X]
  2962. [X]
  2963. [IF:(CONTAINS:BP_CAT:HOOF_FRONT)]
  2964. [TAG_ADD: {ATTACK:KICK:BODYPART:BY_CAT:HOOF_FRONT}]
  2965. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  2966. [TAG_ADD: {ATTACK_VERB:kick:kicks}]
  2967. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2968. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:4:4}]
  2969. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2970. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2971. [TAG_ADD: {ATTACK_FLAG_BAD_MULTIATTACK}]
  2972. [X]
  2973. [IF:(CONTAINS:BP_CAT:HOOF_REAR)]
  2974. [TAG_ADD: {ATTACK:KICK:BODYPART:BY_CAT:HOOF_REAR}]
  2975. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  2976. [TAG_ADD: {ATTACK_VERB:kick:kicks}]
  2977. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2978. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:4:4}]
  2979. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2980. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2981. [TAG_ADD: {ATTACK_FLAG_BAD_MULTIATTACK}]
  2982. [X]
  2983. [IF:(CONTAINS:BP_CAT:FOOT_REAR)]
  2984. [TAG_ADD: {ATTACK:KICK:BODYPART:BY_CAT:FOOT_REAR}]
  2985. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  2986. [TAG_ADD: {ATTACK_VERB:kick:kicks}]
  2987. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2988. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:4:4}]
  2989. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  2990. [TAG_ADD: {ATTACK_FLAG_WITH}]
  2991. [TAG_ADD: {ATTACK_FLAG_BAD_MULTIATTACK}]
  2992. [X]
  2993. [IF:(CONTAINS:BP_CAT:FOOT_FRONT)]
  2994. [TAG_ADD: {ATTACK:KICK:BODYPART:BY_CAT:FOOT_FRONT}]
  2995. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  2996. [TAG_ADD: {ATTACK_VERB:kick:kicks}]
  2997. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  2998. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:4:4}]
  2999. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  3000. [TAG_ADD: {ATTACK_FLAG_WITH}]
  3001. [TAG_ADD: {ATTACK_FLAG_BAD_MULTIATTACK}]
  3002. [X]
  3003. [IF:(CONTAINS:BP_CAT:HORN)]
  3004. [TAG_ADD: {ATTACK:GORE:BODYPART:BY_CAT:HORN}]
  3005. [TAG_ADD: {ATTACK_SKILL:BITE}]
  3006. [TAG_ADD: {ATTACK_VERB:gore:gores}]
  3007. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  3008. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  3009. [TAG_ADD: {ATTACK_FLAG_WITH}]
  3010. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  3011. [X]
  3012. [IF:IS_AQUATIC:&:(CONTAINS:BP_CAT:TAIL)]
  3013. [TAG_ADD:{ATTACK:SLAP:BODYPART:BY_CAT:TAIL}]
  3014. [TAG_ADD: {ATTACK_SKILL:STANCE_STRIKE}]
  3015. [TAG_ADD: {ATTACK_VERB:slap:slaps}]
  3016. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  3017. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:4:4}]
  3018. [TAG_ADD: {ATTACK_PRIORITY:(randomPriority)}]
  3019. [TAG_ADD: {ATTACK_FLAG_WITH}]
  3020. [TAG_ADD: {ATTACK_FLAG_BAD_MULTIATTACK}]
  3021. [X]
  3022. [IF:(CONTAINS:BP_CAT:TUSK):&:HEAD_BODY:FALSE]Anything that has tusks that isn't a gorlak
  3023. [TAG_ADD:{ATTACK:GORE:BODYPART:BY_CAT:TUSK}]
  3024. [TAG_ADD: {ATTACK_SKILL:BITE}]
  3025. [TAG_ADD: {ATTACK_VERB:gore:gores}]
  3026. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  3027. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  3028. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  3029. [TAG_ADD: {ATTACK_FLAG_WITH}]
  3030. [X]
  3031. [IF:(CONTAINS:BP_LIST:SNOUT_NOSMELL)]
  3032. [TAG_ADD:{ATTACK:BITE:BODYPART:BY_CAT:NOSE}]
  3033. [TAG_ADD: {ATTACK_SKILL:BITE}]
  3034. [TAG_ADD: {ATTACK_VERB:stab:stabs}]
  3035. [TAG_ADD: {ATTACK_CONTACT_PERC:100}]
  3036. [TAG_ADD: {ATTACK_PENETRATION_PERC:100}]
  3037. [TAG_ADD: {ATTACK_PRIORITY:MAIN}]
  3038. [TAG_ADD: {ATTACK_FLAG_EDGE}]
  3039. [TAG_ADD: {ATTACK_PREPARE_AND_RECOVER:3:3}]
  3040. [X]
  3041.  
  3042.  
  3043.  
  3044.  
  3045.  
  3046. SPAAAAAAACCCEEEEEEE
  3047.  
  3048.  
  3049.  
  3050.  
  3051.  
  3052.  
  3053.  
  3054. Diurnal/nocturnal/all_active/crepuscular
  3055. =======Gaits=======
  3056. splitting this off from the other stuff. (note: the ==split== thing doesn't do anything, by the way - it's
  3057. just a comment.) The reason is... This is totally new code. Toady added creature gaits to 40.xx, so I have
  3058. to find a way to deal with it. Watch out, world. Protyping coming through.
  3059.  
  3060. All of the following are comments made for my personal reference. Yay for maths.
  3061.  
  3062. relevant tags: has_wings, is_biped, is_quadruped, has_fins, has_stance, has_tail, has_grasp, can_fly,
  3063. can_swim, bodysize, grazer, likes_fighting, no_vegetation_perturb, slow_learner, meanderer, flier... may be more that affect it
  3064.  
  3065. STANDARD_BIPED_GAITS: ranges from 1 to 41, standard 30?
  3066. STANDARD_QUADRUPED_GAITS: ranges from 2 to 87, standard 10-45
  3067. STANDARD_CLIMBING_GAITS: ranges from 1 to 56, standard 1-15
  3068. STANDARD_SWIMMING_GAITS: ranges from 1 to 40, standard 1-35
  3069. STANDARD_CRAWLING_GAITS: ranges from 1 to 12, standard 1-12
  3070. STANDARD_FLYING_GAITS: ranges from 15 to 87, standard 15-35
  3071. STANDARD_WALK_CRAWL_GAITS: ranges from 1 to 20, standard 1-10
  3072.  
  3073. fullTotal
  3074. Biped Gaits: 13% 100% 1442 1190 942 587 2440 3499 1.0
  3075. Quadruped Gaits: 31% 100% 1424 1066 830 396 2430 3520 1.0
  3076. Climbing Gaits: 43% 100% 5431 5009 4615 3625 6346 7450 1.0
  3077. Swimming Gaits: 100% 100% 5638 5358 5092 4289 6453 7337 1.0
  3078. Flying Gaits: 18% 100% 1214 936 704 445 2232 3289 1.0
  3079. Crawling Gaits: 91% 100% 7526 7264 7022 6249 8222 8970 1.0
  3080. Walk_crawl Gaits: 14% 100% 6905 6623 6358 5102 7658 8481 1.0
  3081.  
  3082. min
  3083. Biped Gaits: 100% 2% 900 708 515 286 1900 2900 0.62
  3084. Quadruped Gaits: 100% 0% 900 464 322 175 1839 2889 0.63
  3085. Climbing Gaits: 100% 0% 3063 2310 1558 752 4210 5659 0.56
  3086. Swimming Gaits: 100% 0% 941 729 518 288 1947 2963 0.17
  3087. Flying Gaits: 100% 1% 900 597 412 213 1900 2900 0.74
  3088. Crawling Gaits: 100% 0% 4790 4239 3696 1316 5863 7255 0.64
  3089. Walk_crawl Gaits: 100% 2% 3730 3432 3141 1097 4678 5733 0.54
  3090.  
  3091. max
  3092. Biped Gaits: 100% 2% 5487 5239 5004 3601 6285 7122 3.81
  3093. Quadruped Gaits: 100% 0% 2380 1994 1609 689 3465 4738 1.67
  3094. Climbing Gaits: 100% 0% 9000 8900 8825 8775 9500 9900 1.66
  3095. Swimming Gaits: 100% 0% 8612 8462 8335 7857 9171 9677 1.53
  3096. Flying Gaits: 100% 1% 2206 1692 1178 585 3400 4900 1.82
  3097. Crawling Gaits: 100% 0% 9000 8900 8825 8775 9500 9900 1.2
  3098. Walk_crawl Gaits: 100% 2% 9000 8900 8825 8775 9500 9900
  3099.  
  3100. div These numbers show how big of a range there is for each.
  3101. Flying trait: 2.45 2.83 2.86 2.75 1.79 1.69 145
  3102. Crawling trait: 1.88 2.1 2.39 6.67 1.62 1.36 161
  3103. Quadrupedtrait: 2.64 4.3 5.0 3.94 1.88 1.64 183
  3104. Walk_craw trait:2.41 2.59 2.81 8.0 2.03 1.73 195
  3105. Climbing trait: 2.94 3.85 5.66 11.67 2.26 1.75 283
  3106. Biped trait: 6.1 7.4 9.72 12.59 3.31 2.46 416
  3107. Swimming trait: 9.15 11.61 16.09 27.28 4.71 3.27 722
  3108.  
  3109.  
  3110.  
  3111. deviation
  3112. Flying trait: 1.0 0.77 0.58 0.37 1.84 2.71
  3113. Crawling trait: 1.0 0.97 0.93 0.83 1.09 1.19
  3114. Quadruped trait: 1.0 0.75 0.58 0.28 1.71 2.47
  3115. Walk_crawl trait: 1.0 0.96 0.92 0.74 1.11 1.23
  3116. Climbing trait: 1.0 0.92 0.85 0.67 1.17 1.37
  3117. Biped trait: 1.0 0.83 0.65 0.41 1.69 2.43
  3118. Swimming trait: 1.0 0.95 0.9 0.76 1.14 1.3
  3119.  
  3120.  
  3121.  
  3122. gait tag: first initializes, second defines type being edited, third defines chance of the tag being added, fourth defines multiplication weight of standard speeds
  3123. [IF:HAS_WINGS]
  3124. [GAIT:BIPED:2:0.62]
  3125. [GAIT:QUADRUPED:0:0.63]It may be possible to have quadruped walkers with wings. They will be rare, and if they exist, they will be very swift.
  3126. [GAIT:CLIMBING:20:1.4]
  3127. [GAIT:SWIMMING:14:1.53]
  3128. [GAIT:FLYING:66:0.74]
  3129. [GAIT:CRAWLING:16:1.15]
  3130. [GAIT:WALK_CRAWL:2:1.3]
  3131. [X]
  3132. [IF:IS_BIPED]
  3133. [GAIT:BIPED:97:0.99]
  3134. [GAIT:CLIMBING:51:1.05]
  3135. [GAIT:SWIMMING:29:1.21]
  3136. [GAIT:FLYING:74:0.74]
  3137. [GAIT:CRAWLING:33:0.88]
  3138. [GAIT:WALK_CRAWL:4:0.54]
  3139. [GAIT:QUADRUPED:0:1] This line tries to cancel out bipeds with quadruped gaits.
  3140. [X]
  3141. [IF:IS_QUADRUPED]
  3142. [GAIT:QUADRUPED:98:1.01]
  3143. [GAIT:CLIMBING:27:0.56]
  3144. [GAIT:SWIMMING:40:1.28]
  3145. [GAIT:CRAWLING:45:1.02]
  3146. [GAIT:WALK_CRAWL:27:0.89]
  3147. [GAIT:BIPED:0:1]
  3148. [GAIT:FLYING:0:1]
  3149. [X]
  3150. [IF:HAS_FINS]
  3151. [GAIT:SWIMMING:19:0.17]
  3152. [GAIT:CRAWLING:0:1.2]
  3153. [GAIT:WALK_CRAWL:2:1.3]
  3154. [GAIT:BIPED:0:1]
  3155. [GAIT:QUADRUPED:0:1]
  3156. [GAIT:CLIMBING:0:1]
  3157. [GAIT:FLYING:0:1]
  3158. [X]
  3159. [IF:HAS_FLIPPERS]
  3160. [GAIT:CLIMBING:0:1.21]
  3161. [GAIT:SWIMMING:3:0.22]
  3162. [GAIT:CRAWLING:2:1.2]
  3163. [GAIT:WALK_CRAWL:8:1.3]
  3164. [GAIT:BIPED:0:1]
  3165. [GAIT:QUADRUPED:0:1]
  3166. [GAIT:FLYING:0:1]
  3167. [X]
  3168. [IF:UNDER_SWIM]
  3169. [GAIT:CLIMBING:2:1.43]
  3170. [GAIT:SWIMMING:23:0.2]
  3171. [GAIT:CRAWLING:1:1.09]
  3172. [GAIT:WALK_CRAWL:4:1.13]
  3173. [GAIT:BIPED:0:1]
  3174. [GAIT:QUADRUPED:0:1]
  3175. [GAIT:FLYING:0:1]
  3176. [X]
  3177. [IF:HAS_STANCE]
  3178. [GAIT:BIPED:86:1.01]
  3179. [GAIT:QUADRUPED:96:0.93]
  3180. [GAIT:CLIMBING:91:0.98]
  3181. [GAIT:SWIMMING:73:1.09]
  3182. [GAIT:FLYING:81:0.92]
  3183. [GAIT:CRAWLING:76:0.95]
  3184. [GAIT:WALK_CRAWL:17:0.98]
  3185. [X]
  3186. [IF:HAS_TAIL]
  3187. [GAIT:BIPED:16:0.62]
  3188. [GAIT:QUADRUPED:96:0.99]
  3189. [GAIT:CLIMBING:27:0.84]
  3190. [GAIT:SWIMMING:64:0.88]
  3191. [GAIT:FLYING:6:0.74]
  3192. [GAIT:CRAWLING:48:1.0]
  3193. [GAIT:WALK_CRAWL:51:0.8]
  3194. [X]
  3195. [IF:HAS_GRASP]
  3196. [GAIT:BIPED:65:1.04]
  3197. [GAIT:QUADRUPED:0:0.63]
  3198. [GAIT:CLIMBING:38:0.72]
  3199. [GAIT:SWIMMING:16:1.17]
  3200. [GAIT:FLYING:6:0.74]
  3201. [GAIT:CRAWLING:18:0.81]
  3202. [GAIT:WALK_CRAWL:6:0.68]
  3203. [X]
  3204. [IF:CAN_FLY]
  3205. [GAIT:BIPED:11:2.41]
  3206. [GAIT:CLIMBING:35:1.39]
  3207. [GAIT:SWIMMING:13:1.52]
  3208. [GAIT:FLYING:100:1.0]
  3209. [GAIT:CRAWLING:21:1.1]
  3210. [GAIT:WALK_CRAWL:4:1.3]
  3211. [X]
  3212. [IF:CAN_SWIM]
  3213. [GAIT:BIPED:90:1.05]
  3214. [GAIT:QUADRUPED:99:1.0]
  3215. [GAIT:CLIMBING:80:0.91]
  3216. [GAIT:SWIMMING:100:1.0]
  3217. [GAIT:FLYING:72:0.74]
  3218. [GAIT:CRAWLING:84:0.99]
  3219. [GAIT:WALK_CRAWL:72:0.91]
  3220. [X]
  3221. [IF:IS_TINY]
  3222. [GAIT:BIPED:6:3.81]
  3223. [GAIT:QUADRUPED:16:1.56]
  3224. [GAIT:CLIMBING:43:1.35]
  3225. [GAIT:SWIMMING:33:1.07]
  3226. [GAIT:FLYING:81:0.92]
  3227. [GAIT:CRAWLING:37:1.14]
  3228. [GAIT:WALK_CRAWL:44:1.13]
  3229. [X]
  3230. [IF:IS_HUGE]
  3231. [GAIT:BIPED:25:0.66]
  3232. [GAIT:QUADRUPED:36:0.93]
  3233. [GAIT:CLIMBING:12:0.83]
  3234. [GAIT:SWIMMING:23:0.79]
  3235. [GAIT:FLYING:3:0.74]
  3236. [GAIT:CRAWLING:21:0.87]
  3237. [GAIT:WALK_CRAWL:21:0.89]
  3238. [X]
  3239. [IF:IS_GRAZER]
  3240. [GAIT:QUADRUPED:34:0.71]
  3241. [GAIT:CLIMBING:0:1.66]
  3242. [GAIT:SWIMMING:11:1.41]
  3243. [GAIT:CRAWLING:12:1.06]
  3244. [GAIT:BIPED:0:1]
  3245. [GAIT:FLYING:0:1]
  3246. [GAIT:WALK_CRAWL:0:1]
  3247. [X]
  3248. [IF:SLOW_LEARNER]
  3249. [GAIT:BIPED:13:0.68]
  3250. [GAIT:CLIMBING:5:0.91]
  3251. [GAIT:SWIMMING:2:0.98]
  3252. [GAIT:CRAWLING:2:0.67]
  3253. [GAIT:WALK_CRAWL:2:0.95]
  3254. [GAIT:QUADRUPED:0:1]
  3255. [GAIT:FLYING:0:1]
  3256. [X]
  3257. [IF:IS_MEANDERER]
  3258. [GAIT:BIPED:11:0.7]
  3259. [GAIT:QUADRUPED:66:0.79]
  3260. [GAIT:CLIMBING:19:0.67]
  3261. [GAIT:SWIMMING:39:1.15]
  3262. [GAIT:FLYING:10:0.74]
  3263. [GAIT:CRAWLING:37:1.05]
  3264. [GAIT:WALK_CRAWL:10:0.64]
  3265. [X]
  3266. [IF:IS_SAVAGE]
  3267. [GAIT:BIPED:6:0.62]
  3268. [GAIT:QUADRUPED:5:0.63]
  3269. [GAIT:CLIMBING:5:0.84]
  3270. [GAIT:SWIMMING:3:0.81]
  3271. [GAIT:FLYING:1:1.82]
  3272. [GAIT:CRAWLING:4:0.64]
  3273. [GAIT:WALK_CRAWL:2:1.3]
  3274. [X]
  3275. [IF:SWIMS_INNATE]
  3276. [GAIT:BIPED:60:1.14]
  3277. [GAIT:QUADRUPED:99:1.0]
  3278. [GAIT:CLIMBING:62:1.01]
  3279. [GAIT:SWIMMING:92:0.99]
  3280. [GAIT:FLYING:71:0.74]
  3281. [GAIT:CRAWLING:76:1.0]
  3282. [GAIT:WALK_CRAWL:72:0.91]
  3283. [X]
  3284. [IF:IS_VERMIN]
  3285. [GAIT:BIPED:6:3.81]
  3286. [GAIT:QUADRUPED:6:1.67]
  3287. [GAIT:CLIMBING:32:1.37]
  3288. [GAIT:SWIMMING:20:0.83]
  3289. [GAIT:FLYING:52:1.02]
  3290. [GAIT:CRAWLING:22:1.12]
  3291. [GAIT:WALK_CRAWL:29:1.2]
  3292. [X]
  3293. [IF:IS_WARBEAST]
  3294. [GAIT:QUADRUPED:18:0.65]
  3295. [GAIT:CLIMBING:5:0.56]
  3296. [GAIT:SWIMMING:7:1.2]
  3297. [GAIT:FLYING:3:0.74]
  3298. [GAIT:CRAWLING:8:0.91]
  3299. [GAIT:BIPED:0:1]
  3300. [GAIT:WALK_CRAWL:0:1] snake warbeast don't exist in vanilla.
  3301. [X]
  3302.  
  3303. The gait_avg is for use by CALCULATE_GAITS. best not to change this unless you know what you're doing.
  3304. This tells the program what the average values for each gait are.
  3305. Normally I would hardcode this sort of thing. But, in the interest of moddability, have at it.
  3306. [GAIT_AVG:BIPED:1442:1190:942:587:2440:3499]
  3307. [GAIT_AVG:QUADRUPED:1424:1066:830:396:2430:3520]
  3308. [GAIT_AVG:CLIMBING:5431:5009:4615:3625:6346:7450]
  3309. [GAIT_AVG:SWIMMING:5638:5358:5092:4289:6453:7337]
  3310. [GAIT_AVG:FLYING:1214:936:704:445:2232:3289]
  3311. [GAIT_AVG:CRAWLING:7526:7264:7022:6249:8222:8970]
  3312. [GAIT_AVG:WALK_CRAWL:6905:6623:6358:5102:7658:8481]
  3313.  
  3314. Like the body assembler, the gait calculator is so wizardly complex that I
  3315. decided to take it out of the script. I even had to write a program to write the code. okay, not
  3316. really - but I did have to write a program that assembled all the above script data for me from the vanilla raws.
  3317. You can tweak them however you want - it'll make a noticeable difference if you do a bunch of crazy
  3318. stuff to it. DO NOT CHANGE IT TOO MUCH!!! you will wind up with sloths and/or bolts of
  3319. lightning (in creature form) if you change it anywhere outside the 0.2-4 zone.
  3320. watch it. be careful. And don't delete this next line:
  3321.  
  3322. [CALCULATE_GAITS]
  3323.  
  3324. ========Other stuff========
  3325. [IF:((RND:0:1):1)]
  3326. [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.
  3327. [X]
  3328. [IF:((RND:0:1):1)]This is going to have to go higher because of gait changes.
  3329. [TAG_ADD:{SWIMS_INNATE}]
  3330. [IF:(SKIN_TYPE:SKIN):&:AMPHIBIOUS]
  3331. [ADD:DESCNOUN:amphibian]
  3332. [X]
  3333. [X]
  3334.  
  3335. ========Final description info========
  3336. [IF:IS_SOLITARY]
  3337. [IF:IS_HUNTER]
  3338. [ADD:DESCVERB:prefers to hunt alone]
  3339.  
  3340. [IF:IS_ROAMER]
  3341. [ADD:DESCVERB:patrols its territory by itself]
  3342.  
  3343. [IF:IS_GRAZER]
  3344. [ADD:DESCVERB:likes lots of room to graze]
  3345.  
  3346. [ELSEIF:IN_GROUPS]
  3347. [IF:IS_HUNTER]
  3348. [ADD:DESCVERB:hunts in packs]
  3349.  
  3350. [IF:IS_ROAMER]
  3351. [ADD:DESCVERB:roams from place to place with others]
  3352.  
  3353. [IF:IS_GRAZER]
  3354. [ADD:DESCVERB:is found grazing in groups]
  3355.  
  3356. [X]
  3357. [IF:(CONTAINS:BP_LIST:TRUNK)]
  3358. [ADD:DESCVERB:lifts (foodWord) up with its long trunk to eat]
  3359. [X]
  3360.  
  3361. ========Gender Bending========
  3362. [INT:xxx:(RND:0:1)]
  3363. [IF:xxx:0]
  3364. [TAG_ADD:{CASTE:FEMALE}]
  3365. [TAG_ADD: {FEMALE}]
  3366. [IF:((RND:0:1):1)]
  3367. [TAG_ADD: {MULTIPLE_LITTER_RARE}]
  3368. [X]
  3369. [TAG_ADD:{CASTE:MALE}]
  3370. [TAG_ADD: {MALE}]
  3371. [ELSE]
  3372. [IF:((RND:0:1):1)]
  3373. [TAG_ADD:{BODY_DETAIL_PLAN:LEATHERY_EGG_MATERIALS}]
  3374. [ELSE]
  3375. [TAG_ADD:{BODY_DETAIL_PLAN:EGG_MATERIALS}]
  3376. [X]
  3377. [TAG_ADD:{CASTE:FEMALE}]
  3378. [TAG_ADD: {FEMALE}]
  3379. [TAG_ADD: {LAYS_EGGS}]
  3380. [TAG_ADD: {EGG_MATERIAL:LOCAL_CREATURE_MAT:EGGSHEL:SOLID}]
  3381. [TAG_ADD: {EGG_MATERIAL:LOCAL_CREATURE_MAT:EGG_WHITE:LIQUID}]
  3382. [TAG_ADD: {EGG_MATERIAL:LOCAL_CREATURE_MAT:EGG_YOLK:LIQUID}]
  3383. [TAG_ADD: {EGG_SIZE:(bodySize0:=*:bodySize0:1.1)}]
  3384. [INT:cs:(RND:1:10)]
  3385. [INT:cs2:(RND:1:5)]
  3386. [cs2:=*:cs2:cs]Just showing this off. it can be as long as it needs to be. *=:cs2:cs:cs3:cs4 and it'll multiply all of them together.
  3387. [TAG_ADD: {CLUTCH_SIZE:(cs):(cs2)}]
  3388. [TAG_ADD:{CASTE:MALE}]
  3389. [TAG_ADD: {MALE}]
  3390. [X]
  3391. [TAG_ADD:{SELECT_CASTE:ALL}]
  3392. 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.
  3393. [IF:IS_FIREBREATHER]
  3394. [TAG_ADD:{SELECT_MATERIAL:ALL}]
  3395. [TAG_ADD: {MULTIPLY_VALUE:15}] Could be more random.
  3396. [TAG_ADD: {COLDDAM_POINT:NONE}]
  3397. [TAG_ADD: {HEADDAM_POINT:NONE}]
  3398. [TAG_ADD: {IGNITE_POINT:NONE}]
  3399. [TAG_ADD: {IF_EXISTS_SET_MELTING_POINT:55000}]
  3400. [TAG_ADD: {IF_EXISTS_SET_BOILING_POINT:57000}]
  3401. [TAG_ADD: {SPEC_HEAT:30000}]
  3402. [TAG_ADD:{SELECT_MATERIAL:BLOOD}]
  3403. [TAG_ADD: {MELTING_POINT:10000}]
  3404. [X]
  3405.  
  3406.  
  3407. [X] This is an intentional mistake to catch bugs.
  3408.  
  3409. ========Coloration========
  3410. [IF:(skinType:!:STONE)]
  3411. [IF:(skinType:SKIN)]
  3412. [INT:skinNum:(RND:1:skinColor)]
  3413. [TAG_ADD: {SET_TL_GROUP:BY_CAT:ALL:SKIN}]
  3414. [TAG_ADD: {TL_COLOR_MODIFIER:(skinColor:skinNum)}] some of these array values may be wrong
  3415. [TAG_ADD: {TLCM_NOUN:skin:SINGULAR}]
  3416. [TAG_SET:3:{COLOR:(colorList:skinNum)}] manually setting tags at numbers - do so only at your own risk
  3417. [ADD:DESCADJ:(colorToString:skinColor:skinNum)}] internal function. takes a DF color (0:0:1, for instance) and turns it into its corresponding color.
  3418. [ELSEIF:(skinType:CHITIN)]
  3419. [TAG_ADD: {SET_TL_GROUP:BY_CAT:ALL:CHITIN}]
  3420. [TAG_ADD: {TL_COLOR_MODIFIER:BLACK:1}]
  3421. [TAG_ADD: {TLCM_NOUN:exterior:SINGULAR}]
  3422. [TAG_SET:3:{COLOR:0:0:1}]
  3423. [ADD:DESCADJ:black}]
  3424. [ELSEIF:(skinType:SCALE)]
  3425. [INT:skinNum:(RND:1:scaleList)]
  3426. [TAG_ADD: {SET_TL_GROUP:BY_CAT:ALL:SCALE}]
  3427. [TAG_ADD: {TL_COLOR_MODIFIER:(scaleList:skinNum)}]
  3428. [TAG_ADD: {TLCM_NOUN:scales:PLURAL}]
  3429. [TAG_SET:3:{COLOR:(scaleColor:skinNum)}]
  3430. [ADD:DESCADJ:(colorToString:scaleList:skinNum)]
  3431. [ELSEIF:(skinType:FLESH)]
  3432. [INT:skinNum:(RND:1:skinColor)]
  3433. [TAG_ADD: {SET_TL_GROUP:BY_CAT:ALL:FLESH}]
  3434. [TAG_ADD: {TL_COLOR_MODIFIER:(skinColor:skinNum)}]
  3435. [TAG_ADD: {TLCM_NOUN:flesh:SINGULAR}]
  3436. [TAG_SET:3:{COLOR:(scaleColor:skinNum)}]
  3437. [ADD:DESCADJ:(colorToString:skinColor:skinNum)}]
  3438. [ELSEIF:(skintype:WET)]
  3439. [INT:skinNum:(RND:1:slimeColor)]
  3440. [TAG_ADD: {SET_TL_GROUP:BY_CAT:ALL:BLOOD}]
  3441. [TAG_ADD: {TL_COLOR_MODIFIER:(slimeColor:skinNum)}]
  3442. [TAG_ADD: {TLCM_NOUN:(thisType):SINGULAR}] wayyyy, up there, thisType is the type of goo that the creatuer is made of.
  3443. [TAG_SET:3:{COLOR:(dumbList:skinNum)}]
  3444. [ADD:DESCADJ:(colorToString:slimeColor:skinNum)}]
  3445. [X]
  3446. [IF:ADD_HAIR]
  3447. [INT:hairInt:(RND:1:hairList)]
  3448. [TAG_ADD: {SET_TL_GROUP:BY_CAT:ALL:HAIR}]
  3449. [TAG_ADD: {TL_COLOR_MODIFIER:(hairList:hairInt)}]
  3450. [TAG_ADD: {TLCM_NOUN:hair:SINGULAR}]
  3451. [IF:(R01)] I don't remember what this calls at the moment.
  3452. [ADD:DESCADJ:SET_LAST:(colorToString:hairList:hairInt)] ooh, funky. This is gettin' all complex up in here.
  3453. [X]
  3454. [X]
  3455. [IF:HAS_FEATHER]
  3456. [INT:featherInt:(RND:1:featherList)] Alternate option: using a list as an integer returns the list size
  3457. [TAG_ADD: {SET_TL_GROUP:BY_CAT:ALL:FEATHER}]
  3458. [TAG_ADD: {TL_COLOR_MODIFIER:(featherList:featherInt)}]
  3459. [TAG_ADD: {TLCM_NOUN:feathers:PLURAL}]
  3460. [IF:(R01)]
  3461. [ADD:DESCADJ:SET_LAST:(colorToString:featherList:featherInt)]
  3462. [X]
  3463. [X]
  3464. [IF:(EYE_COUNT:>:0)]
  3465. [INT:eyeColorNum:(RND:1:eyeList)]
  3466. [STR:temp0:(colorToString:eyeList:eyeColorNum)]
  3467. [IF:((CONTAINS:temp0: ):FALSE):&:(temp0:!:black)] the CONTAINS call can be used on regular strings as well.
  3468. [ADD:PREFLIST:(temp0) eyes]
  3469. [IF:(R01)]
  3470. [ADD:DESCADJ:(temp0) eyes]
  3471. [ELSE]
  3472. [ADD:DESCDESC:(temp0) eyes]
  3473. [X]
  3474. [X]
  3475. [IF:(skinType:!:FLESH):&:(skinType:!:WET):&:(skinType:!:STONE)]
  3476. [IF:(EYE_COUNT:>:1):&:(CONTAINS:BP_LIST:BODY_EYE:FALSE)]
  3477. [TAG_ADD: {SET_TL_GROUP:BY_CAT:EYE:EYE}]
  3478. [TAG_ADD: {TL_COLOR_MODIFIER:(eyeList:eyeColorNum)}]
  3479. [TAG_ADD: {TLCM_NOUN:eyes:PLURAL}]
  3480. [ELSEIF:(EYE_COUNT:1)]
  3481. [TAG_ADD: {SET_TL_GROUP:BY_CAT:ALL:EYE}]
  3482. [TAG_ADD: {TL_COLOR_MODIFIER:(eyeList:eyeColorNum)}]
  3483. [TAG_ADD: {TLCM_NOUN:eye:SINGULAR}]
  3484. [X]
  3485. [X]
  3486. [ELSE]
  3487. [TAG_ADD: {SET_TL_GROUP:BY_CAT:ALL:ROCK}]
  3488. [TAG_ADD: {TL_COLOR_MODIFIER:GRAY}]
  3489. [TAG_ADD: {TLCM_NOUN:stone:SINGULAR}]
  3490. [TAG_SET:3:{COLOR:0:0:1}]
  3491. [X]
  3492. And we're finally done with colors.
  3493. [IF:((RND:0:277):<:77)]
  3494. [TAG_ADD:{SELECT_MATERIAL:ALL}]
  3495. [TAG_ADD: {MULTIPLY_VALUE:(RND:2:4)}]
  3496. [ADD:DESCVERB:is valuable for trade]
  3497. [X]
  3498.  
  3499. I feel like commenting things today, so here's another comment.
  3500.  
  3501. ========Preflist and Description updates========
  3502. [IF:(CONTAINS:BP_DUMP:SKULL)]the "BP_dump" is a string with a list of all the bodyparts.
  3503. [ADD:PREFLIST:skulls]
  3504. [ADD:DESCDESC:a (skullList) skull]
  3505. Seems like this would appear way too often. May be a sign that I need to fix things up.
  3506. We'll wait and see.
  3507. By the way, while you're here, listen to this: https://www.youtube.com/watch?v=pfAuWjCXwnw
  3508. [X]
  3509. [IF:(CONTAINS:BP_DUMP:HORN)]
  3510. [ADD:PREFLIST:horns]
  3511. [X]
  3512. [IF:(CONTAINS:BP_DUMP:FLIPPER)]
  3513. [ADD:PREFLIST:flippers]
  3514. [ADD:DESCDESC:(skullList) flippers]
  3515. [X]
  3516. [IF:(CONTAINS:BP_DUMP:NECK):&:(CONTAINS:BP_DUMP:NECKS):FALSE]
  3517. [ADD:PREFLIST:necks]
  3518. [ADD:DESCDESC:a (neckList) neck]
  3519. [X]
  3520. [IF:(CONTAINS:BP_DUMP:8_SIMPLE_HEAD_ARMS)]
  3521. [ADD:PREFLIST:many (neckList) arms]
  3522. [ADD:PREFLIST:intelligence]
  3523. [ADD:DESCVERB:is the most clever of its kind] I may need to remove these. As I recall, they confused someone in the main thread.
  3524. I was really just stealing the description from octopi.
  3525. [X]
  3526. [IF:(CONTAINS:BP_DUMP:PROBOSCIS)]
  3527. [ADD:PREFLIST:ability to feast on blood]
  3528. [DECRIPTION:VERB:sucks blood from its host with its long nose]
  3529. [X]
  3530. [IF:(CONTAINS:BP_DUMP:UPPERBODY_PINCERS)]
  3531. [ADD:PREFLIST:strangeList1)(strangeList1) (strangeList2) appearance]
  3532. [ADD:PREFLIST:pincers]
  3533. [ADD:DESCDESC:pincers]
  3534. [X]
  3535. [IF:(CONTAINS:BP_DUMP:BASIC_HEAD):&:(CONTAINS:BOYPART_DUMP:MOUTH):&:(CONTAINS:BP_DUMP:TEETH)]
  3536. [ADD:DESCDESC:an enormous toothy maw instead of a head]
  3537. [X]
  3538. [IF:(CONTAINS:BP_DUMP:TUSK)]
  3539. [ADD:PREFLIST:TUSK]
  3540. [DESCRIPTION:VERB]
  3541. [X]
  3542. [IF:(CONTAINS:BP_DUMP:SIX_TENTACLES)]
  3543. [ADD:PREFLIST:strangeList1)(strangeList1) (strangeList2) appearance]This was "horrifying freakish appearance" - a favorite of Toady's.
  3544. [ADD:DESCVERB:terrifies the (LAND_OR_SEA) through which it roams] land_or_sea checks the biome info and returns land, or waters.
  3545. [ADD:DESCDESC:(tentacleList)]
  3546. [X]
  3547. [IF:(CONTAINS:BP_DUMP:TEETH)]
  3548. [ADD:PREFLIST:teeth]
  3549. [ADD:DESCDESC:(toothList1)(toothList2) teeth]
  3550. [IF:(CONTAINS:BP_DUMP:GENERIC_TEETH_WITH_LARGE_EYE_TEETH):&:(CONTAINS:BP_DUMP:MOUTH)]
  3551. [ADD:DESCADJ:long-toothed]
  3552. [ADD:DESCADJ:fanged]
  3553. [ADD:PREFLIST:toothy maw]
  3554. [X]
  3555. [X]
  3556. [IF:(CONTAINS:BP_DUMP:EYES):|:(CONTAINS:BP_DUMP:BODY_EYE;)]I really didn't want to have to do this, but now I don't really have a choice. All instances of ; get translated into :. And, I'll admit, I really love being able to just type anywhere for it to be a comment. It's relaxing, in a way. Better than putting 'before everything or //before everything. As an added bonus, it encourages you to comment your code.
  3557. [ADD:PREFLIST:eyes]
  3558. [INT:EYE_COUNT]
  3559. [IF:(CONTAINS:BP_DUMP:EYESTALK)]
  3560. [EYE_COUNT:+=:2] += is different from =+. += adds the following to the integer at far left (EYE_COUNT in this case). =+ just adds everything to the right together.
  3561. [X]
  3562. [IF:(CONTAINS:BP_DUMP:4EYES)]
  3563. [EYE_COUNT+=:4] yay for cheap math.
  3564. [X]
  3565. [IF:(CONTAINS:BP_DUMP:3EYES)]
  3566. [EYE_COUNT:+=:3]
  3567. [X]
  3568. [IF:(CONTAINS:BP_DUMP:2EYES)]
  3569. [EYE_COUNT:+=:2]
  3570. [X]
  3571. [IF:(EYE_COUNT:0)]
  3572. [EYE_COUNT:1]
  3573. [X]
  3574. [INT:ec:(RND:0:eyeAdj)]
  3575. [IF:(EYE_COUNT:2)]
  3576. [ADD:DESCDESC:(size)eyes] this used to be "large eyes to penetrate the darkness". Now it's not. For good reason. It was confusing people.
  3577. [ELSEIF:(EYE_COUNT:1)]
  3578. [ADD:DESCDESC:a single (eyeAdj)eye]
  3579. [ELSEIF:(EYE_COUNT:3)]
  3580. [ADD:DESCDESC:three (eyeAdj:ec)eyes]
  3581. [ADD:PREFLIST:three (eyeAdj:ec)eyes]
  3582. [ELSEIF:(EYE_COUNT:4)]
  3583. [ADD:DESCDESC:four (eyeAdj:ec)eyes]
  3584. [ADD:PREFLIST:four (eyeAdj:ec)eyes]
  3585. [ELSEIF:(EYE_COUNT:5)]
  3586. [ADD:DESCDESC:five (eyeAdj:ec)eyes]
  3587. [ADD:PREFLIST:five (eyeAdj:ec)eyes]
  3588. [ADD:PREFLIST:(strangeList2) appearance]
  3589. [ELSEIF:(EYE_COUNT:6)]
  3590. [ADD:DESCDESC:six (eyeAdj:ec)eyes]
  3591. [ADD:PREFLIST:six (eyeAdj:ec)eyes]
  3592. [ADD:PREFLIST:(strangeList1) (strangeList2) appearance]
  3593. [ELSEIF:(EYE_COUNT:7)]
  3594. [ADD:DESCDESC:seven (eyeAdj:ec)eyes]
  3595. [ADD:PREFLIST:seven (eyeAdj:ec)eyes]
  3596. [ADD:PREFLIST:(strangelist2) appearance]
  3597. [ELSEIF:(EYE_COUNT:8)]
  3598. [ADD:DESCDESC:eight (eyeAdj:ec)eyes]
  3599. [ADD:DESCDESC:eight (eyeAdj:ec)eyes] two entries because eight eyes? that's important.
  3600. [ADD:PREFLIST:eight (eyeAdj:ec)eyes]
  3601. [ADD:PREFLIST:eight (eyeAdj:ec)eyes]
  3602. [ELSE] more than eight eyes - important to remember and stuff.
  3603. [ADD:DESCDESC:(largeNumer) (eyeAdj:ec)eyes]
  3604. [ADD:DESCDESC:(largeNumer) (eyeAdj:ec)eyes]
  3605. [ADD:PREFLIST:(largeNumer) (eyeAdj:ec)eyes]
  3606. [ADD:PREFLIST:(largeNumer) (eyeAdj:ec)eyes]
  3607. [ADD:PREFLIST:(strangelist2) appearance]
  3608. [X]
  3609. [ELSE] no eyes
  3610. [ADD:DESCDESC:no eyes]
  3611. [ADD:DESCDESC:a (strangeList2) lack of eyes]
  3612. [X]
  3613. [IF:(CONTAINS:BP_DUMP:MOUTH)]
  3614. [ADD:PREFLIST:mouths]
  3615. [IF:(CONTAINS:BP_DUMP:TENTACLE_MOUTH):FALSE]
  3616. [ADD:DESCDESC:a (mouthAdj) mouth]
  3617. [X]
  3618. [ELSE]
  3619. [IF:(CONTAINS:BP_DUMP:PROBOSCIS):FALSE]
  3620. [ADD:DESCVERB:(mouthlessCreature)]
  3621. [X]
  3622. [X]
  3623. [IF:(CONTAINS:BP_DUMP:BEAK)]
  3624. [INT:bn:(RND:0:beakList)]
  3625. [ADD:PREFLIST:(beakList:bn) beaks] this is a test comment
  3626. [ADD:DESCDESC:(beakList:bn) beaks]
  3627. [X]
  3628. [IF:(CONTAINS:BP_DUMP:FOUR_TENTACLE)]
  3629. [ADD:DESCDESC:four (tentacleList)]
  3630. [X]
  3631. [IF:(CONTAINS:BP_DUMP:BODY_HEAD):&:(CONTAINS:BP_DUMP:MOUTH)]
  3632. [ADD:DESCNOUN:mouth]
  3633. [X]
  3634. [IF:(CONTAINS:BP_DUMP:BODY_HEAD):&:(CONTAINS:BP_DUMP:2TUSKS):&:(CONTAINS:BP_DUMP:MOUTH)]
  3635. [ADD:DESCDESC:a body mostly taken up by its tusked mouth]
  3636. [X]
  3637. [IF:(CONTAINS:BP_DUMP:EARS)]
  3638. [INT:el:(RND:0:earList)]
  3639. [ADD:PREFLIST:(earList:el) ears]
  3640. [ADD:DESCDESC:(earList:el) ears]
  3641. [X]
  3642. [IF:(CONTAINS:BP_DUMP:FACIAL_FEATURES)]
  3643. [ADD:PREFLIST:resounding hoots]
  3644. [X]
  3645. [IF:HEAD_BODY:&:(CONTAINS:BP_CAT:EYE):&:(CONTAINS:BP_CAT:EAR):&:(CONTAINS:BP_CAT:NOSE):&:(CONTAINS:BP_CAT:MOUTH)]rare, to say the least
  3646. [ADD:DESCDESC:a body shaped as the head of a man]
  3647. [X]
  3648. [IF:(CONTAINS:BP_DUMP:LARGE_MANDIBLES):&:(CONTAINS:BP_CAT:MOUTH):&:(CONTAINS:BP_CAT:EYE)]
  3649. [ADD:DESCDESC:the head of an insect]
  3650. [X]
  3651. [IF:(CONTAINS:BP_DUMP:7HEADNECKS)]
  3652. [ADD:DESCDESC:seven biting heads]
  3653. [ADD:PREFLIST:seven heads]
  3654. [X]
  3655. [IF:(CONTAINS:BP_DUMP:TAIL_STANCE)]
  3656. [ADD:DESCDESC:the tail of a fish instead of legs]
  3657. [ADD:PREFLIST:legs]
  3658. [X]
  3659. [IF:(CONTAINS:BP_DUMP:LARGE_MANDIBLES)]
  3660. [ADD:DESCDESC:large mandibles]
  3661. [X]
  3662. [IF:(CONTAINS:BP_CAT:TAIL)]
  3663. [IF:((RND:0:1):0)]
  3664. [ADD:DESCDESC:(tailList) tail]
  3665. [X]
  3666. [X]
  3667. [IF:(CONTAINS:BP_DUMP:2HEAD_HORN)]
  3668. [ADD:DESCDESC:(hornList)]
  3669. [X]
  3670. [IF:(CONTAINS:BP_DUMP:STALK)]
  3671. [ADD:DESCDESC:two (neckList) eyestalks]
  3672. [X]
  3673. [IF:(CONTAINS:BP_DUMP:TENTACLE_MOUTH)]
  3674. [ADD:DESCDESC:two mouths at the end of a pair of tentacles]
  3675. [X]
  3676. [IF:(CONTAINS:BP_DUMP:WINGS)]not done yet - needs fixing
  3677. [IF:(FLIES:FALSE)]
  3678. [IF:(R01)]
  3679. [ADD:DESCDESC:wings that fall limp at its side]
  3680. [ELSE]
  3681. [IF:(R01)]
  3682. [ADD:DESCDESC:heavy, useless wings]
  3683. [ELSE]
  3684. [ADD:DESCDESC:tiny, worthless wings]
  3685. [X]
  3686. [X]
  3687. [ADD:DESCADJ:FLIGHTLESS]
  3688. [ELSE]
  3689. [IF:(R01)]
  3690. [ADD:DESCVERB:flies with bat wings]
  3691. [ELSE]
  3692. [ADD:DESCDESC:great, majestic wings]
  3693. [X]
  3694. [X]
  3695. [X]
  3696. [IF:(CONTAINS:BP_DUMP:4ARMS_STANCE)]
  3697. [IF:(CONTAINS:BP_DUMP:BASIC_1PARTBODY)]
  3698. [ADD:DESCVERB:crawls along the ground with its four hands]
  3699. [ELSEIF:(CONTAINS:BP_DUMP:BODY_HEAD)]
  3700. [ADD:DESCVERB:crawls along with four (neckList) arms]
  3701. [ELSE]
  3702. [ADD:DESCVERB:crawls along the ground]
  3703. [X]
  3704. [X]
  3705. [IF:(CONTAINS:BP_DUMP:BODY_WITH_HEAD_FLAG):&:(CONTAINS:BP_CAT:MOUTH)]
  3706. [ADD:DESCVERB:eats with a mouth on the bottom of its body]
  3707. [X]
  3708. [IF:(TOE_COUNT:>:0)]
  3709. [ADD:DESCDESC:(intToString:TOE_COUNT) toes on each foot]
  3710. [X]
  3711. [IF:(FINGER_COUNT:>:0)]
  3712. [ADD:DESCDESC:(intToString:FINGER_COUNT) fingers on each hand]
  3713. [X]
  3714. [IF:(CONTAINS:BP_DUMP:QUADRUPED):&:(CONTAINS:BP_DUMP:5TOES_RQ_ANON)]
  3715. [ADD:DESCDESC:hands at the end of its forelimbs]
  3716. [X]
  3717.  
  3718. ==NEW DESC STUFF==
  3719.  
  3720.  
  3721.  
  3722. Not done yet
  3723.  
  3724.  
  3725.  
  3726. ========Now we reset the stuff at the beginning======
  3727. Don't edit or remove any of this unless you really know what you're doing.
  3728. Most of this is controlled internally because there's nothing here you can really customize.
  3729. [GENERATE_DESCRIPTIONS]
  3730. [GENERATE_PREFERENCES]
  3731. [GENERATE_NAME:tile:bodySize2] Generates a new name - an (official) name - for the creature. Also re-assigns the creature tile. Also checks bodysize.
  3732. [GENERATE_PREFERENCES] Generates a small list of preferences. May give multiple, depending on certain things.
  3733. [WRITE_CREATURE] The big wheel. Writes your new creature to a file and loops it out. The circle of life goes on.
  3734. [END_CREATURE_CODE]
  3735. And it is finished.
  3736.  
  3737. ========CIV GENERATION MESS========
  3738. And it's not actually finished.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement