]> git.pond.sub.org Git - empserver/blobdiff - src/lib/global/constants.c
Update copyright notice.
[empserver] / src / lib / global / constants.c
index 191011ac57ac5962f4afec5b9615e6bc5183c50b..5ffd430ca559adabf1929d83053a54e9d9ab421a 100644 (file)
@@ -1,6 +1,6 @@
 /*
  *  Empire - A multi-player, client/server Internet based war game.
- *  Copyright (C) 1986-2000, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ *  Copyright (C) 1986-2007, Dave Pare, Jeff Bailey, Thomas Ruschak,
  *                           Ken Stevens, Steve McClure
  *
  *  This program is free software; you can redistribute it and/or modify
  *
  *  ---
  *
- *  See the "LEGAL", "LICENSE", "CREDITS" and "README" files for all the
- *  related information and legal notices. It is expected that any future
- *  projects/authors will amend these files as needed.
+ *  See files README, COPYING and CREDITS in the root of the source
+ *  tree for related information and legal notices.  It is expected
+ *  that future projects/authors will amend these files as needed.
  *
  *  ---
  *
- *  constants.c: Global constants file.  Note that the "hours" file can
- *               override these, as does the global "econfig" file.
+ *  constants.c: Global constants
  * 
  *  Known contributors to this file:
  *     Ken Stevens, 1995
  *     Steve McClure, 1996
- *     
  */
 
-#include "gamesdef.h"
-#include "misc.h"
-#include "xy.h"
+#include <config.h>
 
-s_char *privname = PRVNAM;     /* name of priv user */
-s_char *privlog = PRVLOG;      /* logname of priv user */
+#include "wantupd.h"
 
-int WORLD_X = DEF_WORLD_X;     /* World size - x */
-int WORLD_Y = DEF_WORLD_Y;     /* World size - y */
+/* Name of the deity */
+char *privname = "Deity forgot to edit econfig";
+/* E-mail of the deity */
+char *privlog = "careless@invalid";
+/* Divine hosts and networks */
+char *privip = "127.0.0.1 ::1 ::ffff:127.0.0.1";
+
+char *disabled_commands = "";
+
+int keep_journal = 0;          /* journal log file enabled */
+
+int WORLD_X = 64;              /* World size - x */
+int WORLD_Y = 32;              /* World size - y */
 
 int MARK_DELAY = 7200;         /* Seconds to bid on commodities */
 int TRADE_DELAY = 7200;                /* Seconds to bid on units */
 
 int m_m_p_d = 1440;            /* max mins of play per day (per country) */
-int s_p_etu = DEF_S_P_ETU;     /* seconds per Empire time unit */
-int etu_per_update = ETUS;     /* # of etu's per update, from misc.h */
-int adj_update = 0;            /* update time adjustment */
-int update_window = 0;         /* update window adjustment */
-int hourslop = 5;              /* amount of slop to match update times */
-s_char *update_times = "";     /* times regular update is allowed */
-int update_policy = 0;         /* update policy for regular updates */
-int update_demandpolicy = 2;   /* update policy for demand updates */
+int s_p_etu = 10;              /* seconds per Empire Time Unit */
+int etu_per_update = 60;       /* # of etu's per update */
+int adj_update = 0;            /* update time adjustment, in seconds */
+int update_window = 0;         /* update window adjustment, in seconds */
+int hourslop = 5;              /* update_times matching fuzz, in minutes */
+char *update_times = "";       /* update times for policy UDP_TIMES */
+int update_policy = UDP_DEFAULT; /* update policy for regular updates */
+int update_demandpolicy = UDDEM_DEFAULT; /* update policy for demand updates */
 int update_missed = 999;       /* demand updates missed before veto */
-int update_wantmin = 0;                /* number of votes required for demand update */
+int update_wantmin = 1;                /* votes required for demand update */
 int blitz_time = 10;           /* number of minutes between blitz updates */
-s_char *update_demandtimes = "";       /* times demand update is allowed */
-s_char *game_days = "";                /* days game is running */
-s_char *game_hours = "";       /* hours game is running */
+char *update_demandtimes = ""; /* demand update time ranges */
+char *game_days = "";          /* days game is running */
+char *game_hours = "";         /* hours game is running */
+char *pre_update_hook = "";
 int max_idle = 15;             /* session dies after max_idle minutes idle */
 
 int sect_mob_max = 127;                /* sector mobility limits */
@@ -80,9 +87,9 @@ int morale_base = 42;         /* base for morale */
 /* opt_MOB_ACCESS */
 int sect_mob_neg_factor = 2;   /* ETU/neg_factor = negative amount of mobility
                                   a sector has after being taken */
-int updating_mob = 1;          /* If we are currently updating mob */
-int timestamp_fixing = 0;      /* If we are currently fixing timestamps */
 
+int anno_keep_days = 7;                /* How long until annos expire (<0 never) */
+int news_keep_days = 10;       /* How long until news expire (<0 never) */
 int lost_items_timeout = 172800;       /* How long before removing from database */
 
 double combat_mob = 5.0;       /* how much mob do units spend for combat? */
@@ -94,45 +101,29 @@ int land_max_interdiction_range = 8;
 
 double mission_mob_cost = 0.0; /* Cost is percentage of max mob */
 
-double unit_damage = 0.30;     /* Units take this % of normal damage */
-double people_damage = 1.00;   /* Civs/Mil/Uw take this % of normal damage */
+double unit_damage = 0.30;     /* Units take this fraction of normal damage */
+double people_damage = 1.00;   /* Civs/mil/uw take this fraction of damage */
 double collateral_dam = 0.10;  /* Side effect damage to sector */
 double assault_penalty = 0.50; /* attack factor for para & assault troops */
 
