]> git.pond.sub.org Git - empserver/blobdiff - include/econfig-spec.h
Update copyright notice
[empserver] / include / econfig-spec.h
index d54443e56ae8baf8b3e22b64218ad8e3f620068e..8f7de98828d29663e2cfc565df5f3a781f538593 100644 (file)
@@ -1,6 +1,6 @@
 /*
  *  Empire - A multi-player, client/server Internet based war game.
- *  Copyright (C) 1986-2006, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ *  Copyright (C) 1986-2008, Dave Pare, Jeff Bailey, Thomas Ruschak,
  *                           Ken Stevens, Steve McClure
  *
  *  This program is free software; you can redistribute it and/or modify
  *  ---
  *
  *  econfig-spec.h: Combined include for optlist.h and emp_config.c
+ * 
+ *  Known contributors to this file:
+ *     Marc Olzheim, 2004
+ *     Markus Armbruster, 2004-2007
  */
 
 /*
 
 #if    defined(EMP_CONFIG_C_OUTPUT)
 
-#define        EMPCFONLYC(fvname, vname, vtype, ctype, num, descr)     \
-       { (fvname), (ctype), &(vname), (num), (descr) },
-#define        EMPCFBOTH(fvname, vname, vtype, ctype, num, descr)      \
-       { (fvname), (ctype), &(vname), (num), (descr) },
+#define        EMPCFONLYC(fvname, vname, vtype, ctype, flags, descr)   \
+       { (fvname), (ctype), &(vname), (flags), (descr) },
+#define        EMPCFBOTH(fvname, vname, vtype, ctype, flags, descr)    \
+       { (fvname), (ctype), &(vname), (flags), (descr) },
 
 #elif  defined(EMP_CONFIG_H_OUTPUT)
 
-#define        EMPCFONLYC(fvname, vname, vtype, ctype, num, descr)
-#define        EMPCFBOTH(fvname, vname, vtype, ctype, num, descr)      \
+#define        EMPCFONLYC(fvname, vname, vtype, ctype, flags, descr)
+#define        EMPCFBOTH(fvname, vname, vtype, ctype, flags, descr)    \
        extern vtype vname;
 
 #endif /* EMP_CONFIG_C_OUTPUT || EMP_CONFIG_H_OUTPUT */
@@ -67,10 +71,12 @@ EMPCFBOTH((fvname), (vname), int, NSC_INT, KM_OPTION, (descr))
 /* econfig key definitions: */
 
 EMPCF_COMMENT("\n### Server configuration and information")
-EMPCFBOTH("config_tables", config_tables, char *, NSC_STRING, KM_INTERNAL,
-    "Configuration table files, separated by space")
+EMPCFBOTH("custom_tables", custom_tables, char *, NSC_STRING, KM_INTERNAL,
+    "Custom configuration table files, separated by space")
 EMPCFBOTH("data", gamedir, char *, NSC_STRING, KM_INTERNAL,
     "Directory where this game's data is stored")
+EMPCF_COMMENT("# Note: Use an absolute name here, the interpretation of a relative\n"
+             "# name may change.")
 EMPCFBOTH("info", infodir, char *, NSC_STRING, KM_INTERNAL,
     "Directory where info pages are stored, can be shared among games")
 EMPCF_COMMENT("# Note: Use an absolute name here, the interpretation of a relative\n"
@@ -84,66 +90,59 @@ EMPCFBOTH("listen_addr", listen_addr, char *, NSC_STRING, KM_INTERNAL,
 EMPCF_COMMENT("# \"\" listens on all, localhost just on the loopback interface")
 EMPCFBOTH("port", loginport, char *, NSC_STRING, KM_INTERNAL,
     "TCP port the server will bind")
+EMPCFBOTH("keep_journal", keep_journal, int, NSC_INT, KM_INTERNAL,
+    "Enable journal log file")
 EMPCFBOTH("privname", privname, char *, NSC_STRING, 0,
     "Name of the deity")
 EMPCFBOTH("privlog", privlog, char *, NSC_STRING, 0,
     "E-mail of the deity")
 EMPCFBOTH("privip", privip, char *, NSC_STRING, KM_INTERNAL,
-    "Deities may connect from these IPs or networks")
+    "Deities may connect from these IPs or networks, \"\" allows all")
 EMPCFBOTH("WORLD_X", WORLD_X, int, NSC_INT, 0,
     "World size X dimension (enforced to be even by subtracting 1 if necessary)")
 EMPCFBOTH("WORLD_Y", WORLD_Y, int, NSC_INT, 0,
     "World size Y dimension")
 
-EMPCF_COMMENT("\n\n### Update policy")
-EMPCFBOTH("update_policy", update_policy, int, NSC_INT, 0,
-    "0 - normal, 1 - update_times, 2 - blitz, 3 - demand only")
+EMPCF_COMMENT("\n\n### Update policy\n\n"
+    "# Note: the update schedule is defined in the file schedule in the\n"
+    "# same directory as this file.")
 EMPCFBOTH("etu_per_update", etu_per_update, int, NSC_INT, 0,
     "Number of ETUs per update")
-EMPCFBOTH("s_p_etu", s_p_etu, int, NSC_INT, 0,
-    "Seconds per etu, updates will occur every s_p_etu * etu_per_update seconds")
-EMPCFBOTH("adj_update", adj_update, int, NSC_INT, KM_INTERNAL,
-    "Move the update forward or backward (in seconds)")
 EMPCFBOTH("update_window", update_window, int, NSC_INT, 0,
-    "Window the update will occur in (in seconds) before and after the update time")
-EMPCFBOTH("update_times", update_times, char *, NSC_STRING, 0,
-    "Times when updates occur under policy #1.  Must coincide with schedule.")
-EMPCFBOTH("hourslop", hourslop, int, NSC_INT, KM_INTERNAL,
-    "Number of minutes update check can slip to match update_times")
-EMPCFBOTH("blitz_time", blitz_time, int, NSC_INT, 0,
-    "Number of minutes between updates under policy #2.")
+    "Time window the update will occur in after the update time, in seconds")
 EMPCFBOTH("pre_update_hook", pre_update_hook, char *, NSC_STRING, KM_INTERNAL,
     "Shell command run right before the update.")
