#!/bin/sh # this is Part.02 (part 2 of a multipart archive) # do not concatenate these parts, unpack them in order with /bin/sh # file patches11 continued # if test ! -r _shar_seq_.tmp; then echo 'Please unpack part 1 first!' exit 1 fi (read Scheck if test "$Scheck" != 2; then echo Please unpack part "$Scheck" next! exit 1 else exit 0 fi ) < _shar_seq_.tmp || exit 1 if test -f _shar_wnt_.tmp; then sed 's/^X//' << 'SHAR_EOF' >> 'patches11' && X int choice, direct; X int valid=TRUE; /*valid==FALSE means continue loop*/ X int temp,ypos,xpos; --- 343,354 ---- X } X X void ! newlogin(realuser) ! int realuser; X { X /* use points to create empire, add if late starter*/ X int points, clr; + int pccount; X int choice, direct; X int valid=TRUE; /*valid==FALSE means continue loop*/ X int temp,ypos,xpos; *************** *** 360,377 **** X X /*find valid nation number type*/ X country=0; ! for(i=1;i=NTOTAL-REVSPACE)) { X newerror("No more nations available"); X newreset(); X return; *************** *** 862,873 **** --- 884,900 ---- X place(-1,-1); X newerror("Ok, Your Nation has been Added to the World"); X att_setup(country); /* setup values ntn attributes */ + #ifdef CHECKUSER + curntn->uid = realuser; + #endif X fclose(fexe); + pccount++; X sprintf(tempc,"NOTICE: Nation %s added to world on turn %d\n",curntn->name,TURN); X mailtopc(tempc); X /* cannot clear until after placement and initializing */ X curntn->powers=0; X } + #ifndef CHECKUSER X country=0; X for(i=1;i=NTOTAL-REVSPACE)) { X newmsg("Do you wish to Add another Nation? [ny]"); X if (getch()!='y') more = FALSE; X else more = TRUE; *************** *** 882,887 **** --- 909,917 ---- X more = FALSE; X newerror("No More Available Nations"); X } + #else + more = FALSE; + #endif X } X newreset(); X att_base(); /* calculate base nation attributes */ diff -cr ../oldconq4/notes.v4 ./notes.v4 *** ../oldconq4/notes.v4 Thu Jul 9 19:29:32 1992 --- ./notes.v4 Thu Jul 9 18:38:45 1992 *************** *** 391,396 **** --- 391,422 ---- X 324. put a 500 men cap on the amount needed to capture a sector. X 325. added in a query as to how much purchase should be made from God trades. X 326. made sure to close the commerce file before removing it. + ===4.0 patch number ten released => 4.11 ==(spide)==================== + WARNING: This patch may require re-creation of any worlds from scratch + (not compatible with worlds created under 4.10 if CHECKUSER set) + -spide (mcy1580@ultb.isc.rit.edu) + 327. added LASTADD + o the last turn that players may add w/o the god password + 328. added CHECKUSER to enable uid locking on nations + o checks the uid of the player against the one who + created the nation - to prevent a player from creating + two nations and using one to take over another. + 329. added USERLOG to turn on logging of game/nation usage + o sorta useful info - creates a .userlog file + 330. added MASK/umask in admin.c to allow group read/write as well + o so people in same group (games) could look at files + 331. added REVSPACE to be able to leave room in nation list for revolts + o allow space in nation list for revolts - to discourage + players from setting take rate to 20% when no room for + revolts - leaves room at the beginning of game for them. + 332. modified spell sector effect to be 1 pt / 1000 people as documented + o something we wanted + 333. added -l (-ngod) option so god can list owners of nations (CHECKUSER) + added -u (-nNATION) option so god can modify owner of nations (CHECKUSER) + o necesary tools to go w/ CHECKUSER + o requires/uses god password + 334. made the CHECKUSER option change data structure only if enabled. + 335. changed all "#endif FOO" statements to "#endif /* FOO */". X X ------------------------------------------------------------------------- X | 2.0 POSSIBLE SHORT-TERM ENHANCEMENTS/FIXES FOR CONQUER V5 | *************** *** 1209,1212 **** X 415) cleaned up location adding in newlogin.c X 416) can now go to war with peasants. X 417) added revolt percent chance to change screen - --- 1235,1237 ---- diff -cr ../oldconq4/npc.c ./npc.c *** ../oldconq4/npc.c Thu Jul 9 19:26:29 1992 --- ./npc.c Thu Jul 9 18:21:21 1992 *************** *** 86,92 **** X } X printf("\n"); X } ! #endif DEBUG X } X X /*newdip() diplomacy if unmet - ntn 1 is nation you are updating*/ --- 86,92 ---- X } X printf("\n"); X } ! #endif /* DEBUG */ X } X X /*newdip() diplomacy if unmet - ntn 1 is nation you are updating*/ *************** *** 170,176 **** X X #ifdef DEBUG X printf("monsters: need %d have %d\n",neededtroops,actualtroops); ! #endif DEBUG X X neededtroops= neededtroops-actualtroops; X --- 170,176 ---- X X #ifdef DEBUG X printf("monsters: need %d have %d\n",neededtroops,actualtroops); ! #endif /* DEBUG */ X X neededtroops= neededtroops-actualtroops; X *************** *** 178,184 **** X { X #ifdef DEBUG X printf("\t need %d monster troops\n",neededtroops); ! #endif X if ( (rand()%8)<5 && nomad_space) X { X while(!is_habitable((x=(rand()%(MAPX-8))+4), --- 178,184 ---- X { X #ifdef DEBUG X printf("\t need %d monster troops\n",neededtroops); ! #endif /* */ X if ( (rand()%8)<5 && nomad_space) X { X while(!is_habitable((x=(rand()%(MAPX-8))+4), *************** *** 272,278 **** X P_ASOLD=0; X break; X } ! /* nomads cant stay in the same spot */ X if(( x==P_AXLOC && y==P_AYLOC ) X ||(!ONMAP(x,y) X ||(!is_habitable(x,y))) --- 272,278 ---- X P_ASOLD=0; X break; X } ! /* nomads cannot stay in the same spot */ X if(( x==P_AXLOC && y==P_AYLOC ) X ||(!ONMAP(x,y) X ||(!is_habitable(x,y))) *************** *** 384,390 **** X #endif /* MORE_MONST */ X } X } ! #endif MONSTER X X #ifdef NPC X void --- 384,390 ---- X #endif /* MORE_MONST */ X } X } ! #endif /* MONSTER */ X X #ifdef NPC X void *************** *** 507,513 **** X ||(sct[P_AXLOC][P_AYLOC].owner!=country)){ X #ifdef DEBUG X printf("\teliminating %s army %d as %d %d is des:%c alt:%c own:%d\n",unittype[P_ATYPE],armynum,P_AXLOC,P_AYLOC,sct[P_AXLOC][P_AYLOC].designation,sct[P_AXLOC][P_AYLOC].altitude,sct[P_AXLOC][P_AYLOC].owner); ! #endif DEBUG X if(sct[P_AXLOC][P_AYLOC].owner == country) X sct[P_AXLOC][P_AYLOC].people+=P_ASOLD; X else sct[curntn->capx][curntn->capy].people+=P_ASOLD; --- 507,513 ---- X ||(sct[P_AXLOC][P_AYLOC].owner!=country)){ X #ifdef DEBUG X printf("\teliminating %s army %d as %d %d is des:%c alt:%c own:%d\n",unittype[P_ATYPE],armynum,P_AXLOC,P_AYLOC,sct[P_AXLOC][P_AYLOC].designation,sct[P_AXLOC][P_AYLOC].altitude,sct[P_AXLOC][P_AYLOC].owner); ! #endif /* DEBUG */ X if(sct[P_AXLOC][P_AYLOC].owner == country) X sct[P_AXLOC][P_AYLOC].people+=P_ASOLD; X else sct[curntn->capx][curntn->capy].people+=P_ASOLD; *************** *** 552,558 **** X else if(peace==12) X printf("\t%s IS AT WAR - garrison in cap is %d, ideal is %ld\n",curntn->name,P_ASOLD,ideal); X else printf("error - incap is %d ideal is %ld\n",P_ASOLD,ideal); ! #endif DEBUG X X /*MILRATIO ratio mil:civ for non player countries*/ X /*MILINCAP ratio (mil in cap):mil for NPCs*/ --- 552,558 ---- X else if(peace==12) X printf("\t%s IS AT WAR - garrison in cap is %d, ideal is %ld\n",curntn->name,P_ASOLD,ideal); X else printf("error - incap is %d ideal is %ld\n",P_ASOLD,ideal); ! #endif /* DEBUG */ X X /*MILRATIO ratio mil:civ for non player countries*/ X /*MILINCAP ratio (mil in cap):mil for NPCs*/ *************** *** 572,578 **** X X #ifdef DEBUG X printf("\tadding %d men to garrison (too few men on garrison)\n",diff); ! #endif DEBUG X X sct[curntn->capx][curntn->capy].people-=diff; X P_ASOLD+=diff; --- 572,578 ---- X X #ifdef DEBUG X printf("\tadding %d men to garrison (too few men on garrison)\n",diff); ! #endif /* DEBUG */ X X sct[curntn->capx][curntn->capy].people-=diff; X P_ASOLD+=diff; *************** *** 584,590 **** X curntn->metals-=(diff* *(u_enmetal + (P_ATYPE%UTYPE))); X #ifdef DEBUG X if(P_ASOLD < 0L) printf("error 2... P_ASOLD=%d <0\n",P_ASOLD); ! #endif DEBUG X } X /*else split garrison army if 1.25* needed number*/ X else if(P_ASOLD *4L > 5L*ideal){ --- 584,590 ---- X curntn->metals-=(diff* *(u_enmetal + (P_ATYPE%UTYPE))); X #ifdef DEBUG X if(P_ASOLD < 0L) printf("error 2... P_ASOLD=%d <0\n",P_ASOLD); ! #endif /* DEBUG */ X } X /*else split garrison army if 1.25* needed number*/ X else if(P_ASOLD *4L > 5L*ideal){ *************** *** 592,603 **** X diff=((4L*P_ASOLD)-(5L*ideal))/4L; X #ifdef DEBUG X printf("\tsplit garrison of %d men\n",diff); ! #endif DEBUG X free=FALSE; X P_ASOLD-=diff; X #ifdef DEBUG X if(P_ASOLD < 0) printf("error... subtracting %d from %d\n",diff,P_ASOLD); ! #endif DEBUG X curntn->tmil-=diff; X curntn->tciv+=diff; X sct[curntn->capx][curntn->capy].people+=diff; --- 592,603 ---- X diff=((4L*P_ASOLD)-(5L*ideal))/4L; X #ifdef DEBUG X printf("\tsplit garrison of %d men\n",diff); ! #endif /* DEBUG */ X free=FALSE; X P_ASOLD-=diff; X #ifdef DEBUG X if(P_ASOLD < 0) printf("error... subtracting %d from %d\n",diff,P_ASOLD); ! #endif /* DEBUG */ X curntn->tmil-=diff; X curntn->tciv+=diff; X sct[curntn->capx][curntn->capy].people+=diff; *************** *** 610,616 **** X #ifdef DEBUG X else printf("\tno action - P_ASOLD (%d) ~= ideal (%d)\n",P_ASOLD,ideal); X printf("\tFinal Garrison Army %d (%s) type is %s men is %d\n",armynum,curntn->name,*(unittype+(P_ATYPE)),P_ASOLD); ! #endif DEBUG X X /*build ships and/or armies*/ X done=FALSE; --- 610,616 ---- X #ifdef DEBUG X else printf("\tno action - P_ASOLD (%d) ~= ideal (%d)\n",P_ASOLD,ideal); X printf("\tFinal Garrison Army %d (%s) type is %s men is %d\n",armynum,curntn->name,*(unittype+(P_ATYPE)),P_ASOLD); ! #endif /* DEBUG */ X X /*build ships and/or armies*/ X done=FALSE; *************** *** 618,624 **** X if(curntn->tgold<0) { ideal*=4; ideal/=5; } X #ifdef DEBUG X printf("\t%s total military is %d -> ideal is %d\n",curntn->name,curntn->tmil,ideal); ! #endif DEBUG X check(); X X /* find leader and place on RULE in capitol */ --- 618,624 ---- X if(curntn->tgold<0) { ideal*=4; ideal/=5; } X #ifdef DEBUG X printf("\t%s total military is %d -> ideal is %d\n",curntn->name,curntn->tmil,ideal); ! #endif /* DEBUG */ X check(); X X /* find leader and place on RULE in capitol */ *************** *** 642,648 **** X &&( sct[P_AXLOC][P_AYLOC].owner == country )) { X #ifdef DEBUG X printf("\tadding %d men to weakened army %d\n",TAKESECTOR+20-P_ASOLD,armynum); ! #endif DEBUG X if(magic(country,WARRIOR)==TRUE) /* WARRIOR power */ X curntn->tgold-=((TAKESECTOR+20-P_ASOLD)* X *(u_encost + (P_ATYPE%UTYPE))) / 2; --- 642,648 ---- X &&( sct[P_AXLOC][P_AYLOC].owner == country )) { X #ifdef DEBUG X printf("\tadding %d men to weakened army %d\n",TAKESECTOR+20-P_ASOLD,armynum); ! #endif /* DEBUG */ X if(magic(country,WARRIOR)==TRUE) /* WARRIOR power */ X curntn->tgold-=((TAKESECTOR+20-P_ASOLD)* X *(u_encost + (P_ATYPE%UTYPE))) / 2; *************** *** 666,672 **** X if(P_ASOLD>0){ X #ifdef DEBUG X printf("\tnot enough soldiers - build new army %d with %d men\n",armynum,P_ASOLD); ! #endif DEBUG X curntn->metals-=(P_ASOLD* *(u_enmetal + (P_ATYPE%UTYPE))); X P_AXLOC= curntn->capx; X P_AYLOC= curntn->capy; --- 666,672 ---- X if(P_ASOLD>0){ X #ifdef DEBUG X printf("\tnot enough soldiers - build new army %d with %d men\n",armynum,P_ASOLD); ! #endif /* DEBUG */ X curntn->metals-=(P_ASOLD* *(u_enmetal + (P_ATYPE%UTYPE))); X P_AXLOC= curntn->capx; X P_AYLOC= curntn->capy; *************** *** 701,707 **** X ||(ISCITY(sct[P_AXLOC][P_AYLOC].designation)))){ X #ifdef DEBUG X printf("\ttoo many soldiers eliminate army %d (%d men)\n",armynum,P_ASOLD); ! #endif DEBUG X diff-=P_ASOLD; X sct[P_AXLOC][P_AYLOC].people+=P_ASOLD; X curntn->tmil -= P_ASOLD; --- 701,707 ---- X ||(ISCITY(sct[P_AXLOC][P_AYLOC].designation)))){ X #ifdef DEBUG X printf("\ttoo many soldiers eliminate army %d (%d men)\n",armynum,P_ASOLD); ! #endif /* DEBUG */ X diff-=P_ASOLD; X sct[P_AXLOC][P_AYLOC].people+=P_ASOLD; X curntn->tmil -= P_ASOLD; *************** *** 714,720 **** X check(); X #ifdef DEBUG X printf("\twhew... new tmil is %d\n",curntn->tmil); ! #endif DEBUG X X /*resize armies */ X for(armynum=1;armynumtmil); ! #endif /* DEBUG */ X X /*resize armies */ X for(armynum=1;armynumarm[i].sold = P_ASOLD; X curntn->arm[i].unittyp = P_ATYPE; X curntn->arm[i].smove = P_AMOVE; --- 730,736 ---- X #ifdef DEBUG X printf("\tSplitting %ld troops from army %d forming %s army %d \n" X ,P_ASOLD,armynum,unittype[P_ATYPE],i); ! #endif /* DEBUG */ X curntn->arm[i].sold = P_ASOLD; X curntn->arm[i].unittyp = P_ATYPE; X curntn->arm[i].smove = P_AMOVE; *************** *** 758,764 **** X #ifdef DEBUG X printf("\tMerge %ld men from army %d to make %ld troops in %s army %d \n" X ,P_ASOLD,armynum,curntn->arm[i].sold,unittype[P_ATYPE],i); ! #endif DEBUG X P_ASOLD=0; X } X --- 758,764 ---- X #ifdef DEBUG X printf("\tMerge %ld men from army %d to make %ld troops in %s army %d \n" X ,P_ASOLD,armynum,curntn->arm[i].sold,unittype[P_ATYPE],i); ! #endif /* DEBUG */ X P_ASOLD=0; X } X *************** *** 809,815 **** X #ifdef DEBUG X printf("\tnow in sector %d,%d\n",x,y); X printf("\tadding %ld troops to %s army %d (now %ld men - populace %ld)\n",ideal-P_ASOLD,unittype[P_ATYPE%UTYPE],armynum,ideal,sct[x][y].people); ! #endif DEBUG X P_ASOLD=ideal; X P_ASTAT=MILITIA; X } --- 809,815 ---- X #ifdef DEBUG X printf("\tnow in sector %d,%d\n",x,y); X printf("\tadding %ld troops to %s army %d (now %ld men - populace %ld)\n",ideal-P_ASOLD,unittype[P_ATYPE%UTYPE],armynum,ideal,sct[x][y].people); ! #endif /* DEBUG */ X P_ASOLD=ideal; X P_ASTAT=MILITIA; X } *************** *** 1086,1092 **** X } X } X } ! #endif SPEW X /*move units */ X /*are they at war with any normal countries*/ X peace=0; --- 1086,1092 ---- X } X } X } ! #endif /* SPEW */ X /*move units */ X /*are they at war with any normal countries*/ X peace=0; *************** *** 1182,1188 **** X for(loop=1;loop<5;loop++) { X #ifdef DEBUG X printf("\tnpcredes(): country %s gold=%d metal=%d, city=%d hunger=%f\n",curntn->name,goldthresh,metalthresh,citythresh,hunger); ! #endif DEBUG X X useful=FALSE; X for(x=stx;xname,goldthresh,metalthresh,citythresh,hunger); ! #endif /* DEBUG */ X X useful=FALSE; X for(x=stx;x/dev/null X X # This should be installed by whomever you want to own the game. X # I recommend "games" or "root". X X #if the final link does not compile change to the line below ! #LIBRARIES = -lcurses -ltermcap ! LIBRARIES = -lcurses X X # this is the name of the user executable ! # the user executable contains commands for the games players ! GAME = conquer X # this is the name of the administrative executable ! # the administrative executable contains commands for the game super user X ADMIN = conqrun X ! # This directory is where the executables will be stored ! # This would be the equivalent of /usr/games ! EXEDIR = /c28/smile/game/runv ! ! # GAME IDENTIFICATION ! # GAMEID is the game identifier ! # DATA is the directory where an individual Conquer game data will be ! # stored. It is the directory you use in the -d option of the game. ! # "make new_game" will build a world in that directory. The current ! # game will be automatically executed upon login (no need for -d) ! # but if other games are compiled, you need to use -d (ie. the ! # game automatically looks at the DATA directory it was compiled with. X GAMEID = 1 ! DATA = $(EXEDIR)/lib$(GAMEID) X ! # The following CFLAGS should be set by a normal user ! CFLAGS = -DDEFAULTDIR=\"$(DATA)\" -O -s -DEXEDIR=\"$(EXEDIR)\" ! # The following CFLAGS should be used if you wish to debug the game ! #CFLAGS = -DDEFAULTDIR=\"$(DATA)\" -DDEBUG -g -DEXEDIR=\"$(EXEDIR)\" X X # AFILS are files needed for game updating... ! AFILS = combat.c cexecute.c io.c admin.c makeworl.c navy.c spew.c \ X newlogin.c update.c magic.c npc.c misc.c randeven.c data.c trade.c check.c ! AOBJS = combat.o cexecuteA.o ioA.o admin.o makeworl.o navyA.o \ X newlogin.o update.o magicA.o npc.o miscA.o randeven.o dataA.o \ ! tradeA.o check.o $(GETOPT) spew.o X X # GFILS are files needed to run a normal interactive game X GFILS = commands.c cexecute.c forms.c io.c main.c move.c navy.c \ X magic.c misc.c reports.c data.c display.c extcmds.c trade.c check.c ! GOBJS = commands.o cexecute.o forms.o io.o main.o move.o navy.o \ ! magic.o misc.o reports.o data.o display.o extcmds.o trade.o check.o $(GETOPT) X ! #txt[0-5] are input help files. help[0-5] are output ! HELP0=txt0 ! HELP1=txt1 ! HELP2=txt2 ! HELP3=txt3 ! HELP4=txt4 ! HELP5=txt5 X HELPOUT=help X X HEADERS=header.h data.h newlogin.h patchlevel.h ! HELPFILES= $(HELP0) $(HELP1) $(HELP2) $(HELP3) $(HELP4) $(HELP5) ! ALLFILS=$(HEADERS) $(AFILS) commands.c forms.c main.c move.c \ ! reports.c display.c extcmds.c $(HELPFILES) nations Makefile README \ ! run man.pag notes.v4 rules sort.c newhelp.c X ! all: $(ADMIN) $(GAME) helpfile conqsort X @echo YAY! make new_game to set up permissions, zero appropriate ! @echo initial files, move $(GAME) and $(ADMIN) to X @echo $(EXEDIR), and set up the world. ! @echo If a game is in progress, make install will just move $(GAME) X @echo and $(ADMIN) to $(EXEDIR). X @echo X X $(ADMIN): $(AOBJS) X @echo phew... ! @echo if the next command does not compile, you might also need -ltermcap X @echo === compiling administrative functions ! $(CC) -p -o $(ADMIN) $(AOBJS) $(LIBRARIES) X X $(GAME): $(GOBJS) ! @echo phew... ! @echo if the next command does not compile, you might also need -ltermcap X @echo === compiling user interface ! $(CC) -O -o $(GAME) $(GOBJS) $(LIBRARIES) X ! conqsort: ! $(CC) -O -oconqsort sort.c X X clobber: ! $(RM) *.o core newhelp sed.1 sed.2 lint* \ ! conquer.doc $(GAME) $(ADMIN) $(HELPOUT)[0-5] 2>/dev/null X X clean: ! $(RM) *.o core conquer.doc sed.1 sed.2 newhelp $(HELPOUT)[0-5] 2>/dev/null X ! install: all ! -$(LN) $(GAME) $(EXEDIR)/$(GAME) $(NULL) ! -$(LN) $(ADMIN) $(EXEDIR)/$(ADMIN) $(NULL) ! -$(LN) conqsort $(EXEDIR)/conqsort $(NULL) ! chmod 4755 $(EXEDIR)/$(GAME) ! chmod 4750 $(EXEDIR)/$(ADMIN) ! $(CP) conqsort nations rules $(HELPOUT)? $(DATA) $(NULL) X ! new_game: all ! @echo Installing new game in $(EXEDIR) ! -mkdir $(EXEDIR) 2>/dev/null X chmod 755 $(EXEDIR) ! -$(LN) $(GAME) $(EXEDIR)/$(GAME) $(NULL) ! -$(LN) $(ADMIN) $(EXEDIR)/$(ADMIN) $(NULL) ! chmod 4755 $(EXEDIR)/$(GAME) ! chmod 4750 $(EXEDIR)/$(ADMIN) ! chmod 0700 run ! @echo Copying data to library $(DATA) ! -mkdir $(DATA) 2>/dev/null ! chmod 751 $(DATA) X chmod 0600 nations ! $(CP) nations rules $(HELPOUT)? $(DATA) $(NULL) X @echo now making the world X $(EXEDIR)/$(ADMIN) -d$(DATA) -m X $(EXEDIR)/$(ADMIN) -d$(DATA) -a X ! helpfile: $(HELPOUT)0 X @echo Helpfiles built X ! $(HELPOUT)0: newhelp $(HELPFILES) ! @echo Building the help files X newhelp - cat $(HELP0) | sed -f sed.1 > $(HELPOUT)0 - cat $(HELP1) | sed -f sed.1 | sed -f sed.2 > $(HELPOUT)1 - cat $(HELP2) | sed -f sed.1 > $(HELPOUT)2 - cat $(HELP3) | sed -f sed.1 | sed -f sed.2 > $(HELPOUT)3 - cat $(HELP4) | sed -f sed.1 > $(HELPOUT)4 - cat $(HELP5) | sed -f sed.1 > $(HELPOUT)5 - chmod 0644 $(HELPOUT)[0-5] - -$(RM) sed.1 sed.2 X X lint: ! lint -DDEFAULTDIR=\"$(DATA)\" -DEXEDIR=\"$(EXEDIR)\" -DCONQUER $(GFILS) $(LIBRARIES)> lintg ! lint -DDEFAULTDIR=\"$(DATA)\" -DEXEDIR=\"$(EXEDIR)\" -DADMIN $(AFILS) $(LIBRARIES) > linta X ! docs: helpfile conquer.doc X X conquer.doc: $(HELPOUT)0 $(HELPOUT)1 $(HELPOUT)2 $(HELPOUT)3 $(HELPOUT)4 $(HELPOUT)5 ! cat $(HELPOUT)?|sed -e "s/^DONE/ /g"|sed -e "s/^END//g" > conquer.doc X ! shar: X echo " lines words chars FILENAME" > MANIFEST X wc $(ALLFILS) >> MANIFEST ! $(HOME)/src/xshar/xshar -D -c -l64 -oshar -v $(ALLFILS) X ! combat.o: data.h header.h combat.c ! $(CC) $(CFLAGS) -DADMIN -c combat.c ! cexecute.o: data.h header.h cexecute.c ! $(CC) $(CFLAGS) -DCONQUER -c cexecute.c ! io.o: data.h header.h io.c ! $(CC) $(CFLAGS) -DCONQUER -c io.c ! cexecuteA.o: data.h header.h cexecute.c ! $(CC) $(CFLAGS) -DADMIN -c cexecute.c ! mv cexecute.o cexecuteA.o ! ioA.o: data.h header.h io.c ! $(CC) $(CFLAGS) -DADMIN -c io.c ! mv io.o ioA.o ! admin.o: data.h header.h admin.c ! $(CC) $(CFLAGS) -DADMIN -c admin.c ! makeworl.o: data.h header.h makeworl.c ! $(CC) $(CFLAGS) -DADMIN -c makeworl.c ! newlogin.o: data.h header.h newlogin.h newlogin.c ! $(CC) $(CFLAGS) -DADMIN -c newlogin.c ! update.o: data.h header.h update.c ! $(CC) $(CFLAGS) -DADMIN -c update.c ! magic.o: data.h header.h magic.c ! $(CC) $(CFLAGS) -DCONQUER -c magic.c ! magicA.o: data.h header.h magic.c ! $(CC) $(CFLAGS) -DADMIN -c magic.c ! mv magic.o magicA.o ! npc.o: data.h header.h npc.c ! $(CC) $(CFLAGS) -DADMIN -c npc.c ! misc.o: data.h header.h misc.c ! $(CC) $(CFLAGS) -DCONQUER -c misc.c ! miscA.o: data.h header.h misc.c ! $(CC) $(CFLAGS) -DADMIN -c misc.c ! mv misc.o miscA.o ! randeven.o: data.h header.h randeven.c ! $(CC) $(CFLAGS) -DADMIN -c randeven.c ! data.o: data.h header.h data.c ! $(CC) $(CFLAGS) -DCONQUER -c data.c ! dataA.o: data.h header.h data.c ! $(CC) $(CFLAGS) -DADMIN -c data.c ! mv data.o dataA.o ! display.o: data.h header.h display.c ! $(CC) $(CFLAGS) -DCONQUER -c display.c ! reports.o: data.h header.h reports.c ! $(CC) $(CFLAGS) -DCONQUER -c reports.c ! move.o: data.h header.h move.c ! $(CC) $(CFLAGS) -DCONQUER -c move.c ! main.o: data.h header.h main.c ! $(CC) $(CFLAGS) -DCONQUER -c main.c ! forms.o: data.h header.h forms.c ! $(CC) $(CFLAGS) -DCONQUER -c forms.c ! commands.o: data.h header.h commands.c ! $(CC) $(CFLAGS) -DCONQUER -c commands.c ! check.o: data.h header.h check.c ! $(CC) $(CFLAGS) -c check.c ! trade.o: data.h header.h trade.c ! $(CC) $(CFLAGS) -DCONQUER -c trade.c ! tradeA.o: data.h header.h trade.c ! $(CC) $(CFLAGS) -DADMIN -c trade.c ! mv trade.o tradeA.o ! navyA.o: data.h header.h navy.c ! $(CC) $(CFLAGS) -DADMIN -c navy.c ! mv navy.o navyA.o ! navy.o: data.h header.h trade.c ! $(CC) $(CFLAGS) -DCONQUER -c navy.c ! newhelp: data.o header.h data.h newhelp.c ! @echo Compiling the help program ! $(CC) $(CFLAGS) newhelp.c data.o -o newhelp --- 21,275 ---- X CP = cp X NULL = 2>/dev/null X + # Flags to lint + LTFLG = -h -lcurses + + # Options for shar program, SHARLIM is limit of each shar + # file created in kilobytes and SHARNAM is the prefix for + # SHARFILE name. + # [This is for a public domain shar from USENET, I can send + # copies if you wish - adb@bu-cs.bu.edu] + SHAR = xshar + SHARLIM = 50 + SHARNAM = shar. + SHARFLG = -D -c -l$(SHARLIM) -o$(SHARNAM) + X # This should be installed by whomever you want to own the game. X # I recommend "games" or "root". X + # uncomment the next line if you dont have getopt in your library + # (eg you are on a pc, or a non unix system). getopt.c is a + # public domain software, and has not been tested by the authors + # of conquer. + #GETOPT = getopt.o + X #if the final link does not compile change to the line below ! LIBRARIES = -lcurses -ltermcap ! #LIBRARIES = -lcurses X + # DEFAULT is the directory where default nations & help files will be + # stored. It is also the default directory = where players will play + # if they do not use the -d option. + DEFAULT = /usr4/acm/stud/adb/games/conqlib + + # This directory is where the executables will be stored + EXEDIR = /usr4/acm/stud/adb/games + + # Definitions used for compiling conquer + CDEFS = -DDEFAULTDIR=\"$(DEFAULT)\" -DEXEDIR=\"$(EXEDIR)\" + + # Options flag used for non-debugging purposes + OPTFLG = -O + + # Options flag used for debugging purposes + # [make sure to comment out 'strip' commands in install section] + #OPTFLG = -DDEBUG -g + X # this is the name of the user executable ! # the user executable contains commands for the games players ! GAME = conquer X # this is the name of the administrative executable ! # the administrative executable contains commands for the game super user X ADMIN = conqrun + # this is the name of the sorting program which conquer uses + SORT = conqsort X ! # GAME IDENTIFICATION ! # this is the game identifier. See the DATA variable below X GAMEID = 1 ! # This directory is where individual Conquer game data will be stored. ! # As multiple simultaneous games are supported, each game must have its ! # own directory. ! DATA = $(DEFAULT)/$(GAMEID) X ! # Suffixes for conquer files. ! .SUFFIXES: A.o G.o X X # AFILS are files needed for game updating... ! AFILS = combat.c cexecute.c io.c admin.c makeworl.c navy.c spew.c \ X newlogin.c update.c magic.c npc.c misc.c randeven.c data.c trade.c check.c ! AOBJS = combat.o cexecuteA.o ioA.o admin.o makeworl.o navyA.o spew.o \ X newlogin.o update.o magicA.o npc.o miscA.o randeven.o dataA.o \ ! tradeA.o $(GETOPT) check.o X X # GFILS are files needed to run a normal interactive game X GFILS = commands.c cexecute.c forms.c io.c main.c move.c navy.c \ X magic.c misc.c reports.c data.c display.c extcmds.c trade.c check.c ! GOBJS = commands.o cexecuteG.o forms.o ioG.o main.o move.o navyG.o \ ! magicG.o miscG.o reports.o dataG.o display.o extcmds.o tradeG.o \ ! $(GETOPT) check.o X ! #txt[0-4] are input help files. help[0-4] are output. HELPSCR is sed script. ! HELP=txt X HELPOUT=help + HELPSCR=sed X X HEADERS=header.h data.h newlogin.h patchlevel.h ! SUPT1=nations Makefile $(HELP)[0-5] README run man.page rules ! SUPT2=execute messages news commerce ! ALLFILS=$(SUPT1) $(HEADERS) $(AFILS) commands.c forms.c main.c move.c \ ! reports.c display.c extcmds.c newhelp.c sort.c getopt.c X ! all: $(ADMIN) $(GAME) $(SORT) helpfile X @echo YAY! make new_game to set up permissions, zero appropriate ! @echo initial files, move $(GAME) and $(ADMIN) to X @echo $(EXEDIR), and set up the world. ! @echo If a game is in progress, make install will just move $(GAME) X @echo and $(ADMIN) to $(EXEDIR). X @echo X X $(ADMIN): $(AOBJS) X @echo phew... ! @echo if the next command does not work you might also need -ltermcap X @echo === compiling administrative functions ! $(CC) $(OPTFLG) -o $(ADMIN) $(AOBJS) $(LIBRARIES) ! # comment out the next line during debugging ! strip $(ADMIN) X X $(GAME): $(GOBJS) ! @echo phew... ! @echo if the next command does not work you might also need -ltermcap X @echo === compiling user interface ! $(CC) $(OPTFLG) -o $(GAME) $(GOBJS) $(LIBRARIES) ! # comment out the next line during debugging ! strip $(GAME) X ! $(SORT): sort.c ! $(CC) $(OPTFLG) -o $(SORT) sort.c ! # comment out the next line if debugging ! strip $(SORT) X X clobber: ! $(RM) *.o $(HELPOUT)[0-5] $(SORT) newhelp in$(GAME) in$(SORT) in$(ADMIN) $(HELPSCR).[12] lint[aghs] conquer.doc $(GAME) $(ADMIN) $(NULL) X X clean: ! $(RM) *.o lint[aghs] conquer.doc $(NULL) X ! in$(GAME): $(GAME) ! -$(RM) $(EXEDIR)/$(GAME) ! $(CP) $(GAME) $(EXEDIR) ! chmod 4751 $(EXEDIR)/$(GAME) ! touch in$(GAME) X ! in$(ADMIN): $(ADMIN) ! -$(RM) $(EXEDIR)/$(ADMIN) ! $(CP) $(ADMIN) $(EXEDIR) ! chmod 4751 $(EXEDIR)/$(ADMIN) ! touch in$(ADMIN) ! ! in$(SORT): $(SORT) ! -$(RM) $(EXEDIR)/$(SORT) ! $(CP) $(SORT) $(EXEDIR) ! chmod 751 $(EXEDIR)/$(SORT) ! touch in$(SORT) ! ! install: in$(GAME) in$(ADMIN) in$(SORT) helpfile ! @echo "" ! @echo "Installation complete" ! ! new_game: all ! @echo Installing new game ! -mkdir $(EXEDIR) $(NULL) ! -mkdir $(DATA) $(NULL) ! -mkdir $(DEFAULT) $(NULL) X chmod 755 $(EXEDIR) ! chmod 750 $(DATA) $(DEFAULT) ! $(CP) $(GAME) $(ADMIN) $(SORT) $(EXEDIR) ! chmod 4755 $(EXEDIR)/$(GAME) $(EXEDIR)/$(ADMIN) ! chmod 0755 $(EXEDIR)/$(SORT) X chmod 0600 nations ! chmod 0700 run ! $(CP) nations rules $(DATA) ! $(CP) nations rules $(DEFAULT) X @echo now making the world X $(EXEDIR)/$(ADMIN) -d$(DATA) -m X $(EXEDIR)/$(ADMIN) -d$(DATA) -a X ! helpfile: $(HELPOUT)0 $(HELPOUT)1 $(HELPOUT)2 $(HELPOUT)3 $(HELPOUT)4 $(HELPOUT)5 X @echo Helpfiles built + touch helpfile X ! $(HELPOUT)0: $(HELP)0 $(HELPSCR).1 $(HELPSCR).2 ! @echo building $(HELPOUT)0 ! cat $(HELP)0 | sed -f $(HELPSCR).1 | sed -f $(HELPSCR).2 > $(HELPOUT)0 ! -$(RM) $(DEFAULT)/$(HELPOUT)0 ! -$(LN) $(HELPOUT)0 $(DEFAULT)/$(HELPOUT)0 ! ! $(HELPOUT)1: $(HELP)1 $(HELPSCR).1 $(HELPSCR).2 ! @echo building $(HELPOUT)1 ! cat $(HELP)1 | sed -f $(HELPSCR).1 | sed -f $(HELPSCR).2 > $(HELPOUT)1 ! -$(RM) $(DEFAULT)/$(HELPOUT)1 ! -$(LN) $(HELPOUT)1 $(DEFAULT)/$(HELPOUT)1 ! ! $(HELPOUT)2: $(HELP)2 $(HELPSCR).1 $(HELPSCR).2 ! @echo building $(HELPOUT)2 ! cat $(HELP)2 | sed -f $(HELPSCR).1 | sed -f $(HELPSCR).2 > $(HELPOUT)2 ! -$(RM) $(DEFAULT)/$(HELPOUT)2 ! -$(LN) $(HELPOUT)2 $(DEFAULT)/$(HELPOUT)2 ! ! $(HELPOUT)3: $(HELP)3 $(HELPSCR).1 $(HELPSCR).2 ! @echo building $(HELPOUT)3 ! cat $(HELP)3 | sed -f $(HELPSCR).1 | sed -f $(HELPSCR).2 > $(HELPOUT)3 ! -$(RM) $(DEFAULT)/$(HELPOUT)3 ! -$(LN) $(HELPOUT)3 $(DEFAULT)/$(HELPOUT)3 ! ! $(HELPOUT)4: $(HELP)4 $(HELPSCR).1 $(HELPSCR).2 ! @echo building $(HELPOUT)4 ! cat $(HELP)4 | sed -f $(HELPSCR).1 | sed -f $(HELPSCR).2 > $(HELPOUT)4 ! -$(RM) $(DEFAULT)/$(HELPOUT)4 ! -$(LN) $(HELPOUT)4 $(DEFAULT)/$(HELPOUT)4 ! ! $(HELPOUT)5: $(HELP)5 $(HELPSCR).1 $(HELPSCR).2 ! @echo building $(HELPOUT)5 ! cat $(HELP)5 | sed -f $(HELPSCR).1 | sed -f $(HELPSCR).2 > $(HELPOUT)5 ! -$(RM) $(DEFAULT)/$(HELPOUT)5 ! -$(LN) $(HELPOUT)5 $(DEFAULT)/$(HELPOUT)5 ! ! $(HELPSCR).1: newhelp X newhelp X + $(HELPSCR).2: newhelp + newhelp + + newhelp: dataG.o newhelp.o + $(CC) dataG.o newhelp.o -o newhelp + X lint: ! lint $(LTFLG) $(CDEFS) -DCONQUER $(GFILS) > lintg ! lint $(LTFLG) $(CDEFS) -DADMIN $(AFILS) > linta X ! docs: conquer.doc X X conquer.doc: $(HELPOUT)0 $(HELPOUT)1 $(HELPOUT)2 $(HELPOUT)3 $(HELPOUT)4 $(HELPOUT)5 ! cat $(HELPOUT)? |sed -e "s/^DONE/ /g"|sed -e "s/^END//g" >conquer.doc X ! cpio: ! -$(RM) core ! find . -name '*[CrpsEech]' -print | cpio -ocBv > cpiosv ! ! shar: X echo " lines words chars FILENAME" > MANIFEST X wc $(ALLFILS) >> MANIFEST ! $(SHAR) $(SHARFLG) $(ALLFILS) X ! .cA.o: $< ! ( trap "" 0 1 2 3 4 ; $(LN) $*.c $*A.c ;\ ! $(CC) $(OPTFLG) $(CDEFS) -DADMIN -c $*A.c ;\ ! $(RM) $*A.c ) ! ! .cG.o: $< ! ( trap "" 0 1 2 3 4 ; $(LN) $*.c $*G.c ;\ ! $(CC) $(OPTFLG) $(CDEFS) -DCONQUER -c $*G.c ;\ ! $(RM) $*G.c ) ! ! .c.o: $< ! # compiles using both defines since they ! # are needed for the data.h definitions for ! # each file... but should not be needed for ! # the actual C source file being compiled ! $(CC) $(OPTFLG) $(CDEFS) -DADMIN -DCONQUER -c $*.c ! ! $(GOBJS): data.h header.h ! ! $(AOBJS): data.h header.h ! diff -cr ../oldconq4/patchlevel.h ./patchlevel.h *** ../oldconq4/patchlevel.h Thu Jul 9 19:29:32 1992 --- ./patchlevel.h Thu Jul 9 17:45:34 1992 *************** *** 1 **** ! #define PATCHLEVEL 10 --- 1 ---- ! #define PATCHLEVEL 11 diff -cr ../oldconq4/randeven.c ./randeven.c *** ../oldconq4/randeven.c Thu Jul 9 19:26:25 1992 --- ./randeven.c Thu Jul 9 18:12:14 1992 *************** *** 1,5 **** --- 1,6 ---- X /* Conquer: Copyright (c) 1988 by Edward M Barlow */ X #include + #include X #include X #include "header.h" X #include "data.h" *************** *** 173,181 **** X sprintf(eventstr,"new nation %s created",ntn[new].name); X #else X sprintf(eventstr,"new nation %s created at %d,%d",ntn[new].name,realx,realy); ! #endif HIDELOC X printf("TMP new nation %s created at %d,%d",ntn[new].name,realx,realy); X sct[realx][realy].owner=new; X ntn[new].capx=realx; X ntn[new].capy=realy; X sct[realx][realy].designation=DCAPITOL; --- 174,185 ---- X sprintf(eventstr,"new nation %s created",ntn[new].name); X #else X sprintf(eventstr,"new nation %s created at %d,%d",ntn[new].name,realx,realy); ! #endif /* HIDELOC */ X printf("TMP new nation %s created at %d,%d",ntn[new].name,realx,realy); X sct[realx][realy].owner=new; + #ifdef CHECKUSER + ntn[new].uid = getpwnam(LOGIN)->pw_uid; + #endif /* CHECKUSER */ X ntn[new].capx=realx; X ntn[new].capy=realy; X sct[realx][realy].designation=DCAPITOL; *************** *** 330,336 **** X printf("TEMP: %s chance of peasant revolt is %d (tax=%d pop=%d terror=%d)\n", X curntn->name, x, curntn->tax_rate, curntn->popularity, X curntn->terror ); ! #endif DEBUG X X if((rand()%100)name, x, curntn->tax_rate, curntn->popularity, X curntn->terror ); ! #endif /* DEBUG */ X X if((rand()%100)name, x, curntn->tax_rate, curntn->prestige ); ! #endif DEBUG X X if(( rand()%100)< x ){ X if(rand()%100name, x, curntn->tax_rate, curntn->prestige ); ! #endif /* DEBUG */ X X if(( rand()%100)< x ){ X if(rand()%100%s\n",ntn[cntry].name,eventstr); X #ifndef HIDELOC X if(xloc != -1) X fprintf(fnews,"1. \tevent in %s -->centered around location %d, %d.\n",ntn[cntry].name,xloc,yloc); ! #endif HIDELOC X printf("\t\t->%s\n",eventstr); X if(ispc(ntn[cntry].active)) X fprintf(fm,"\t%s\n",eventstr); --- 940,951 ---- X #ifdef HIDELOC X /* make sure that volcano locations are not revealed */ X if(strcmp(eventstr,"all flee, 30%% die in 1 sector range")!=0) ! #endif /* HIDELOC */ X fprintf(fnews,"1. \tevent in %s -->%s\n",ntn[cntry].name,eventstr); X #ifndef HIDELOC X if(xloc != -1) X fprintf(fnews,"1. \tevent in %s -->centered around location %d, %d.\n",ntn[cntry].name,xloc,yloc); ! #endif /* HIDELOC */ X printf("\t\t->%s\n",eventstr); X if(ispc(ntn[cntry].active)) X fprintf(fm,"\t%s\n",eventstr); *************** *** 1048,1054 **** X if (volhold == 0) blowup(i,j); X } X } ! #endif VULCANIZE X X /* blowup a volcano in sector i,j */ X void --- 1052,1058 ---- X if (volhold == 0) blowup(i,j); X } X } ! #endif /* VULCANIZE */ X X /* blowup a volcano in sector i,j */ X void *************** *** 1125,1128 **** X weather() X { X } ! #endif RANEVENT --- 1129,1132 ---- X weather() X { X } ! #endif /* RANEVENT */ diff -cr ../oldconq4/reports.c ./reports.c *** ../oldconq4/reports.c Thu Jul 9 19:26:26 1992 --- ./reports.c Thu Jul 9 18:22:24 1992 *************** *** 147,153 **** X errormsg("May not change traded army"); X continue; X } ! #endif TRADE X mvaddstr(ypos,0,"OPTIONS: 1) COMMAND 2) DISBAND 3) CHANGE GROUP"); X if(P_ATYPE=MAXNAVY)) { X errormsg("Invalid Naval unit"); X continue; --- 636,642 ---- X errormsg("Sorry - That Navy is up for trade"); X continue; X } ! #endif /* TRADE */ X if((nvynum<0)||(nvynum>=MAXNAVY)) { X errormsg("Invalid Naval unit"); X continue; *************** *** 647,653 **** X if(isgod==TRUE) mvaddstr(ypos++,0,"GOD OPTIONS: 4) ADJUST SHIPS, 5) LOCATION, 6) CREW 7) MOVE"); X ypos++; X clrtoeol(); ! #endif OGOD X refresh(); X switch(getch()){ X case '1': --- 647,653 ---- X if(isgod==TRUE) mvaddstr(ypos++,0,"GOD OPTIONS: 4) ADJUST SHIPS, 5) LOCATION, 6) CREW 7) MOVE"); X ypos++; X clrtoeol(); ! #endif /* OGOD */ X refresh(); X switch(getch()){ X case '1': *************** *** 666,672 **** X if (curntn->nvy[newnavy].commodity==TRADED) { X errormsg("Sorry - That Navy is up for trade"); X } else ! #endif TRADE X if(nvynum==newnavy) { X errormsg("Sorry -- That is the same Navy"); X } --- 666,672 ---- X if (curntn->nvy[newnavy].commodity==TRADED) { X errormsg("Sorry - That Navy is up for trade"); X } else ! #endif /* TRADE */ X if(nvynum==newnavy) { X errormsg("Sorry -- That is the same Navy"); X } *************** *** 949,955 **** X } X } X break; ! #endif OGOD X default: X errormsg("Invalid Input"); X } --- 949,955 ---- X } X } X break; ! #endif /* OGOD */ X default: X errormsg("Invalid Input"); X } diff -cr ../oldconq4/spew.c ./spew.c *** ../oldconq4/spew.c Thu Jul 9 19:26:30 1992 --- ./spew.c Thu Jul 9 18:22:34 1992 *************** *** 498,501 **** X fprintf(stderr,"Bad file format\n"); X exit(1); X } ! #endif SPEW --- 498,501 ---- X fprintf(stderr,"Bad file format\n"); X exit(1); X } ! #endif /* SPEW */ Only in .: spewout.c diff -cr ../oldconq4/trade.c ./trade.c *** ../oldconq4/trade.c Thu Jul 9 19:29:36 1992 --- ./trade.c Thu Jul 9 18:22:47 1992 *************** *** 53,59 **** X "lack of metal", "lack of jewels", "land not owned", X "unavailable or destroyed armies", X "unavailable or destoryed navies"}; ! #endif ADMIN X #ifdef CONQUER X /* Use this when you wish to bid something */ X char *buylist[NUMPRODUCTS] = { "Bid how much gold? ", "Bid how much food? ", --- 53,59 ---- X "lack of metal", "lack of jewels", "land not owned", X "unavailable or destroyed armies", X "unavailable or destoryed navies"}; ! #endif /* ADMIN */ X #ifdef CONQUER X /* Use this when you wish to bid something */ X char *buylist[NUMPRODUCTS] = { "Bid how much gold? ", "Bid how much food? ", *************** *** 474,480 **** X if (country!=0 && country!=natn[holdint]) X #else X if (country != natn[holdint]) ! #endif OGOD X { X tradeerr("That is not your item"); X return; --- 474,480 ---- X if (country!=0 && country!=natn[holdint]) X #else X if (country != natn[holdint]) ! #endif /* OGOD */ X { X tradeerr("That is not your item"); X return; *************** *** 622,628 **** X } X return(hold); X } ! #endif CONQUER X X /* set aside things that are up for bid */ X void --- 622,628 ---- X } X return(hold); X } ! #endif /* CONQUER */ X X /* set aside things that are up for bid */ X void *************** *** 863,869 **** X fclose(fp[count]); X } X } ! #endif ADMIN X X #ifdef CONQUER X /* routine to determine whether or not an army type is tradable */ --- 863,869 ---- X fclose(fp[count]); X } X } ! #endif /* ADMIN */ X X #ifdef CONQUER X /* routine to determine whether or not an army type is tradable */ *************** *** 879,885 **** X country=oldcntry; X return(returnval); X } ! #endif CONQUER X X /* routine to determine commercial value of army */ X long armyvalue(cntry,unit) --- 879,885 ---- X country=oldcntry; X return(returnval); X } ! #endif /* CONQUER */ X X /* routine to determine commercial value of army */ X long armyvalue(cntry,unit) *************** *** 1108,1112 **** X X } /* loop through commodities */ X } ! #endif ADMIN ! #endif TRADE --- 1108,1112 ---- X X } /* loop through commodities */ X } ! #endif /* ADMIN */ ! #endif /* TRADE */ diff -cr ../oldconq4/update.c ./update.c *** ../oldconq4/update.c Thu Jul 9 19:29:34 1992 --- ./update.c Thu Jul 9 18:23:06 1992 *************** *** 74,80 **** X X #ifdef RANEVENT X randomevent(); /*run random events after setting movements */ ! #endif RANEVENT X X updsectors(); /* for whole map, update one sector at a time*/ X updcomodities();/* commodities & food, metal, jewels */ --- 74,80 ---- X X #ifdef RANEVENT X randomevent(); /*run random events after setting movements */ ! #endif /* RANEVENT */ X X updsectors(); /* for whole map, update one sector at a time*/ X updcomodities();/* commodities & food, metal, jewels */ *************** *** 94,100 **** X X #ifdef CHEAT X cheat(); ! #endif CHEAT X X score(); /* score all nations */ X --- 94,100 ---- X X #ifdef CHEAT X cheat(); ! #endif /* CHEAT */ X X score(); /* score all nations */ X *************** *** 523,529 **** X } X } X } ! #endif CHEAT X X X /****************************************************************/ --- 523,529 ---- X } X } X } ! #endif /* CHEAT */ X X X /****************************************************************/ *************** *** 580,586 **** X disarray=FALSE; X #ifdef TRADE X if(isntn(curntn->active)) checktrade(); ! #endif TRADE X X /*if execute is 0 and PC nation then they did not move*/ X if((execute(TRUE)==0)&&(ispc(curntn->active))){ --- 580,586 ---- X disarray=FALSE; X #ifdef TRADE X if(isntn(curntn->active)) checktrade(); ! #endif /* TRADE */ X X /*if execute is 0 and PC nation then they did not move*/ X if((execute(TRUE)==0)&&(ispc(curntn->active))){ *************** *** 616,622 **** X if((x=takeover(1,0))==1) X printf("SUCCESSFUL TAKEOVER OF %d by %s",x,curntn->name); X } ! #endif ORCTAKE X #endif /*NPC*/ X } X --- 616,622 ---- X if((x=takeover(1,0))==1) X printf("SUCCESSFUL TAKEOVER OF %d by %s",x,curntn->name); X } ! #endif /* ORCTAKE */ X #endif /*NPC*/ X } X *************** *** 630,636 **** X } X #ifdef DEBUG X printf("checking for leader in nation %s: armynum=%d\n",curntn->name,armynum); ! #endif DEBUG X X if(disarray == TRUE) { X if(rand()%100 < 30) { /* new leader takes over */ --- 630,636 ---- X } X #ifdef DEBUG X printf("checking for leader in nation %s: armynum=%d\n",curntn->name,armynum); ! #endif /* DEBUG */ X X if(disarray == TRUE) { X if(rand()%100 < 30) { /* new leader takes over */ *************** *** 782,788 **** X if((P_ASOLD>0)&&(sct[P_AXLOC][P_AYLOC].altitude==WATER)) X printf("ERROR line %d... %s army %d in water (army %d: x: %d y: %d)\n",__LINE__,ntn[country].name,armynum,armynum-1, ntn[country].arm[armynum-1].xloc, ntn[country].arm[armynum-1].yloc); X } ! #endif DEBUG X } X X /****************************************************************/ --- 782,788 ---- X if((P_ASOLD>0)&&(sct[P_AXLOC][P_AYLOC].altitude==WATER)) X printf("ERROR line %d... %s army %d in water (army %d: x: %d y: %d)\n",__LINE__,ntn[country].name,armynum,armynum-1, ntn[country].arm[armynum-1].xloc, ntn[country].arm[armynum-1].yloc); X } ! #endif /* DEBUG */ X } X X /****************************************************************/ *************** *** 836,842 **** X fprintf(fnews,"3.\tarea captured by %s from %s\n",curntn->name,ntn[sptr->owner].name); X #else X fprintf(fnews,"3.\tarea %d,%d captured by %s from %s\n",P_AXLOC,P_AYLOC,curntn->name,ntn[sptr->owner].name); ! #endif HIDELOC X } X sptr->owner=country; X curntn->popularity++; --- 836,842 ---- X fprintf(fnews,"3.\tarea captured by %s from %s\n",curntn->name,ntn[sptr->owner].name); X #else X fprintf(fnews,"3.\tarea %d,%d captured by %s from %s\n",P_AXLOC,P_AYLOC,curntn->name,ntn[sptr->owner].name); ! #endif /* HIDELOC */ X } X sptr->owner=country; X curntn->popularity++; *************** *** 1288,1294 **** X fprintf(fnews,"3.\tstorm sinks %s fleet at sea\n",curntn->name); X #else X fprintf(fnews,"3.\tstorm sinks %s fleet in %d,%d\n",curntn->name,P_NXLOC,P_NYLOC); ! #endif HIDELOC X P_NWSHP=0; X P_NMSHP=0; X P_NGSHP=0; --- 1288,1294 ---- X fprintf(fnews,"3.\tstorm sinks %s fleet at sea\n",curntn->name); X #else X fprintf(fnews,"3.\tstorm sinks %s fleet in %d,%d\n",curntn->name,P_NXLOC,P_NYLOC); ! #endif /* HIDELOC */ X P_NWSHP=0; X P_NMSHP=0; X P_NGSHP=0; *************** *** 1339,1345 **** X #else X fprintf(fnews,"2.\tNation %s under siege in sector %d,%d\n", X curntn->name,siegex[army2],siegey[army2]); ! #endif HIDELOC X if(ispc(curntn->active)) { X if (mailopen( country )!=(-1)) { X fprintf(fm, "Message to %s from Conquer\n\n",ntn[nation].name); --- 1339,1345 ---- X #else X fprintf(fnews,"2.\tNation %s under siege in sector %d,%d\n", X curntn->name,siegex[army2],siegey[army2]); ! #endif /* HIDELOC */ X if(ispc(curntn->active)) { X if (mailopen( country )!=(-1)) { X fprintf(fm, "Message to %s from Conquer\n\n",ntn[nation].name); *************** *** 1404,1410 **** X fprintf(fnews,"2.\tfamine hits town in %s.\n",curntn->name); X #else X fprintf(fnews,"2.\tfamine hits town at %d,%d in %s.\n",x,y,curntn->name); ! #endif HIDELOC X printf("famine hits town at %d,%d in %s.\n",x,y,curntn->name); X if(ispc(curntn->active)){ X if (mailopen( country )!=(-1)) { --- 1404,1410 ---- X fprintf(fnews,"2.\tfamine hits town in %s.\n",curntn->name); X #else X fprintf(fnews,"2.\tfamine hits town at %d,%d in %s.\n",x,y,curntn->name); ! #endif /* HIDELOC */ X printf("famine hits town at %d,%d in %s.\n",x,y,curntn->name); X if(ispc(curntn->active)){ X if (mailopen( country )!=(-1)) { Common subdirectories: ../oldconq4/utilities and ./utilities SHAR_EOF chmod 0644 patches11 || echo 'restore of patches11 failed' Wc_c="`wc -c < 'patches11'`" test 103096 -eq "$Wc_c" || echo 'patches11: original size 103096, current size' "$Wc_c" rm -f _shar_wnt_.tmp fi rm -f _shar_seq_.tmp echo You have unpacked the last part exit 0