-/* START_UNITS */
-#ifdef START_UNITS
-int start_unit_type[START_UNITS] = { 0, 1 };   /* type of unit */
-#endif /* START_UNITS */
-
 /* opt_FUEL */
 int fuel_mult = 10;            /* 1 fuel = 10 mob */
 
-int land_grow_scale = 2;       /* how fast eff grows for land units (xETUS) */
-int ship_grow_scale = 3;       /* how fast eff grows for ships (xETUS) */
-int plane_grow_scale = 2;      /* how fast eff grows for planes (xETUS) */
+float land_grow_scale = 2.0;   /* how fast eff grows for land units (xETUS) */
+float ship_grow_scale = 3.0;   /* how fast eff grows for ships (xETUS) */
+float plane_grow_scale = 2.0;  /* how fast eff grows for planes (xETUS) */
 
 double fgrate = 0.0012;                /* food growth rate (dt * fert) */
 double fcrate = 0.0013;                /* food cultivate rate (dt * workforce) */
 double eatrate = 0.0005;       /* food eating rate (dt * people) */
-/*double   eatrate     = 0.0001;*//* food eating rate (dt * people) */
 double babyeat = 0.0060;       /* food to mature 1 baby into a civilian */
-/*double   babyeat     = 0.0000;*//* food to mature 1 baby into a civilian */
 
 double obrate = 0.005;         /* other sectors birth rate */
 double uwbrate = 0.0025;       /* uncompensated worker birth rate */
                                /* values > 0.25 for either will overflow */
+int rollover_avail_max = 0;    /* max. avail that can roll over an update */
 
 /* opt_FALLOUT */
-/* these are the radioactive decay constants */
-/* fraction of commodity destroyed is
-   etus*fallout/(1000*melt_item_denom[item])
-   higher denominators for tougher commodities */
-int melt_item_denom[] =
-       /*   civ mil shell gun pet iron dust bar */
-{ 0, 4, 20, 80, 100, 50, 100, 100, 200,
-    2, 50, 100, 100, 2, 1000
-};
-       /*food oil lcm hcm UW rads */
 double decay_per_etu = 0.006;  /* This gives a half life of ? etus,
                                   about ? days.
                                   half life in Jt
@@ -158,12 +149,10 @@ double bankint = 0.25;            /* bank interest rate (dt * bars) */
               charged (price paid * buytax).
    Not perfect, but it works. :) */
 
-double minmult = 0.5;          /* minimum trade mulitple */
-double maxmult = 10.0;         /* maximum trade multiple */
 double tradetax = 0.99;                /* Tax charged on trade */
 double buytax = 1.0;           /* Tax charged on market purchases */
 int startmob = 127;            /* Sanctuary starting mobility */
-double flakscale = 1.75;       /* Scale factor for flak damage */
+float flakscale = 1.75f;       /* Scale factor for flak damage */
 
 /* money gained from taxes, paid to military, and reservists */
 double money_civ = 0.0083333;
@@ -186,15 +175,8 @@ float hap_avg = 16.0 * 3.0;
 float edu_avg = 16.0 * 12.0;
 
 
-/* tech build limitations.  Tech limits only apply after easy_tech.
- * Two ways of limiting tech: asymptotic or logrithmic:
- * tech_hard is asymptopic limitation, tech_log_base is the logrithmic
- * limitation.  set tech_log_base > 1.0 to have it take effect,
- * set hard_tech > 0 to have it take effect
- * for log based, only tech values where the slop is < 1 are used      */
-
+/* tech build limitations.  */
 float easy_tech = 1.00;                /* amount of tech built with no penality */
-float hard_tech = 10.0;                /* amount of in-efficiently built tech */
 float tech_log_base = 2.0;     /* base of log to take of in-efficient tech */
 
 float ally_factor = 2.0;       /* shared tech with allies = 1/factor */
@@ -209,7 +191,6 @@ int at_least_one_100 = 1;   /* init player with 100/100/100/100 sector? */
 float btu_build_rate = 0.0012; /* etu * civ * eff * btu_build_rate */
                                /* 8 * 999 * 100 * 0.0004 = 319 */
 int max_btus = 640;            /* maximum # of btu's */
-double powe_cost = 10.0;       /* btu cost to gen a power report */
 
 double buil_bt = 10.0;         /* tech level required to build a bridge */
 int buil_bh = 100;             /* hcm required to build a bridge */
@@ -222,12 +203,7 @@ double buil_tower_bc = 7500.0;     /* cash required to build a bridge tower */
 /* opt_SLOW_WAR */
 int War_Cost = 1000;           /* Cost to declare war */
 
-/* opt_DEMANDUPDATE */
-long last_demand_update = 0;   /* When was last demand update? */
-
-
-/* opt_DRNUKE */
-float drnuke_const = .33;      /* research must be at least drnuke_const*tech */
+float drnuke_const = 0.0;      /* research must be at least drnuke_const*tech */
                                /* in order to build a nuke. For example, if
                                 * drnuke_const is .25, you need a 75 res to
                                 * build a nuke that takes 300 tech
@@ -245,6 +221,8 @@ float trade_ally_cut = 0.10;        /* 10% bonus for ally you trade with */
 
 int torpedo_damage = 40;       /* damage is X + 1dX + 1dX, so 40+1d40+1d40 */
 
+long start_cash = 25000;
+
 /* initial levels */
 float start_education = 0.0;
 float start_happiness = 0.0;