-
-EMPCF_COMMENT("\n\n### Demand update policy")
-EMPCFBOTH("update_demandpolicy", update_demandpolicy, int, NSC_INT, 0,
-    "0 - emp_tm checks, 1 - after setting, 2 - demand updates disabled")
+EMPCFBOTH("update_demand", update_demand, int, NSC_INT, 0,
+    "Demand update policy")
+EMPCF_COMMENT("# 0 - No demand updates\n"
+    "# 1 - Scheduled updates are demand updates\n"
+    "# 2 - Demand updates run right after the deciding vote is cast,\n"
+    "#     in addition to (non-demand) scheduled updates\n")
 EMPCFBOTH("update_wantmin", update_wantmin, int, NSC_INT, 0,
-    "number of requests needed for demand update")
-EMPCFBOTH("update_missed", update_missed, int, NSC_INT, 0,
-    "number of demand updates country can miss before veto update")
+    "Number of votes required for a demand update")
 EMPCFBOTH("update_demandtimes", update_demandtimes, char *, NSC_STRING, 0,
-    "Times when demand updates can occur.  Ranges CANNOT cross midnight.")
+    "Times when unscheduled demand updates can occur, separated by space.")
+EMPCF_COMMENT("# Give time ranges as HOUR:MINUTE-HOUR:MINUTE, e.g. 20:00-24:00\n"
+             "# Ranges CANNOT cross midnight.")
 
 EMPCF_COMMENT("\n\n### Game hours restrictions")
 EMPCFBOTH("game_days", game_days, char *, NSC_STRING, 0,
-    "Days game is up and running (Su Mo Tu We Th Fr Sa)")
+    "Days of week the game is up and running, separated by space")
+EMPCF_COMMENT("# Give days as Su Mo Tu We Th Fr Sa.")
 EMPCFBOTH("game_hours", game_hours, char *, NSC_STRING, 0,
-    "Hours game is up and running (6:00-18:00)")
+    "Time of day ranges when the game is open, separated by space.")
+EMPCF_COMMENT("# Give time ranges as HOUR:MINUTE-HOUR:MINUTE, e.g. 20:00-24:00\n"
+             "# Ranges CANNOT cross midnight.")
 
 EMPCF_COMMENT("\n\n### Options")
 EMPCF_OPT("ALL_BLEED", opt_ALL_BLEED,
     "Let tech bleed to everyone, not just allies")
-EMPCF_OPT("BIG_CITY", opt_BIG_CITY,
-    "Allow 10x civs in 'c' sectors")
+EMPCF_OPT("AUTO_POWER", opt_AUTO_POWER,
+    "Power report is updated only automatically, at the update")
 EMPCF_OPT("BLITZ", opt_BLITZ,
     "Enable blitz mode")
 EMPCF_OPT("BRIDGETOWERS", opt_BRIDGETOWERS,
     "Allow bridge towers")
