As a general note, Atlantis generally prints output on a line by line format. If the line stretches for more than 72 (I think) characters, it is cut off and continued onto further lines, with a 2 space indentation.
Subject: Atlantis 3.0 Report (Turn 144) Atlantis Report For: Test Faction (7) (War 1, Trade 1, Magic 3) December, Year 12 Account balance: $1.00 Note: The Atlantis Times is not being sent to you. Warning: Your balance is paid for less than four more turns. Please make arrangements with the Gamemaster to extend your balance if you wish to keep playing. Faction Status: Tax Regions: 0 (10) Trade Regions: 0 (10) Mages: 3 (3)
Errors during turn: Unit (383): CAST: Target region is an ocean. Battles during turn: Unit (380) attacks Unit (396) in plain (40,24) in Zaalsehuur! Attackers: Unit (380), leader [LEAD], 2 horses [HORS]. Unit (383), leader [LEAD]. Unit (95), 200 nomads [NOMA], 200 horses [HORS], combat 2. Unit (378), leader [LEAD], horse [HORS]. Defenders: Unit (376), 100 nomads [NOMA]. Unit (396), leader [LEAD]. Unit (397), leader [LEAD]. Unit (380) gets a free round of attacks. Unit (396) loses 102. Unit (396) is routed! Total Casualties: Unit (396) loses 102. Unit (380) loses 0. Spoils: 30263 silver [SILV]. Events during turn: Unit (383): Earns 1 silver working. Skill reports: farming [FARM] 2: No skill report. fishing [FISH] 1: A unit with this skill may use the PRODUCE order to produce fish in designated regions. Fish are only available in ocean regions. Item reports: sword [SWOR], weight 1.
Declared Attitudes (default Neutral): Hostile : none. Unfriendly : none. Neutral : none. Friendly : Another Faction (70), A long faction name that wraps over to the next line (72). Ally : none. Unclaimed silver: 609.
plain (40,24) in Zaalsehuur, 555 peasants (nomads), $2775.
------------------------------------------------------------
The weather was clear last month; it will be monsoon season next
month.
Wages: $15.
Wanted: none.
For Sale: 111 nomads [NOMA] at $60, 22 leaders [LEAD] at $120.
Entertainment available: $138.
Products: 102 grain [GRAI], 34 horses [HORS].
Exits:
North : plain (40,22) in Zaalsehuur.
Northeast : plain (41,23) in Zaalsehuur.
Southeast : ocean (41,25) in Atlantis Ocean.
South : ocean (40,26) in Atlantis Ocean.
Southwest : ocean (39,25) in Atlantis Ocean.
Northwest : plain (39,23) in Aberdovey.
* Unit (397), Faction (9), behind, leader [LEAD]. Skills: force [FORC] 1 (60). Can Study: Not a real skill [XXXX]. - Unit (95), Faction (7), behind, 500 nomads [NOMA], wool [WOOL], 7 stone [STON]. - Unit (378), Faction (7), behind, leader [LEAD], horse [HORS], ivory [IVOR], plate armor [PARM]. + Building [4] : Farm. - Unit (406), Faction (7), 459 nomads [NOMA].
Orders Template (Long Format): #atlantis 9 ;*** plain (40,24) in Zaalsehuur *** unit 376 ;Unit (376), 216 nomads [NOMA], 20530 silver [SILV]. Skills: mining ; [MINI] 1 (30). @work #end
The structure for towns, villages, cities.
class TownInfo {
public:
AString * name;
int pop;
int basepop;
int activity;
};
The structure for regions.
class ARegion : public AListElem {
public:
AString * name;
int num;
int type;
int buildingseq;
int weather;
int gate;
TownInfo * town;
int race;
int population;
int basepopulation;
int wages;
int maxwages;
int money;
ARegion * neighbors[NDIRS];
AList objects;
AList hell; /* Where dead units go */
AList farsees;
ProductionList products;
MarketList markets;
int xloc,yloc,zloc;
The structure for attitudes.
class Attitude : public AListElem {
public:
int factionnum;
int attitude;
};
The structure for factions.
class Faction : public AListElem {
public:
int num;
int type[NFACTYPES];
int lastchange;
int lastorders;
int unclaimed;
AString * name;
AString * address;
AString * password;
int times;
int temformat;
int balance;
char exists;
int quit;
AList war_regions;
AList trade_regions;
int defaultattitude;
AList attitudes;
SkillList skills;
};
The structure for objects (structures).
class Object : public AListElem {
public:
AString * name;
AString * describe;
int inner;
int num;
int type;
int incomplete;
int capacity;
AList units;
};
The structure for units.
class Unit : public AListElem {
public:
Faction * faction;
AString * name;
AString * describe;
int num;
int type;
int alias;
int guard; /* Also, avoid- see enum above */
int reveal;
int flags;
int taxing;
int movepoints;
int canattack;
int nomove;
SkillList skills;
ItemList items;
int combat;
AList oldorders;
int needed; /* For assessing maintenance */
int losses;
ARegion * advancefrom;
};