enemies.json 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736
  1. [
  2. {
  3. "id": "normal_zombie",
  4. "name": "普通僵尸",
  5. "type": "basic",
  6. "stats": {
  7. "health": 35,
  8. "maxHealth": 35,
  9. "defense": 0,
  10. "speed": 30.0
  11. },
  12. "movement": {
  13. "pattern": "direct",
  14. "speed": 30.0,
  15. "patrolRange": 100,
  16. "chaseRange": 200,
  17. "rotationSpeed": 180.0,
  18. "moveType": "straight",
  19. "swingAmplitude": 0.0,
  20. "swingFrequency": 0.0,
  21. "speedVariation": 0.1
  22. },
  23. "combat": {
  24. "attackDamage": 1,
  25. "attackRange": 1.0,
  26. "attackSpeed": 1.0,
  27. "canBlock": false,
  28. "blockChance": 0.0,
  29. "blockDamageReduction": 0.5,
  30. "attackCooldown": 1.0,
  31. "attackType": "melee",
  32. "attackDelay": 1.0,
  33. "weaponType": "none",
  34. "projectileType": "none",
  35. "projectileSpeed": 100.0
  36. },
  37. "visualConfig": {
  38. "spritePath": "Animation/EnemyAni/001",
  39. "scale": 1.0,
  40. "animationSpeed": 1.0,
  41. "flipX": false,
  42. "tint": "#FFFFFF",
  43. "animations": {
  44. "idle": "idle",
  45. "walk": "walk",
  46. "attack": "attack",
  47. "death": "dead"
  48. },
  49. "weaponProp": "props/baseball_bat"
  50. },
  51. "audioConfig": {
  52. "attackSound": "enemy_attack",
  53. "deathSound": "enemy_death",
  54. "hitSound": "enemy_hit",
  55. "walkSound": "audio/zombie_walk",
  56. "blockSound": "",
  57. "stealthSound": "",
  58. "armorBreakSound": "",
  59. "fuseSound": "",
  60. "volume": 1.0
  61. }
  62. },
  63. {
  64. "id": "roadblock_zombie",
  65. "name": "路障僵尸",
  66. "type": "armored",
  67. "stats": {
  68. "health": 50,
  69. "maxHealth": 50,
  70. "defense": 1,
  71. "speed": 25.0
  72. },
  73. "movement": {
  74. "pattern": "direct",
  75. "speed": 25.0,
  76. "patrolRange": 100,
  77. "chaseRange": 200,
  78. "rotationSpeed": 180.0,
  79. "moveType": "straight",
  80. "swingAmplitude": 0.0,
  81. "swingFrequency": 0.0,
  82. "speedVariation": 0.1
  83. },
  84. "combat": {
  85. "attackDamage": 1,
  86. "attackRange": 1.0,
  87. "attackSpeed": 1.0,
  88. "canBlock": false,
  89. "blockChance": 0.0,
  90. "blockDamageReduction": 0.5,
  91. "attackCooldown": 1.0,
  92. "attackType": "melee",
  93. "attackDelay": 1.0,
  94. "weaponType": "none",
  95. "projectileType": "none",
  96. "projectileSpeed": 100.0
  97. },
  98. "visualConfig": {
  99. "spritePath": "Animation/EnemyAni/002",
  100. "scale": 1.0,
  101. "animationSpeed": 1.0,
  102. "flipX": false,
  103. "tint": "#FFFFFF",
  104. "animations": {
  105. "idle": "idle",
  106. "walk": "walk",
  107. "attack": "attack",
  108. "death": "dead"
  109. },
  110. "weaponProp": "props/magic_staff"
  111. },
  112. "audioConfig": {
  113. "attackSound": "enemy_attack",
  114. "deathSound": "enemy_death",
  115. "hitSound": "enemy_hit",
  116. "walkSound": "audio/roadblock_walk",
  117. "blockSound": "",
  118. "stealthSound": "",
  119. "armorBreakSound": "",
  120. "fuseSound": "",
  121. "volume": 1.0
  122. }
  123. },
  124. {
  125. "id": "wandering_zombie",
  126. "name": "漫步僵尸",
  127. "type": "wanderer",
  128. "stats": {
  129. "health": 42,
  130. "maxHealth": 42,
  131. "defense": 0,
  132. "speed": 35.0
  133. },
  134. "movement": {
  135. "pattern": "direct",
  136. "speed": 35.0,
  137. "patrolRange": 100,
  138. "chaseRange": 200,
  139. "rotationSpeed": 180.0,
  140. "moveType": "sway",
  141. "swingAmplitude": 20.0,
  142. "swingFrequency": 2.0,
  143. "speedVariation": 0.2
  144. },
  145. "combat": {
  146. "attackDamage": 1,
  147. "attackRange": 1.0,
  148. "attackSpeed": 1.0,
  149. "canBlock": false,
  150. "blockChance": 0.0,
  151. "blockDamageReduction": 0.5,
  152. "attackCooldown": 1.0,
  153. "attackType": "melee_weapon",
  154. "attackDelay": 1.0,
  155. "weaponType": "baseball_bat",
  156. "projectileType": "none",
  157. "projectileSpeed": 100.0
  158. },
  159. "visualConfig": {
  160. "spritePath": "Animation/EnemyAni/003",
  161. "scale": 1.0,
  162. "animationSpeed": 1.0,
  163. "flipX": false,
  164. "tint": "#FFFFFF",
  165. "animations": {
  166. "idle": "idle",
  167. "walk": "walk",
  168. "attack": "attack",
  169. "death": "dead"
  170. },
  171. "weaponProp": "props/bow"
  172. },
  173. "audioConfig": {
  174. "attackSound": "enemy_attack",
  175. "deathSound": "enemy_death",
  176. "hitSound": "enemy_hit",
  177. "walkSound": "audio/wandering_walk",
  178. "blockSound": "",
  179. "stealthSound": "",
  180. "armorBreakSound": "",
  181. "fuseSound": "",
  182. "volume": 1.0
  183. }
  184. },
  185. {
  186. "id": "mage_zombie",
  187. "name": "法师僵尸",
  188. "type": "ranged_caster",
  189. "stats": {
  190. "health": 25,
  191. "maxHealth": 25,
  192. "defense": 0,
  193. "speed": 15.0
  194. },
  195. "movement": {
  196. "pattern": "direct",
  197. "speed": 15.0,
  198. "patrolRange": 100,
  199. "chaseRange": 200,
  200. "rotationSpeed": 180.0,
  201. "moveType": "straight",
  202. "swingAmplitude": 0.0,
  203. "swingFrequency": 0.0,
  204. "speedVariation": 0.1
  205. },
  206. "combat": {
  207. "attackDamage": 1,
  208. "attackRange": 1.0,
  209. "attackSpeed": 1.0,
  210. "canBlock": false,
  211. "blockChance": 0.0,
  212. "blockDamageReduction": 0.5,
  213. "attackCooldown": 1.0,
  214. "attackType": "magic_projectile",
  215. "attackDelay": 1.0,
  216. "weaponType": "none",
  217. "projectileType": "magic_bolt",
  218. "projectileSpeed": 50.0
  219. },
  220. "visualConfig": {
  221. "spritePath": "Animation/EnemyAni/004",
  222. "scale": 1.0,
  223. "animationSpeed": 1.0,
  224. "flipX": false,
  225. "tint": "#FFFFFF",
  226. "animations": {
  227. "idle": "idle",
  228. "walk": "walk",
  229. "attack": "attack",
  230. "death": "dead"
  231. },
  232. "weaponProp": ""
  233. },
  234. "audioConfig": {
  235. "attackSound": "enemy_attack",
  236. "deathSound": "enemy_death",
  237. "hitSound": "enemy_hit",
  238. "walkSound": "audio/mage_walk",
  239. "blockSound": "",
  240. "stealthSound": "",
  241. "armorBreakSound": "",
  242. "fuseSound": "",
  243. "volume": 1.0
  244. }
  245. },
  246. {
  247. "id": "archer_zombie",
  248. "name": "弓箭僵尸",
  249. "type": "ranged_archer",
  250. "stats": {
  251. "health": 25,
  252. "maxHealth": 25,
  253. "defense": 0,
  254. "speed": 15.0
  255. },
  256. "movement": {
  257. "pattern": "direct",
  258. "speed": 15.0,
  259. "patrolRange": 100,
  260. "chaseRange": 200,
  261. "rotationSpeed": 180.0,
  262. "moveType": "straight",
  263. "swingAmplitude": 0.0,
  264. "swingFrequency": 0.0,
  265. "speedVariation": 0.1
  266. },
  267. "combat": {
  268. "attackDamage": 1,
  269. "attackRange": 1.0,
  270. "attackSpeed": 1.0,
  271. "canBlock": false,
  272. "blockChance": 0.0,
  273. "blockDamageReduction": 0.5,
  274. "attackCooldown": 1.0,
  275. "attackType": "arrow_projectile",
  276. "attackDelay": 1.0,
  277. "weaponType": "none",
  278. "projectileType": "arrow",
  279. "projectileSpeed": 100.0
  280. },
  281. "visualConfig": {
  282. "spritePath": "Animation/EnemyAni/005",
  283. "scale": 1.0,
  284. "animationSpeed": 1.0,
  285. "flipX": false,
  286. "tint": "#FFFFFF",
  287. "animations": {
  288. "idle": "idle",
  289. "walk": "walk",
  290. "attack": "attack",
  291. "death": "dead"
  292. },
  293. "weaponProp": ""
  294. },
  295. "audioConfig": {
  296. "attackSound": "enemy_attack",
  297. "deathSound": "enemy_death",
  298. "hitSound": "enemy_hit",
  299. "walkSound": "audio/archer_walk",
  300. "blockSound": "",
  301. "stealthSound": "",
  302. "armorBreakSound": "",
  303. "fuseSound": "",
  304. "volume": 1.0
  305. }
  306. },
  307. {
  308. "id": "stealth_zombie",
  309. "name": "隐身僵尸",
  310. "type": "stealth",
  311. "stats": {
  312. "health": 42,
  313. "maxHealth": 42,
  314. "defense": 0,
  315. "speed": 35.0
  316. },
  317. "movement": {
  318. "pattern": "direct",
  319. "speed": 35.0,
  320. "patrolRange": 100,
  321. "chaseRange": 200,
  322. "rotationSpeed": 180.0,
  323. "moveType": "straight",
  324. "swingAmplitude": 0.0,
  325. "swingFrequency": 0.0,
  326. "speedVariation": 0.1
  327. },
  328. "combat": {
  329. "attackDamage": 1,
  330. "attackRange": 1.0,
  331. "attackSpeed": 1.0,
  332. "canBlock": false,
  333. "blockChance": 0.0,
  334. "blockDamageReduction": 0.5,
  335. "attackCooldown": 1.0,
  336. "attackType": "stealth_strike",
  337. "attackDelay": 1.0,
  338. "weaponType": "none",
  339. "projectileType": "none",
  340. "projectileSpeed": 100.0
  341. },
  342. "visualConfig": {
  343. "spritePath": "Animation/EnemyAni/006",
  344. "scale": 1.0,
  345. "animationSpeed": 1.0,
  346. "flipX": false,
  347. "tint": "#FFFFFF",
  348. "animations": {
  349. "idle": "idle",
  350. "walk": "walk",
  351. "attack": "attack",
  352. "death": "dead"
  353. },
  354. "weaponProp": ""
  355. },
  356. "audioConfig": {
  357. "attackSound": "enemy_attack",
  358. "deathSound": "enemy_death",
  359. "hitSound": "enemy_hit",
  360. "walkSound": "audio/stealth_walk",
  361. "blockSound": "",
  362. "stealthSound": "audio/stealth_activate",
  363. "armorBreakSound": "",
  364. "fuseSound": "",
  365. "volume": 1.0
  366. }
  367. },
  368. {
  369. "id": "bucket_zombie",
  370. "name": "铁桶僵尸",
  371. "type": "heavy_armor",
  372. "stats": {
  373. "health": 70,
  374. "maxHealth": 70,
  375. "defense": 2,
  376. "speed": 15.0
  377. },
  378. "movement": {
  379. "pattern": "direct",
  380. "speed": 15.0,
  381. "patrolRange": 100,
  382. "chaseRange": 200,
  383. "rotationSpeed": 180.0,
  384. "moveType": "straight",
  385. "swingAmplitude": 0.0,
  386. "swingFrequency": 0.0,
  387. "speedVariation": 0.1
  388. },
  389. "combat": {
  390. "attackDamage": 1,
  391. "attackRange": 1.0,
  392. "attackSpeed": 1.0,
  393. "canBlock": false,
  394. "blockChance": 0.0,
  395. "blockDamageReduction": 0.5,
  396. "attackCooldown": 1.0,
  397. "attackType": "heavy_melee",
  398. "attackDelay": 1.0,
  399. "weaponType": "none",
  400. "projectileType": "none",
  401. "projectileSpeed": 100.0
  402. },
  403. "visualConfig": {
  404. "spritePath": "Animation/EnemyAni/007",
  405. "scale": 1.0,
  406. "animationSpeed": 1.0,
  407. "flipX": false,
  408. "tint": "#FFFFFF",
  409. "animations": {
  410. "idle": "idle",
  411. "walk": "walk",
  412. "attack": "attack",
  413. "death": "dead"
  414. },
  415. "weaponProp": "props/iron_gate"
  416. },
  417. "audioConfig": {
  418. "attackSound": "enemy_attack",
  419. "deathSound": "enemy_death",
  420. "hitSound": "enemy_hit",
  421. "walkSound": "audio/bucket_walk",
  422. "blockSound": "",
  423. "stealthSound": "",
  424. "armorBreakSound": "audio/armor_break",
  425. "fuseSound": "",
  426. "volume": 1.0
  427. }
  428. },
  429. {
  430. "id": "barrel_zombie",
  431. "name": "火药桶僵尸",
  432. "type": "explosive",
  433. "stats": {
  434. "health": 35,
  435. "maxHealth": 35,
  436. "defense": 0,
  437. "speed": 30.0
  438. },
  439. "movement": {
  440. "pattern": "direct",
  441. "speed": 30.0,
  442. "patrolRange": 100,
  443. "chaseRange": 200,
  444. "rotationSpeed": 180.0,
  445. "moveType": "straight",
  446. "swingAmplitude": 0.0,
  447. "swingFrequency": 0.0,
  448. "speedVariation": 0.1
  449. },
  450. "combat": {
  451. "attackDamage": 1,
  452. "attackRange": 1.0,
  453. "attackSpeed": 1.0,
  454. "canBlock": false,
  455. "blockChance": 0.0,
  456. "blockDamageReduction": 0.5,
  457. "attackCooldown": 1.0,
  458. "attackType": "melee",
  459. "attackDelay": 1.0,
  460. "weaponType": "none",
  461. "projectileType": "none",
  462. "projectileSpeed": 100.0
  463. },
  464. "visualConfig": {
  465. "spritePath": "Animation/EnemyAni/008",
  466. "scale": 1.0,
  467. "animationSpeed": 1.0,
  468. "flipX": false,
  469. "tint": "#FFFFFF",
  470. "animations": {
  471. "idle": "idle",
  472. "walk": "walk",
  473. "attack": "attack",
  474. "death": "dead"
  475. },
  476. "weaponProp": "props/tombstone"
  477. },
  478. "audioConfig": {
  479. "attackSound": "enemy_attack",
  480. "deathSound": "enemy_death",
  481. "hitSound": "enemy_hit",
  482. "walkSound": "audio/barrel_walk",
  483. "blockSound": "",
  484. "stealthSound": "",
  485. "armorBreakSound": "",
  486. "fuseSound": "audio/barrel_fuse",
  487. "volume": 1.0
  488. }
  489. },
  490. {
  491. "id": "boss1_gatekeeper",
  492. "name": "BOSS1",
  493. "type": "boss",
  494. "stats": {
  495. "health": 500,
  496. "maxHealth": 500,
  497. "defense": 2,
  498. "speed": 10.0
  499. },
  500. "movement": {
  501. "pattern": "direct",
  502. "speed": 10.0,
  503. "patrolRange": 100,
  504. "chaseRange": 200,
  505. "rotationSpeed": 180.0,
  506. "moveType": "straight",
  507. "swingAmplitude": 0.0,
  508. "swingFrequency": 0.0,
  509. "speedVariation": 0.1
  510. },
  511. "combat": {
  512. "attackDamage": 1,
  513. "attackRange": 1.0,
  514. "attackSpeed": 1.0,
  515. "canBlock": false,
  516. "blockChance": 0.0,
  517. "blockDamageReduction": 0.5,
  518. "attackCooldown": 1.0,
  519. "attackType": "gate_slam",
  520. "attackDelay": 1.0,
  521. "weaponType": "none",
  522. "projectileType": "none",
  523. "projectileSpeed": 100.0
  524. },
  525. "visualConfig": {
  526. "spritePath": "Animation/EnemyAni/009",
  527. "scale": 1.0,
  528. "animationSpeed": 1.0,
  529. "flipX": false,
  530. "tint": "#FFFFFF",
  531. "animations": {
  532. "idle": "idle",
  533. "walk": "walk",
  534. "attack": "attack",
  535. "death": "dead"
  536. },
  537. "weaponProp": "props/cyber_arm"
  538. },
  539. "audioConfig": {
  540. "attackSound": "enemy_attack",
  541. "deathSound": "enemy_death",
  542. "hitSound": "enemy_hit",
  543. "walkSound": "audio/boss1_walk",
  544. "blockSound": "",
  545. "stealthSound": "",
  546. "armorBreakSound": "",
  547. "fuseSound": "",
  548. "volume": 1.0
  549. },
  550. "specialAbilities": [
  551. {
  552. "type": "charge_attack",
  553. "damage": 1,
  554. "range": 150.0,
  555. "cooldown": 8.0
  556. },
  557. {
  558. "type": "area_attack",
  559. "damage": 2,
  560. "range": 100.0,
  561. "cooldown": 12.0
  562. }
  563. ],
  564. "bossConfig": {
  565. "isBoss": true,
  566. "phases": 1,
  567. "enrageThreshold": 0.3,
  568. "enrageDamageMultiplier": 1.5,
  569. "enrageSpeedMultiplier": 1.3
  570. }
  571. },
  572. {
  573. "id": "boss2_gravedigger",
  574. "name": "BOSS2",
  575. "type": "boss",
  576. "stats": {
  577. "health": 500,
  578. "maxHealth": 500,
  579. "defense": 3,
  580. "speed": 10.0
  581. },
  582. "movement": {
  583. "pattern": "direct",
  584. "speed": 10.0,
  585. "patrolRange": 100,
  586. "chaseRange": 200,
  587. "rotationSpeed": 180.0,
  588. "moveType": "straight",
  589. "swingAmplitude": 0.0,
  590. "swingFrequency": 0.0,
  591. "speedVariation": 0.1
  592. },
  593. "combat": {
  594. "attackDamage": 1,
  595. "attackRange": 1.0,
  596. "attackSpeed": 1.0,
  597. "canBlock": false,
  598. "blockChance": 0.0,
  599. "blockDamageReduction": 0.5,
  600. "attackCooldown": 1.0,
  601. "attackType": "tombstone_smash",
  602. "attackDelay": 1.0,
  603. "weaponType": "none",
  604. "projectileType": "none",
  605. "projectileSpeed": 100.0
  606. },
  607. "visualConfig": {
  608. "spritePath": "Animation/EnemyAni/010",
  609. "scale": 1.0,
  610. "animationSpeed": 1.0,
  611. "flipX": false,
  612. "tint": "#FFFFFF",
  613. "animations": {
  614. "idle": "idle",
  615. "walk": "walk",
  616. "attack": "attack",
  617. "death": "dead"
  618. },
  619. "weaponProp": ""
  620. },
  621. "audioConfig": {
  622. "attackSound": "enemy_attack",
  623. "deathSound": "enemy_death",
  624. "hitSound": "enemy_hit",
  625. "walkSound": "audio/boss2_walk",
  626. "blockSound": "",
  627. "stealthSound": "",
  628. "armorBreakSound": "",
  629. "fuseSound": "",
  630. "volume": 1.0
  631. },
  632. "specialAbilities": [
  633. {
  634. "type": "charge_attack",
  635. "damage": 1,
  636. "range": 150.0,
  637. "cooldown": 8.0
  638. },
  639. {
  640. "type": "area_attack",
  641. "damage": 2,
  642. "range": 100.0,
  643. "cooldown": 12.0
  644. }
  645. ],
  646. "bossConfig": {
  647. "isBoss": true,
  648. "phases": 1,
  649. "enrageThreshold": 0.3,
  650. "enrageDamageMultiplier": 1.5,
  651. "enrageSpeedMultiplier": 1.3
  652. }
  653. },
  654. {
  655. "id": "boss3_cyborg",
  656. "name": "BOSS3",
  657. "type": "boss",
  658. "stats": {
  659. "health": 250,
  660. "maxHealth": 250,
  661. "defense": 1,
  662. "speed": 10.0
  663. },
  664. "movement": {
  665. "pattern": "direct",
  666. "speed": 10.0,
  667. "patrolRange": 100,
  668. "chaseRange": 200,
  669. "rotationSpeed": 180.0,
  670. "moveType": "straight",
  671. "swingAmplitude": 0.0,
  672. "swingFrequency": 0.0,
  673. "speedVariation": 0.1
  674. },
  675. "combat": {
  676. "attackDamage": 1,
  677. "attackRange": 1.0,
  678. "attackSpeed": 1.0,
  679. "canBlock": false,
  680. "blockChance": 0.0,
  681. "blockDamageReduction": 0.5,
  682. "attackCooldown": 1.0,
  683. "attackType": "cyber_arm_combo",
  684. "attackDelay": 1.0,
  685. "weaponType": "none",
  686. "projectileType": "none",
  687. "projectileSpeed": 100.0
  688. },
  689. "visualConfig": {
  690. "spritePath": "Animation/EnemyAni/011",
  691. "scale": 1.0,
  692. "animationSpeed": 1.0,
  693. "flipX": false,
  694. "tint": "#FFFFFF",
  695. "animations": {
  696. "idle": "idle",
  697. "walk": "walk",
  698. "attack": "attack",
  699. "death": "dead"
  700. },
  701. "weaponProp": ""
  702. },
  703. "audioConfig": {
  704. "attackSound": "enemy_attack",
  705. "deathSound": "enemy_death",
  706. "hitSound": "enemy_hit",
  707. "walkSound": "audio/boss3_walk",
  708. "blockSound": "",
  709. "stealthSound": "",
  710. "armorBreakSound": "",
  711. "fuseSound": "",
  712. "volume": 1.0
  713. },
  714. "specialAbilities": [
  715. {
  716. "type": "charge_attack",
  717. "damage": 1,
  718. "range": 150.0,
  719. "cooldown": 8.0
  720. },
  721. {
  722. "type": "area_attack",
  723. "damage": 2,
  724. "range": 100.0,
  725. "cooldown": 12.0
  726. }
  727. ],
  728. "bossConfig": {
  729. "isBoss": true,
  730. "phases": 1,
  731. "enrageThreshold": 0.3,
  732. "enrageDamageMultiplier": 1.5,
  733. "enrageSpeedMultiplier": 1.3
  734. }
  735. }
  736. ]