coh-content-db-homecoming 2.0.0-rc.9 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/.github/workflows/build.yml +1 -1
  2. package/CHANGELOG.md +8 -1
  3. package/README.md +32 -15
  4. package/dist/bundle.head.json +1 -1
  5. package/dist/bundle.json +1 -1
  6. package/dist/coh-content-db-homecoming.js +1421 -187
  7. package/dist/coh-content-db-homecoming.js.map +1 -1
  8. package/dist/coh-content-db-homecoming.mjs +1422 -188
  9. package/dist/coh-content-db-homecoming.mjs.map +1 -1
  10. package/jest.config.mjs +4 -0
  11. package/package.json +18 -18
  12. package/src/main/resources/images/badges/accolade/mazebreaker.png +0 -0
  13. package/src/main/resources/images/badges/accomplishment/brass-tax.png +0 -0
  14. package/src/main/resources/images/badges/accomplishment/business-savvy.png +0 -0
  15. package/src/main/resources/images/badges/accomplishment/chromatic-combatant.png +0 -0
  16. package/src/main/resources/images/badges/accomplishment/front-person.png +0 -0
  17. package/src/main/resources/images/badges/accomplishment/generational-trauma.png +0 -0
  18. package/src/main/resources/images/badges/accomplishment/heart-of-gold.png +0 -0
  19. package/src/main/resources/images/badges/accomplishment/justified-ends.png +0 -0
  20. package/src/main/resources/images/badges/accomplishment/psychopomp.png +0 -0
  21. package/src/main/resources/images/badges/accomplishment/staring-into-the-abyss.png +0 -0
  22. package/src/main/resources/images/badges/accomplishment/tested-by-combat.png +0 -0
  23. package/src/main/resources/images/badges/accomplishment/thicker-than-water.png +0 -0
  24. package/src/main/resources/images/badges/accomplishment/truth-seeker.png +0 -0
  25. package/src/main/resources/images/badges/accomplishment/uncomfortable-truths.png +0 -0
  26. package/src/main/resources/images/badges/achievement/master-of-zoes-task-force.png +0 -0
  27. package/src/main/resources/images/badges/achievement/tf-zoe.png +0 -0
  28. package/src/main/resources/images/badges/achievement/variety-act-h.png +0 -0
  29. package/src/main/resources/images/badges/achievement/variety-act-v.png +0 -0
  30. package/src/main/resources/images/badges/defeat/mutated-marauder.png +0 -0
  31. package/src/main/resources/images/badges/defeat/peacekeeper.png +0 -0
  32. package/src/main/resources/images/badges/defeat/two-birds-one-stone.png +0 -0
  33. package/src/main/resources/images/badges/event/home-for-the-holidays.png +0 -0
  34. package/src/main/resources/images/badges/event/hypothermia.png +0 -0
  35. package/src/main/resources/images/badges/event/license-to-chill.png +0 -0
  36. package/src/main/ts/badge/accolade/_accolade-badges.ts +4 -0
  37. package/src/main/ts/badge/accolade/atlas-tour-guide.ts +2 -2
  38. package/src/main/ts/badge/accolade/between-realities.ts +1 -1
  39. package/src/main/ts/badge/accolade/mazebreaker.ts +23 -0
  40. package/src/main/ts/badge/accolade/protector-of-paragon-city.ts +2 -2
  41. package/src/main/ts/badge/accolade/the-prettiest-one.ts +33 -0
  42. package/src/main/ts/badge/accolade/walked-down-memory-lane.ts +2 -2
  43. package/src/main/ts/badge/accomplishment/_accomplishment-badges.ts +26 -0
  44. package/src/main/ts/badge/accomplishment/brass-tax.ts +20 -0
  45. package/src/main/ts/badge/accomplishment/business-savvy.ts +19 -0
  46. package/src/main/ts/badge/accomplishment/chromatic-combatant.ts +17 -0
  47. package/src/main/ts/badge/accomplishment/front-person.ts +19 -0
  48. package/src/main/ts/badge/accomplishment/generational-trauma.ts +21 -0
  49. package/src/main/ts/badge/accomplishment/heart-of-gold.ts +19 -0
  50. package/src/main/ts/badge/accomplishment/justified-ends.ts +19 -0
  51. package/src/main/ts/badge/accomplishment/psychopomp.ts +20 -0
  52. package/src/main/ts/badge/accomplishment/staring-into-the-abyss.ts +20 -0
  53. package/src/main/ts/badge/accomplishment/tested-by-combat.ts +17 -0
  54. package/src/main/ts/badge/accomplishment/thicker-than-water.ts +19 -0
  55. package/src/main/ts/badge/accomplishment/truth-seeker.ts +20 -0
  56. package/src/main/ts/badge/accomplishment/uncomfortable-truths.ts +20 -0
  57. package/src/main/ts/badge/achievement/_achievement-badges.ts +12 -0
  58. package/src/main/ts/badge/achievement/cataclysmic.ts +1 -1
  59. package/src/main/ts/badge/achievement/decimator.ts +1 -1
  60. package/src/main/ts/badge/achievement/eliminator.ts +1 -1
  61. package/src/main/ts/badge/achievement/eradicator.ts +1 -1
  62. package/src/main/ts/badge/achievement/executioner.ts +1 -1
  63. package/src/main/ts/badge/achievement/jailbreaker.ts +17 -0
  64. package/src/main/ts/badge/achievement/knockback-king.ts +20 -0
  65. package/src/main/ts/badge/achievement/master-of-zoes-task-force.ts +26 -0
  66. package/src/main/ts/badge/achievement/relentless.ts +1 -1
  67. package/src/main/ts/badge/achievement/snow-warning.ts +17 -0
  68. package/src/main/ts/badge/achievement/subterranean-striker.ts +17 -0
  69. package/src/main/ts/badge/achievement/until-the-end-of-the-world.ts +1 -1
  70. package/src/main/ts/badge/defeat/_defeat-badges.ts +6 -0
  71. package/src/main/ts/badge/defeat/mutated-marauder.ts +17 -0
  72. package/src/main/ts/badge/defeat/peacekeeper.ts +21 -0
  73. package/src/main/ts/badge/defeat/two-birds-one-stone.ts +17 -0
  74. package/src/main/ts/badge/event/_event-badges.ts +46 -46
  75. package/src/main/ts/badge/event/home-for-the-holidays.ts +1 -1
  76. package/src/main/ts/badge/event/hypothermia.ts +1 -1
  77. package/src/main/ts/badge/event/license-to-chill.ts +1 -1
  78. package/src/main/ts/badge/event/snowbound.ts +1 -1
  79. package/src/main/ts/badge/exploration/_exploration-badges.ts +10 -2
  80. package/src/main/ts/badge/exploration/fueled-by-greed.ts +21 -0
  81. package/src/main/ts/badge/exploration/in-their-prime.ts +22 -0
  82. package/src/main/ts/badge/exploration/lucid-dreamer.ts +20 -0
  83. package/src/main/ts/badge/exploration/marked-out.ts +19 -0
  84. package/src/main/ts/badge/exploration/on-the-shoulders-of-giants.ts +1 -1
  85. package/src/main/ts/badge/exploration/protest-too-much.ts +20 -0
  86. package/src/main/ts/badge/exploration/quay-to-the-city.ts +22 -0
  87. package/src/main/ts/badge/exploration/raving-mad.ts +19 -0
  88. package/src/main/ts/badge/exploration/tourist-trapped.ts +20 -0
  89. package/src/main/ts/badge/exploration/tried-and-true.ts +2 -2
  90. package/src/main/ts/badge/gladiator/mob-specialist.ts +1 -1
  91. package/src/main/ts/badge/history/_history-badges.ts +6 -0
  92. package/src/main/ts/badge/history/bicentennial.ts +1 -1
  93. package/src/main/ts/badge/history/christie-consolidation.ts +92 -0
  94. package/src/main/ts/badge/history/flagtown-memorialist.ts +68 -0
  95. package/src/main/ts/badge/history/patron-of-the-arts.ts +49 -0
  96. package/src/main/ts/contact/_contacts.ts +14 -0
  97. package/src/main/ts/contact/adelard-ziegler.ts +12 -0
  98. package/src/main/ts/contact/alexander-the-great.ts +12 -0
  99. package/src/main/ts/contact/dap-dap-tha-deal-maka.ts +12 -0
  100. package/src/main/ts/contact/erin-west.ts +12 -0
  101. package/src/main/ts/contact/robert-kogan.ts +12 -0
  102. package/src/main/ts/contact/wyllie-galloway.ts +12 -0
  103. package/src/main/ts/contact/zoe-langston.ts +12 -0
  104. package/src/main/ts/homecoming.ts +1 -1
  105. package/src/main/ts/mission/_missions.ts +14 -0
  106. package/src/main/ts/mission/cutting-back-old-growth.ts +18 -0
  107. package/src/main/ts/mission/death-resurrected.ts +19 -0
  108. package/src/main/ts/mission/hunting-the-hunters.ts +18 -0
  109. package/src/main/ts/mission/know-thy-enemy.ts +18 -0
  110. package/src/main/ts/mission/mergers-and-acquisitions.ts +18 -0
  111. package/src/main/ts/mission/the-sunlight-and-the-spotlight.ts +18 -0
  112. package/src/main/ts/mission/zoe-task-force.ts +14 -0
  113. package/src/main/ts/zone/_zones.ts +0 -2
  114. package/src/main/ts/zone/abandoned-sewer-network.ts +3 -0
  115. package/src/main/ts/zone/abandoned-sewers-trial.ts +3 -0
  116. package/src/main/ts/zone/architect-entertainment-buildings.ts +1 -0
  117. package/src/main/ts/zone/arena-cage-match.ts +2 -0
  118. package/src/main/ts/zone/atlas-park.ts +3 -0
  119. package/src/main/ts/zone/black-shroud-dimension.ts +5 -1
  120. package/src/main/ts/zone/bloody-bay.ts +3 -0
  121. package/src/main/ts/zone/boomtown.ts +3 -0
  122. package/src/main/ts/zone/breakout.ts +3 -0
  123. package/src/main/ts/zone/brickstown.ts +3 -0
  124. package/src/main/ts/zone/cap-au-diable.ts +3 -0
  125. package/src/main/ts/zone/cascade-archipelago.ts +3 -0
  126. package/src/main/ts/zone/cimerora.ts +3 -0
  127. package/src/main/ts/zone/creys-folly.ts +3 -0
  128. package/src/main/ts/zone/croatoa.ts +3 -0
  129. package/src/main/ts/zone/dark-astoria.ts +3 -0
  130. package/src/main/ts/zone/echo-atlas-park.ts +7 -1
  131. package/src/main/ts/zone/echo-dark-astoria.ts +3 -0
  132. package/src/main/ts/zone/echo-faultline.ts +7 -1
  133. package/src/main/ts/zone/echo-galaxy-city.ts +3 -0
  134. package/src/main/ts/zone/echo-rikti-crash-site.ts +4 -1
  135. package/src/main/ts/zone/eden.ts +3 -0
  136. package/src/main/ts/zone/faultline.ts +3 -0
  137. package/src/main/ts/zone/firebase-zulu.ts +3 -0
  138. package/src/main/ts/zone/first-ward.ts +3 -0
  139. package/src/main/ts/zone/founders-falls.ts +3 -0
  140. package/src/main/ts/zone/grandville.ts +3 -0
  141. package/src/main/ts/zone/hydra-missions.ts +7 -1
  142. package/src/main/ts/zone/imperial-city.ts +3 -0
  143. package/src/main/ts/zone/independence-port.ts +3 -0
  144. package/src/main/ts/zone/kallisti-wharf.ts +4 -0
  145. package/src/main/ts/zone/kings-row.ts +3 -0
  146. package/src/main/ts/zone/mayhem-atlas-park.ts +3 -0
  147. package/src/main/ts/zone/mayhem-brickstown.ts +3 -0
  148. package/src/main/ts/zone/mayhem-founders-falls.ts +3 -0
  149. package/src/main/ts/zone/mayhem-independence-port.ts +3 -0
  150. package/src/main/ts/zone/mayhem-kings-row.ts +3 -0
  151. package/src/main/ts/zone/mayhem-peregrine-island.ts +3 -0
  152. package/src/main/ts/zone/mayhem-skyway-city.ts +3 -0
  153. package/src/main/ts/zone/mayhem-steel-canyon.ts +3 -0
  154. package/src/main/ts/zone/mayhem-talos-island.ts +3 -0
  155. package/src/main/ts/zone/mercy-island.ts +3 -0
  156. package/src/main/ts/zone/midnighter-club.ts +3 -0
  157. package/src/main/ts/zone/monster-island.ts +3 -0
  158. package/src/main/ts/zone/nerva-archipelago.ts +3 -0
  159. package/src/main/ts/zone/neutropolis.ts +3 -0
  160. package/src/main/ts/zone/night-ward.ts +3 -0
  161. package/src/main/ts/zone/nova-praetoria.ts +3 -0
  162. package/src/main/ts/zone/ouroboros.ts +3 -0
  163. package/src/main/ts/zone/paragon-dance-party.ts +3 -0
  164. package/src/main/ts/zone/peregrine-island.ts +3 -0
  165. package/src/main/ts/zone/perez-park.ts +3 -0
  166. package/src/main/ts/zone/phone.ts +2 -0
  167. package/src/main/ts/zone/pocket-d.ts +3 -0
  168. package/src/main/ts/zone/port-oakes.ts +3 -0
  169. package/src/main/ts/zone/recluses-victory.ts +3 -0
  170. package/src/main/ts/zone/rikti-war-zone.ts +3 -0
  171. package/src/main/ts/zone/safeguard-atlas-park.ts +3 -0
  172. package/src/main/ts/zone/safeguard-brickstown.ts +3 -0
  173. package/src/main/ts/zone/safeguard-founders-falls.ts +3 -0
  174. package/src/main/ts/zone/safeguard-independence-port.ts +3 -0
  175. package/src/main/ts/zone/safeguard-kings-row.ts +3 -0
  176. package/src/main/ts/zone/safeguard-peregrine-island.ts +3 -0
  177. package/src/main/ts/zone/safeguard-skyway-city.ts +3 -0
  178. package/src/main/ts/zone/safeguard-steel-canyon.ts +3 -0
  179. package/src/main/ts/zone/safeguard-talos-island.ts +3 -0
  180. package/src/main/ts/zone/sewer-network.ts +3 -0
  181. package/src/main/ts/zone/sharkhead-isle.ts +3 -0
  182. package/src/main/ts/zone/sirens-call.ts +3 -0
  183. package/src/main/ts/zone/skyway-city.ts +3 -0
  184. package/src/main/ts/zone/st-martial.ts +3 -0
  185. package/src/main/ts/zone/steel-canyon.ts +3 -0
  186. package/src/main/ts/zone/striga-isle.ts +3 -0
  187. package/src/main/ts/zone/studio-55.ts +6 -1
  188. package/src/main/ts/zone/talos-island.ts +3 -0
  189. package/src/main/ts/zone/terra-volta.ts +3 -0
  190. package/src/main/ts/zone/the-abyss.ts +3 -0
  191. package/src/main/ts/zone/the-chantry.ts +3 -0
  192. package/src/main/ts/zone/the-hive.ts +3 -0
  193. package/src/main/ts/zone/the-hollows.ts +3 -0
  194. package/src/main/ts/zone/the-labyrinth-of-fog.ts +3 -0
  195. package/src/main/ts/zone/the-storm-palace.ts +3 -0
  196. package/src/main/ts/zone/underground-imperial.ts +3 -0
  197. package/src/main/ts/zone/underground-neutropolis.ts +3 -0
  198. package/src/main/ts/zone/underground-nova.ts +3 -0
  199. package/src/main/ts/zone/warburg.ts +3 -0
  200. package/src/test/ts/link-tests.test.ts +1 -1
  201. package/src/test/ts/mission.test.ts +20 -0
  202. package/src/main/ts/zone/praetoria.ts +0 -7
  203. /package/src/main/resources/images/badges/event/{winter-login.png → snowbound.png} +0 -0
  204. /package/src/main/{lint/utils/rollup-replace.ts → ts/utils/bundle-metadata.ts} +0 -0
@@ -1,521 +1,865 @@
1
- import { contactLink, zoneLink, badgeLink, missionLink, missionUri } from 'coh-content-db';
1
+ import { missionLink, zoneLink, contactLink, badgeLink, missionUri } from 'coh-content-db';
2
2
 
3
3
  const AbandonedSewerNetwork = {
4
4
  key: "abandoned-sewer-network",
5
5
  name: "Abandoned Sewer Network",
6
+ type: "trial",
7
+ morality: "heroic",
8
+ levelRange: [36, 40],
6
9
  links: [{ title: "Abandoned Sewer Network", href: "https://homecoming.wiki/wiki/Abandoned_Sewer_Network" }]
7
10
  };
8
11
 
9
12
  const AbandonedSewersTrial$1 = {
10
13
  key: "abandoned-sewers-trial",
11
14
  name: "Abandoned Sewers Trial",
15
+ type: "trial",
16
+ morality: "heroic",
17
+ levelRange: 38,
12
18
  links: [{ title: "Abandoned Sewers Trial", href: "https://homecoming.wiki/wiki/Abandoned_Sewers_Trial" }]
13
19
  };
14
20
 
15
21
  const ArchitectEntertainmentBuildings = {
16
22
  key: "architect-entertainment-buildings",
17
23
  name: "Architect Entertainment Buildings",
24
+ type: "building",
18
25
  links: [{ title: "Architect Entertainment Buildings", href: "https://homecoming.wiki/wiki/Architect_Entertainment_Buildings" }]
19
26
  };
