[Freeciv-Dev] Re: init_techs integrated patch (PR#999)
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Updated patch attached. Commentary below
--- Raimar Falke <hawk@xxxxxxxxxxxxxxxxxxxxxxx> wrote:
> > > Why is this dynamic and not init_techs[MAX_NUM_INIT_TECHS + 1]? Or
> > > should MAX_NUM_INIT_TECHS be named MAX_NUM_NATION_INIT_TECHS?
> >
> > Probably the latter. 8 (the value for MAX_NUM_INIT_TECHS) is too low for
> > global_init_techs. E.g., if you wanted to test modern warfare, you would
> need:
> > [...bunch of techs...]
> > I could statically allocate to MAX_NUM_TECH_LIST?
>
> It is hard to judge memory wasting versus easy memory
> handling. MAX_NUM_TECH_LIST is currently 10. 10 is ok. Do you plan to
> increase MAX_NUM_TECH_LIST? If yes, how large?
My whole way of dynamically allocating stuff, as did the nation specific
special case statically allocated define, completely undercuts the Freeciv Way,
which is to statically allocate MAX_NUM_TECH_LIST elements & A_LAST terminate.
It turns out that my code would have broken for large enough arrays anyway,
since it used the iget/put_tech_list functions in packets.c, which assume
MAX_NUM_TECH_LIST, ( & A_LAST termination). (I stupidly assumed that
MAX_NUM_TECH_LIST was a list large enough to hold all techs, but it isn't so).
It turns out that ruleset.c has another utility function, lookup_tech_list,
that also assume MAX_NUM_TECH_LIST length (and A_LAST termination). So that's
the way I've gone here for both global_init_techs & init_techs.
My contrived example of lots of techs needing to be init'ed is a bit silly: if
you really wanted to change things that much, it'd be simpler to do a real
modern warfare ruleset with proper techs & units. Really, global_init_tech
should be used for testing. I also eventually want to allow settler techs for
roadbuilding, mining & irrigation, which is why I wrote the init_techs patch in
the first place.
Arien
__________________________________________________
Do You Yahoo!?
Make a great connection at Yahoo! Personals.
http://personals.yahoo.com Index: common/capstr.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/common/capstr.c,v
retrieving revision 1.88
diff -u -r1.88 capstr.c
--- common/capstr.c 2001/10/06 21:02:01 1.88
+++ common/capstr.c 2001/10/10 19:38:10
@@ -71,7 +71,7 @@
*/
#define CAPABILITY "+1.11.6 conn_info pop_cost turn attributes new_bonus_tech"\
-" fund_added processing_packets angrycitizen tile_trade"
+" fund_added processing_packets angrycitizen tile_trade init_techs"
/* "+1.11.6" is protocol for 1.11.6 beta release.
@@ -100,6 +100,9 @@
a city can become unhappy.
"tile_trade" sends the tile_trade field from struct city.
+
+ "init_techs" allows global and nation specific initial techs to be
+ specified in rulesets.
*/
void init_our_capability(void)
Index: common/game.h
===================================================================
RCS file: /home/freeciv/CVS/freeciv/common/game.h,v
retrieving revision 1.87
diff -u -r1.87 game.h
--- common/game.h 2001/09/16 12:43:25 1.87
+++ common/game.h 2001/10/10 19:38:11
@@ -141,7 +141,7 @@
int watchtower_extra_vision;
int watchtower_vision;
-
+
struct {
char techs[MAX_LEN_NAME];
char units[MAX_LEN_NAME];
@@ -182,6 +182,10 @@
int nuke_contamination;
int granary_food_ini;
int granary_food_inc;
+ int global_init_techs[MAX_NUM_TECH_LIST]; /* Advances to assign to
+ all players at game
+ start. A_LAST
+ terminated.*/
} rgame;
char demography[MAX_LEN_DEMOGRAPHY];
Index: common/nation.h
===================================================================
RCS file: /home/freeciv/CVS/freeciv/common/nation.h,v
retrieving revision 1.5
diff -u -r1.5 nation.h
--- common/nation.h 2000/03/04 03:55:27 1.5
+++ common/nation.h 2001/10/10 19:38:11
@@ -43,6 +43,9 @@
char name_orig[MAX_LEN_NAME];
char name_plural_orig[MAX_LEN_NAME];
+ /* Init techs */
+ int init_techs[MAX_NUM_TECH_LIST];
+
/* AI hints */
int attack; /* c 0 = optimize for food, 2 = optimize for prod
*/
/* c0 = large amount of buildings, 2 = units */
Index: common/packets.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/common/packets.c,v
retrieving revision 1.164
diff -u -r1.164 packets.c
--- common/packets.c 2001/10/06 21:02:01 1.164
+++ common/packets.c 2001/10/10 19:38:22
@@ -3643,7 +3643,9 @@
cptr=put_uint8(cptr, packet->leader_sex[i]);
}
cptr=put_uint8(cptr, packet->city_style);
-
+ if (has_capability("init_techs", pc->capability)) {
+ cptr=put_tech_list(cptr, packet->init_techs);
+ }
put_uint16(buffer, cptr-buffer);
return send_packet_data(pc, buffer, cptr-buffer);
@@ -3674,6 +3676,9 @@
iget_uint8(&iter, &packet->leader_sex[i]);
}
iget_uint8(&iter, &packet->city_style);
+ if (has_capability("init_techs", pc->capability)) {
+ iget_tech_list(&iter, packet->init_techs);
+ }
pack_iter_end(&iter, pc);
remove_packet_from_buffer(pc->buffer);
@@ -3747,7 +3752,10 @@
cptr=put_uint8(cptr, packet->nuke_contamination);
cptr=put_uint8(cptr, packet->granary_food_ini);
cptr=put_uint8(cptr, packet->granary_food_inc);
-
+ if (has_capability("init_techs", pc->capability)) {
+ cptr=put_tech_list(cptr, packet->init_techs);
+ }
+
put_uint16(buffer, cptr-buffer);
return send_packet_data(pc, buffer, cptr-buffer);
}
@@ -3774,6 +3782,9 @@
iget_uint8(&iter, &packet->nuke_contamination);
iget_uint8(&iter, &packet->granary_food_ini);
iget_uint8(&iter, &packet->granary_food_inc);
+ if (has_capability("init_techs", pc->capability)) {
+ iget_tech_list(&iter, packet->init_techs);
+ }
pack_iter_end(&iter, pc);
remove_packet_from_buffer(pc->buffer);
Index: common/packets.h
===================================================================
RCS file: /home/freeciv/CVS/freeciv/common/packets.h,v
retrieving revision 1.96
diff -u -r1.96 packets.h
--- common/packets.h 2001/10/06 21:02:02 1.96
+++ common/packets.h 2001/10/10 19:38:25
@@ -763,6 +763,7 @@
char leader_name[MAX_NUM_LEADERS][MAX_LEN_NAME];
int leader_sex[MAX_NUM_LEADERS];
int city_style;
+ int init_techs[MAX_NUM_TECH_LIST];
};
struct packet_ruleset_city {
@@ -785,6 +786,7 @@
int nuke_contamination;
int granary_food_ini;
int granary_food_inc;
+ int init_techs[MAX_NUM_TECH_LIST];
};
/*********************************************************
Index: data/default/game.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/default/game.ruleset,v
retrieving revision 1.3
diff -u -r1.3 game.ruleset
--- data/default/game.ruleset 2001/01/22 04:57:17 1.3
+++ data/default/game.ruleset 2001/10/10 19:38:25
@@ -14,6 +14,9 @@
description="Default game rules for Freeciv"
options="1.11.1"
+[options]
+global_init_techs=""
+
[civstyle]
min_city_center_food = 1
min_city_center_shield = 1
Index: data/nation/american.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/american.ruleset,v
retrieving revision 1.1
diff -u -r1.1 american.ruleset
--- data/nation/american.ruleset 2000/03/21 11:26:13 1.1
+++ data/nation/american.ruleset 2001/10/10 19:38:25
@@ -17,6 +17,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Trade", "Engineering", "Democracy",
"Railroad", "Explosives", "Automobile"
wonder="Statue of Liberty"
Index: data/nation/arab.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/arab.ruleset,v
retrieving revision 1.1
diff -u -r1.1 arab.ruleset
--- data/nation/arab.ruleset 2000/03/21 11:26:13 1.1
+++ data/nation/arab.ruleset 2001/10/10 19:38:26
@@ -16,6 +16,7 @@
expand=1
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy", "Philosophy", "Chivalry", "Trade", "Bridge Building",
"Railroad"
wonder="Oracle"
Index: data/nation/argentine.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/argentine.ruleset,v
retrieving revision 1.3
diff -u -r1.3 argentine.ruleset
--- data/nation/argentine.ruleset 2001/01/20 15:42:33 1.3
+++ data/nation/argentine.ruleset 2001/10/10 19:38:26
@@ -16,6 +16,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy", "The Republic", "Iron Working", "Trade", "Navigation",
"Railroad", "Steel", "Industrialization", "Democracy"
Index: data/nation/australian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/australian.ruleset,v
retrieving revision 1.2
diff -u -r1.2 australian.ruleset
--- data/nation/australian.ruleset 2001/03/29 23:04:37 1.2
+++ data/nation/australian.ruleset 2001/10/10 19:38:26
@@ -16,6 +16,7 @@
expand=0
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy","Chivalry","Iron Working","Trade","Navigation",
"Railroad","Steel"
Index: data/nation/aztec.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/aztec.ruleset,v
retrieving revision 1.1
diff -u -r1.1 aztec.ruleset
--- data/nation/aztec.ruleset 2000/03/21 11:26:14 1.1
+++ data/nation/aztec.ruleset 2001/10/10 19:38:26
@@ -12,6 +12,7 @@
expand=0
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Chivalry", "Iron Working", "Trade",
"Navigation", "Railroad", "Communism"
Index: data/nation/babylonian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/babylonian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 babylonian.ruleset
--- data/nation/babylonian.ruleset 2000/03/21 11:26:14 1.1
+++ data/nation/babylonian.ruleset 2001/10/10 19:38:26
@@ -12,6 +12,7 @@
expand=0
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy","Philosophy","Mathematics","Chivalry",
"Theology","Monotheism"
Index: data/nation/barbarian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/barbarian.ruleset,v
retrieving revision 1.2
diff -u -r1.2 barbarian.ruleset
--- data/nation/barbarian.ruleset 2000/11/11 03:05:15 1.2
+++ data/nation/barbarian.ruleset 2001/10/10 19:38:26
@@ -12,6 +12,7 @@
expand=0
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Warrior Code"
wonder = "Apollo Program"
Index: data/nation/bavarian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/bavarian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 bavarian.ruleset
--- data/nation/bavarian.ruleset 2000/03/21 11:26:14 1.1
+++ data/nation/bavarian.ruleset 2001/10/10 19:38:26
@@ -12,6 +12,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Feudalism", "Gunpowder", "Railroad",
"Explosives"
wonder= "Leonardo's Workshop"
Index: data/nation/boer.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/boer.ruleset,v
retrieving revision 1.2
diff -u -r1.2 boer.ruleset
--- data/nation/boer.ruleset 2000/06/26 12:06:55 1.2
+++ data/nation/boer.ruleset 2001/10/10 19:38:26
@@ -14,6 +14,7 @@
expand=2
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Trade", "Engineering", "Gunpowder",
"Railroad", "Explosives"
wonder= "Magellan's Expedition"
Index: data/nation/brazilian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/brazilian.ruleset,v
retrieving revision 1.2
diff -u -r1.2 brazilian.ruleset
--- data/nation/brazilian.ruleset 2000/03/21 13:48:52 1.2
+++ data/nation/brazilian.ruleset 2001/10/10 19:38:26
@@ -21,6 +21,7 @@
expand=1
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Ceremonial Burial", "Code of Laws", "Bridge Building",
"Flight","Banking", "Conscription", "The Corporation", "Labor
Union"
wonder="Marco Polo's Embassy"
Index: data/nation/canadian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/canadian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 canadian.ruleset
--- data/nation/canadian.ruleset 2000/03/21 11:26:15 1.1
+++ data/nation/canadian.ruleset 2001/10/10 19:38:26
@@ -15,6 +15,7 @@
expand=1
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Trade", "Engineering", "Democracy",
"Railroad", "Explosives", "Automobile"
wonder="Cure For Cancer"
Index: data/nation/carthaginian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/carthaginian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 carthaginian.ruleset
--- data/nation/carthaginian.ruleset 2000/03/21 11:26:15 1.1
+++ data/nation/carthaginian.ruleset 2001/10/10 19:38:27
@@ -12,6 +12,7 @@
expand=1
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy", "Philosophy","Chivalry","Trade","Bridge Building",
"Navigation"
Index: data/nation/catalan.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/catalan.ruleset,v
retrieving revision 1.3
diff -u -r1.3 catalan.ruleset
--- data/nation/catalan.ruleset 2001/01/25 03:09:56 1.3
+++ data/nation/catalan.ruleset 2001/10/10 19:38:27
@@ -21,6 +21,7 @@
expand=1
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Navigation", "Chivalry", "Trade",
"Monotheism", "Economics", "Leadership", "The Republic", "Railroad"
Index: data/nation/chilean.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/chilean.ruleset,v
retrieving revision 1.3
diff -u -r1.3 chilean.ruleset
--- data/nation/chilean.ruleset 2001/01/20 15:23:54 1.3
+++ data/nation/chilean.ruleset 2001/10/10 19:38:27
@@ -23,6 +23,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Iron Working", "Trade", "Navigation", "The Republic",
"Railroad", "Steel", "Industrialization"
Index: data/nation/chinese.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/chinese.ruleset,v
retrieving revision 1.2
diff -u -r1.2 chinese.ruleset
--- data/nation/chinese.ruleset 2000/07/13 13:57:54 1.2
+++ data/nation/chinese.ruleset 2001/10/10 19:38:27
@@ -18,6 +18,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Trade", "Philosophy", "Bridge Building",
"Railroad", "Communism"
Index: data/nation/cornish.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/cornish.ruleset,v
retrieving revision 1.1
diff -u -r1.1 cornish.ruleset
--- data/nation/cornish.ruleset 2000/03/21 13:48:52 1.1
+++ data/nation/cornish.ruleset 2001/10/10 19:38:27
@@ -12,6 +12,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Iron Working", "Feudalism", "Invention"
wonder = "King Richard's Crusade"
government = "Republic"
Index: data/nation/croatian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/croatian.ruleset,v
retrieving revision 1.2
diff -u -r1.2 croatian.ruleset
--- data/nation/croatian.ruleset 2000/09/24 22:33:19 1.2
+++ data/nation/croatian.ruleset 2001/10/10 19:38:27
@@ -24,6 +24,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="The Republic", "Trade", "Engineering", "Democracy",
"Railroad", "Explosives", "Automobile"
Index: data/nation/czech.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/czech.ruleset,v
retrieving revision 1.1
diff -u -r1.1 czech.ruleset
--- data/nation/czech.ruleset 2000/03/21 11:26:16 1.1
+++ data/nation/czech.ruleset 2001/10/10 19:38:28
@@ -25,6 +25,7 @@
expand = 0
civilized = 0
advisors = 100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Iron Working", "Literacy", "Astronomy", "Bridge Building",
"The Republic", "Metallurgy", "Medicine", "University",
Index: data/nation/danish.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/danish.ruleset,v
retrieving revision 1.2
diff -u -r1.2 danish.ruleset
--- data/nation/danish.ruleset 2000/07/09 16:51:03 1.2
+++ data/nation/danish.ruleset 2001/10/10 19:38:28
@@ -23,6 +23,7 @@
expand=2
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Chivalry", "Trade", "Theology", "University",
"Navigation", "Railroad"
Index: data/nation/dunedain.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/dunedain.ruleset,v
retrieving revision 1.2
diff -u -r1.2 dunedain.ruleset
--- data/nation/dunedain.ruleset 2001/07/07 19:19:17 1.2
+++ data/nation/dunedain.ruleset 2001/10/10 19:38:28
@@ -20,6 +20,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Iron Working", "Feudalism", "Construction"
wonder="Magellan's Expedition"
government="Monarchy"
Index: data/nation/dutch.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/dutch.ruleset,v
retrieving revision 1.2
diff -u -r1.2 dutch.ruleset
--- data/nation/dutch.ruleset 2000/07/30 14:07:52 1.2
+++ data/nation/dutch.ruleset 2001/10/10 19:38:28
@@ -15,6 +15,7 @@
expand=2
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Map Making", "The Republic", "Trade", "Navigation",
"Economics", "Democracy"
Index: data/nation/egyptian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/egyptian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 egyptian.ruleset
--- data/nation/egyptian.ruleset 2000/03/21 11:26:17 1.1
+++ data/nation/egyptian.ruleset 2001/10/10 19:38:28
@@ -17,6 +17,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Philosophy", "Navigation", "Iron Working",
"Railroad"
Index: data/nation/english.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/english.ruleset,v
retrieving revision 1.2
diff -u -r1.2 english.ruleset
--- data/nation/english.ruleset 2000/03/21 13:48:53 1.2
+++ data/nation/english.ruleset 2001/10/10 19:38:28
@@ -18,6 +18,7 @@
expand=2
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Chivalry", "Trade", "Theology", "Monotheism",
"Navigation", "Democracy", "Railroad"
Index: data/nation/estonian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/estonian.ruleset,v
retrieving revision 1.2
diff -u -r1.2 estonian.ruleset
--- data/nation/estonian.ruleset 2000/06/30 15:10:54 1.2
+++ data/nation/estonian.ruleset 2001/10/10 19:38:28
@@ -14,6 +14,7 @@
expand=1
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy","Chivalry","The Republic","Democracy","Conscription"
wonder="United Nations"
government = "Democracy"
Index: data/nation/filipino.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/filipino.ruleset,v
retrieving revision 1.1
diff -u -r1.1 filipino.ruleset
--- data/nation/filipino.ruleset 2000/04/16 16:31:41 1.1
+++ data/nation/filipino.ruleset 2001/10/10 19:38:28
@@ -12,6 +12,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Gunpowder", "Democracy"
wonder="Hoover Dam"
government="Communism"
Index: data/nation/finnish.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/finnish.ruleset,v
retrieving revision 1.1
diff -u -r1.1 finnish.ruleset
--- data/nation/finnish.ruleset 2000/03/21 11:26:17 1.1
+++ data/nation/finnish.ruleset 2001/10/10 19:38:29
@@ -19,6 +19,7 @@
expand=0
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Iron Working", "Literacy", "Engineering", "Map Making",
"The Republic", "Metallurgy", "Industrialization", "Electronics",
Index: data/nation/french.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/french.ruleset,v
retrieving revision 1.1
diff -u -r1.1 french.ruleset
--- data/nation/french.ruleset 2000/03/21 11:26:17 1.1
+++ data/nation/french.ruleset 2001/10/10 19:38:29
@@ -16,6 +16,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Chivalry", "Philosophy", "The Republic",
"Monotheism", "Engineering", "Navigation", "Railroad"
Index: data/nation/german.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/german.ruleset,v
retrieving revision 1.5
diff -u -r1.5 german.ruleset
--- data/nation/german.ruleset 2001/01/05 15:43:02 1.5
+++ data/nation/german.ruleset 2001/10/10 19:38:29
@@ -18,6 +18,7 @@
expand=0
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Iron Working", "Gunpowder", "Explosives",
"Flight"
Index: data/nation/greek.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/greek.ruleset,v
retrieving revision 1.1
diff -u -r1.1 greek.ruleset
--- data/nation/greek.ruleset 2000/03/21 11:26:18 1.1
+++ data/nation/greek.ruleset 2001/10/10 19:38:29
@@ -15,6 +15,7 @@
expand=2
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Philosophy", "Trade", "Engineering",
"Iron Working", "Railroad"
wonder="Lighthouse"
Index: data/nation/hungarian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/hungarian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 hungarian.ruleset
--- data/nation/hungarian.ruleset 2000/03/21 11:26:18 1.1
+++ data/nation/hungarian.ruleset 2001/10/10 19:38:29
@@ -12,6 +12,7 @@
expand=0
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Iron Working", "Theology", "Gunpowder",
"Railroad"
wonder="J.S. Bach's Cathedral"
Index: data/nation/inca.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/inca.ruleset,v
retrieving revision 1.1
diff -u -r1.1 inca.ruleset
--- data/nation/inca.ruleset 2000/03/21 11:26:18 1.1
+++ data/nation/inca.ruleset 2001/10/10 19:38:29
@@ -16,6 +16,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy","Chivalry","Philosophy","Monotheism", "Invention"
wonder="Great Wall"
Index: data/nation/indian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/indian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 indian.ruleset
--- data/nation/indian.ruleset 2000/03/21 11:26:19 1.1
+++ data/nation/indian.ruleset 2001/10/10 19:38:29
@@ -16,6 +16,7 @@
expand=0
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Philosophy", "The Republic", "Iron Working",
"Engineering", "Railroad"
wonder="Oracle"
Index: data/nation/irish.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/irish.ruleset,v
retrieving revision 1.1
diff -u -r1.1 irish.ruleset
--- data/nation/irish.ruleset 2000/03/21 13:48:53 1.1
+++ data/nation/irish.ruleset 2001/10/10 19:38:29
@@ -12,6 +12,7 @@
expand=2
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Engineering", "Gunpowder", "Explosives"
wonder = "Marco Polo's Embassy"
government = "Democracy"
Index: data/nation/israeli.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/israeli.ruleset,v
retrieving revision 1.3
diff -u -r1.3 israeli.ruleset
--- data/nation/israeli.ruleset 2001/04/02 21:51:51 1.3
+++ data/nation/israeli.ruleset 2001/10/10 19:38:29
@@ -16,6 +16,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy","Iron Working","Trade","Monotheism","Navigation",
"Railroad","Steel","Industrialization"
Index: data/nation/italian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/italian.ruleset,v
retrieving revision 1.2
diff -u -r1.2 italian.ruleset
--- data/nation/italian.ruleset 2000/07/13 16:05:54 1.2
+++ data/nation/italian.ruleset 2001/10/10 19:38:29
@@ -14,6 +14,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "The Wheel", "Iron Working", "Construction",
"Railroad"
wonder = "Leonardo's Workshop"
Index: data/nation/japanese.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/japanese.ruleset,v
retrieving revision 1.1
diff -u -r1.1 japanese.ruleset
--- data/nation/japanese.ruleset 2000/03/21 11:26:19 1.1
+++ data/nation/japanese.ruleset 2001/10/10 19:38:29
@@ -17,6 +17,7 @@
expand=0
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Philosophy", "The Republic", "Iron Working",
"Engineering", "Railroad"
wonder="Oracle"
Index: data/nation/kenyan.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/kenyan.ruleset,v
retrieving revision 1.1
diff -u -r1.1 kenyan.ruleset
--- data/nation/kenyan.ruleset 2000/03/21 11:26:19 1.1
+++ data/nation/kenyan.ruleset 2001/10/10 19:38:30
@@ -11,6 +11,7 @@
expand = 2
civilized = 1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy","Warrior Code","Iron Working","Navigation"
wonder="Sun Tzu's War Academy"
government="Republic"
Index: data/nation/korean.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/korean.ruleset,v
retrieving revision 1.1
diff -u -r1.1 korean.ruleset
--- data/nation/korean.ruleset 2000/03/21 11:26:19 1.1
+++ data/nation/korean.ruleset 2001/10/10 19:38:30
@@ -12,6 +12,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy","Iron Working","Philosophy","Invention","Gunpowder",
"Railroad","Steel"
Index: data/nation/krevi.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/krevi.ruleset,v
retrieving revision 1.1
diff -u -r1.1 krevi.ruleset
--- data/nation/krevi.ruleset 2000/03/21 11:26:20 1.1
+++ data/nation/krevi.ruleset 2001/10/10 19:38:30
@@ -12,6 +12,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy","Iron Working","Trade","Monotheism","Navigation",
"Railroad","Steel","Industrialization"
Index: data/nation/latvian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/latvian.ruleset,v
retrieving revision 1.2
diff -u -r1.2 latvian.ruleset
--- data/nation/latvian.ruleset 2000/04/23 05:26:27 1.2
+++ data/nation/latvian.ruleset 2001/10/10 19:38:30
@@ -12,6 +12,7 @@
expand=1
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy","Chivalry","Gunpowder","Industrialization"
wonder="Cure For Cancer"
government = "Democracy"
Index: data/nation/lithuanian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/lithuanian.ruleset,v
retrieving revision 1.3
diff -u -r1.3 lithuanian.ruleset
--- data/nation/lithuanian.ruleset 2000/12/02 18:56:33 1.3
+++ data/nation/lithuanian.ruleset 2001/10/10 19:38:30
@@ -15,6 +15,7 @@
expand=1
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy","Chivalry","The Republic","Railroad","Explosives"
wonder="Copernicus' Observatory"
government = "Republic"
Index: data/nation/mongol.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/mongol.ruleset,v
retrieving revision 1.1
diff -u -r1.1 mongol.ruleset
--- data/nation/mongol.ruleset 2000/03/21 11:26:20 1.1
+++ data/nation/mongol.ruleset 2001/10/10 19:38:31
@@ -16,6 +16,7 @@
expand=2
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Chivalry", "Trade", "Bridge Building",
"Railroad"
Index: data/nation/mordor.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/mordor.ruleset,v
retrieving revision 1.1
diff -u -r1.1 mordor.ruleset
--- data/nation/mordor.ruleset 2000/03/21 11:26:21 1.1
+++ data/nation/mordor.ruleset 2001/10/10 19:38:31
@@ -17,6 +17,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Bronze Working", "Iron Working", "Construction"
wonder="Sun Tzu's War Academy"
government="Monarchy"
Index: data/nation/olympic.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/olympic.ruleset,v
retrieving revision 1.2
diff -u -r1.2 olympic.ruleset
--- data/nation/olympic.ruleset 2000/07/07 01:45:26 1.2
+++ data/nation/olympic.ruleset 2001/10/10 19:38:31
@@ -12,6 +12,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy","Philosophy","Invention","Electricity"
wonder="United Nations"
Index: data/nation/persian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/persian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 persian.ruleset
--- data/nation/persian.ruleset 2000/03/21 11:26:21 1.1
+++ data/nation/persian.ruleset 2001/10/10 19:38:31
@@ -16,6 +16,7 @@
expand=2
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Polytheism", "Philosophy", "Trade", "Engineering",
"Iron Working", "Railroad"
wonder="Hanging Gardens"
Index: data/nation/polish.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/polish.ruleset,v
retrieving revision 1.5
diff -u -r1.5 polish.ruleset
--- data/nation/polish.ruleset 2001/07/07 19:19:17 1.5
+++ data/nation/polish.ruleset 2001/10/10 19:38:31
@@ -24,6 +24,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Trade", "Engineering", "Monotheism",
"Gunpowder", "Railroad"
wonder="Copernicus' Observatory"
Index: data/nation/portuguese.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/portuguese.ruleset,v
retrieving revision 1.1
diff -u -r1.1 portuguese.ruleset
--- data/nation/portuguese.ruleset 2000/03/21 11:26:21 1.1
+++ data/nation/portuguese.ruleset 2001/10/10 19:38:31
@@ -16,6 +16,7 @@
expand=2
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Chivalry", "Trade", "Theology", "Navigation",
"The Republic", "Railroad"
wonder="Magellan's Expedition"
Index: data/nation/roman.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/roman.ruleset,v
retrieving revision 1.3
diff -u -r1.3 roman.ruleset
--- data/nation/roman.ruleset 2001/01/20 15:35:58 1.3
+++ data/nation/roman.ruleset 2001/10/10 19:38:32
@@ -17,6 +17,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "The Wheel", "Iron Working", "Construction",
"Railroad"
wonder="Leonardo's Workshop"
Index: data/nation/russian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/russian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 russian.ruleset
--- data/nation/russian.ruleset 2000/03/21 11:26:22 1.1
+++ data/nation/russian.ruleset 2001/10/10 19:38:32
@@ -17,6 +17,7 @@
expand=1
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Philosophy", "Chivalry", "Trade",
"Bridge Building", "Railroad", "Communism"
Index: data/nation/scottish.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/scottish.ruleset,v
retrieving revision 1.4
diff -u -r1.4 scottish.ruleset
--- data/nation/scottish.ruleset 2001/01/20 15:17:21 1.4
+++ data/nation/scottish.ruleset 2001/10/10 19:38:32
@@ -19,6 +19,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy","Iron Working","Trade","Navigation","Railroad","Steel",
"Industrialization"
Index: data/nation/serbian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/serbian.ruleset,v
retrieving revision 1.3
diff -u -r1.3 serbian.ruleset
--- data/nation/serbian.ruleset 2000/09/24 22:47:38 1.3
+++ data/nation/serbian.ruleset 2001/10/10 19:38:32
@@ -22,6 +22,7 @@
expand=0
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="The Republic", "The Wheel", "Iron Working", "Construction",
"Railroad", "Automobile"
Index: data/nation/silesian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/silesian.ruleset,v
retrieving revision 1.2
diff -u -r1.2 silesian.ruleset
--- data/nation/silesian.ruleset 2000/07/27 04:33:03 1.2
+++ data/nation/silesian.ruleset 2001/10/10 19:38:32
@@ -16,6 +16,7 @@
expand=2
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="The Republic", "Trade", "Navigation", "Railroad", "Steel"
wonder="Great Wall" ; Yes, we had own great wall ( iso-8896-2 ("Wa³y ¦l±skie")
)
Index: data/nation/singaporean.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/singaporean.ruleset,v
retrieving revision 1.3
diff -u -r1.3 singaporean.ruleset
--- data/nation/singaporean.ruleset 2000/09/04 12:36:51 1.3
+++ data/nation/singaporean.ruleset 2001/10/10 19:38:32
@@ -34,6 +34,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Iron Working", "Trade", "Monotheism", "Navigation",
"Railroad", "Steel", "Industrialization"
wonder="J.S. Bach's Cathedral"
Index: data/nation/sioux.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/sioux.ruleset,v
retrieving revision 1.1
diff -u -r1.1 sioux.ruleset
--- data/nation/sioux.ruleset 2000/03/21 11:26:22 1.1
+++ data/nation/sioux.ruleset 2001/10/10 19:38:32
@@ -17,6 +17,7 @@
expand=0
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Philosophy", "The Republic", "Iron Working"
wonder="Sun Tzu's War Academy"
government="Republic"
Index: data/nation/slovenian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/slovenian.ruleset,v
retrieving revision 1.2
diff -u -r1.2 slovenian.ruleset
--- data/nation/slovenian.ruleset 2000/09/24 22:33:19 1.2
+++ data/nation/slovenian.ruleset 2001/10/10 19:38:33
@@ -17,6 +17,7 @@
expand=1
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="The Republic", "Trade", "Engineering", "Democracy",
"Railroad", "Explosives", "Automobile"
Index: data/nation/spanish.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/spanish.ruleset,v
retrieving revision 1.2
diff -u -r1.2 spanish.ruleset
--- data/nation/spanish.ruleset 2001/01/03 15:06:26 1.2
+++ data/nation/spanish.ruleset 2001/10/10 19:38:33
@@ -20,6 +20,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Philosophy", "Navigation", "Iron Working",
"Railroad"
wonder="Magellan's Expedition"
Index: data/nation/swedish.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/swedish.ruleset,v
retrieving revision 1.4
diff -u -r1.4 swedish.ruleset
--- data/nation/swedish.ruleset 2000/09/03 12:14:33 1.4
+++ data/nation/swedish.ruleset 2001/10/10 19:38:33
@@ -15,6 +15,7 @@
expand=2
civilized=0
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Map Making", "The Republic", "Trade", "Gunpowder"
wonder="Magellan's Expedition"
Index: data/nation/thai.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/thai.ruleset,v
retrieving revision 1.2
diff -u -r1.2 thai.ruleset
--- data/nation/thai.ruleset 2001/08/09 20:28:13 1.2
+++ data/nation/thai.ruleset 2001/10/10 19:38:33
@@ -14,6 +14,7 @@
expand=2
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "Engineering", "Invention", "Railroad",
"Explosives"
wonder= "Marco Polo's Embassy"
Index: data/nation/turk.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/turk.ruleset,v
retrieving revision 1.2
diff -u -r1.2 turk.ruleset
--- data/nation/turk.ruleset 2001/06/14 19:26:03 1.2
+++ data/nation/turk.ruleset 2001/10/10 19:38:33
@@ -18,6 +18,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Philosophy", "Mathematics", "Chivalry",
"Theology", "Railroad"
Index: data/nation/ukrainian.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/ukrainian.ruleset,v
retrieving revision 1.1
diff -u -r1.1 ukrainian.ruleset
--- data/nation/ukrainian.ruleset 2000/03/21 11:26:23 1.1
+++ data/nation/ukrainian.ruleset 2001/10/10 19:38:33
@@ -15,6 +15,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Chivalry","The Republic","Gunpowder","Leadership","Explosives"
wonder="Sun Tzu's War Academy"
government="Communism"
Index: data/nation/vietnamese.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/vietnamese.ruleset,v
retrieving revision 1.1
diff -u -r1.1 vietnamese.ruleset
--- data/nation/vietnamese.ruleset 2000/03/21 11:26:23 1.1
+++ data/nation/vietnamese.ruleset 2001/10/10 19:38:33
@@ -12,6 +12,7 @@
expand=0
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Feudalism", "The Republic", "Gunpowder", "Explosives",
"Guerilla Warfare"
wonder= "Great Wall"
Index: data/nation/viking.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/viking.ruleset,v
retrieving revision 1.2
diff -u -r1.2 viking.ruleset
--- data/nation/viking.ruleset 2001/08/06 13:22:16 1.2
+++ data/nation/viking.ruleset 2001/10/10 19:38:33
@@ -15,6 +15,7 @@
expand=2
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "The Republic", "The Wheel", "Iron Working", "Construction",
"Railroad"
Index: data/nation/welsh.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/welsh.ruleset,v
retrieving revision 1.1
diff -u -r1.1 welsh.ruleset
--- data/nation/welsh.ruleset 2000/03/21 11:26:24 1.1
+++ data/nation/welsh.ruleset 2001/10/10 19:38:33
@@ -23,6 +23,7 @@
expand=1
civilized=2
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals="Monarchy","Iron Working","Trade","Navigation","Railroad","Steel",
"Industrialization"
Index: data/nation/zulu.ruleset
===================================================================
RCS file: /home/freeciv/CVS/freeciv/data/nation/zulu.ruleset,v
retrieving revision 1.1
diff -u -r1.1 zulu.ruleset
--- data/nation/zulu.ruleset 2000/03/21 11:26:24 1.1
+++ data/nation/zulu.ruleset 2001/10/10 19:38:34
@@ -12,6 +12,7 @@
expand=1
civilized=1
advisors=100,100,100,100,100,100,100
+init_techs=""
tech_goals = "Monarchy", "Philosophy", "Chivalry", "Trade", "Bridge Building",
"Railroad", "Communism"
Index: server/plrhand.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/server/plrhand.c,v
retrieving revision 1.200
diff -u -r1.200 plrhand.c
--- server/plrhand.c 2001/10/08 12:02:08 1.200
+++ server/plrhand.c 2001/10/10 19:38:39
@@ -468,11 +468,20 @@
void init_tech(struct player *plr, int tech)
{
int i;
+ struct nation_type *nation=get_nation_by_plr(plr);
+
for (i=0;i<game.num_tech_types;i++)
set_invention(plr, i, 0);
set_invention(plr, A_NONE, TECH_KNOWN);
plr->research.researchpoints=1;
+ for (i=0; game.rgame.global_init_techs[i] != A_LAST; i++) {
+ set_invention(plr, game.rgame.global_init_techs[i], TECH_KNOWN);
+ }
+ for (i=0; nation->init_techs[i] != A_LAST; i++) {
+ set_invention(plr, nation->init_techs[i], TECH_KNOWN);
+ }
+
for (i=0;i<tech;i++) {
choose_random_tech(plr); /* could be choose_goal_tech -- Syela */
set_invention(plr, plr->research.researching, TECH_KNOWN);
Index: server/ruleset.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/server/ruleset.c,v
retrieving revision 1.80
diff -u -r1.80 ruleset.c
--- server/ruleset.c 2001/09/15 15:31:27 1.80
+++ server/ruleset.c 2001/10/10 19:38:46
@@ -1937,6 +1937,10 @@
pl->advisors[j] = res[j];
if(res) free(res);
+ /* Init techs */
+
+ lookup_tech_list(file,sec[i],"init_techs",pl->init_techs,filename);
+
/* AI techs */
techs = secfile_lookup_str_vec(file, &dim, "%s.tech_goals", sec[i]);
@@ -2184,6 +2188,10 @@
game.rgame.granary_food_inc = 100;
}
+ lookup_tech_list(&file,"options","global_init_techs",
+ game.rgame.global_init_techs,
+ filename);
+
section_file_check_unused(&file, filename);
section_file_free(&file);
}
@@ -2456,6 +2464,10 @@
packet.leader_sex[i] = n->leader_is_male[i];
}
packet.city_style = n->city_style;
+ for (i = 0; n->init_techs[i] != A_LAST; i++) {
+ packet.init_techs[i] = n->init_techs[i];
+ }
+ packet.init_techs[i+1] = A_LAST; /* A_LAST terminate */
lsend_packet_ruleset_nation(dest, &packet);
}
@@ -2490,6 +2502,7 @@
static void send_ruleset_game(struct conn_list *dest)
{
struct packet_ruleset_game misc_p;
+ int i;
misc_p.min_city_center_food = game.rgame.min_city_center_food;
misc_p.min_city_center_shield = game.rgame.min_city_center_shield;
@@ -2501,6 +2514,10 @@
misc_p.nuke_contamination = game.rgame.nuke_contamination;
misc_p.granary_food_ini = game.rgame.granary_food_ini;
misc_p.granary_food_inc = game.rgame.granary_food_inc;
+ for (i = 0; game.rgame.global_init_techs[i] != A_LAST; i++) {
+ misc_p.init_techs[i] = game.rgame.global_init_techs[i];
+ }
+ misc_p.init_techs[i+1] = A_LAST; /* A_LAST terminate */
lsend_packet_ruleset_game(dest, &misc_p);
}
@@ -2514,7 +2531,6 @@
struct section_file cityfile, nationfile;
freelog(LOG_NORMAL, _("Loading rulesets"));
- load_ruleset_game(game.ruleset.game);
openload_ruleset_file(&techfile, game.ruleset.techs, "techs");
load_tech_names(&techfile);
@@ -2544,6 +2560,7 @@
load_ruleset_terrain(&terrfile);
load_ruleset_buildings(&buildfile);
load_ruleset_nations(&nationfile);
+ load_ruleset_game(game.ruleset.game);
translate_data_names();
}
- [Freeciv-Dev] init_techs integrated patch (PR#999), Arien Malec, 2001/10/09
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999), Raimar Falke, 2001/10/09
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999), Arien Malec, 2001/10/09
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999), Raimar Falke, 2001/10/09
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999),
Arien Malec <=
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999), Raimar Falke, 2001/10/11
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999), Arien Malec, 2001/10/11
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999), Raimar Falke, 2001/10/11
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999), Arien Malec, 2001/10/11
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999), Raimar Falke, 2001/10/11
- [Freeciv-Dev] Re: init_techs integrated patch (PR#999), Arien Malec, 2001/10/11
|
|