-EMPCF_OPT("DEFENSE_INFRA", opt_DEFENSE_INFRA,
-    "Allow the improvement of defensive infrastructure")
-EMPCF_OPT("DEMANDUPDATE", opt_DEMANDUPDATE,
-    "Allow demand updates")
 EMPCF_OPT("EASY_BRIDGES", opt_EASY_BRIDGES,
     "Allow bridge building without bridge heads")
 EMPCF_OPT("FALLOUT", opt_FALLOUT,
@@ -245,7 +244,7 @@ EMPCF_COMMENT("\n\n### Sectors")
 EMPCFBOTH("startmob", startmob, int, NSC_INT, KM_INTERNAL,
     "Starting mobility for sanctuaries")
 EMPCFBOTH("sect_mob_scale", sect_mob_scale, float, NSC_FLOAT, 0,
-    "Sector mobility accumulation (sect_mob_scale * ETUs per update)")
+    "Sector mobility accumulation per ETU")
 EMPCFBOTH("sect_mob_max", sect_mob_max, int, NSC_INT, 0,
     "Maximum mobility for sectors")
 EMPCFBOTH("buil_bh", buil_bh, int, NSC_INT, 0,
@@ -263,9 +262,9 @@ EMPCFBOTH("buil_tower_bt", buil_tower_bt, double, NSC_DOUBLE, 0,
 
 EMPCF_COMMENT("\n\n### Land Units")
 EMPCFBOTH("land_mob_scale", land_mob_scale, float, NSC_FLOAT, 0,
-    "Land unit mobility accumulation (land_mob_scale * ETUs per update)")
+    "Land unit mobility accumulation per ETU")
 EMPCFBOTH("land_grow_scale", land_grow_scale, float, NSC_FLOAT, 0,
-    "How fast efficiency grows for land units each update (* ETUs)")
+    "How fast efficiency grows for land units, per ETU")
 EMPCFBOTH("land_mob_max", land_mob_max, int, NSC_INT, 0,
     "Maximum mobility for land units")
 EMPCFBOTH("money_land", money_land, double, NSC_DOUBLE, 0,
@@ -275,9 +274,9 @@ EMPCFBOTH("morale_base", morale_base, int, NSC_INT, KM_INTERNAL,
 
 EMPCF_COMMENT("\n\n### Planes")
 EMPCFBOTH("plane_mob_scale", plane_mob_scale, float, NSC_FLOAT, 0,
-    "Plane mobility accumulation (plane_mob_scale * ETUs per update)")
+    "Plane mobility accumulation per ETU")
 EMPCFBOTH("plane_grow_scale", plane_grow_scale, float, NSC_FLOAT, 0,
-    "How fast efficiency grows for planes each update (* ETUs)")
+    "How fast efficiency grows for planes each update, per ETU")
 EMPCFBOTH("plane_mob_max", plane_mob_max, int, NSC_INT, 0,
     "Maximum mobility for planes")
 EMPCFBOTH("money_plane", money_plane, double, NSC_DOUBLE, 0,
@@ -285,9 +284,9 @@ EMPCFBOTH("money_plane", money_plane, double, NSC_DOUBLE, 0,
 
 EMPCF_COMMENT("\n\n### Ships")
 EMPCFBOTH("ship_mob_scale", ship_mob_scale, float, NSC_FLOAT, 0,
-    "Ship mobility accumulation (ship_mob_scale * ETUs per update)")
+    "Ship mobility accumulation per ETU")
 EMPCFBOTH("ship_grow_scale", ship_grow_scale, float, NSC_FLOAT, 0,
-    "How fast efficiency grows for ships each update (* ETUs)")
+    "How fast efficiency grows for ships each update, per ETU")
 EMPCFBOTH("ship_mob_max", ship_mob_max, int, NSC_INT, 0,
     "Maximum mobility for ships")
 EMPCFBOTH("money_ship", money_ship, double, NSC_DOUBLE, 0,
@@ -317,7 +316,8 @@ EMPCFBOTH("assault_penalty", assault_penalty, double, NSC_DOUBLE, 0,
 EMPCFBOTH("fire_range_factor", fire_range_factor, float, NSC_FLOAT, 0,
     "Scale normal firing ranges by this amount")
 EMPCFBOTH("sect_mob_neg_factor", sect_mob_neg_factor, int, NSC_INT, 0,
-    "Amount of negative mobility a sector has after takeover (ETU / x) (MOB_ACCESS)")
+    "Initial mobility for MOB_ACCESS (etu_per_update / sect_mob_neg_factor)")
+EMPCF_COMMENT("# Applies to sector takeover, ship build, plane or land unit build or trade")
 EMPCFBOTH("mission_mob_cost", mission_mob_cost, double, NSC_DOUBLE, 0,
     "Cost to put something on a mission (percentage of max mob)")
 
@@ -384,6 +384,8 @@ EMPCFBOTH("trade_ally_cut", trade_ally_cut, float, NSC_FLOAT, 0,
     "Bonus your ally gets for you cashing in with them")
 
 EMPCF_COMMENT("\n\n### Misc.")
+EMPCFBOTH("disabled_commands", disabled_commands, char *, NSC_STRING, KM_INTERNAL,
+         "Disabled commands, separated by space")
 EMPCFBOTH("anno_keep_days", anno_keep_days, int, NSC_INT, KM_INTERNAL,
          "How long until announcements expire (<0 means never)")
 EMPCFBOTH("news_keep_days", news_keep_days, int, NSC_INT, KM_INTERNAL,
@@ -396,6 +398,6 @@ EMPCFBOTH("lost_items_timeout", lost_items_timeout, int, NSC_INT, KM_INTERNAL,
 /* Sentinel */
 EMPCFONLYC(NULL, emp_config_dummy, NULL, NSC_NOTYPE, 0, NULL)
 
-#undef EMPCFONLYC
-#undef EMPCFBOTH
+#undef EMPCFONLYC
+#undef EMPCFBOTH
 #undef EMPCF_COMMENT