20
27
 
21
28
  const ArenaCageMatch = {
22
29
  key: "arena-cage-match",
23
- name: "Arena: Cage Match"
30
+ name: "Arena: Cage Match",
31
+ type: "arena",
32
+ links: [{ title: "Arena", href: "https://homecoming.wiki/wiki/Arena" }]
24
33
  };
25
34
 
26
35
  const AtlasPark = {
27
36
  key: "atlas-park",
28
37
  name: "Atlas Park",
38
+ type: "city",
39
+ morality: "heroic",
40
+ levelRange: [1, 6],
29
41
  links: [{ title: "Atlas Park", href: "https://homecoming.wiki/wiki/Atlas_Park" }]
30
42
  };
31
43
 
44
+ const PeregrineIsland = {
45
+ key: "peregrine-island",
46
+ name: "Peregrine Island",
47
+ type: "city",
48
+ morality: "heroic",
49
+ levelRange: [41, 50],
50
+ links: [{ title: "Peregrine Island", href: "https://homecoming.wiki/wiki/Peregrine_Island" }]
51
+ };
52
+
53
+ const MariaJenkins = {
54
+ key: "maria-jenkins",
55
+ name: "Maria Jenkins",
56
+ title: "Former Heroine",
57
+ morality: "heroic",
58
+ location: { zoneKey: PeregrineIsland.key, coords: [-1043, 0, -2783] },
59
+ levelRange: [45, 50],
60
+ links: [{ title: "Maria Jenkins", href: "https://homecoming.wiki/wiki/Maria_Jenkins" }]
61
+ };
62
+
63
+ const TakeDownNightstar = {
64
+ key: "take-down-nightstar",
65
+ name: "Take down Nightstar",
66
+ type: "mission",
67
+ morality: "heroic",
68
+ contactKeys: MariaJenkins.key,
69
+ levelRange: [45, 50],
70
+ links: [
71
+ { title: "Take down Nightstar", href: "https://homecoming.wiki/wiki/Maria_Jenkins#Take_down_Nightstar" }
72
+ ]
73
+ };
74
+
75
+ const CapAuDiable = {
76
+ key: "cap-au-diable",
77
+ name: "Cap Au Diable",
78
+ type: "city",
79
+ morality: "villainous",
80
+ levelRange: [8, 20],
81
+ links: [{ title: "Cap Au Diable", href: "https://homecoming.wiki/wiki/Cap_au_Diable" }]
82
+ };
83
+
84
+ const DmitriKrylov = {
85
+ key: "dmitri-krylov",
86
+ name: "Dmitri Krylov",
87
+ title: "Metahuman Researcher",
88
+ morality: "villainous",
89
+ location: { zoneKey: CapAuDiable.key, coords: [2878, -72, -182] },
90
+ levelRange: [10, 14],
91
+ links: [{ title: "Dmitri Krylov", href: "https://homecoming.wiki/wiki/Dmitri_Krylov" }]
92
+ };
93
+
94
+ const BringCitizensToVahzilokSurgeons = {
95
+ key: "bring-citizens-to-vahzilok-surgeons",
96
+ name: "Bring citizens to Vahzilok surgeons",
97
+ type: "mission",
98
+ morality: "villainous",
99
+ contactKeys: DmitriKrylov.key,
100
+ levelRange: [10, 14],
101
+ links: [
102
+ { title: "Bring citizens to Vahzilok surgeons", href: "https://homecoming.wiki/wiki/Dmitri_Krylov#Bring_citizens_to_Vahzilok_surgeons" }
103
+ ]
104
+ };
105
+
32
106
  const BlackShroudDimension = {
33
107
  key: "black-shroud-dimension",
34
108
  name: "Black Shroud Dimension",
109
+ type: "mission",
110
+ notes: `Located in the ${missionLink(TakeDownNightstar)} and ${missionLink(BringCitizensToVahzilokSurgeons)} missions.`,
35
111
  links: [{ title: "Shrouded Badge", href: "https://homecoming.wiki/wiki/Shrouded_Badge" }]
36
112
  };
37
113
 
38
114
  const BloodyBay = {
39
115
  key: "bloody-bay",
40
116
  name: "Bloody Bay",
117
+ type: "pvp",
118
+ morality: "all",
119
+ levelRange: [25, 25],
41
120
  links: [{ title: "Bloody Bay", href: "https://homecoming.wiki/wiki/Bloody_Bay" }]
42
121
  };
43
122
 
44
123
  const Boomtown = {
45
124
  key: "boomtown",
46
125
  name: "Boomtown",
126
+ type: "hazard",
127
+ morality: "heroic",
128
+ levelRange: [11, 19],
47
129
  links: [{ title: "Boomtown", href: "https://homecoming.wiki/wiki/Boomtown" }]
48
130
  };
49
131
 
50
132
  const Breakout = {
51
133
  key: "breakout",
52
134
  name: "Breakout",
135
+ type: "tutorial",
136
+ morality: "villain",
137
+ levelRange: [1, 1],
53
138
  links: [{ title: "Breakout", href: "https://homecoming.wiki/wiki/Breakout" }]
54
139
  };
55
140
 
56
141
  const Brickstown = {
57
142
  key: "brickstown",
58
143
  name: "Brickstown",
144
+ type: "city",
145
+ morality: "heroic",
146
+ levelRange: [30, 38],
59
147
  links: [{ title: "Brickstown", href: "https://homecoming.wiki/wiki/Brickstown" }]
60
148
  };
61
149
 
62
- const CapAuDiable = {
63
- key: "cap-au-diable",
64
- name: "Cap Au Diable",
65
- links: [{ title: "Cap Au Diable", href: "https://homecoming.wiki/wiki/Cap_au_Diable" }]
66
- };
67
-
68
150
  const CascadeArchipelago = {
69
151
  key: "cascade-archipelago",
70
152
  name: "Cascade Archipelago",
153
+ type: "hazard",
154
+ morality: "heroic",
155
+ levelRange: [40, 44],
71
156
  links: [{ title: "Cascade Archipelago", href: "https://homecoming.wiki/wiki/Cascade_Archipelago" }]
72
157
  };
73
158
 
74
159
  const Cimerora = {
75
160
  key: "cimerora",
76
161
  name: "Cimerora",
162
+ type: "co-op",
163
+ morality: "all",
164
+ levelRange: 35,
77
165
  links: [{ title: "Cimerora", href: "https://homecoming.wiki/wiki/Cimerora" }]
78
166
  };
79
167
 
80
168
  const CreysFolly = {
81
169
  key: "creys-folly",
82
170
  name: `Crey's Folly`,
171
+ type: "hazard",
172
+ morality: "heroic",
173
+ levelRange: [31, 39],
83
174
  links: [{ title: `Crey's Folly`, href: "https://homecoming.wiki/wiki/Crey%27s_Folly" }]
84
175
  };
85
176
 
86
177
  const Croatoa = {
87
178
  key: "croatoa",
88
179
  name: "Croatoa",
180
+ type: "city",
181
+ morality: "heroic",
182
+ levelRange: [25, 34],
89
183
  links: [{ title: "Croatoa", href: "https://homecoming.wiki/wiki/Croatoa" }]
90
184
  };
91
185
 
92
186
  const DarkAstoria = {
93
187
  key: "dark-astoria",
94
188
  name: "Dark Astoria",
189
+ type: "co-op",
190
+ morality: "all",
191
+ levelRange: [50, 54],
95
192
  links: [{ title: "Dark Astoria", href: "https://homecoming.wiki/wiki/Dark_Astoria" }]
96
193
  };
97
194
 
98
195
  const EchoAtlasPark = {
99
196
  key: "echo-atlas-park",
100
197
  name: "Echo: Atlas Park",
101
- links: [{ title: "Echo: Atlas Park Badge Guide", href: "https://forums.homecomingservers.com/topic/881-echo-atlas-park-badge-guide/" }]
198
+ type: "echo",
199
+ morality: "heroic",
200
+ levelRange: [1, 6],
201
+ links: [
202
+ { title: "Echo: Atlas Park", href: "https://homecoming.wiki/wiki/Echo:_Atlas_Park" },
203
+ { title: "Echo: Atlas Park Badge Guide", href: "https://forums.homecomingservers.com/topic/881-echo-atlas-park-badge-guide/" }
204
+ ]
102
205
  };
103
206
 
104
207
  const EchoDarkAstoria = {
105
208
  key: "echo-dark-astoria",
106
209
  name: "Echo: Dark Astoria",
210
+ type: "echo",
211
+ morality: "heroic",
212
+ levelRange: [21, 29],
107
213
  links: [{ title: "Echo: Dark Astoria", href: "https://homecoming.wiki/wiki/Echo:_Dark_Astoria" }]
108
214
  };
109
215
 
110
216
  const EchoFaultline = {
111
217
  key: "echo-faultline",
112
218
  name: "Echo: Faultline",
113
- links: [{ title: "I25 Faultline badge changes", href: "https://forums.homecomingservers.com/topic/931-echo-falutline-badger-hunter-helpline/" }]
219
+ type: "echo",
220
+ morality: "heroic",
221
+ levelRange: [15, 25],
222
+ links: [
223
+ { title: "Echo: Faultline", href: "https://homecoming.wiki/wiki/Echo:_Faultline" },
224
+ { title: "I25 Faultline badge changes", href: "https://forums.homecomingservers.com/topic/931-echo-falutline-badger-hunter-helpline/" }
225
+ ]
114
226
  };
115
227
 
116
228
  const EchoGalaxyCity = {
117
229
  key: "echo-galaxy-city",
118
230
  name: "Echo: Galaxy City",
231
+ type: "echo",
232
+ morality: "heroic",
233
+ levelRange: [1, 6],
119
234
  links: [{ title: "Echo: Galaxy City", href: "https://homecoming.wiki/wiki/Echo:_Galaxy_City" }]
120
235
  };
121
236
 
122
237
  const EchoRiktiCrashSite = {
123
238
  key: "echo-rikti-crash-site",
124
239
  name: "Echo: Rikti Crash Site",
125
- links: [{ title: "Rikti Crash Site (Legacy)", href: "https://homecoming.wiki/wiki/Rikti_Crash_Site" }]
240
+ type: "echo",
241
+ morality: "heroic",
242
+ levelRange: [40, 50],
243
+ links: [{ title: "Echo: Rikti Crash Site", href: "https://homecoming.wiki/wiki/Echo:_Rikti_Crash_Site" }]
126
244
  };
127
245
 
128
246
  const Eden = {
129
247
  key: "eden",
130
248
  name: "Eden",
249
+ type: "trial",
250
+ morality: "heroic",
251
+ levelRange: [33, 39],
131
252
  links: [{ title: "Eden", href: "https://homecoming.wiki/wiki/Eden" }]
132
253
  };
133
254
 
134
255
  const Faultline = {
135
256
  key: "faultline",
136
257
  name: "Faultline",
258
+ type: "city",
259
+ morality: "heroic",
260
+ levelRange: [15, 25],
137
261
  links: [{ title: "Faultline", href: "https://homecoming.wiki/wiki/Faultline" }]
138
262
  };
139
263
 
140
264
  const FirebaseZulu = {
141
265
  key: "firebase-zulu",
142
266
  name: "Firebase Zulu",
267
+ type: "hazard",
268
+ morality: "heroic",
269
+ levelRange: [40, 44],
143
270
  links: [{ title: "Firebase Zulu", href: "https://homecoming.wiki/wiki/Firebase_Zulu" }]
144
271
  };
145
272
 
146
273
  const FirstWard = {
147
274
  key: "first-ward",
148
275
  name: "First Ward",
276
+ type: "co-op",
277
+ morality: "all",
278
+ levelRange: [20, 30],
149
279
  links: [{ title: "First Ward", href: "https://homecoming.wiki/wiki/First_Ward" }]
150
280
  };
151
281
 
152
282
  const FoundersFalls = {
153
283
  key: "founders-falls",
154
284
  name: `Founders' Falls`,
285
+ type: "city",
286
+ morality: "heroic",
287
+ levelRange: [31, 40],
155
288
  links: [{ title: `Founders' Falls`, href: "https://homecoming.wiki/wiki/Founders%27_Falls" }]
156
289
  };
157
290
 
158
291
  const Grandville = {
159
292
  key: "grandville",
160
293
  name: "Grandville",
294
+ type: "city",
295
+ morality: "villainous",
296
+ levelRange: [40, 50],
161
297
  links: [{ title: "Grandville", href: "https://homecoming.wiki/wiki/Grandville" }]
162
298
  };
163
299
 
300
+ const TinaMacintyre = {
301
+ key: "tina-macintyre",
302
+ name: "Tina Macintyre",
303
+ title: "Portal Corporation Research Scientist",
304
+ morality: "heroic",
305
+ location: { zoneKey: PeregrineIsland.key, coords: [-1680.5, 0, -3638.5] },
306
+ levelRange: [40, 45],
307
+ links: [{ title: "Tina Macintyre", href: "https://homecoming.wiki/wiki/Tina_Macintyre" }]
308
+ };
309
+
310
+ const TheHydraDimension = {
311
+ key: "the-hydra-dimension",
312
+ name: "The Hydra Dimension",
313
+ type: "mission",
314
+ morality: "heroic",
315
+ contactKeys: TinaMacintyre.key,
316
+ levelRange: [45, 50],
317
+ links: [
318
+ { title: "The Hydra Dimension", href: "https://homecoming.wiki/wiki/Tina_Macintyre#The_Hydra_Dimension_(40-45)" }
319
+ ]
320
+ };
321
+
322
+ const UnaiKemen = {
323
+ key: "unai-kemen",
324
+ name: "Unai Kemen",
325
+ title: "Portal Corp Security Chief",
326
+ morality: "heroic",
327
+ location: { zoneKey: PeregrineIsland.key, coords: [-1519.5, 0.5, -3425] },
328
+ levelRange: [45, 50],
329
+ links: [{ title: "Unai Kemen", href: "https://homecoming.wiki/wiki/Unai_Kemen" }]
330
+ };
331
+
332
+ const GetSomeSamplesOfHydraManDna = {
333
+ key: "get-some-samples-of-hydra-man-dna",
334
+ name: "Get some samples of Hydra Man DNA",
335
+ type: "mission",
336
+ morality: "heroic",
337
+ contactKeys: UnaiKemen.key,
338
+ levelRange: [45, 50],
339
+ links: [
340
+ { title: "Get some samples of Hydra Man DNA", href: "https://homecoming.wiki/wiki/Unai_Kemen#Get_some_samples_of_Hydra_Man_DNA" }
341
+ ]
342
+ };
343
+
164
344
  const HydraMissionMap = {
165
345
  key: "hydra-mission-map",
166
346
  name: "Hydra Mission Map",
347
+ type: "mission",
348
+ morality: "heroic",
349
+ levelRange: [36, 40],
350
+ notes: `Located within the ${missionLink(TheHydraDimension)} and ${missionLink(GetSomeSamplesOfHydraManDna)} missions.`,
167
351
  links: [{ title: "Hydra Missions", href: "https://homecoming.wiki/wiki/Multidimensional_Badge" }]
168
352
  };
169
353
 
170
354
  const ImperialCity = {
171
355
  key: "imperial-city",
172
356
  name: "Imperial City",
357
+ type: "city",
358
+ morality: "praetorian",
359
+ levelRange: [9, 15],
173
360
  links: [{ title: "Imperial City", href: "https://homecoming.wiki/wiki/Imperial_City" }]
174
361
  };
175
362
 
176
363
  const IndependencePort = {
177
364
  key: "independence-port",
178
365
  name: "Independence Port",
366
+ type: "city",
367
+ morality: "heroic",
368
+ levelRange: [20, 30],
179
369
  links: [{ title: "Independence Port", href: "https://homecoming.wiki/wiki/Independence_Port" }]
180
370
  };
181
371
 
182
372
  const KallistiWharf = {
183
373
  key: "kallisti-wharf",
184
- name: "Kallisti Wharf"
374
+ name: "Kallisti Wharf",
375
+ type: "co-op",
376
+ morality: "all",
377
+ levelRange: [40, 50],
378
+ links: [{ title: "Kallisti Wharf", href: "https://homecoming.wiki/wiki/Kallisti_Wharf" }]
185
379
  };
186
380
 
187
381
  const KingsRow = {
188
382
  key: "kings-row",
189
383
  name: "Kings Row",
384
+ type: "city",
385
+ morality: "heroic",
386
+ levelRange: [5, 10],
190
387
  links: [{ title: "Kings Row", href: "https://homecoming.wiki/wiki/Kings_Row" }]
191
388
  };
192
389
 
193
390
  const MayhemAtlasPark = {
194
391
  key: "mayhem-atlas-park",
195
392
  name: "Mayhem: Atlas Park",
393
+ type: "mayhem",
394
+ morality: "villainous",
395
+ levelRange: [5, 10],
196
396
  links: [{ title: "Mayhem Mission", href: "https://homecoming.wiki/wiki/Mayhem_Mission" }]
197
397
  };
198
398
 
199
399
  const MayhemBrickstown = {
200
400
  key: "mayhem-brickstown",
201
401
  name: "Mayhem: Brickstown",
402
+ type: "mayhem",
403
+ morality: "villainous",
404
+ levelRange: [35, 40],
202
405
  links: [{ title: "Mayhem Mission", href: "https://homecoming.wiki/wiki/Mayhem_Mission" }]
203
406
  };
204
407
 
