2 * Empire - A multi-player, client/server Internet based war game.
3 * Copyright (C) 1986-2011, Dave Pare, Jeff Bailey, Thomas Ruschak,
4 * Ken Stevens, Steve McClure, Markus Armbruster
6 * Empire is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
21 * See files README, COPYING and CREDITS in the root of the source
22 * tree for related information and legal notices. It is expected
23 * that future projects/authors will amend these files as needed.
27 * news.c: News item characteristics
29 * Known contributors to this file:
34 * News item characteristics; one entry (and two different
35 * strings) per news item. Be sure and increase N_MAX_VERB
36 * in news.h if you add a news item.
38 * Order must correspond to ordering in news.h
45 static char no_news[] = "does nothing in particular to %s";
47 struct rptstr rpt[] = {
49 { 0, 0, 0, { no_news, no_news } },
50 { N_WON_SECT, -4, N_FRONT, { "infantry capture %s territory",
51 "shock troops overrun one of %s's sectors" } },
52 { N_SCT_LOSE, -4, N_FRONT, { "infantry beaten back by %s troops",
53 "shock troops annihilated in failed attack on %s" } },
54 { N_SPY_SHOT, -1, N_SPY, { "spy shot by %s firing squad",
55 "spy captured and shot by %s" } },
56 { N_SENT_TEL, 1, N_TELE, { "sends a telegram to %s",
58 { N_SIGN_TRE, 3, N_FOR, { "diplomats sign a treaty with %s",
59 "ambassador agrees to a treaty with %s" } },
60 { N_MAKE_LOAN, 2, N_ECON, { "bankers make a loan to %s",
61 "Ministry of Finance lends money to %s" } },
62 { N_REPAY_LOAN, 1, N_ECON, { "repays a loan from %s",
63 "makes last payment on loan from %s" } },
64 { N_MAKE_SALE, 0, N_ECON, { "makes a sale to %s",
65 "sells goods to %s" } },
66 { N_OVFLY_SECT, -1, N_SKY, { "violates %s airspace",
67 "overflies %s territory" } },
68 { N_SCT_SHELL, -2, N_ARTY, { "gunners bombard %s territory",
69 "artillery fires on %s sectors" } },
70 { N_SHP_SHELL, -2, N_SEA, { "shells a ship owned by %s",
71 "fires on %s ships" } },
72 { N_TOOK_UNOCC, 0, N_FRONT, { "takes over unoccupied land",
73 "attacks unowned land for some reason" } },
74 { N_TORP_SHIP, 0, N_SEA, { "ships torpedoed by enemy wolf-packs",
75 "ships torpedoed by marauding U-boats" } },
76 { N_FIRE_BACK, 0, N_ARTY, { "gunners fire on %s in self-defense",
77 "gunners decimate %s aggressors" } },
78 { N_BROKE_SANCT, 0, N_FOR, { "breaks sanctuary",
79 "no longer has a sanctuary" } },
80 { N_SCT_BOMB, -2, N_SKY, { "planes divebomb one of %s's sectors",
81 "bombers wreak havoc on %s" } },
82 { N_SHP_BOMB, -2, N_SEA, { "divebombs a ship flying the flag of %s",
83 "airforce bombs %s ships" } },
84 { N_BOARD_SHIP, -2, N_SEA, { "seadogs board one of %s's ships",
85 "pirates board %s ship" } },
86 { N_SHP_LOSE, -3, N_SEA, { "is repelled by %s while attempting to board a ship",
87 "pirates prove inept at boarding %s's ships" } },
88 { 20, 0, 0, { no_news, no_news } },
89 { N_SEIZE_SECT, -2, N_ECON, { "seizes a sector from %s to collect on a loan",
90 "collects one of %s's sectors in repayment of a loan" } },
91 { N_HONOR_TRE, -1, N_FOR, { "considers an action which would violate a treaty with %s",
92 "decides not to violate treaty with %s (yet)" } },
93 { N_VIOL_TRE, -4, N_FOR, { "violates a treaty with %s",
94 "actions violate treaty with %s" } },
95 { 24, 0, 0, { no_news, no_news } },
96 { N_HIT_MINE, 0, N_SEA, { "ship hits a mine",
97 "ship severely damaged in mine field" } },
98 { N_DECL_ALLY, 5, N_FOR, { "announces an alliance with %s",
99 "/ %s alliance declared" } },
100 { 27, 0, 0, { no_news, no_news } },
101 { N_DECL_WAR, -5, N_FOR, { "declares TOTAL WAR on %s",
102 "gets serious with %s and declares WAR" } },
103 { N_DIS_ALLY, 0, N_FOR, { "diplomats disavow former alliance with %s",
104 "is no longer allied with %s" } },
105 { N_DIS_WAR, 5, N_FOR, { "is no longer at war with %s",
106 "Foreign Ministry declares \"No more war with %s\"" } },
107 { N_OUT_PLAGUE, 0, N_HOME, { "reports outbreak of the black plague",
108 "sector infected with bubonic plague" } },
109 { N_DIE_PLAGUE, 0, N_HOME, { "citizens die from bubonic plague",
110 "sector reports plague deaths" } },
111 { N_NAME_CHNG, 0, N_FOR, { "goes through a name change",
112 "adopts a new country name" } },
113 { N_DIE_FAMINE, 0, N_HOME, { "citizens starve in disastrous famine",
114 "loses citizens to mass starvation" } },
115 { 35, 0, 0, { no_news, no_news } },
116 { N_DOWN_PLANE, -3, N_SKY, { "pilots down %s planes",
117 "victorious in air-to-air combat against %s" } },
118 { N_NUKE, -10,N_MISS, { "nuclear device devastates %s sector",
119 "explodes a nuclear device damaging %s territory" } },
120 { N_FREEDOM_FIGHT, 0, N_HOME, { "terrorists shoot it out with %s special forces",
121 "underground rises up against %s occupation" } },
122 { N_SHOOT_CIV, -2, N_HOME, { "execution squads gun down helpless %s civilians",
123 "firing squads massacre defenseless %s workers" } },
124 { N_LAUNCH, 0, N_MISS, { "launches a satellite into orbit",
125 "continues its conquest of space with a successful launch" } },
126 { N_SAT_KILL, -8, N_MISS, { "strikes a %s big bird",
127 "rockets damage a %s satellite" } },
128 { N_GIFT, 4, N_ECON, { "makes a contribution to %s",
130 { N_AIDS, 2, N_HOME, { "aids %s with divine intervention",
131 "smiles upon %s" } },
132 { N_HURTS, -3, N_HOME, { "hurts %s with divine intervention",
133 "frowns upon %s" } },
134 { N_TAKE, -4, N_ECON, { "sacrifices to %s",
135 "makes divine payment to %s" } },
136 { N_NUKE_STOP, -10,N_MISS, { "abms intercept a %s missile",
137 "strategic defense systems destroy a %s missile" } },
138 { N_SCT_MISS, -2, N_MISS, { "missile fired at one of %s's sectors",
139 "missile wreaks havoc on %s" } },
140 { N_SHP_MISS, -2, N_MISS, { "missile fired at a ship flying the flag of %s",
141 "missiles hit %s ships" } },
142 { N_TRADE, 2, N_ECON, { "engages in friendly trade with %s",
143 "profits from a merchant venture with %s" } },
144 { N_PIRATE_TRADE, 0, N_ECON, { "pirates dispose of %s booty in trade",
145 "buccaneers sell their %s goods" } },
146 { N_PIRATE_KEEP, 0, N_ECON, { "pirates keep their %s booty",
147 "buccaneers laugh and bury their %s goods" } },
148 { N_SHIP_TORP, 0, N_SEA, { "ships torpedoed by %s torpedo-boats",
149 "ships sunk by marauding %s torpedo-boats" } },
150 { N_SUB_BOMB, 0, N_SEA, { "planes bomb a skulking %s submarine",
151 "planes drop depth-charges on a %s sub" } },
152 { 54, 0, 0, { no_news, no_news } },
153 { N_UNIT_BOMB, -2, N_SKY, { "divebombs a brave %s unit",
154 "airforce bombs %s units" } },
155 { N_LHIT_MINE, 0, N_FRONT, { "troops run afoul of a landmine",
156 "troops severely damaged in mine field" } },
157 { N_FIRE_F_ATTACK, -2, N_ARTY, { "fortress gunners support troops attacking %s",
158 "fortress artillery massacres %s defenders" } },
159 { N_FIRE_L_ATTACK, -2, N_ARTY, { "gunners support troops attacking %s",
160 "artillery battery massacres %s defenders" } },
161 { N_FIRE_S_ATTACK, -2, N_ARTY, { "naval gunners support troops attacking %s",
162 "naval gunfire massacres %s defenders" } },
163 { N_SACK_CAP, 10, N_FOR, { "sacks %s capital",
164 "captures and pillages %s's capital" } },
165 { N_UP_FRIENDLY, 3, N_FOR, { "announces friendly trade relations with %s",
166 "upgrades %s's trade status to triple-A" } },
167 { N_DOWN_FRIENDLY, 0, N_FOR, { "downgrades relations with %s to friendly",
168 "cools relations with %s to friendly" } },
169 { N_UP_NEUTRAL, 2, N_FOR, { "upgrades relations with %s to neutral",
170 "Foreign Ministry declares \"%s is A-OK.\"" } },
171 { N_DOWN_NEUTRAL, 0, N_FOR, { "downgrades relations with %s to neutral",
172 "gives the cold shoulder to %s and declares neutral relations" } },
173 { N_UP_HOSTILE, 3, N_FOR, { "upgrades relations with %s to hostile",
174 "forgives %s of past war crimes but remains hostile" } },
175 { N_DOWN_HOSTILE, 3, N_FOR, { "downgrades relations with %s to hostile",
176 "is suspicious that %s has hostile intentions" } },
177 { N_SCT_SMISS, 0, N_MISS, { "sector is struck by a sub-launched missile",
178 "sector devastated by missile" } },
179 { N_SHP_SMISS, 0, N_MISS, { "ship is hit by a sub-launched missile",
180 "ship damaged by marine missile" } },
181 { N_START_COL, 0, N_COLONY,{ "pilgrims settle on a new island",
182 "discovers new land and starts a colony" } },
183 { N_NUKE_SSTOP, 0, N_MISS, { "abms intercept an incoming sub-launched missile",
184 "strategic defense systems destroy an incoming sub-launched warhead"}},
185 { N_LND_MISS, 2, N_MISS, { "missile fired at %s ground troops",
186 "missile hits %s troops" } },
187 { N_LND_SMISS, 0, N_MISS, { "regiment struck by sub-launched missile",
188 "ground troops hit by missile" } },
189 { N_AWON_SECT, -4, N_FRONT, { "navy secures a beachhead on %s territory",
190 "sailors take a coastal sector from %s" } },
191 { N_PWON_SECT, -4, N_FRONT, { "paratroopers comandeer a sector from %s",
192 "air force parachutists overwhelm a %s sector" } },
193 { N_PARA_UNOCC, 0, N_COLONY,{ "parachutists grab unoccupied land",
194 "paratroopers break new ground" } },
195 { N_ALOSE_SCT, 4, N_FRONT, { "sailors repelled by %s coast-guard",
196 "naval forces massacred in failed assault of %s" } },
197 { N_PLOSE_SCT, 4, N_FRONT, { "paratroopers destroyed in failed air-assault on %s",
198 "loses parachutists in failed air-assault of %s" } },
199 { 78, 0, 0, { no_news, no_news } },
200 { 79, 0, 0, { no_news, no_news } },
201 { N_WELCH_DEAL, 0, N_ECON, { "is unable to fulfill its financial obligations to %s",
202 "welches on a deal with %s" } },
203 { N_LND_LOSE, -3, N_FRONT, { "is repelled by %s while attempting to board a land unit",
204 "forces prove inept at boarding %s's land unit" } },
205 { N_BOARD_LAND, -2, N_FRONT, { "mercenaries board one of %s's land units",
206 "elite forces board %s land unit" } },
207 { 0, 0, 0, { NULL, NULL } }