You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

387 lines
6.1 KiB

  1. const balance = {
  2. rat: {
  3. clawChance: 3
  4. },
  5. stinktooth: {
  6. runestoneChance: 10,
  7. recipeChance: 3,
  8. shankChance: 0.1
  9. },
  10. bandit: {
  11. keyChance: 1
  12. },
  13. bera: {
  14. recipeChance: 3,
  15. keyChance: 3
  16. }
  17. };
  18. module.exports = {
  19. name: 'Sewer',
  20. level: [11, 13],
  21. resources: {
  22. Stinkcap: {
  23. type: 'herb',
  24. max: 1
  25. }
  26. },
  27. mobs: {
  28. default: {
  29. faction: 'fjolgard',
  30. deathRep: -5
  31. },
  32. rat: {
  33. faction: 'fjolgard',
  34. grantRep: {
  35. fjolgard: 6
  36. },
  37. level: 11,
  38. regular: {
  39. drops: {
  40. rolls: 1,
  41. noRandom: true,
  42. alsoRandom: true,
  43. blueprints: [{
  44. chance: balance.rat.clawChance,
  45. name: 'Rat Claw',
  46. material: true,
  47. sprite: [3, 0],
  48. spritesheet: 'images/materials.png'
  49. }]
  50. }
  51. },
  52. rare: {
  53. name: 'Enraged Rat',
  54. cell: 24
  55. }
  56. },
  57. stinktooth: {
  58. faction: 'hostile',
  59. grantRep: {
  60. fjolgard: 15
  61. },
  62. level: 13,
  63. cron: '*/10 * * * *',
  64. regular: {
  65. hpMult: 10,
  66. dmgMult: 3,
  67. drops: {
  68. rolls: 3,
  69. noRandom: true,
  70. alsoRandom: true,
  71. magicFind: [2000, 125],
  72. blueprints: [{
  73. chance: balance.stinktooth.shankChance,
  74. name: 'Putrid Shank',
  75. level: 13,
  76. quality: 4,
  77. slot: 'oneHanded',
  78. type: 'Dagger',
  79. implicitStat: {
  80. stat: 'lifeOnHit',
  81. value: [5, 20]
  82. },
  83. effects: [{
  84. type: 'castSpellOnHit',
  85. rolls: {
  86. i_chance: [5, 20],
  87. spell: 'smokeBomb'
  88. }
  89. }]
  90. }, {
  91. chance: balance.stinktooth.recipeChance,
  92. type: 'recipe',
  93. name: 'Recipe: Rune of Whirlwind',
  94. profession: 'etching',
  95. teaches: 'runeWhirlwind'
  96. }, {
  97. chance: balance.stinktooth.runestoneChance,
  98. name: 'Muddy Runestone',
  99. material: true,
  100. sprite: [6, 0],
  101. spritesheet: 'images/materials.png'
  102. }]
  103. }
  104. },
  105. rare: {
  106. count: 0
  107. },
  108. spells: [{
  109. type: 'melee',
  110. statMult: 1,
  111. damage: 0.08
  112. }, {
  113. type: 'whirlwind',
  114. range: 2,
  115. damage: 0.2,
  116. cdMax: 40
  117. }, {
  118. type: 'summonSkeleton',
  119. killMinionsOnDeath: false,
  120. killMinionsBeforeSummon: false,
  121. minionsDieOnAggroClear: true,
  122. needLos: false,
  123. sheetName: 'mobs',
  124. cdMax: 60,
  125. positions: [[30, 30], [40, 30], [30, 40], [40, 40]],
  126. summonTemplates: [{
  127. name: 'Biter Rat',
  128. cell: 16,
  129. hpPercent: 20,
  130. dmgPercent: 0.1,
  131. basicSpell: 'melee'
  132. }, {
  133. name: 'Spitter Rat',
  134. cell: 24,
  135. hpPercent: 10,
  136. dmgPercent: 0.2,
  137. basicSpell: 'projectile'
  138. }]
  139. }, {
  140. type: 'charge',
  141. castOnEnd: 1,
  142. cdMax: 50,
  143. targetRandom: true,
  144. damage: 0.3
  145. }, {
  146. type: 'fireblast',
  147. range: 2,
  148. damage: 0.001,
  149. pushback: 2,
  150. procCast: true
  151. }]
  152. },
  153. bandit: {
  154. faction: 'hostile',
  155. grantRep: {
  156. fjolgard: 18
  157. },
  158. level: 11,
  159. regular: {
  160. drops: {
  161. noRandom: true,
  162. alsoRandom: true,
  163. blueprints: [{
  164. chance: balance.bandit.keyChance,
  165. type: 'key',
  166. noSalvage: true,
  167. name: 'Rusted Key',
  168. keyId: 'rustedSewer',
  169. singleUse: true,
  170. sprite: [12, 1],
  171. quantity: 1
  172. }]
  173. }
  174. },
  175. rare: {
  176. name: 'Cutthroat'
  177. }
  178. },
  179. 'dire rat': {
  180. level: 13,
  181. walkDistance: 0,
  182. faction: 'hostile',
  183. grantRep: {
  184. fjolgard: 22
  185. },
  186. regular: {
  187. hpMult: 5,
  188. dmgMult: 1.2
  189. },
  190. rare: {
  191. count: 0
  192. }
  193. },
  194. 'bera the blade': {
  195. faction: 'hostile',
  196. grantRep: {
  197. fjolgard: 25
  198. },
  199. level: 14,
  200. walkDistance: 0,
  201. regular: {
  202. hpMult: 3,
  203. dmgMult: 1.5,
  204. drops: {
  205. rolls: 1,
  206. noRandom: true,
  207. alsoRandom: true,
  208. blueprints: [{
  209. chance: balance.bera.recipeChance,
  210. type: 'recipe',
  211. name: 'Recipe: Rune of Ambush',
  212. profession: 'etching',
  213. teaches: 'runeAmbush'
  214. }, {
  215. chance: balance.bera.keyChance,
  216. type: 'key',
  217. noSalvage: true,
  218. name: 'Rusted Key',
  219. keyId: 'rustedSewer',
  220. singleUse: true,
  221. sprite: [12, 1],
  222. quantity: 1
  223. }]
  224. }
  225. },
  226. rare: {
  227. count: 0
  228. }
  229. }
  230. },
  231. objects: {
  232. 'mudfish school': {
  233. max: 9,
  234. type: 'fish',
  235. quantity: [6, 12]
  236. },
  237. sewerdoor: {
  238. properties: {
  239. cpnDoor: {
  240. autoClose: 171,
  241. locked: true,
  242. key: 'rustedSewer',
  243. destroyKey: true
  244. }
  245. }
  246. },
  247. bubbles: {
  248. components: {
  249. cpnParticles: {
  250. simplify: function () {
  251. return {
  252. type: 'particles',
  253. blueprint: {
  254. color: {
  255. start: ['51fc9a', '80f643'],
  256. end: ['386646', '44cb95']
  257. },
  258. scale: {
  259. start: {
  260. min: 2,
  261. max: 8
  262. },
  263. end: {
  264. min: 2,
  265. max: 4
  266. }
  267. },
  268. speed: {
  269. start: {
  270. min: 2,
  271. max: 6
  272. },
  273. end: {
  274. min: 0,
  275. max: 4
  276. }
  277. },
  278. lifetime: {
  279. min: 1,
  280. max: 3
  281. },
  282. alpha: {
  283. start: 0.5,
  284. end: 0
  285. },
  286. randomScale: true,
  287. randomSpeed: true,
  288. chance: 0.2,
  289. randomColor: true,
  290. spawnType: 'rect',
  291. blendMode: 'screen',
  292. spawnRect: {
  293. x: -40,
  294. y: -40,
  295. w: 80,
  296. h: 80
  297. }
  298. }
  299. };
  300. }
  301. }
  302. }
  303. },
  304. gas: {
  305. components: {
  306. cpnParticles: {
  307. simplify: function () {
  308. return {
  309. type: 'particles',
  310. blueprint: {
  311. color: {
  312. start: ['c0c3cf', '80f643'],
  313. end: ['386646', '69696e']
  314. },
  315. scale: {
  316. start: {
  317. min: 18,
  318. max: 64
  319. },
  320. end: {
  321. min: 8,
  322. max: 24
  323. }
  324. },
  325. speed: {
  326. start: {
  327. min: 2,
  328. max: 6
  329. },
  330. end: {
  331. min: 0,
  332. max: 4
  333. }
  334. },
  335. lifetime: {
  336. min: 4,
  337. max: 24
  338. },
  339. alpha: {
  340. start: 0.05,
  341. end: 0
  342. },
  343. randomScale: true,
  344. randomSpeed: true,
  345. chance: 0.02,
  346. randomColor: true,
  347. spawnType: 'rect',
  348. blendMode: 'screen',
  349. spawnRect: {
  350. x: -80,
  351. y: -80,
  352. w: 160,
  353. h: 160
  354. }
  355. }
  356. };
  357. }
  358. }
  359. }
  360. }
  361. }
  362. };