205
408
  const MayhemFoundersFalls = {
206
409
  key: "mayhem-founders-falls",
207
410
  name: `Mayhem: Founder's Falls`,
411
+ type: "mayhem",
412
+ morality: "villainous",
413
+ levelRange: [40, 45],
208
414
  links: [{ title: "Mayhem Mission", href: "https://homecoming.wiki/wiki/Mayhem_Mission" }]
209
415
  };
210
416
 
211
417
  const MayhemIndependencePort = {
212
418
  key: "mayhem-independence-port",
213
419
  name: "Mayhem: Independence Port",
420
+ type: "mayhem",
421
+ morality: "villainous",
422
+ levelRange: [25, 30],
214
423
  links: [{ title: "Mayhem Mission", href: "https://homecoming.wiki/wiki/Mayhem_Mission" }]
215
424
  };
216
425
 
217
426
  const MayhemKingsRow = {
218
427
  key: "mayhem-kings-row",
219
428
  name: "Mayhem: Kings Row",
429
+ type: "mayhem",
430
+ morality: "villainous",
431
+ levelRange: [10, 15],
220
432
  links: [{ title: "Mayhem Mission", href: "https://homecoming.wiki/wiki/Mayhem_Mission" }]
221
433
  };
222
434
 
223
435
  const MayhemPeregrineIsland = {
224
436
  key: "mayhem-peregrine-island",
225
437
  name: "Mayhem: Peregrine Island",
438
+ type: "mayhem",
439
+ morality: "villainous",
440
+ levelRange: [45, 50],
226
441
  links: [{ title: "Mayhem Mission", href: "https://homecoming.wiki/wiki/Mayhem_Mission" }]
227
442
  };
228
443
 
229
444
  const MayhemSkywayCity = {
230
445
  key: "mayhem-skyway-city",
231
446
  name: "Mayhem: Skyway City",
447
+ type: "mayhem",
448
+ morality: "villainous",
449
+ levelRange: [15, 20],
232
450
  links: [{ title: "Mayhem Mission", href: "https://homecoming.wiki/wiki/Mayhem_Mission" }]
233
451
  };
234
452
 
235
453
  const MayhemSteelCanyon = {
236
454
  key: "mayhem-steel-canyon",
237
455
  name: "Mayhem: Steel Canyon",
456
+ type: "mayhem",
457
+ morality: "villainous",
458
+ levelRange: [20, 25],
238
459
  links: [{ title: "Mayhem Mission", href: "https://homecoming.wiki/wiki/Mayhem_Mission" }]
239
460
  };
240
461
 
241
462
  const MayhemTalosIsland = {
242
463
  key: "mayhem-talos-island",
243
464
  name: "Mayhem: Talos Island",
465
+ type: "mayhem",
466
+ morality: "villainous",
467
+ levelRange: [30, 35],
244
468
  links: [{ title: "Mayhem Mission", href: "https://homecoming.wiki/wiki/Mayhem_Mission" }]
245
469
  };
246
470
 
247
471
  const MercyIsland = {
248
472
  key: "mercy-island",
249
473
  name: "Mercy Island",
474
+ type: "city",
475
+ morality: "villainous",
476
+ levelRange: [1, 8],
250
477
  links: [{ title: "Mercy Island", href: "https://homecoming.wiki/wiki/Mercy_Island" }]
251
478
  };
252
479
 
253
480
  const MidnighterClub = {
254
481
  key: "midnighter-club",
255
482
  name: "Midnighter Club",
483
+ type: "co-op",
484
+ morality: "all",
485
+ levelRange: 1,
256
486
  links: [{ title: "Midnighter Club", href: "https://homecoming.wiki/wiki/Midnighter_Club" }]
257
487
  };
258
488
 
259
489
  const MonsterIsland = {
260
490
  key: "monster-island",
261
491
  name: "Monster Island",
492
+ type: "hazard",
493
+ morality: "villainous",
494
+ levelRange: [45, 50],
262
495
  links: [{ title: "Monster Island", href: "https://homecoming.wiki/wiki/Monster_Island" }]
263
496
  };
264
497
 
265
498
  const NervaArchipelago = {
266
499
  key: "nerva-archipelago",
267
500
  name: "Nerva Archipelago",
501
+ type: "city",
502
+ morality: "villainous",
503
+ levelRange: [25, 40],
268
504
  links: [{ title: "Nerva Archipelago", href: "https://homecoming.wiki/wiki/Nerva_Archipelago" }]
269
505
  };
270
506
 
271
507
  const Neutropolis = {
272
508
  key: "neutropolis",
273
509
  name: "Neutropolis",
510
+ type: "city",
511
+ morality: "praetorian",
512
+ levelRange: [15, 20],
274
513
  links: [{ title: "Neutropolis", href: "https://homecoming.wiki/wiki/Neutropolis" }]
275
514
  };
276
515
 
277
516
  const NightWard = {
278
517
  key: "night-ward",
279
518
  name: "Night Ward",
519
+ type: "co-op",
520
+ morality: "all",
521
+ levelRange: [25, 30],
280
522
  links: [{ title: "Night Ward", href: "https://homecoming.wiki/wiki/Night_Ward" }]
281
523
  };
282
524
 
283
525
  const NovaPraetoria = {
284
526
  key: "nova-praetoria",
285
527
  name: "Nova Praetoria",
528
+ type: "city",
529
+ morality: "praetorian",
530
+ levelRange: [1, 9],
286
531
  links: [{ title: "Nova Praetoria", href: "https://homecoming.wiki/wiki/Nova_Praetoria" }]
287
532
  };
288
533
 
289
534
  const Ouroboros = {
290
535
  key: "ouroboros",
291
536
  name: "Ouroboros",
537
+ type: "co-op",
538
+ morality: "all",
539
+ levelRange: 15,
292
540
  links: [{ title: "Ouroboros", href: "https://homecoming.wiki/wiki/Ouroboros" }]
293
541
  };
294
542
 
295
543
  const ParagonDanceParty = {
296
544
  key: "paragon-dance-party",
297
545
  name: "Paragon Dance Party",
546
+ type: "building",
547
+ morality: "hero",
548
+ levelRange: 1,
298
549
  links: [{ title: "Paragon Dance Party", href: "https://homecoming.wiki/wiki/Paragon_Dance_Party" }]
299
550
  };
300
551
 
301
- const PeregrineIsland = {
302
- key: "peregrine-island",
303
- name: "Peregrine Island",
304
- links: [{ title: "Peregrine Island", href: "https://homecoming.wiki/wiki/Peregrine_Island" }]
305
- };
306
-
307
552
  const PerezPark = {
308
553
  key: "perez-park",
309
554
  name: "Perez Park",
555
+ type: "hazard",
556
+ morality: "heroic",
557
+ levelRange: [7, 14],
310
558
  links: [{ title: "Perez Park", href: "https://homecoming.wiki/wiki/Perez_Park" }]
311
559
  };
312
560
 
313
561
  const Phone = {
314
562
  key: "phone",
315
- name: "(Phone Only)"
563
+ name: "(Phone Only)",
564
+ type: "other",
565
+ notes: `Not a physical location\u2014 Used for contacts only accessible via your phone.`
316
566
  };
317
567
 
318
568
  const PocketD = {
319
569
  key: "pocket-d",
320
570
  name: "Pocket D",
571
+ type: "co-op",
572
+ morality: "all",
573
+ levelRange: 1,
321
574
  links: [{ title: "Pocket D", href: "https://homecoming.wiki/wiki/Pocket_D" }]
322
575
  };
323
576
 
324
577
  const PortOakes = {
325
578
  key: "port-oakes",
326
579
  name: "Port Oakes",
580
+ type: "city",
581
+ morality: "villainous",
582
+ levelRange: [7, 12],
327
583
  links: [{ title: "Port Oakes", href: "https://homecoming.wiki/wiki/Port_Oakes" }]
328
584
  };
329
585
 
330
- const Praetoria = {
331
- key: "praetoria",
332
- name: "Praetoria",
333
- links: [{ title: "Praetoria", href: "https://homecoming.wiki/wiki/Praetoria" }]
334
- };
335
-
336
586
  const ReclusesVictory = {
337
587
  key: "recluses-victory",
338
588
  name: `Recluse's Victory`,
589
+ type: "pvp",
590
+ morality: "all",
591
+ levelRange: [50, 50],
339
592
  links: [{ title: `Recluse's Victory`, href: "https://homecoming.wiki/wiki/Recluse%27s_Victory" }]
340
593
  };
341
594
 
342
595
  const RiktiWarZone = {
343
596
  key: "rikti-war-zone",
344
597
  name: "Rikti War Zone",
598
+ type: "co-op",
599
+ morality: "all",
600
+ levelRange: [35, 50],
345
601
  links: [{ title: "Rikti War Zone", href: "https://homecoming.wiki/wiki/Rikti_War_Zone" }]
346
602
  };
347
603
 
348
604
  const SafeguardAtlasPark = {
349
605
  key: "safeguard-atlas-park",
350
606
  name: "Safeguard: Atlas Park",
607
+ type: "safeguard",
608
+ morality: "heroic",
609
+ levelRange: [5, 10],
351
610
  links: [{ title: "Safeguard Mission", href: "https://homecoming.wiki/wiki/Safeguard_Mission" }]
352
611
  };
353
612
 
354
613
  const SafeguardBrickstown = {
355
614
  key: "safeguard-brickstown",
356
615
  name: "Safeguard: Brickstown",
616
+ type: "safeguard",
617
+ morality: "heroic",
618
+ levelRange: [35, 40],
357
619
  links: [{ title: "Safeguard Mission", href: "https://homecoming.wiki/wiki/Safeguard_Mission" }]
358
620
  };
359
621
 
360
622
  const SafeguardFoundersFalls = {
361
623
  key: "safeguard-founders-falls",
362
624
  name: `Safeguard: Founder's Falls`,
625
+ type: "safeguard",
626
+ morality: "heroic",
627
+ levelRange: [40, 45],
363
628
  links: [{ title: "Safeguard Mission", href: "https://homecoming.wiki/wiki/Safeguard_Mission" }]
364
629
  };
365
630
 
366
631
  const SafeguardIndependencePort = {
367
632
  key: "safeguard-independence-port",
368
633
  name: "Safeguard: Independence Port",
634
+ type: "safeguard",
635
+ morality: "heroic",
636
+ levelRange: [25, 30],
369
637
  links: [{ title: "Safeguard Mission", href: "https://homecoming.wiki/wiki/Safeguard_Mission" }]
370
638
  };
371
639
 
372
640
  const SafeguardKingsRow = {
373
641
  key: "safeguard-kings-row",
374
642
  name: "Safeguard: Kings Row",
643
+ type: "safeguard",
644
+ morality: "heroic",
645
+ levelRange: [10, 15],
375
646
  links: [{ title: "Safeguard Mission", href: "https://homecoming.wiki/wiki/Safeguard_Mission" }]
376
647
  };
377
648
 
378
649
  const SafeguardPeregrineIsland = {
379
650
  key: "safeguard-peregrine-island",
380
651
  name: "Safeguard: Peregrine Island",
652
+ type: "safeguard",
653
+ morality: "heroic",
654
+ levelRange: [45, 50],
381
655
  links: [{ title: "Safeguard Mission", href: "https://homecoming.wiki/wiki/Safeguard_Mission" }]
382
656
  };
383
657
 
384
658
  const SafeguardSkywayCity = {
385
659
  key: "safeguard-skyway-city",
386
660
  name: "Safeguard: Skyway City",
661
+ type: "safeguard",
662
+ morality: "heroic",
663
+ levelRange: [15, 20],
387
664
  links: [{ title: "Safeguard Mission", href: "https://homecoming.wiki/wiki/Safeguard_Mission" }]
388
665
  };
389
666
 
390
667
  const SafeguardSteelCanyon = {
391
668
  key: "safeguard-steel-canyon",
392
669
  name: "Safeguard: Steel Canyon",
670
+ type: "safeguard",
671
+ morality: "heroic",
672
+ levelRange: [20, 25],
393
673
  links: [{ title: "Safeguard Mission", href: "https://homecoming.wiki/wiki/Safeguard_Mission" }]
394
674
  };
395
675
 
396
676
  const SafeguardTalosIsland = {
397
677
  key: "safeguard-talos-island",
398
678
  name: "Safeguard: Talos Island",
679
+ type: "safeguard",
680
+ morality: "heroic",
681
+ levelRange: [30, 35],
399
682
  links: [{ title: "Safeguard Mission", href: "https://homecoming.wiki/wiki/Safeguard_Mission" }]
400
683
  };
401
684
 
402
685
  const SewerNetwork = {
403
686
  key: "sewer-network",
404
687
  name: "Sewer Network",
688
+ type: "trial",
689
+ morality: "heroic",
690
+ levelRange: [3, 10],
405
691
  links: [{ title: "Sewer Network", href: "https://homecoming.wiki/wiki/Sewer_Network" }]
406
692
  };
407
693
 
408
694
  const SharkheadIsle = {
409
695
  key: "sharkhead-isle",
410
696
  name: "Sharkhead Isle",
697
+ type: "city",
698
+ morality: "villainous",
699
+ levelRange: [20, 30],
411
700
  links: [{ title: "Sharkhead Isle", href: "https://homecoming.wiki/wiki/Sharkhead_Isle" }]
412
701
  };
413
702
 
414
703
  const SirensCall = {
415
704
  key: "sirens-call",
416
705
  name: `Siren's Call`,
706
+ type: "pvp",
707
+ morality: "all",
708
+ levelRange: [30, 30],
417
709
  links: [{ title: `Siren's Call`, href: "https://homecoming.wiki/wiki/Siren%27s_Call" }]
418
710
  };
419
711
 
420
712
  const SkywayCity = {
421
713
  key: "skyway-city",
422
714
  name: "Skyway City",
715
+ type: "city",
716
+ morality: "heroic",
717
+ levelRange: [10, 19],
423
718
  links: [{ title: "Skyway City", href: "https://homecoming.wiki/wiki/Skyway_City" }]
424
719
  };
425
720
 
426
721
  const StMartial = {
427
722
  key: "st-martial",
428
723
  name: "St. Martial",
724
+ type: "city",
725
+ morality: "villainous",
726
+ levelRange: [29, 40],
429
727
  links: [{ title: "St. Martial", href: "https://homecoming.wiki/wiki/St._Martial" }]
430
728
  };
431
729
 
432
730
  const SteelCanyon = {
433
731
  key: "steel-canyon",
434
732
  name: "Steel Canyon",
733
+ type: "city",
734
+ morality: "heroic",
735
+ levelRange: [10, 19],
435
736
  links: [{ title: "Steel Canyon", href: "https://homecoming.wiki/wiki/Steel_Canyon" }]
436
737
  };
437
738
 
438
739
  const StrigaIsle = {
439
740
  key: "striga-isle",
440
741
  name: "Striga Isle",
742
+ type: "co-op",
743
+ morality: "all",
744
+ levelRange: [20, 29],
441
745
  links: [{ title: "Striga Isle", href: "https://homecoming.wiki/wiki/Striga_Isle" }]
442
746
  };
443
747
 
444
748
  const Studio55 = {
445
749
  key: "studio-55",
446
750
  name: "Studio 55",
751
+ type: "building",
752
+ morality: "all",
753
+ levelRange: 1,
754
+ notes: `Acts as the Praetorian Earth's connection to the ${zoneLink(PocketD)} zone.`,
447
755
  links: [{ title: "Studio 55", href: "https://homecoming.wiki/wiki/Studio_55" }]
448
756
  };
449
757
 
450
758
  const TalosIsland = {
451
759
  key: "talos-island",
452
760
  name: "Talos Island",
761
+ type: "city",
762
+ morality: "heroic",
763
+ levelRange: [20, 27],
453
764
  links: [{ title: "Talos Island", href: "https://homecoming.wiki/wiki/Talos_Island" }]
454
765
  };
455
766
 
456
767
  const TerraVolta = {
457
768
  key: "terra-volta",
458
769
  name: "Terra Volta",
770
+ type: "trial",
771
+ morality: "heroic",
772
+ levelRange: [20, 29],
459
773
  links: [{ title: "Terra Volta", href: "https://homecoming.wiki/wiki/Terra_Volta" }]
460
774
  };
461
775
 
462
776
  const TheAbyss = {
463
777
  key: "the-abyss",
464
778
  name: "The Abyss",
779
+ type: "co-op",
780
+ morality: "all",
781
+ levelRange: [45, 50],
465
782
  links: [{ title: "The Abyss", href: "https://homecoming.wiki/wiki/The_Abyss" }]
466
783
  };
467
784
 
468
785
  const TheChantry = {
469
786
  key: "the-chantry",
470
787
  name: "The Chantry",
788
+ type: "hazard",
789
+ morality: "heroic",
790
+ levelRange: [44, 47],
471
791
  links: [{ title: "The Chantry", href: "https://homecoming.wiki/wiki/The_Chantry" }]
472
792
  };
473
793
 
474
794
  const TheHive = {
475
795
  key: "the-hive",
476
796
  name: "The Hive",
797
+ type: "co-op",
798
+ morality: "all",
799
+ levelRange: [45, 50],
477
800
  links: [{ title: "The Hive", href: "https://homecoming.wiki/wiki/The_Hive" }]
478
801
  };
479
802
 
480
803
  const TheHollows = {
481
804
  key: "the-hollows",
482
805
  name: "The Hollows",
806
+ type: "hazard",
807
+ morality: "heroic",
808
+ levelRange: [5, 15],
483
809
  links: [{ title: "The Hollows", href: "https://homecoming.wiki/wiki/The_Hollows" }]
484
810
  };
485
811
 
486
812
  const TheLabyrinthOfFog = {
487
813
  key: "the-labyrinth-of-fog",
488
814
  name: "The Labyrinth of Fog",
815
+ type: "co-op",
816
+ morality: "all",
817
+ levelRange: [45, 50],
489
818
  links: [{ title: "The Labyrinth of Fog", href: "https://homecoming.wiki/wiki/The_Labyrinth_of_Fog" }]
490
819
  };
491
820
 
492
821
  const TheStormPalace = {
493
822
  key: "the-storm-palace",
494
823
  name: "The Storm Palace",
824
+ type: "trial",
825
+ morality: "heroic",
826
+ levelRange: [48, 53],
495
827
  links: [{ title: "The Storm Palace", href: "https://homecoming.wiki/wiki/The_Storm_Palace" }]
496
828
  };
497
829
 
498
830
  const UndergroundImperial = {
499
831
  key: "underground-imperial",
500
832
  name: "Underground Imperial",
833
+ type: "city",
834
+ morality: "praetorian",
835
+ levelRange: [9, 15],
501
836
  links: [{ title: "Underground Imperial", href: "https://homecoming.wiki/wiki/Underground_Imperial" }]
502
837
  };
503
838
 
504
839
  const UndergroundNeutropolis = {
505
840
  key: "underground-neutropolis",
506
841
  name: "Underground Neutropolis",
842
+ type: "city",
843
+ morality: "praetorian",
844
+ levelRange: [15, 20],
507
845
  links: [{ title: "Underground Neutropolis", href: "https://homecoming.wiki/wiki/Underground_Neutropolis" }]
508
846
  };
509
847
 
510
848
  const UndergroundNova = {
511
849
  key: "underground-nova",
512
850
  name: "Underground Nova",
851
+ type: "city",
852
+ morality: "praetorian",
853
+ levelRange: [1, 10],
513
854
  links: [{ title: "Underground Nova", href: "https://homecoming.wiki/wiki/Underground_Nova" }]
514
855
  };
515
856
 
516
857
  const Warburg = {
517
858
  key: "warburg",
518
859
  name: "Warburg",
860
+ type: "pvp",
861
+ morality: "all",
862
+ levelRange: [38, 38],
519
863
  links: [{ title: "Warburg", href: "https://homecoming.wiki/wiki/Warburg" }]
520
864
  };
521
865
 
@@ -575,7 +919,6 @@ const ZONES = [
575
919
  Phone,
576
920
  PocketD,
577
921
  PortOakes,
578
- Praetoria,
579
922
  ReclusesVictory,
580
923
  RiktiWarZone,
581
924
  SafeguardAtlasPark,
@@ -3780,50 +4123,6 @@ const GanglandFury = {
3780
4123
  ]
3781
4124
  };
3782
4125
 
3783
- const TinaMacintyre = {
3784
- key: "tina-macintyre",
3785
- name: "Tina Macintyre",
3786
- title: "Portal Corporation Research Scientist",
3787
- morality: "heroic",
3788
- location: { zoneKey: PeregrineIsland.key, coords: [-1680.5, 0, -3638.5] },
3789
- levelRange: [40, 45],
3790
- links: [{ title: "Tina Macintyre", href: "https://homecoming.wiki/wiki/Tina_Macintyre" }]
3791
- };
3792
-
3793
- const TheHydraDimension = {
3794
- key: "the-hydra-dimension",
3795
- name: "The Hydra Dimension",
3796
- type: "mission",
3797
- morality: "heroic",
3798
- contactKeys: TinaMacintyre.key,
3799
- levelRange: [45, 50],
3800
- links: [
3801
- { title: "The Hydra Dimension", href: "https://homecoming.wiki/wiki/Tina_Macintyre#The_Hydra_Dimension_(40-45)" }
3802
- ]
3803
- };
3804
-
3805
- const UnaiKemen = {
3806
- key: "unai-kemen",
3807
- name: "Unai Kemen",
3808
- title: "Portal Corp Security Chief",
3809
- morality: "heroic",
3810
- location: { zoneKey: PeregrineIsland.key, coords: [-1519.5, 0.5, -3425] },
3811
- levelRange: [45, 50],
3812
- links: [{ title: "Unai Kemen", href: "https://homecoming.wiki/wiki/Unai_Kemen" }]
3813
- };
3814
-
3815
- const GetSomeSamplesOfHydraManDna = {
3816
- key: "get-some-samples-of-hydra-man-dna",
3817
- name: "Get some samples of Hydra Man DNA",
3818
- type: "mission",
3819
- morality: "heroic",
3820
- contactKeys: UnaiKemen.key,
3821
- levelRange: [45, 50],
3822
- links: [
3823
- { title: "Get some samples of Hydra Man DNA", href: "https://homecoming.wiki/wiki/Unai_Kemen#Get_some_samples_of_Hydra_Man_DNA" }
3824
- ]
3825
- };
3826
-
3827
4126
  const Multidimensional = {
3828
4127
  type: "exploration",
3829
4128
  key: "multidimensional",
@@ -3843,50 +4142,6 @@ const Multidimensional = {
3843
4142
  ]
3844
4143
  };
3845
4144
 
3846
- const MariaJenkins = {
3847
- key: "maria-jenkins",
3848
- name: "Maria Jenkins",
3849
- title: "Former Heroine",
3850
- morality: "heroic",
3851
- location: { zoneKey: PeregrineIsland.key, coords: [-1043, 0, -2783] },
3852
- levelRange: [45, 50],
3853
- links: [{ title: "Maria Jenkins", href: "https://homecoming.wiki/wiki/Maria_Jenkins" }]
3854
- };
3855
-
3856
- const TakeDownNightstar = {
3857
- key: "take-down-nightstar",
3858
- name: "Take down Nightstar",
3859
- type: "mission",
3860
- morality: "heroic",
3861
- contactKeys: MariaJenkins.key,
3862
- levelRange: [45, 50],
3863
- links: [
3864
- { title: "Take down Nightstar", href: "https://homecoming.wiki/wiki/Maria_Jenkins#Take_down_Nightstar" }
3865
- ]
3866
- };
3867
-
3868
- const DmitriKrylov = {
3869
- key: "dmitri-krylov",
3870
- name: "Dmitri Krylov",
3871
- title: "Metahuman Researcher",
3872
- morality: "villainous",
3873
- location: { zoneKey: CapAuDiable.key, coords: [2878, -72, -182] },
3874
- levelRange: [10, 14],
3875
- links: [{ title: "Dmitri Krylov", href: "https://homecoming.wiki/wiki/Dmitri_Krylov" }]
3876
- };
3877
-
3878
- const BringCitizensToVahzilokSurgeons = {
3879
- key: "bring-citizens-to-vahzilok-surgeons",
3880
- name: "Bring citizens to Vahzilok surgeons",
3881
- type: "mission",
3882
- morality: "villainous",
3883
- contactKeys: DmitriKrylov.key,
3884
- levelRange: [10, 14],
3885
- links: [
3886
- { title: "Bring citizens to Vahzilok surgeons", href: "https://homecoming.wiki/wiki/Dmitri_Krylov#Bring_citizens_to_Vahzilok_surgeons" }
3887
- ]
3888
- };
3889
-
3890
4145
  const Shrouded = {
3891
4146
  type: "exploration",
3892
4147
  key: "shrouded",
@@ -10227,8 +10482,8 @@ const TriedAndTrue = {
10227
10482
  icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/hero.png",
10228
10483
  requirements: [
10229
10484
  { key: "loc-0", type: "location", location: { zoneKey: AtlasPark.key, coords: [66, -634.5, -681.9] } },
10230
- { key: "loc-1", type: "location", missionKey: OmegaTeamMemorial.key, location: { coords: [1520, -813.2, -2688.1] } },
10231
- { key: "loc-2", type: "location", missionKey: DrKahnTaskForce.key, location: { coords: [1520, -813.2, -2688.1] } }
10485
+ { key: "loc-1", type: "location", location: { coords: [1520, -813.2, -2688.1] }, notes: `During the ${missionLink(OmegaTeamMemorial)} mission.` },
10486
+ { key: "loc-2", type: "location", location: { coords: [1520, -813.2, -2688.1] }, notes: `During the first mission in the ${missionLink(DrKahnTaskForce)}.` }
10232
10487
  ]
10233
10488
  };
10234
10489
 
@@ -10247,7 +10502,7 @@ Ms. Liberty and Longbow have refused to confirm or deny the persistent rumor tha
10247
10502
  ],
10248
10503
  icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/hero.png",
10249
10504
  requirements: [
10250
- { key: "loc-0", type: "location", location: { zoneKey: KallistiWharf.key, coords: [4286, 148, 2720] } }
10505
+ { key: "loc-0", type: "location", location: { zoneKey: KallistiWharf.key, coords: [4286, 148, 2720], icon: "badge", iconText: "1" } }
10251
10506
  ]
10252
10507
  };
10253
10508
 
@@ -10443,6 +10698,153 @@ Some speak of finding lost secrets, long forgotten, laying hidden amongst the fo
10443
10698
  ]
10444
10699
  };
10445
10700
 
10701
+ const FueledByGreed = {
10702
+ type: "exploration",
10703
+ key: "fueled-by-greed",
10704
+ setTitleId: [2452],
10705
+ name: "Fueled By Greed",
10706
+ releaseDate: "2025-06-17",
10707
+ morality: "all",
10708
+ badgeText: `What started as Lou's Auto Shop was eventually bought by his brother-in-law, Manny, and turned into a full-service fuel station and repair shop.
10709
+ The station suffered a major fire in 1974, claiming Lou's life - Manny was investigated for insurance fraud and arson, and the station became eminent domain of the Wharf in 1997.
10710
+ When the Rikti attacked, plans for the station were sidelined and eventually lost entirely.`,
10711
+ links: [
10712
+ { title: "Fueled By Greed Badge", href: "https://homecoming.wiki/wiki/Fueled_By_Greed_Badge" }
10713
+ ],
10714
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/hero.png",
10715
+ requirements: [
10716
+ { key: "loc-0", type: "location", location: { zoneKey: KallistiWharf.key, coords: [1562.5, 42, 5176.1], icon: "badge", iconText: "4" } }
10717
+ ]
10718
+ };
10719
+
10720
+ const InTheirPrime = {
10721
+ type: "exploration",
10722
+ key: "in-their-prime",
10723
+ setTitleId: [2450],
10724
+ name: "In Their Prime",
10725
+ releaseDate: "2025-06-17",
10726
+ morality: "all",
10727
+ badgeText: `Padma Wadkar was not only a brilliant doctor but also moonlit as the heroine 'Brightshield', who selflessly sacrificed herself during the Rikti War to keep a portal open for survivors as long as she could.
10728
+ Brightshield herself did not use the portal, even as bombs fell and buildings nearby collapsed.
10729
+ Her body was recovered days later, and her identity was revealed to the public a few weeks afterward.
10730
+ The new hospital built here is dedicated to her memory`,
10731
+ links: [
10732
+ { title: "In Their Prime Badge", href: "https://homecoming.wiki/wiki/In_Their_Prime_Badge" }
10733
+ ],
10734
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/hero.png",
10735
+ requirements: [
10736
+ { key: "loc-0", type: "location", location: { zoneKey: KallistiWharf.key, coords: [6465.4, 50.2, 1732.1], icon: "badge", iconText: "2" } }
10737
+ ]
10738
+ };
10739
+
10740
+ const MarkedOut = {
10741
+ type: "exploration",
10742
+ key: "marked-out",
10743
+ setTitleId: [2454],
10744
+ name: "Marked Out",
10745
+ releaseDate: "2025-06-17",
10746
+ morality: "all",
10747
+ badgeText: `This site commemorates the final protest held against developer-tycoon Mark Maxwell's aggressive demolitions of the theatres in the Row. The last theatre, named The Redwood, stood here and shielded more than 500 protestors in its final days.`,
10748
+ links: [
10749
+ { title: "Marked Out Badge", href: "https://homecoming.wiki/wiki/Marked_Out_Badge" }
10750
+ ],
10751
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/hero.png",
10752
+ requirements: [
10753
+ { key: "loc-0", type: "location", location: { zoneKey: KallistiWharf.key, coords: [1891.5, 41.8, 971.7], icon: "badge", iconText: "6" } }
10754
+ ]
10755
+ };
10756
+
10757
+ const ProtestTooMuch = {
10758
+ type: "exploration",
10759
+ key: "protest-too-much",
10760
+ setTitleId: [2451],
10761
+ name: "Protest Too Much",
10762
+ releaseDate: "2025-06-17",
10763
+ morality: "all",
10764
+ badgeText: `At this location in June of 2018, a man by the name of Kieran Holt, who was later determined to be wrongfully detained, was assaulted by members of the PPD for resisting arrest while protesting their corruption.
10765
+ Holt died, hours later, in his holding cell from his injuries. The resulting media coverage led to the swift loss of public trust in the local PPD and their removal, in favor of Blackwing Industries after heated debates.`,
10766
+ links: [
10767
+ { title: "Protest Too Much Badge", href: "https://homecoming.wiki/wiki/Protest_Too_Much_Badge" }
10768
+ ],
10769
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/hero.png",
10770
+ requirements: [
10771
+ { key: "loc-0", type: "location", location: { zoneKey: KallistiWharf.key, coords: [5875.5, 47.9, 4979.9], icon: "badge", iconText: "3" } }
10772
+ ]
10773
+ };
10774
+
10775
+ const QuayToTheCity = {
10776
+ type: "exploration",
10777
+ key: "quay-to-the-city",
10778
+ setTitleId: [2455],
10779
+ name: "Quay to the City",
10780
+ releaseDate: "2025-06-17",
10781
+ morality: "all",
10782
+ badgeText: `Kallisti Marina is all that is left of a larger harbor that originally gave Kallisti Wharf half of its name.
10783
+ The first half, Kallisti, is a greek word that means 'The prettiest one'.
10784
+ Back when it gained the moniker, there were many Greek immigrants to the area, and it was noted for its placid, beautiful waters, bright blue, full of fish and free of the pollution that would come later.
10785
+ Before Independence Port, this Marina was the first port of call for imports and immigrants alike.`,
10786
+ links: [
10787
+ { title: "Quay to the City Badge", href: "https://homecoming.wiki/wiki/Quay_To_The_City_Badge" }
10788
+ ],
10789
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/hero.png",
10790
+ requirements: [
10791
+ { key: "loc-0", type: "location", location: { zoneKey: KallistiWharf.key, coords: [2143.5, 12.4, -547.1], icon: "badge", iconText: "7" } }
10792
+ ]
10793
+ };
10794
+
10795
+ const RavingMad = {
10796
+ type: "exploration",
10797
+ key: "raving-mad",
10798
+ setTitleId: [2453],
10799
+ name: "Raving Mad",
10800
+ releaseDate: "2025-06-17",
10801
+ morality: "all",
10802
+ badgeText: `Before Collier Industrial Park got its much-needed renaissance, the abandoned Collier warehouses had slowly become either self-storage parks or 'criminal-chic' locations for raves that bred influence amongst the gang patrons, namely the Skulls and the Family.`,
10803
+ links: [
10804
+ { title: "Raving Mad Badge", href: "https://homecoming.wiki/wiki/Raving_Mad_Badge" }
10805
+ ],
10806
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/hero.png",
10807
+ requirements: [
10808
+ { key: "loc-0", type: "location", location: { zoneKey: KallistiWharf.key, coords: [447.7, 115.4, 3204], icon: "badge", iconText: "5" } }
10809
+ ]
10810
+ };
10811
+
10812
+ const TouristTrapped = {
10813
+ type: "exploration",
10814
+ key: "tourist-trapped",
10815
+ setTitleId: [2456],
10816
+ name: "Tourist Trapped",
10817
+ releaseDate: "2025-06-17",
10818
+ morality: "all",
10819
+ badgeText: `Many who visit the Wharf take a paddle boat out to Turtle Rock Island as a "must see" location.
10820
+ Known for its curious rock formations, incredible views of the Wharf, and the once-a-day alignment of One Statesman Tower with the rising sun, tourists end up here taking photos more than any other place in the Wharf.`,
10821
+ links: [
10822
+ { title: "Tourist Trapped Badge", href: "https://homecoming.wiki/wiki/Tourist_Trapped_Badge" }
10823
+ ],
10824
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/hero.png",
10825
+ requirements: [
10826
+ { key: "loc-0", type: "location", location: { zoneKey: KallistiWharf.key, coords: [5339.4, 72.1, 738.7], icon: "badge", iconText: "8" } }
10827
+ ]
10828
+ };
10829
+
10830
+ const LucidDreamer = {
10831
+ type: "exploration",
10832
+ key: "lucid-dreamer",
10833
+ setTitleId: [2573],
10834
+ name: "Lucid Dreamer",
10835
+ releaseDate: "2025-11-25",
10836
+ morality: "all",
10837
+ badgeText: `You've gone much deeper into the Labyrinth of Fog, perhaps deeper than you ought to... Lurking in the darkest depths of the maze hid a shadow of Atlas Park, wreathed in nightmare. What purpose this place serves is a mystery waiting to be uncovered.`,
10838
+ notes: ` `,
10839
+ links: [
10840
+ { title: "Lucid Dreamer Badge", href: "https://homecoming.wiki/wiki/Lucid_Dreamer_Badge" }
10841
+ ],
10842
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/exploration/labyrinth.png",
10843
+ requirements: [
10844
+ { key: "loc-0", type: "location", location: { zoneKey: TheLabyrinthOfFog.key } }
10845
+ ]
10846
+ };
10847
+
10446
10848
  const EXPLORATION_BADGES = [
10447
10849
  // Bloody Bay
10448
10850
  Lobbyist,
@@ -10669,6 +11071,13 @@ const EXPLORATION_BADGES = [
10669
11071
  Unsubtle,
10670
11072
  // Kallisti Wharf
10671
11073
  OnTheShouldersOfGiants,
11074
+ FueledByGreed,
11075
+ InTheirPrime,
11076
+ MarkedOut,
11077
+ ProtestTooMuch,
11078
+ QuayToTheCity,
11079
+ RavingMad,
11080
+ TouristTrapped,
10672
11081
  // Peregrine Island
10673
11082
  PortalParter,
10674
11083
  UseMightForRight,
@@ -11015,7 +11424,8 @@ const EXPLORATION_BADGES = [
11015
11424
  PartyAnimal,
11016
11425
  // Labyrinth of Fog
11017
11426
  HiddenInTheFog,
11018
- LabRat
11427
+ LabRat,
11428
+ LucidDreamer
11019
11429
  ];
11020
11430
 
11021
11431
  const NullTheGull = {
@@ -19307,6 +19717,409 @@ const NutrientRich = {
19307
19717
  ]
19308
19718
  };
19309
19719
 
19720
+ const AdelardZiegler = {
19721
+ key: "adelard-ziegler",
19722
+ name: "Adelard Ziegler",
19723
+ title: "International Intelligence Liaison",
19724
+ morality: "heroic",
19725
+ location: { zoneKey: KallistiWharf.key, coords: [6072, 65, 1304] },
19726
+ levelRange: [40, 50],
19727
+ links: [{ title: "Adelard Ziegler", href: "https://homecoming.wiki/wiki/Adelard_Ziegler" }]
19728
+ };
19729
+
19730
+ const HuntingTheHunters = {
19731
+ key: "hunting-the-hunters",
19732
+ name: "Hunting the Hunters",
19733
+ type: "story-arc",
19734
+ morality: "heroic",
19735
+ contactKeys: AdelardZiegler.key,
19736
+ levelRange: [40, 50],
19737
+ links: [
19738
+ { title: "Hunting the Hunters", href: "https://homecoming.wiki/wiki/Adelard_Ziegler#Hunting_the_Hunters" }
19739
+ ],
19740
+ flashback: {
19741
+ id: "28.06",
19742
+ levelRange: [50]
19743
+ }
19744
+ };
19745
+
19746
+ const StaringIntoTheAbyss = {
19747
+ type: "accomplishment",
19748
+ key: "staring-into-the-abyss",
19749
+ setTitleId: [2559],
19750
+ name: "Staring Into The Abyss",
19751
+ releaseDate: "2025-06-17",
19752
+ morality: "heroic",
19753
+ badgeText: `You assisted Adelard Ziegler with his investigation into the disappearance of the majority of the Council's Void Hunter division.
19754
+ What you found out was disturbing, with an ominous warning about a possible invasion coming soon.`,
19755
+ links: [
19756
+ { title: "Staring Into The Abyss Badge", href: "https://homecoming.wiki/wiki/Staring_Into_The_Abyss_Badge" }
19757
+ ],
19758
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/staring-into-the-abyss.png",
19759
+ requirements: [
19760
+ { key: HuntingTheHunters.key, type: "mission", missionKey: HuntingTheHunters.key }
19761
+ ]
19762
+ };
19763
+
19764
+ const DapDapThaDealMaka = {
19765
+ key: "dap-dap-tha-deal-maka",
19766
+ name: "Dap-Dap tha Deal-Maka",
19767
+ title: "Acquisition Specialist",
19768
+ morality: "villainous",
19769
+ location: { zoneKey: KallistiWharf.key, coords: [1578, 47, 4995] },
19770
+ levelRange: [40, 50],
19771
+ links: [{ title: "Dap-Dap tha Deal-Maka", href: "https://homecoming.wiki/wiki/Dap-Dap_tha_Deal-Maka" }]
19772
+ };
19773
+
19774
+ const MergersAndAcquisitions = {
19775
+ key: "mergers-and-acquisitions",
19776
+ name: "Mergers and Acquisitions",
19777
+ type: "story-arc",
19778
+ morality: "villainous",
19779
+ contactKeys: DapDapThaDealMaka.key,
19780
+ levelRange: [40, 50],
19781
+ links: [
19782
+ { title: "Mergers and Acquisitions", href: "https://homecoming.wiki/wiki/Dap-Dap_tha_Deal-Maka#Mergers_and_Acquisitions" }
19783
+ ],
19784
+ flashback: {
19785
+ id: "28.02",
19786
+ levelRange: [50]
19787
+ }
19788
+ };
19789
+
19790
+ const BusinessSavvy = {
19791
+ type: "accomplishment",
19792
+ key: "business-savvy",
19793
+ setTitleId: [2560],
19794
+ name: "Business Savvy",
19795
+ releaseDate: "2025-06-17",
19796
+ morality: "villainous",
19797
+ badgeText: `You bumbled, hustled and crashed through a number of people and places to help Dap-Dap establish the Freaklok as an organization worthy of being taken seriously, especially by the Freakshow.`,
19798
+ links: [
19799
+ { title: "Business Savvy Badge", href: "https://homecoming.wiki/wiki/Business_Savvy_Badge" }
19800
+ ],
19801
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/business-savvy.png",
19802
+ requirements: [
19803
+ { key: MergersAndAcquisitions.key, type: "mission", missionKey: MergersAndAcquisitions.key }
19804
+ ]
19805
+ };
19806
+
19807
+ const ErinWest = {
19808
+ key: "erin-west",
19809
+ name: "Erin West",
19810
+ title: "Public Relations Specialist",
19811
+ morality: "rogue",
19812
+ location: { zoneKey: KallistiWharf.key, coords: [7213, 55, 2649] },
19813
+ levelRange: [40, 50],
19814
+ links: [{ title: "Erin West", href: "https://homecoming.wiki/wiki/Erin_West" }]
19815
+ };
19816
+
19817
+ const CuttingBackOldGrowth = {
19818
+ key: "cutting-back-old-growth",
19819
+ name: "Cutting Back Old Growth",
19820
+ type: "story-arc",
19821
+ morality: "rogue",
19822
+ contactKeys: ErinWest.key,
19823
+ levelRange: [40, 50],
19824
+ links: [
19825
+ { title: "Cutting Back Old Growth", href: "https://homecoming.wiki/wiki/Erin_West#Cutting_Back_Old_Growth" }
19826
+ ],
19827
+ flashback: {
19828
+ id: "28.03",
19829
+ levelRange: [50]
19830
+ }
19831
+ };
19832
+
19833
+ const FrontPerson = {
19834
+ type: "accomplishment",
19835
+ key: "front-person",
19836
+ setTitleId: [2561],
19837
+ name: "Front Person",
19838
+ releaseDate: "2025-06-17",
19839
+ morality: "villainous",
19840
+ badgeText: `When Crey needed someone to give them a good face to recover their image, they called you.`,
19841
+ links: [
19842
+ { title: "Front Person Badge", href: "https://homecoming.wiki/wiki/Front_Person_Badge" }
19843
+ ],
19844
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/front-person.png",
19845
+ requirements: [
19846
+ { key: CuttingBackOldGrowth.key, type: "mission", missionKey: CuttingBackOldGrowth.key }
19847
+ ]
19848
+ };
19849
+
19850
+ const RobertKogan = {
19851
+ key: "robert-kogan",
19852
+ name: "Robert Kogan",
19853
+ title: "Nil",
19854
+ morality: "vigilante",
19855
+ location: { zoneKey: KallistiWharf.key, coords: [1789, 57, 3436] },
19856
+ levelRange: [40, 50],
19857
+ links: [{ title: "Robert Kogan", href: "https://homecoming.wiki/wiki/Robert_Kogan" }]
19858
+ };
19859
+
19860
+ const TheSunlightAndTheSpotlight = {
19861
+ key: "the-sunlight-and-the-spotlight",
19862
+ name: "The Sunlight and the Spotlight",
19863
+ type: "story-arc",
19864
+ morality: "vigilante",
19865
+ contactKeys: RobertKogan.key,
19866
+ levelRange: [40, 50],
19867
+ links: [
19868
+ { title: "The Sunlight and the Spotlight", href: "https://homecoming.wiki/wiki/Robert_Kogan#The_Sunlight_and_the_Spotlight" }
19869
+ ],
19870
+ flashback: {
19871
+ id: "28.04",
19872
+ levelRange: [50]
19873
+ }
19874
+ };
19875
+
19876
+ const JustifiedEnds = {
19877
+ type: "accomplishment",
19878
+ key: "justified-ends",
19879
+ setTitleId: [2562],
19880
+ name: "Justified Ends",
19881
+ releaseDate: "2025-06-17",
19882
+ morality: "heroic",
19883
+ badgeText: `Some evils can't be beaten while keeping your hands clean. You've done what was needed when others wouldn't.`,
19884
+ links: [
19885
+ { title: "Justified Ends Badge", href: "https://homecoming.wiki/wiki/Justified_Ends_Badge" }
19886
+ ],
19887
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/justified-ends.png",
19888
+ requirements: [
19889
+ { key: TheSunlightAndTheSpotlight.key, type: "mission", missionKey: TheSunlightAndTheSpotlight.key }
19890
+ ]
19891
+ };
19892
+
19893
+ const AlexanderTheGreat = {
19894
+ key: "alexander-the-great",
19895
+ name: "Alexander the Great",
19896
+ title: "Ex-Warrior",
19897
+ morality: "rogue",
19898
+ location: { zoneKey: KallistiWharf.key, coords: [2147.2, 11.9, -423.5] },
19899
+ levelRange: [40, 50],
19900
+ links: [{ title: "Alexander the Great", href: "https://homecoming.wiki/wiki/Alexander_the_Great" }]
19901
+ };
19902
+
19903
+ const KnowThyEnemy = {
19904
+ key: "know-thy-enemy",
19905
+ name: "Know Thy Enemy",
19906
+ type: "story-arc",
19907
+ morality: "heroic",
19908
+ contactKeys: AlexanderTheGreat.key,
19909
+ levelRange: [40, 50],
19910
+ links: [
19911
+ { title: "Know Thy Enemy", href: "https://homecoming.wiki/wiki/Alexander_the_Great#Know_Thy_Enemy" }
19912
+ ],
19913
+ flashback: {
19914
+ id: "28.04",
19915
+ levelRange: [50]
19916
+ }
19917
+ };
19918
+
19919
+ const ThickerThanWater = {
19920
+ type: "accomplishment",
19921
+ key: "thicker-than-water",
19922
+ setTitleId: [2563],
19923
+ name: "Thicker Than Water",
19924
+ releaseDate: "2025-06-17",
19925
+ morality: "heroic",
19926
+ badgeText: `Alexander 'the Great' Pavlidis used the full quote: 'The blood of the battlefield is thicker than the water of the womb.' His former brothers in arms among the Warriors have fallen victim to demonic trickery but he remains honorbound to try to save their souls.`,
19927
+ links: [
19928
+ { title: "Thicker Than Water Badge", href: "https://homecoming.wiki/wiki/Thicker_Than_Water_Badge" }
19929
+ ],
19930
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/thicker-than-water.png",
19931
+ requirements: [
19932
+ { key: KnowThyEnemy.key, type: "mission", missionKey: KnowThyEnemy.key }
19933
+ ]
19934
+ };
19935
+
19936
+ const GenerationalTrauma = {
19937
+ type: "accomplishment",
19938
+ key: "generational-trauma",
19939
+ setTitleId: [2564],
19940
+ name: "Generational Trauma",
19941
+ releaseDate: "2025-06-17",
19942
+ morality: "heroic",
19943
+ badgeText: `You have discovered the consequences of helping Sister Valeria in the past - your encounter with Livia was actually the first time you met the host Nictus inside Arakhn, which now harbors milennia of hatred for you as a result.
19944
+ The fact that Ourboros did not mend this is telling.`,
19945
+ acquisition: `Complete the bonus objectives in the ${missionLink(HuntingTheHunters)} story arc.`,
19946
+ links: [
19947
+ { title: "Generational Trauma Badge", href: "https://homecoming.wiki/wiki/Generational_Trauma_Badge" }
19948
+ ],
19949
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/generational-trauma.png",
19950
+ requirements: [
19951
+ { key: HuntingTheHunters.key, type: "mission", missionKey: HuntingTheHunters.key }
19952
+ ]
19953
+ };
19954
+
19955
+ const UncomfortableTruths = {
19956
+ type: "accomplishment",
19957
+ key: "uncomfortable-truths",
19958
+ setTitleId: [2565],
19959
+ name: "Uncomfortable Truths",
19960
+ releaseDate: "2025-06-17",
19961
+ morality: "villainous",
19962
+ badgeText: `Sometimes the only thing it takes to completely rock a person's world is to learn a few uncomfortable truths.`,
19963
+ acquisition: `Complete bonus objectives in the ${missionLink(CuttingBackOldGrowth)} story arc.`,
19964
+ links: [
19965
+ { title: "Uncomfortable Truths Badge", href: "https://homecoming.wiki/wiki/Uncomfortable_Truths_Badge" }
19966
+ ],
19967
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/uncomfortable-truths.png",
19968
+ requirements: [
19969
+ { key: CuttingBackOldGrowth.key, type: "mission", missionKey: CuttingBackOldGrowth.key }
19970
+ ]
19971
+ };
19972
+
19973
+ const TruthSeeker = {
19974
+ type: "accomplishment",
19975
+ key: "truth-seeker",
19976
+ setTitleId: [2566],
19977
+ name: "Truth Seeker",
19978
+ releaseDate: "2025-06-17",
19979
+ morality: "villainous",
19980
+ badgeText: `No mystery is too small to intrigue you. You gave Erin West closure by uncovering the truth about her mentor's death.`,
19981
+ acquisition: `Complete bonus objectives in the ${missionLink(CuttingBackOldGrowth)} story arc.`,
19982
+ links: [
19983
+ { title: "Truth Seeker Badge", href: "https://homecoming.wiki/wiki/Truth_Seeker_Badge" }
19984
+ ],
19985
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/truth-seeker.png",
19986
+ requirements: [
19987
+ { key: CuttingBackOldGrowth.key, type: "mission", missionKey: CuttingBackOldGrowth.key }
19988
+ ]
19989
+ };
19990
+
19991
+ const BrassTax = {
19992
+ type: "accomplishment",
19993
+ key: "brass-tax",
19994
+ setTitleId: [2567],
19995
+ name: "Brass Tax",
19996
+ releaseDate: "2025-06-17",
19997
+ morality: "villainous",
19998
+ badgeText: `You negotiated with Nemesis, to the joyful sounds of shattering brass, on his own home turf in the Shadow Shard.`,
19999
+ acquisition: `Complete the bonus objectives in the story arc ${missionLink(MergersAndAcquisitions)}.`,
20000
+ links: [
20001
+ { title: "Brass Tax Badge", href: "https://homecoming.wiki/wiki/Brass_Tax_Badge" }
20002
+ ],
20003
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/brass-tax.png",
20004
+ requirements: [
20005
+ { key: MergersAndAcquisitions.key, type: "mission", missionKey: MergersAndAcquisitions.key }
20006
+ ]
20007
+ };
20008
+
20009
+ const ChromaticCombatant = {
20010
+ type: "accomplishment",
20011
+ key: "chromatic-combatant",
20012
+ setTitleId: [2576],
20013
+ name: "Chromatic Combatant",
20014
+ releaseDate: "2025-11-25",
20015
+ morality: "all",
20016
+ badgeText: `You've shown yourself amongst greatest of your otherworldeer peers by mastering the Tests of Combat. The phantoms knows your true worth after defeating all Four Generals of Achlys at the same time.`,
20017
+ acquisition: `Complete the Test of Apathy offered by The Watcher, Teleute in the Core of the Labyrinth of Fog.`,
20018
+ links: [
20019
+ { title: "Chromatic Combatant Badge", href: "https://homecoming.wiki/wiki/Chromatic_Combatant_Badge" }
20020
+ ],
20021
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/chromatic-combatant.png"
20022
+ };
20023
+
20024
+ const ZoeLangston = {
20025
+ key: "zoe-langston",
20026
+ name: `Marigold 'Zoe' Langston`,
20027
+ title: "Heiress to the Langston Dynasty",
20028
+ morality: "all",
20029
+ location: { zoneKey: KallistiWharf.key, coords: [475, -280, 3899] },
20030
+ levelRange: [40, 50],
20031
+ links: [{ title: `Marigold 'Zoe' Langston`, href: `https://homecoming.wiki/wiki/Zoe_Langston` }]
20032
+ };
20033
+
20034
+ const ZoeTaskForce = {
20035
+ key: "zoe-task-force",
20036
+ name: "Zoe Task Force",
20037
+ type: "task-force",
20038
+ morality: "all",
20039
+ contactKeys: ZoeLangston.key,
20040
+ levelRange: [40, 50],
20041
+ links: [
20042
+ { title: "Zoe Task Force", href: "https://homecoming.wiki/wiki/Zoe_Task_Force" }
20043
+ ]
20044
+ };
20045
+
20046
+ const HeartOfGold = {
20047
+ type: "accomplishment",
20048
+ key: "heart-of-gold",
20049
+ setTitleId: [2574],
20050
+ name: "Heart of Gold",
20051
+ releaseDate: "2025-11-25",
20052
+ morality: "all",
20053
+ badgeText: `You teamed up with Marigold 'Zoe' Langston and her Gold Brickers to confront a plot by Nemesis to steal Langston Corp's latest portal science technology. Seizing the opportunity to deal a major blow to the Prussian Prince of Automatons, you put his Kallisti Wharf base of operations out of commission once and for all.`,
20054
+ links: [
20055
+ { title: "Heart of Gold Badge", href: "https://homecoming.wiki/wiki/Heart_of_Gold_Badge" }
20056
+ ],
20057
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/heart-of-gold.png",
20058
+ requirements: [
20059
+ { key: ZoeTaskForce.key, type: "mission", missionKey: ZoeTaskForce.key }
20060
+ ]
20061
+ };
20062
+
20063
+ const WyllieGalloway = {
20064
+ key: "wyllie-galloway",
20065
+ name: "Wyllie Galloway",
20066
+ title: "Mystic Librarian",
20067
+ morality: "heroic",
20068
+ location: { zoneKey: KallistiWharf.key, coords: [3564, 84, 3295] },
20069
+ levelRange: [40, 50],
20070
+ links: [{ title: "Wyllie Galloway", href: "https://homecoming.wiki/wiki/Wyllie_Galloway" }]
20071
+ };
20072
+
20073
+ const DeathResurrected = {
20074
+ key: "death-resurrected",
20075
+ name: "Death Resurrected",
20076
+ type: "story-arc",
20077
+ morality: "heroic",
20078
+ contactKeys: WyllieGalloway.key,
20079
+ levelRange: [40, 50],
20080
+ links: [
20081
+ { title: "Death Resurrected", href: `https://homecoming.wiki/wiki/Wyllie_Galloway#Death_Resurrected` }
20082
+ ],
20083
+ flashback: {
20084
+ id: "28.04",
20085
+ levelRange: [50],
20086
+ morality: "heroic"
20087
+ }
20088
+ };
20089
+
20090
+ const Psychopomp = {
20091
+ type: "accomplishment",
20092
+ key: "psychopomp",
20093
+ setTitleId: [2584],
20094
+ name: "Psychopomp",
20095
+ releaseDate: "2025-11-25",
20096
+ morality: "heroic",
20097
+ badgeText: `You discovered the source of the Skulls' new powers: mystifying pacts formed between themselves and the entities that ferry souls of the dead to the afterlife.`,
20098
+ acquisition: `Complete Wyllie Galloway's story arc.`,
20099
+ links: [
20100
+ { title: "Psychopomp Badge", href: "https://homecoming.wiki/wiki/Psychopomp_Badge" }
20101
+ ],
20102
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/psychopomp.png",
20103
+ requirements: [
20104
+ { key: DeathResurrected.key, type: "mission", missionKey: DeathResurrected.key }
20105
+ ]
20106
+ };
20107
+
20108
+ const TestedByCombat = {
20109
+ type: "accomplishment",
20110
+ key: "tested-by-combat",
20111
+ setTitleId: [2575],
20112
+ name: "Tested By Combat",
20113
+ releaseDate: "2025-11-25",
20114
+ morality: "all",
20115
+ badgeText: `You've proven yourself adapative and a worthy challenger by overcoming the many different Tests of Combat offered by the Four Generals of Achlys in the Labyrinth of Fog.`,
20116
+ acquisition: `Complete all six standard Tests of Combat offered by The Watcher, Teleute in the Core of the Labyrinth of Fog.`,
20117
+ links: [
20118
+ { title: "Tested By Combat Badge", href: "https://homecoming.wiki/wiki/Tested_By_Combat_Badge" }
20119
+ ],
20120
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accomplishment/tested-by-combat.png"
20121
+ };
20122
+
19310
20123
  const ACCOMPLISHMENT_BADGES = [
19311
20124
  FormerServantOfRecluse,
19312
20125
  BinderOfBeasts,
@@ -19338,6 +20151,7 @@ const ACCOMPLISHMENT_BADGES = [
19338
20151
  Peerless,
19339
20152
  MemberOfVanguard,
19340
20153
  Apocalyptic,
20154
+ HeartOfGold,
19341
20155
  SpeedDemon,
19342
20156
  Accelerated,
19343
20157
  Qualified,
@@ -19508,7 +20322,19 @@ const ACCOMPLISHMENT_BADGES = [
19508
20322
  Pollster,
19509
20323
  LoopHero,
19510
20324
  DoesntLookAtExplosions,
19511
- FaceTurn
20325
+ FaceTurn,
20326
+ StaringIntoTheAbyss,
20327
+ BusinessSavvy,
20328
+ FrontPerson,
20329
+ JustifiedEnds,
20330
+ ThickerThanWater,
20331
+ GenerationalTrauma,
20332
+ UncomfortableTruths,
20333
+ TruthSeeker,
20334
+ BrassTax,
20335
+ Psychopomp,
20336
+ TestedByCombat,
20337
+ ChromaticCombatant
19512
20338
  ];
19513
20339
 
19514
20340
  const Academic = {
@@ -21359,7 +22185,7 @@ This plaque memorializes the citizens of Paragon City, whether powered or not, w
21359
22185
  {
21360
22186
  key: "bicn-8",
21361
22187
  type: "monument",
21362
- location: { zoneKey: KallistiWharf.key, coords: [5337.95, 50.95, 4543.9], icon: "plaque", iconText: "1" },
22188
+ location: { zoneKey: KallistiWharf.key, coords: [2380, 56, 1132], icon: "plaque", iconText: "1" },
21363
22189
  monumentText: `On June 28, 1969, American police raided the gay bar known as the Stonewall Inn in Lower Manhattan, NYC.
21364
22190
  This would trigger a violent riot that would spark the flame of progress all across the United States of America.
21365
22191
  Paragon City was not excluded from this sweeping push for progress, with both civilians and heroes making a stand side-by-side and campaigning for equal rights for gay, lesbian, bisexual, and transgender individuals across the nation.
@@ -21597,6 +22423,209 @@ Every monster was cut down, yet no victory could they reap.`,
21597
22423
  ]
21598
22424
  };
21599
22425
 
22426
+ const ChristieConsolidation = {
22427
+ type: "history",
22428
+ key: "christie-consolidation",
22429
+ setTitleId: [2558],
22430
+ name: "Christie Consolidation",
22431
+ releaseDate: "2025-06-17",
22432
+ morality: "all",
22433
+ badgeText: `You have read up on the many gambles that Emil Christie has taken to recover the Wharf after the Rikti War.`,
22434
+ links: [
22435
+ { title: "Christie Consolidation Badge", href: "https://homecoming.wiki/wiki/Christie_Consolidation_Badge" }
22436
+ ],
22437
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/history/history-h.png",
22438
+ requirements: [
22439
+ {
22440
+ key: "chri-0",
22441
+ type: "monument",
22442
+ location: { zoneKey: KallistiWharf.key, coords: [6080.9, 80, 1031.6], icon: "pedestal", iconText: "3" },
22443
+ monumentText: `Welcome, Paragonian, to Kallisti Wharf! If you are reading this, then you most likely just came down from the local tram line that Emil Christie lobbied for personally.
22444
+ As one of the first directives to restoring the Wharf, Mr. Christie spent considerable time and influence getting tram service reconnected to our district.`
22445
+ },
22446
+ {
22447
+ key: "chri-1",
22448
+ type: "monument",
22449
+ location: { zoneKey: KallistiWharf.key, coords: [5793.3, 66.78, 1726.2], icon: "pedestal", iconText: "4" },
22450
+ monumentText: `This area of the city may look familiar to you. If you think you saw it on ClikClak as a viral meme, you're right!
22451
+ During a field test for self-driving cars, Christie Consolidated discovered and isolated a bug in the LIDAR recognition of its Autonomous Drive Software, but not before everyone started calling out the infamous 'Carnado' on social media.
22452
+ We want to reiterate that nobody was hurt, and the only damage occurred to CC's own vehicles!`
22453
+ },
22454
+ {
22455
+ key: "chri-2",
22456
+ type: "monument",
22457
+ location: { zoneKey: KallistiWharf.key, coords: [7356, 77.7, 527.5], icon: "plaque", iconText: "2" },
22458
+ monumentText: `It was an easy decision to allow Vanguard a residency in our district. With the rich history, booming tech sector, and scars of the Rikti War here in the Wharf, Vanguard set up an office here as soon as recovery efforts had concluded.
22459
+ Vanguard has been crucial in acclimating the influx of Praetorian Refugees - a safehouse policy that Mr. Christie launched as soon as the Praetorian War ended. Earth for Humans!`
22460
+ },
22461
+ {
22462
+ key: "chri-3",
22463
+ type: "monument",
22464
+ location: { zoneKey: KallistiWharf.key, coords: [7141.8, 57, 2650], icon: "pedestal", iconText: "5" },
22465
+ monumentText: `When Emil Christie was looking to rebuild the Wharf, corporate patronage was at the top of his priority list.
22466
+ Crey Biotech was one of the first in line, along with Hero Corps and Langston, to help rebuild the area. Now, these twin pillars of progress stand tall to remind us that Kallisti Wharf will endure!`
22467
+ },
22468
+ {
22469
+ key: "chri-4",
22470
+ type: "monument",
22471
+ location: { zoneKey: KallistiWharf.key, coords: [5782.5, 53, 4698.9], icon: "plaque", iconText: "6" },
22472
+ monumentText: `'Integrity Above All' was the motto that the PPD of Kallisti Wharf used to live by.
22473
+ But in the years after the Rikti War, more than 80 percent of the force was commuting into the area and none of the top brass were local sons and daughters of the community.
22474
+ As such, the PPD transformed into a rather cold and authoritative force within the Wharf, lacking the ability to truly understand the community they were trying to protect.
22475
+ Despite efforts to reform, the city nearly caught fire when Kieran Holt died within the walls of the Precinct in 2008.
22476
+ Emil Christie sought for a peaceful solution, but could not placate the residents who had lived through so much since the Rikti War and riots seemed inevitable.
22477
+ As a compromise, he contracted with Blackwing Industries, a low-profile corporate paramilitary peacekeeping force, with specific instructions to integrate with the community they were to protect.
22478
+ Crime is down 46 percent over the last 5 years, and polls show that residents regard Blackwing as a pivotal reason for their peace of mind.`
22479
+ },
22480
+ {
22481
+ key: "chri-5",
22482
+ type: "monument",
22483
+ location: { zoneKey: KallistiWharf.key, coords: [1550, 66, 4720], icon: "plaque", iconText: "7" },
22484
+ monumentText: `The Adamstown Infirmary was built during World War I and expanded during World War II to help care for soldiers who were shipped home with injuries when nearby Fort Steuben ran out of space to house them.
22485
+ The infirmary later served the role of a field hospital during the Rikti War. Emil Christie confirmed its status as a protected historical site, and it still operates to this day as emergency care for super and non-super citizens alike.`
22486
+ },
22487
+ {
22488
+ key: "chri-6",
22489
+ type: "monument",
22490
+ location: { zoneKey: KallistiWharf.key, coords: [580.7, 60.8, 4698.9], icon: "pedestal", iconText: "8" },
22491
+ monumentText: `The Old Slough began as a communal field for Adamstown, known for its murky pond and fertile soil.
22492
+ The shipping business in Kallisti Wharf may have been collapsing in the 1930s and 40s, but it was being rapidly replaced with industry.
22493
+ Factories began to pop up across Old Slough, replacing its dairy farms. Seemingly overnight the Slough was building planes, tanks, and weapons, eventually consuming every last bit of the old field, until all that remained was the name.
22494
+ This area too plunged into poverty during the decline in the 1970s, punctuated by the fire at Manny's Gas Station that took the life of Luigi 'Lou' Spagnolo and sounded a death knell for the community in the area.`
22495
+ },
22496
+ {
22497
+ key: "chri-7",
22498
+ type: "monument",
22499
+ location: { zoneKey: KallistiWharf.key, coords: [666.5, 71, 3750.8], icon: "plaque", iconText: "9" },
22500
+ monumentText: `Halsted Aeronautics made this site their home in 1974, and was field testing VTOL for public transit until 1986.
22501
+ The company went belly-up after a disastrous field test that claimed the lives of three test pilots and a film crew at the Marina docks.
22502
+ The assets were sold off to various companies and to the Paragon Transit Authority, who used some of their tech for the buses that run day and night in Paragon City.
22503
+ Christie Consolidated championed the LIDAR research and developed it for self-driving cars. Langston Corporation settled in this building in 2018, and the sweet smell of chocolate can be found in the air on Tuesdays and Fridays.`
22504
+ },
22505
+ {
22506
+ key: "chri-8",
22507
+ type: "monument",
22508
+ location: { zoneKey: KallistiWharf.key, coords: [1719.4, 13, -79], icon: "pedestal", iconText: "10" },
22509
+ monumentText: `Welcome, friend, to Kallisti Wharf! If you are reading this, then you're probably still trying to lose your sea legs after a nice relaxing boat ride from outside the walls.
22510
+ If you look out to the Northern walls of the district, you'll see the massive War-Wall sea gates that allow for marine trade and travel.
22511
+ Another district improvement that Mr. Christie lobbied for to help restore the Wharf and its community!`
22512
+ }
22513
+ ]
22514
+ };
22515
+
22516
+ const FlagtownMemorialist = {
22517
+ type: "history",
22518
+ key: "flagtown-memorialist",
22519
+ setTitleId: [2557],
22520
+ name: "Flagtown Memorialist",
22521
+ releaseDate: "2025-06-17",
22522
+ morality: "all",
22523
+ badgeText: `You are now considered an academic in the history of Flagtown in Kallisti Wharf.`,
22524
+ links: [
22525
+ { title: "Flagtown Memorialist Badge", href: "https://homecoming.wiki/wiki/Flagtown_Memorialist_Badge" }
22526
+ ],
22527
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/history/history-h.png",
22528
+ requirements: [
22529
+ {
22530
+ key: "flag-0",
22531
+ type: "monument",
22532
+ location: { zoneKey: KallistiWharf.key, coords: [6642.4, 71, 1663.6], icon: "plaque", iconText: "11" },
22533
+ monumentText: `This hospital is dedicated to Dr. Padma Wadkar, a.k.a. Brightshield. Her glowing shield was often seen as a beacon of hope in a dark world.
22534
+ During the Rikti bombing of Flagtown, Brightshield ushered as many people as she could through a portal that she opened to a safer area of the city.
22535
+ The Rikti first tried to destroy her with ordnance from their dropships, and when they failed, they sent ground troops after her amidst the carnage.
22536
+ In solemn remembrance and gratitude for her sacrifice, Emil Christie dedicated the new hospital to her memory, so that we may never forget her.`
22537
+ },
22538
+ {
22539
+ key: "flag-1",
22540
+ type: "monument",
22541
+ location: { zoneKey: KallistiWharf.key, coords: [6083.7, 47, 2714.6], icon: "pedestal", iconText: "12" },
22542
+ monumentText: `Flagtown is the metropolitan area that once took up most of the West Bank.
22543
+ Like its East Bank counterpart, it was built up heavily in the 1910s and 1920s as a major commercial shipping port, and fell into decline during the 1930s.
22544
+ It saw some revitalization during the war as factories popped up and replaced many of its warehouses, but it's one constant throughout all of that was Fort Steuben, which took up the lower third of the area, where the Paragon Trade Center now stands.`
22545
+ },
22546
+ {
22547
+ key: "flag-2",
22548
+ type: "monument",
22549
+ location: { zoneKey: KallistiWharf.key, coords: [7286.4, 55.5, 3581.4], icon: "plaque", iconText: "13" },
22550
+ monumentText: `Fort Steuben was closed in the 1970s, however it was reactivated during the Rikti War as a forward base of operations, flying the flag once again outside its gates.
22551
+ When the base proved itself to be a more serious threat than much of the rest of the city, the Rikti utilized drop ships to bomb the entire West Bank into dust, annihilating Fort Steuben and the rest of Flagtown along with it.
22552
+ On the morning of the second Rikti assault wave, the flagpole came down at 7:34 A.M., a time that most residents remember as the time hope faltered.`
22553
+ },
22554
+ {
22555
+ key: "flag-3",
22556
+ type: "monument",
22557
+ location: { zoneKey: KallistiWharf.key, coords: [6977, 65, 3917.7], icon: "pedestal", iconText: "15" },
22558
+ monumentText: `Before the park was built, a military base proudly stood here for almost a hundred years.
22559
+ Fort Steuben was named for Baron Friedrich Wilhelm von Steuben, a Prussian-American who served in the continental army during the revolutionary war and taught basic military drills and tactics.
22560
+ Appropriately, Fort Steuben was a training base founded in the late 19th century by the US Army.
22561
+ It trained many of the men who fought during both World Wars. Its chief landmark was an immense 300 foot high flag pole that could be seen from anywhere in the Wharf, from which Flagtown got its name.`
22562
+ },
22563
+ {
22564
+ key: "flag-4",
22565
+ type: "monument",
22566
+ location: { zoneKey: KallistiWharf.key, coords: [6930.1, 66.8, 4279.7], icon: "plaque", iconText: "16" },
22567
+ monumentText: `Flagtown Memorial Park was built on the site of the former gates to Fort Steuben, where the eponymous flag once stood.
22568
+ Enshrined there is an eternal flame and a memorial wall with the names of all the dead and missing that were lost when Flagtown was destroyed.
22569
+ Many residents who still remember the recovery efforts call this time the 'Sleepless Nights', an homage to a popular song sung by an unnamed street performer from Theatre Row who would sing to the survivors and the rescue crews every night for three weeks to keep their morale high.`
22570
+ },
22571
+ {
22572
+ key: "flag-5",
22573
+ type: "monument",
22574
+ location: { zoneKey: KallistiWharf.key, coords: [6404.9, 70, 3917.6], icon: "pedestal", iconText: "14" },
22575
+ monumentText: `This section of the city, New Flagtown, is a dedicated residential complex consisting largely of high-rise apartments that can house thousands.
22576
+ When Emil Christie sold off the various properties in the area, he made sure that the new owners were bound by contracts which ensured the housing was affordable, and that anyone who previously lived in Flagtown prior to its destruction and survived could move back.
22577
+ Very few took the offer, as the scars of the Rikti War and the destruction of Flagtown ran deep, but there are some who live among its towers of steel and glass that remember.`
22578
+ }
22579
+ ]
22580
+ };
22581
+
22582
+ const PatronOfTheArts = {
22583
+ type: "history",
22584
+ key: "patron-of-the-arts",
22585
+ setTitleId: [2556],
22586
+ name: "Patron of the Arts",
22587
+ releaseDate: "2025-06-17",
22588
+ morality: "all",
22589
+ badgeText: `You are considered a Patron of the Arts for showing a vested interest in Theatre Row and its struggles through the past and present century.`,
22590
+ links: [
22591
+ { title: "Patron of the Arts Badge", href: "https://homecoming.wiki/wiki/Patron_of_the_Arts_Badge" }
22592
+ ],
22593
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/history/history-h.png",
22594
+ requirements: [
22595
+ {
22596
+ key: "patr-0",
22597
+ type: "monument",
22598
+ location: { zoneKey: KallistiWharf.key, coords: [1997.9, 47.5, 423], icon: "plaque", iconText: "20" },
22599
+ monumentText: `Theatre Row was a place of fashion and culture for decades. It truly rose to fame in the 1910s and 1920s when Kallisti Wharf was booming with trade, shipping, and immigration.
22600
+ It was renowned for its unique street food, art festivals, and numerous theaters, quickly developing into a major tourist trap.
22601
+ By the late 1930s the Paragon Showcase sprang up, a rival film festival to the nascent Cannes and Venice Film Festivals.`
22602
+ },
22603
+ {
22604
+ key: "patr-1",
22605
+ type: "monument",
22606
+ location: { zoneKey: KallistiWharf.key, coords: [1308.5, 18.4, 923], icon: "plaque", iconText: "19" },
22607
+ monumentText: `In the aftermath of Mark Maxwell's corruption case, Emil Christie sought to bring back some positivity and good will to the area.
22608
+ The site was sold to David 'Odysseus' Hill and his foundation as a philanthropic endeavor to build the area up as a nod to the Greek immigrants that settled it.
22609
+ The plans are to have a multi-faceted entertainment complex in the form of a traditional colosseum, which can also be converted within hours to be a forum for live outdoor theater.
22610
+ This about-face for the area won Emil Christie his re-election handily.`
22611
+ },
22612
+ {
22613
+ key: "patr-2",
22614
+ type: "monument",
22615
+ location: { zoneKey: KallistiWharf.key, coords: [1837.5, 42, 1208.9], icon: "pedestal", iconText: "18" },
22616
+ monumentText: `In the early 2000s, there was a movement to revitalize the area, but the Rikti War put an end to that when Flagtown and much of the Wharf were devastated, plunging the area into a depression.
22617
+ Some years later, several of the theaters were bought by land tycoon Mark Maxwell after a tense set of townhall forums.`
22618
+ },
22619
+ {
22620
+ key: "patr-3",
22621
+ type: "monument",
22622
+ location: { zoneKey: KallistiWharf.key, coords: [1954.8, 48.5, 1685.5], icon: "plaque", iconText: "17" },
22623
+ monumentText: `In the early 1950s, a string of corruption and tax fraud charges at the Showcase sent it spiraling into bankruptcy, tarnishing the reputation of the area.
22624
+ The Row began its long decline, and the street for which it was named fell fully into disrepair during the 1970s. Most of the theatres were abandoned and condemned, a haven for squatters and the criminals who preyed upon them.`
22625
+ }
22626
+ ]
22627
+ };
22628
+
21600
22629
  const HISTORY_BADGES = [
21601
22630
  Lorekeeper,
21602
22631
  Technofreak,
@@ -21624,7 +22653,10 @@ const HISTORY_BADGES = [
21624
22653
  ParkStroller,
21625
22654
  Alumnus,
21626
22655
  Bicentennial,
21627
- GreekPhilosopher
22656
+ GreekPhilosopher,
22657
+ PatronOfTheArts,
22658
+ FlagtownMemorialist,
22659
+ ChristieConsolidation
21628
22660
  ];
21629
22661
 
21630
22662
  const Tourist = {
@@ -21886,7 +22918,7 @@ const UntilTheEndOfTheWorld = {
21886
22918
  releaseDate: "2012-11-30",
21887
22919
  morality: "all",
21888
22920
  badgeText: `You've seen your world and others come to the brink many times, but each time you've been there to pull them back and keep things going. And you'll continue to be there, no matter what the future brings.`,
21889
- acquisition: "Collect 1500 badges to earn this badge.",
22921
+ acquisition: "Collect 1500 badges.",
21890
22922
  links: [
21891
22923
  { title: "Until the End of the World Badge", href: "https://homecoming.wiki/wiki/Until_the_End_of_the_World_Badge" }
21892
22924
  ],
@@ -22367,7 +23399,7 @@ const Cataclysmic = {
22367
23399
  releaseDate: "2012-11-30",
22368
23400
  morality: "all",
22369
23401
  badgeText: `You have inflicted one hundred million points of damage upon your foes.`,
22370
- acquisition: "Deal 100,000,000 damage to earn this badge.",
23402
+ acquisition: "Deal 100,000,000 damage.",
22371
23403
  links: [
22372
23404
  { title: "Cataclysmic Badge", href: "https://homecoming.wiki/wiki/Cataclysmic_Badge" }
22373
23405
  ],
@@ -22603,7 +23635,7 @@ const Decimator = {
22603
23635
  releaseDate: "2012-11-30",
22604
23636
  morality: "all",
22605
23637
  badgeText: `You have inflicted ten million points of damage upon your foes.`,
22606
- acquisition: "Deal 10,000,000 damage to earn this badge.",
23638
+ acquisition: "Deal 10,000,000 damage.",
22607
23639
  links: [
22608
23640
  { title: "Decimator Badge", href: "https://homecoming.wiki/wiki/Decimator_Badge" }
22609
23641
  ],
@@ -22820,7 +23852,7 @@ const Eliminator = {
22820
23852
  releaseDate: "2012-11-30",
22821
23853
  morality: "all",
22822
23854
  badgeText: "You have inflicted five hundred thousand points of damage upon your foes.",
22823
- acquisition: "Deal 500,000 damage to earn this badge.",
23855
+ acquisition: "Deal 500,000 damage.",
22824
23856
  links: [
22825
23857
  { title: "Eliminator Badge", href: "https://homecoming.wiki/wiki/Eliminator_Badge" }
22826
23858
  ],
@@ -22921,7 +23953,7 @@ const Eradicator = {
22921
23953
  releaseDate: "2012-11-30",
22922
23954
  morality: "all",
22923
23955
  badgeText: "You have inflicted fifty million points of damage upon your foes.",
22924
- acquisition: "Deal 50,000,000 damage to earn this badge.",
23956
+ acquisition: "Deal 50,000,000 damage.",
22925
23957
  links: [
22926
23958
  { title: "Eradicator Badge", href: "https://homecoming.wiki/wiki/Eradicator_Badge" }
22927
23959
  ],
@@ -22964,7 +23996,7 @@ const Executioner = {
22964
23996
  releaseDate: "2012-11-30",
22965
23997
  morality: "all",
22966
23998
  badgeText: "You have inflicted twenty five million points of damage upon your foes.",
22967
- acquisition: "Deal 25,000,000 damage to earn this badge.",
23999
+ acquisition: "Deal 25,000,000 damage.",
22968
24000
  links: [
22969
24001
  { title: "Executioner Badge", href: "https://homecoming.wiki/wiki/Executioner_Badge" }
22970
24002
  ],
@@ -24726,7 +25758,7 @@ const Relentless = {
24726
25758
  releaseDate: "2012-11-30",
24727
25759
  morality: "all",
24728
25760
  badgeText: "You have inflicted one million points of damage upon your foes.",
24729
- acquisition: "Deal 1,000,000 damage to earn this badge.",
25761
+ acquisition: "Deal 1,000,000 damage.",
24730
25762
  links: [
24731
25763
  { title: "Relentless Badge", href: "https://homecoming.wiki/wiki/Relentless_Badge" }
24732
25764
  ],
@@ -25582,6 +26614,90 @@ const Multifaceted = {
25582
26614
  icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/achievement/alignment-tips.png"
25583
26615
  };
25584
26616
 
26617
+ const Jailbreaker = {
26618
+ type: "achievement",
26619
+ key: "jailbreaker",
26620
+ setTitleId: [2578],
26621
+ name: "Jailbreaker",
26622
+ releaseDate: "2025-11-25",
26623
+ morality: "all",
26624
+ badgeText: `Even though getting the Golden Roller out of prison didn't go entirely according to plan, you still ensured none of the other dangerous threats contained within the Arachnos Central Holding Block could escape back into the world.`,
26625
+ acquisition: `Defeat all five unique CHB prisoner arch-villains encountered during Marigold 'Zoe' Langston's Task Force.`,
26626
+ links: [
26627
+ { title: "Jailbreaker Badge", href: "https://homecoming.wiki/wiki/Jailbreaker_Badge" }
26628
+ ],
26629
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/achievement/tf-zoe.png"
26630
+ };
26631
+
26632
+ const SubterraneanStriker = {
26633
+ type: "achievement",
26634
+ key: "subterranean-striker",
26635
+ setTitleId: [2579],
26636
+ name: "Subterranean Striker",
26637
+ releaseDate: "2025-11-25",
26638
+ morality: "all",
26639
+ badgeText: `An unfathomable amount of dangers slither in the dark below Paragon City, but these threats didn't deter you in the slightest. You carved a path through the tunnels below Kallisti Wharf, eliminating every potential threat to the surface.`,
26640
+ acquisition: `Defeat all three arch-villain enemies while exploring underground in Marigold 'Zoe' Langston's Task Force on Advanced Mode.`,
26641
+ links: [
26642
+ { title: "Subterranean Striker Badge", href: "https://homecoming.wiki/wiki/Subterranean_Striker_Badge" }
26643
+ ],
26644
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/achievement/tf-zoe.png"
26645
+ };
26646
+
26647
+ const KnockbackKing = {
26648
+ type: "achievement",
26649
+ key: "knockback-king",
26650
+ setTitleId: [2580],
26651
+ name: [
26652
+ { sex: "M", value: "Knockback King" },
26653
+ { sex: "F", value: "Knockback Queen" }
26654
+ ],
26655
+ releaseDate: "2025-11-25",
26656
+ morality: "all",
26657
+ badgeText: `While many working supers consider knockback an annoyance, you see it as an opportunity to put your opponents right where you want them. The Nemesis Army have learned a valuable lesson on why you should keep your arms and legs inside the moving train at all times.`,
26658
+ acquisition: `Defeat 50 enemies via [CRUNCH] on the final mission of Marigold 'Zoe' Langston's Task Force.`,
26659
+ links: [
26660
+ { title: "Knockback King Badge", href: "https://homecoming.wiki/wiki/Knockback_King_Badge" }
26661
+ ],
26662
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/achievement/tf-zoe.png"
26663
+ };
26664
+
26665
+ const SnowWarning = {
26666
+ type: "achievement",
26667
+ key: "snow-warning",
26668
+ setTitleId: [2577],
26669
+ name: "Snow Warning",
26670
+ releaseDate: "2025-11-25",
26671
+ morality: "all",
26672
+ badgeText: `You've proven to be light on your feet, dodging all of the deadly cones of cold sent your way by Ultimatum's Flashfreeze, the agent who holds commanding authority over Blackwing Industries' P.E.A.C.E. division.`,
26673
+ acquisition: `Defeat Flashfreeze in Marigold 'Zoe' Langston's Task Force on Advanced Mode without anybody on the team being hit by her Cryonic Judgement special attack.Complete Marigold 'Zoe' Langston's Task Force.`,
26674
+ links: [
26675
+ { title: "SnowWarning Badge", href: "https://homecoming.wiki/wiki/Snow_Warning_Badge" }
26676
+ ],
26677
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/achievement/tf-zoe.png"
26678
+ };
26679
+
26680
+ const MasterOfZoesTaskForce = {
26681
+ type: "achievement",
26682
+ key: "master-of-zoes-task-force",
26683
+ setTitleId: [2581],
26684
+ name: `Master of Zoe's Task Force`,
26685
+ releaseDate: "2025-11-25",
26686
+ morality: "all",
26687
+ badgeText: `You have proven yourself Master of Marigold 'Zoe' Langston's Task Force.`,
26688
+ acquisition: `Achieve the following special achievements during Marigold 'Zoe' Langston's Task Force: Snow Warning, Jailbreaker, Subterranean Striker, and Knockback King/Queen.`,
26689
+ links: [
26690
+ { title: `Master of Zoe's Task Force Badge`, href: `https://homecoming.wiki/wiki/Master_of_Zoe's_Task_Force_Badge` }
26691
+ ],
26692
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/achievement/master-of-zoes-task-force.png",
26693
+ requirements: [
26694
+ { key: Jailbreaker.key, type: "badge", badgeKey: Jailbreaker.key },
26695
+ { key: KnockbackKing.key, type: "badge", badgeKey: KnockbackKing.key },
26696
+ { key: SnowWarning.key, type: "badge", badgeKey: SnowWarning.key },
26697
+ { key: SubterraneanStriker.key, type: "badge", badgeKey: SubterraneanStriker.key }
26698
+ ]
26699
+ };
26700
+
25585
26701
  const ACHIEVEMENT_BADGES = [
25586
26702
  // Levels
25587
26703
  ProtectorOfInnocents,
@@ -25758,6 +26874,11 @@ const ACHIEVEMENT_BADGES = [
25758
26874
  RippleRaider,
25759
26875
  PowerOverwhelming,
25760
26876
  CantTouchThis,
26877
+ // ZoeTF
26878
+ SnowWarning,
26879
+ Jailbreaker,
26880
+ SubterraneanStriker,
26881
+ KnockbackKing,
25761
26882
  // Mothership Raid
25762
26883
  Demolitionist,
25763
26884
  // Master Of...
@@ -25770,6 +26891,7 @@ const ACHIEVEMENT_BADGES = [
25770
26891
  MasterOfDrAeonsStrikeForce,
25771
26892
  MasterOfApexsTaskForce,
25772
26893
  MasterOfTinMagesTaskForce,
26894
+ MasterOfZoesTaskForce,
25773
26895
  MasterOfThePrisonersOfEden,
25774
26896
  MasterOfTheDescentToTheHydra,
25775
26897
  MasterOfTheMarketCrash,
@@ -28156,6 +29278,56 @@ const MalevolentIntoxication = {
28156
29278
  icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/defeat/malevolent-intoxication.png"
28157
29279
  };
28158
29280
 
29281
+ const Peacekeeper = {
29282
+ type: "defeat",
29283
+ key: "peacekeeper",
29284
+ setTitleId: [2568],
29285
+ name: [
29286
+ { alignment: "hero", value: "Peacekeeper" },
29287
+ { alignment: "villain", value: "Peacemaker" }
29288
+ ],
29289
+ releaseDate: "2025-06-17",
29290
+ morality: "all",
29291
+ badgeText: `The most expensive weapon in P.E.A.C.E.'s arsenal was a gargantuan piloted mech... That you sent to the scrap heap.
29292
+ It's not quite apparent what One Statesman Plaza and its tower hides, but Blackwing Industries have been paid an unthinkable sum to ensure that Emil Christie's investment was secure.`,
29293
+ acquisition: `Defeat the P.E.A.C.E. Keeper in ${zoneLink(KallistiWharf)}.`,
29294
+ links: [
29295
+ { title: "Peacekeeper Badge", href: "https://homecoming.wiki/wiki/Peacekeeper_Badge" }
29296
+ ],
29297
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/defeat/peacekeeper.png"
29298
+ };
29299
+
29300
+ const TwoBirdsOneStone = {
29301
+ type: "defeat",
29302
+ key: "two-birds-one-stone",
29303
+ setTitleId: [2508],
29304
+ name: "Two Birds, One Stone",
29305
+ releaseDate: "2025-06-17",
29306
+ morality: "all",
29307
+ badgeText: `When the Blackwing Industries private military company was contracted to protect Kallisti Wharf, you weren't sure what to expect.
29308
+ Now, having faced their advanced armor, weapons, and training yourself, there's no doubt that the security of Kallisti Wharf is in capable hands.`,
29309
+ acquisition: "Defeat 250 Blackwing Industries enemies.",
29310
+ links: [
29311
+ { title: "Two Birds, One Stone Badge", href: "https://homecoming.wiki/wiki/Two_Birds_One_Stone_Badge" }
29312
+ ],
29313
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/defeat/two-birds-one-stone.png"
29314
+ };
29315
+
29316
+ const MutatedMarauder = {
29317
+ type: "defeat",
29318
+ key: "mutated-marauder",
29319
+ setTitleId: [2583],
29320
+ name: "Mutated Maurader",
29321
+ releaseDate: "2025-11-25",
29322
+ morality: "all",
29323
+ badgeText: `There's so many conflicting theories as to the true origin of the Hydra that you aren't sure what to believe. What you are sure of, however, is that these monstrous mutated organisms are incredibly dangerous.`,
29324
+ acquisition: `Defeat 100 Hydra enemies.`,
29325
+ links: [
29326
+ { title: "Mutated Marauder Badge", href: "https://homecoming.wiki/wiki/Mutated_Maurader_Badge" }
29327
+ ],
29328
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/defeat/mutated-marauder.png"
29329
+ };
29330
+
28159
29331
  const DEFEAT_BADGES = [
28160
29332
  SpiderSmasher,
28161
29333
  Venomous,
@@ -28171,6 +29343,7 @@ const DEFEAT_BADGES = [
28171
29343
  MalevolentIntoxication,
28172
29344
  Terminator,
28173
29345
  Isolator,
29346
+ MutatedMarauder,
28174
29347
  Gearsmasher,
28175
29348
  Coldblooded,
28176
29349
  SoulBinder,
@@ -28299,7 +29472,9 @@ const DEFEAT_BADGES = [
28299
29472
  MasterOfOlympus,
28300
29473
  MasterAtArms,
28301
29474
  WelcomeToEarth,
28302
- SlayerOfTheMinotaur
29475
+ SlayerOfTheMinotaur,
29476
+ Peacekeeper,
29477
+ TwoBirdsOneStone
28303
29478
  ];
28304
29479
 
28305
29480
  const FreedomPhalanxReserveMember = {
@@ -29393,7 +30568,7 @@ const AtlasTourGuide = {
29393
30568
  icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accolade/explore-acc-h.png",
29394
30569
  requirements: [
29395
30570
  { key: Undefeated.key, type: "badge", badgeKey: Undefeated.key },
29396
- { key: SilentSentinel.key, type: "badge", badgeKey: SilentSentinel.key },
30571
+ { key: Rookie.key, type: "badge", badgeKey: Rookie.key },
29397
30572
  { key: HeroCorpsInsider.key, type: "badge", badgeKey: HeroCorpsInsider.key },
29398
30573
  { key: Patriot.key, type: "badge", badgeKey: Patriot.key },
29399
30574
  { key: TopDog.key, type: "badge", badgeKey: TopDog.key },
@@ -34517,7 +35692,7 @@ const WalkedDownMemoryLane = {
34517
35692
  { key: Trustworthy.key, type: "badge", badgeKey: Trustworthy.key },
34518
35693
  { key: Knowledgeable.key, type: "badge", badgeKey: Knowledgeable.key },
34519
35694
  { key: Virtuous.key, type: "badge", badgeKey: Virtuous.key },
34520
- { key: Rookie.key, type: "badge", badgeKey: Rookie.key },
35695
+ { key: SilentSentinel.key, type: "badge", badgeKey: SilentSentinel.key },
34521
35696
  { key: Condemned.key, type: "badge", badgeKey: Condemned.key },
34522
35697
  { key: Resilient.key, type: "badge", badgeKey: Resilient.key },
34523
35698
  { key: OutOfHarmsWay.key, type: "badge", badgeKey: OutOfHarmsWay.key },
@@ -35579,7 +36754,7 @@ const BetweenRealities = {
35579
36754
  morality: "all",
35580
36755
  badgeText: `You've spent a significant amount of time shifting between the spatial overlaps of the First Ward and Night Ward.
35581
36756
  With experience, you've learned of a method to manipulate the magics used by the Light & Shadowed Paths to define and utilize spatial jump points of your own.`,
35582
- effect: `Awards the Mark & Recall power.`,
36757
+ effect: `Awards the Mark and Recall power.`,
35583
36758
  links: [
35584
36759
  { title: "Between Realities Badge", href: "https://homecoming.wiki/wiki/Between_Realities_Badge" }
35585
36760
  ],
@@ -35621,7 +36796,7 @@ const ProtectorOfParagonCity = {
35621
36796
  { key: ForceOfJustice.key, type: "badge", badgeKey: ForceOfJustice.key },
35622
36797
  { key: Gallant.key, type: "badge", badgeKey: Gallant.key },
35623
36798
  { key: GuardianOfForever.key, type: "badge", badgeKey: GuardianOfForever.key },
35624
- { key: BeyondReasonableDoubt.key, type: "badge", badgeKey: BeyondReasonableDoubt.key },
36799
+ { key: HelpingHand.key, type: "badge", badgeKey: HelpingHand.key },
35625
36800
  { key: TheGreaterGood.key, type: "badge", badgeKey: TheGreaterGood.key },
35626
36801
  { key: Bicentennial.key, type: "badge", badgeKey: Bicentennial.key }
35627
36802
  ]
@@ -35685,6 +36860,49 @@ const ConquerorOfTheLabyrinth = {
35685
36860
  ]
35686
36861
  };
35687
36862
 
36863
+ const ThePrettiestOne = {
36864
+ type: "accolade",
36865
+ key: "the-prettiest-one",
36866
+ setTitleId: [2448],
36867
+ name: "The Prettiest One",
36868
+ releaseDate: "2025-06-17",
36869
+ morality: "heroic",
36870
+ badgeText: `You've obtained this Accolade by earning every Exploration badge within Kallisti Wharf.`,
36871
+ links: [
36872
+ { title: "The Prettiest One Badge", href: "https://homecoming.wiki/wiki/The_Prettiest_One_Badge" }
36873
+ ],
36874
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accolade/explore-acc-h.png",
36875
+ requirements: [
36876
+ { key: OnTheShouldersOfGiants.key, type: "badge", badgeKey: OnTheShouldersOfGiants.key },
36877
+ { key: InTheirPrime.key, type: "badge", badgeKey: InTheirPrime.key },
36878
+ { key: ProtestTooMuch.key, type: "badge", badgeKey: ProtestTooMuch.key },
36879
+ { key: FueledByGreed.key, type: "badge", badgeKey: FueledByGreed.key },
36880
+ { key: RavingMad.key, type: "badge", badgeKey: RavingMad.key },
36881
+ { key: MarkedOut.key, type: "badge", badgeKey: MarkedOut.key },
36882
+ { key: QuayToTheCity.key, type: "badge", badgeKey: QuayToTheCity.key },
36883
+ { key: TouristTrapped.key, type: "badge", badgeKey: TouristTrapped.key }
36884
+ ]
36885
+ };
36886
+
36887
+ const Mazebreaker = {
36888
+ type: "accolade",
36889
+ key: "mazebreaker",
36890
+ setTitleId: [2582],
36891
+ name: "Mazebreaker",
36892
+ releaseDate: "2025-11-25",
36893
+ morality: "all",
36894
+ badgeText: `You've become much more adept at fighting in the Labyrinth of Fog after undergoing the full spectrum of Tests of Combat offered by the Four Generals of Achlys. No matter what comes next for the dream-like maze, you'll be ready.`,
36895
+ effect: `Awards the Mazebreaker power.`,
36896
+ links: [
36897
+ { title: "Mazebreaker Badge", href: "https://homecoming.wiki/wiki/Mazebreaker_Badge" }
36898
+ ],
36899
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/accolade/mazebreaker-realities.png",
36900
+ requirements: [
36901
+ { key: TestedByCombat.key, type: "badge", badgeKey: TestedByCombat.key },
36902
+ { key: ChromaticCombatant.key, type: "badge", badgeKey: ChromaticCombatant.key }
36903
+ ]
36904
+ };
36905
+
35688
36906
  const ACCOLADE_BADGES = [
35689
36907
  BugHunter,
35690
36908
  Passport,
@@ -35747,6 +36965,7 @@ const ACCOLADE_BADGES = [
35747
36965
  IPAddress,
35748
36966
  LostAndFound,
35749
36967
  ZigWarden,
36968
+ ThePrettiestOne,
35750
36969
  PortalCorpAnalyst,
35751
36970
  HistoryInTheMaking,
35752
36971
  MercyMariner,
@@ -35828,6 +37047,7 @@ const ACCOLADE_BADGES = [
35828
37047
  Chronomaster,
35829
37048
  Hologram,
35830
37049
  ConquerorOfTheLabyrinth,
37050
+ Mazebreaker,
35831
37051
  BetweenRealities
35832
37052
  ];
35833
37053
 
@@ -36296,7 +37516,7 @@ const MobSpecialist = {
36296
37516
  releaseDate: "2012-11-30",
36297
37517
  morality: "heroic",
36298
37518
  badgeText: "Crey has authorized these men for your Arena teams.",
36299
- acquisition: "Defeat 200 Prisoner Bosses.",
37519
+ acquisition: "Defeat 100 Prisoner Bosses.",
36300
37520
  links: [
36301
37521
  { title: "Mob Specialist Badge", href: "https://homecoming.wiki/wiki/Mob_Specialist_Badge" }
36302
37522
  ],
@@ -40092,7 +41312,7 @@ const Snowbound = {
40092
41312
  links: [
40093
41313
  { title: "Snowbound Badge", href: "https://homecoming.wiki/wiki/Snowbound_Badge" }
40094
41314
  ],
40095
- icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/event/winter-login.png"
41315
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/event/snowbound.png"
40096
41316
  };
40097
41317
 
40098
41318
  const Legendary = {
@@ -40122,7 +41342,7 @@ const LicenseToChill = {
40122
41342
  links: [
40123
41343
  { title: "License to Chill Badge", href: "https://homecoming.wiki/wiki/License_to_Chill_Badge" }
40124
41344
  ],
40125
- icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/event/winter-login.png"
41345
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/event/license-to-chill.png"
40126
41346
  };
40127
41347
 
40128
41348
  const Unquenchable = {
@@ -40242,7 +41462,7 @@ const HomeForTheHolidays = {
40242
41462
  links: [
40243
41463
  { title: "Home for the Holidays Badge", href: "https://homecoming.wiki/wiki/Home_for_the_Holidays_Badge" }
40244
41464
  ],
40245
- icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/event/winter-login.png"
41465
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/event/home-for-the-holidays.png"
40246
41466
  };
40247
41467
 
40248
41468
  const Reunited = {
@@ -40318,7 +41538,7 @@ const Hypothermia = {
40318
41538
  links: [
40319
41539
  { title: "Hypothermia Badge", href: "https://homecoming.wiki/wiki/Hypothermia_Badge" }
40320
41540
  ],
40321
- icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/event/winter-login.png"
41541
+ icon: "https://n15g.github.io/coh-content-db-homecoming/images/badges/event/hypothermia.png"
40322
41542
  };
40323
41543
 
40324
41544
  const BestMan = {
@@ -40487,13 +41707,36 @@ const EVENT_BADGES = [
40487
41707
  Unquenchable,
40488
41708
  Unforgettable,
40489
41709
  Reunited,
40490
- TimeKeeper,
40491
41710
  Cheers,
41711
+ Pursuer,
41712
+ TimeKeeper,
40492
41713
  Gardener,
40493
41714
  ZetaReticulan,
40494
41715
  Mafioso,
40495
41716
  SkullKiller,
40496
- Pursuer,
41717
+ ANemesisPlot,
41718
+ HeartOfLight,
41719
+ Partygoer,
41720
+ Handsome,
41721
+ Toothbreaker,
41722
+ MatchMaker,
41723
+ MissedConnection,
41724
+ WidowMaker,
41725
+ BestMan,
41726
+ WeddingCrasher,
41727
+ Officiator,
41728
+ DownInFront,
41729
+ ChaosSpiel,
41730
+ DoubleFeature,
41731
+ HellenicBeauty,
41732
+ MansBestFriend,
41733
+ NinjaMonkey,
41734
+ Invictus,
41735
+ ThePerfectHitter,
41736
+ ThePerfectHacker,
41737
+ ThePerfectGrifter,
41738
+ ThePerfectThief,
41739
+ Roleplayer,
40497
41740
  HallowSpirit,
40498
41741
  IronWarrior,
40499
41742
  Hunter,
@@ -40516,39 +41759,6 @@ const EVENT_BADGES = [
40516
41759
  SafetyInNumbers,
40517
41760
  EvilsResident,
40518
41761
  ApocalypseSurvivor,
40519
- LongbowReservist,
40520
- HolidaySpirit,
40521
- ToyCollector,
40522
- Miraculous,
40523
- Joyful,
40524
- Frosty,
40525
- Crystallized,
40526
- ColdFront,
40527
- Gifted,
40528
- Festive,
40529
- LordOfWinter,
40530
- Frostbitten,
40531
- ColdWarrior,
40532
- FrozenFury,
40533
- ColdAsIce,
40534
- GiftGetter,
40535
- GiftWhichKeepsGiving,
40536
- Snowbound,
40537
- LicenseToChill,
40538
- HomeForTheHolidays,
40539
- Hypothermia,
40540
- HeartOfLight,
40541
- Handsome,
40542
- Toothbreaker,
40543
- Partygoer,
40544
- MatchMaker,
40545
- MissedConnection,
40546
- WidowMaker,
40547
- BestMan,
40548
- WeddingCrasher,
40549
- Officiator,
40550
- DownInFront,
40551
- ChaosSpiel,
40552
41762
  ClothesHorse,
40553
41763
  Fashionable,
40554
41764
  Ostentatious,
@@ -40562,17 +41772,27 @@ const EVENT_BADGES = [
40562
41772
  TrickedOut,
40563
41773
  ItsAlive,
40564
41774
  SinisterSummoner,
40565
- DoubleFeature,
40566
- HellenicBeauty,
40567
- MansBestFriend,
40568
- NinjaMonkey,
40569
- Invictus,
40570
- ThePerfectHitter,
40571
- ThePerfectHacker,
40572
- ThePerfectGrifter,
40573
- ThePerfectThief,
40574
- Roleplayer,
40575
- ANemesisPlot
41775
+ LongbowReservist,
41776
+ ColdFront,
41777
+ Gifted,
41778
+ Frostbitten,
41779
+ Festive,
41780
+ Snowbound,
41781
+ LicenseToChill,
41782
+ HomeForTheHolidays,
41783
+ Hypothermia,
41784
+ ColdWarrior,
41785
+ FrozenFury,
41786
+ HolidaySpirit,
41787
+ ToyCollector,
41788
+ Crystallized,
41789
+ Frosty,
41790
+ Joyful,
41791
+ Miraculous,
41792
+ LordOfWinter,
41793
+ ColdAsIce,
41794
+ GiftGetter,
41795
+ GiftWhichKeepsGiving
40576
41796
  ];
40577
41797
 
40578
41798
  const Venturous = {
@@ -42713,11 +43933,13 @@ const CONTACTS = [
42713
43933
  AaronThiery,
42714
43934
  AaronWalker,
42715
43935
  AdaWellington,
43936
+ AdelardZiegler,
42716
43937
  AdmiralSutter,
42717
43938
  AgentG,
42718
43939
  AgentHassell,
42719
43940
  AgentWatkins,
42720
43941
  AlecParson,
43942
+ AlexanderTheGreat,
42721
43943
  AndreaMitchell,
42722
43944
  AndrewFiore,
42723
43945
  AngeloVendetti,
@@ -42753,6 +43975,7 @@ const CONTACTS = [
42753
43975
  Crimson,
42754
43976
  Crow,
42755
43977
  DJZero,
43978
+ DapDapThaDealMaka,
42756
43979
  DarkWatcher,
42757
43980
  DarrenWade,
42758
43981
  DavidWincott,
@@ -42781,6 +44004,7 @@ const CONTACTS = [
42781
44004
  EagleEye,
42782
44005
  EfficiencyExpertPither,
42783
44006
  ElizaThorpe,
44007
+ ErinWest,
42784
44008
  ErnestoHess,
42785
44009
  FaathimTheKind,
42786
44010
  FatherTime,
@@ -42895,6 +44119,7 @@ const CONTACTS = [
42895
44119
  Reese,
42896
44120
  Ricochet,
42897
44121
  RobertFlores,
44122
+ RobertKogan,
42898
44123
  RoyCooling,
42899
44124
  SaraMoore,
42900
44125
  Scirocco,
@@ -42945,7 +44170,9 @@ const CONTACTS = [
42945
44170
  Warrant,
42946
44171
  WillyWheeler,
42947
44172
  WilmaPeterson,
42948
- Woodsman
44173
+ Woodsman,
44174
+ WyllieGalloway,
44175
+ ZoeLangston
42949
44176
  ];
42950
44177
 
42951
44178
  const MISSIONS = [
@@ -42989,6 +44216,7 @@ const MISSIONS = [
42989
44216
  CriminalsOfWar,
42990
44217
  CrossingOver,
42991
44218
  DeathFromBelow,
44219
+ DeathResurrected,
42992
44220
  DefeatMarauderAndDestroyThePortal,
42993
44221
  DefeatSelestar,
42994
44222
  DestinyFollows,
@@ -43216,11 +44444,17 @@ const MISSIONS = [
43216
44444
  WhatWasBuiltUponthePast,
43217
44445
  WhatWasLost,
43218
44446
  WhoNeedsEnemies,
43219
- YouCantGoHome
44447
+ YouCantGoHome,
44448
+ MergersAndAcquisitions,
44449
+ CuttingBackOldGrowth,
44450
+ TheSunlightAndTheSpotlight,
44451
+ KnowThyEnemy,
44452
+ HuntingTheHunters,
44453
+ ZoeTaskForce
43220
44454
  ];
43221
44455
 
43222
- const BUNDLE_VERSION = "2.0.0-rc.9";
43223
- const BUNDLE_UPDATE_TIME = "2025-04-21T04:24:53.447Z";
44456
+ const BUNDLE_VERSION = "2.0.0";
44457
+ const BUNDLE_UPDATE_TIME = "2026-01-05T13:42:38.218Z";
43224
44458
 
43225
44459
  const HOMECOMING = {
43226
44460
  header: {