DECLARE SUB POPULARSUPPORT (PS%)
DECLARE SUB MILITARYMORAL (MM%)
DECLARE SUB TOPSCORES ()
DECLARE SUB COMPMAINT ()
DECLARE SUB IMPROVEMENTS ()
DECLARE SUB RANDOMEVENTS (FF&, FA&, PS%, P&, G&, TR&, HU&, TK&, JT&, BM&, AG&, MB&, F&, FM&)
DECLARE SUB CREATEINDUSTRY (FA&, P&, G&, TR%, TR&, HU%, HU&, TK%, TK&, JT%, JT&, BM%, BM&, AG%, AG&, MB%, MB&)
DECLARE SUB STATUS ()
DECLARE SUB EDITOR (A$, D4, D3)
DECLARE SUB CREATECOMP (D4, D3)
DECLARE SUB FOODMARKET (D4!, G&, FM&, F&)
COMMON SHARED A$
COMMON SHARED A
IF A$ = "N" THEN CALL COMPMAINT: GOTO NEWTURN
IF A$ = "Q" THEN CALL COMPMAINT
TITLE: CLS : WIDTH 80, 50
COLOR 11: LOCATE 12, 33: PRINT "!!! WARGAME 4 !!!"
COLOR 10: LOCATE 24, 1: PRINT "(Q)uit Game"
PRINT : PRINT "(P)lay Saved Game"
PRINT : PRINT "(C)urrent Status"
PRINT : PRINT "(R)ecent Additions and Upgrades"
PRINT : PRINT "(T)op Current Scores"
PRINT : PRINT
PRINT "(*) Reset Game / New Game / Editor / Run Before Playing First Time"
COLOR 11: PRINT : PRINT
PRINT "What is your choice?"
DO: A$ = UCASE$(INKEY$)
LOOP UNTIL A$ <> ""
SELECT CASE A$
CASE "*": GOTO GAMERESET
CASE "P": C = 0: GOSUB AUTOLOAD: GOTO NEWTURN
CASE "Q": END
CASE "R": CALL IMPROVEMENTS: GOTO TITLE
CASE "C": CALL STATUS: GOSUB AUTOLOAD: GOTO TITLE
CASE "T": CALL TOPSCORES: GOTO TITLE
END SELECT
GOTO TITLE
GAMERESET: PRINT
CALL EDITOR(A$, D4, D3): IF A$ = "E" THEN GOTO TITLE
KILL "MARKET"
FOR C = 1 TO 20: C$ = STR$(C): KILL "WAR4-" + C$: NEXT C
CALL CREATECOMP(D4, D3)
C = 0: GOSUB AUTOLOAD
'VARIABLE DEFINITIONS in war data file
'D0 = difficulty
'D1 = turns per day
'D2 = turns of protection
'D3 = amount of factories required
'D4 = price of food
'D5
'D6 = starting population
'D7 = covert ops per day
'D8
'D9 = starting food in food market
'D10 = interest rate
'D11 = cheats enabled
'VR = WG4 version
F& = 20: 'F& = food
G& = 0: 'G& = gold
BG& = 0: 'BG& = bank gold
'
P& = D6: 'P& = population
TR& = 0: 'TR& = soldiers
HU& = 0: 'HU& = humvees
TK& = 0: 'TK& = tanks
JT& = 0: 'JT& = jets
BM& = 0: 'BM& = bombers
MB& = 0: 'MB& = missile bases
AG& = 0: 'AG& = aaguns
SP& = 0: 'SP& = spys
FF& = 0: 'FF& = food farms
FA& = 0: 'FA& = factories
'
'
PS% = 100: 'PS% = popular support
TX% = 5: 'TX% = tax rate
IR% = RND(D10) * (D10): 'IR% = interest rate
HU% = 0: 'HU% = humvee production %
TR% = 0: 'TR% = soldier production %
TK% = 0: 'TK% = tank production %
JT% = 0: 'JT% = jet production %
BM% = 0: 'BM% = bomber production %
BM% = 0: 'MB% = missile base production %
AG% = 0: 'AG% = aagun production %
UL% = 0: 'UL% = unemployment level
MM% = 100: 'MM% = military moral
CT% = RND(21) * 21: 'CT%= Current Target
'N$ = YOUR NAME
D$ = DATE$: 'D$ = current date
EN = 0: 'EN = draft
EN1 = 0: 'EN1 = martial law
EN2 = 0: 'EN2 = patriot act
CO = D7: 'CO = covert ops left
E1 = D1: 'E1 = turns left today
E2 = D2: 'E2 = turns of protection left
E3 = 0: 'E3 = total turns taken
EN3 = 0: 'EN3 = terrorism
EN4 = 0: 'EN4 = food rationing
SR1 = 0: 'super soldiers
SR2 = 0: 'stealth bombers
SR3 = 0: 'anti missile system
SR4 = 0: 'sub missile launches
SR5 = 0: 'The One bomb
SR6 = 0: '
EDITNAME: CLS : COLOR 10
PRINT "Everyone knows that a name says alot. A strong name can be an advantage as a"
PRINT
PRINT "deterant against other players. You now have the chance to pick your own"
PRINT
PRINT "nation's name. Choose wisely, for you will keep this for the duration of the"
PRINT
PRINT "game. There is a 25 character limit to a name."
PRINT : PRINT : COLOR 11
PRINT "Your nation's name"; : INPUT B$
B$ = LEFT$(B$, 25)
PRINT : PRINT : COLOR 10
PRINT B$; : PRINT ", is this correct (Y/N)"
DO: A$ = UCASE$(INKEY$)
LOOP UNTIL A$ <> ""
SELECT CASE A$
CASE "Y": GOTO EDITNAME1
CASE "N": GOTO EDITNAME
END SELECT
GOTO EDITNAME
EDITNAME1: PRINT
FOR C = 1 TO 20
C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
GET 1, 44, N$
CLOSE
IF B$ = "" THEN COLOR 12: PRINT "That name cannot be used!": GOTO EDITNAMEEND
IF B$ = N$ THEN COLOR 12: PRINT "That name is already taken!": GOTO EDITNAMEEND
NEXT C: N$ = B$: COLOR 11: PRINT
PRINT "That sounds like a great name!"
PRINT : PRINT
COLOR 7: PRINT : PRINT "Get Ready To Rumble!! Press a key"
DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> "": C = 0: GOSUB AUTOSAVE: GOTO NEWTURN
EDITNAMEEND: PRINT : COLOR 7
PRINT "Press a key": DO: A$ = UCASE$(INKEY$)
LOOP UNTIL A$ <> "": GOTO EDITNAME
AUTOSAVE: C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
PUT 1, 43, CT%: PUT 1, 44, N$: PUT 1, 45, D$
PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
PUT 1, 52, E3: PUT 1, 53, EN3: PUT 1, 54, EN4
PUT 1, 55, SR1: PUT 1, 56, SR2: PUT 1, 57, SR3
PUT 1, 58, SR4: PUT 1, 59, SR5: PUT 1, 60, SR6
CLOSE
OPEN "MARKET" FOR RANDOM AS 1
PUT 1, 1, FM&: PUT 1, 2, OM&: PUT 1, 3, SM&
CLOSE : RETURN
AUTOLOAD: C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
GET 1, 1, D0: GET 1, 2, D1: GET 1, 3, D2
GET 1, 4, D3: GET 1, 5, D4: GET 1, 6, D5
GET 1, 7, D6: GET 1, 8, D7: GET 1, 9, D8
GET 1, 10, D9: GET 1, 11, D10: GET 1, 12, D11
GET 1, 13, VR: GET 1, 14, F&: GET 1, 15, G&
GET 1, 16, BG&: GET 1, 17, XX&: GET 1, 18, P&
GET 1, 19, TR&: GET 1, 20, HU&: GET 1, 21, TK&
GET 1, 22, JT&: GET 1, 23, BM&: GET 1, 24, MB&
GET 1, 25, AG&: GET 1, 26, SP&: GET 1, 27, FF&
GET 1, 28, FA&: GET 1, 29, X&: GET 1, 30, X&
GET 1, 31, PS%: GET 1, 32, TX%: GET 1, 33, IR%
GET 1, 34, HU%: GET 1, 35, TR%: GET 1, 36, TK%
GET 1, 37, JT%: GET 1, 38, BM%: GET 1, 39, MB%
GET 1, 40, AG%: GET 1, 41, UL%: GET 1, 42, MM%
GET 1, 43, CT%: GET 1, 44, N$: GET 1, 45, D$
GET 1, 46, EN: GET 1, 47, EN1: GET 1, 48, EN2
GET 1, 49, CO: GET 1, 50, E1: GET 1, 51, E2
GET 1, 52, E3: GET 1, 53, EN3: GET 1, 54, EN4
GET 1, 55, SR1: GET 1, 56, SR2: GET 1, 57, SR3
GET 1, 58, SR4: GET 1, 59, SR5: GET 1, 60, SR6
CLOSE
OPEN "MARKET" FOR RANDOM AS 1
GET 1, 1, FM&: GET 1, 2, OM&: GET 1, 3, SM&
CLOSE : RETURN
NEWTURN: GOSUB AUTOLOAD: PRINT
IF E1 = 0 THEN GOTO NEWTURN1
IF D4 = 0 THEN GOTO GAMERESET
IF N$ = "" THEN GOTO GAMERESET
IF D$ = DATE$ THEN GOTO NEWTURN2
D$ = DATE$
E1 = D1
GOTO NEWTURN2
NEWTURN1: COLOR 12
IF D$ = DATE$ THEN PRINT "You are out of turns!! Come back tomorrow! Press a key!"
IF D$ = DATE$ THEN DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> "": GOTO TITLE
D$ = DATE$
E1 = D1
GOTO NEWTURN2
NEWTURN2: CLS : COLOR 10
CO = D7: IR% = RND(D10) * (D10)
E1 = E1 - 1: E2 = E2 - 1: E3 = E3 + 1
PRINT "You have"; : COLOR 11: PRINT E1; : COLOR 10: PRINT "turns left today"
IF E2 > 0 THEN PRINT "You have"; : COLOR 11: PRINT E2; : COLOR 10: PRINT "turns of protection left"
PRINT "You have taken"; : COLOR 11: PRINT E3; : COLOR 10: PRINT "turns total"
'this creates new military moral
A% = RND(2) * 2
B% = RND(100 - PS%) * (100 - PS%)
MM% = MM% + EN1 + A% - (B% / 25)
IF MM% > 100 THEN MM% = 100
IF MM% < 0 THEN MM% = 0
'this creates new popular support
PS% = PS% + (B% - TX% - UL%) * .5
IF PS% > 100 THEN PS% = 100
IF EN > 0 THEN PS% = PS% - 2: 'draft penalty
IF EN1 > 0 THEN PS% = PS% - 1: 'martial law penalty
IF EN2 > 0 THEN PS% = PS% - 1: 'patriot act penatly
IF EN4 > 0 THEN PS% = PS% - 3: 'food rationing penalty
IF PS% < 0 THEN PS% = 0
CC% = (A% - C% - TX%)
IF P& + CC% < 0 THEN CC% = 0
P& = P& + CC%
PRINT : PRINT : COLOR 10
IF CC% < 0 THEN PRINT "You lost"; : COLOR 11: PRINT CC% * -1; : COLOR 10: PRINT "million people"
IF CC% >= 1 THEN PRINT "You gained"; : COLOR 11: PRINT CC%; : COLOR 10: PRINT "million people"
IF CC% = 0 THEN PRINT "Your population remained constant"
COLOR 10
PRINT "You now have"; : COLOR 11: PRINT P&; : COLOR 10: PRINT "million people"
COLOR 10
PRINT "Your Unemployment Rate is now"; : COLOR 11: PRINT UL%; : COLOR 10: PRINT "%"
PRINT : COLOR 10
PRINT "Your Popular Support is now"; : COLOR 11: PRINT PS%; : PRINT "%"
CALL POPULARSUPPORT(PS%)
PRINT : COLOR 10
PRINT "Your Military Moral is now"; : COLOR 11: PRINT MM%; : PRINT "%"
CALL MILITARYMORAL(MM%)
PRINT : COLOR 10
PRINT "Your Tax Rate is"; : COLOR 11: PRINT TX%; : PRINT "%"
A& = TX% * (P& / 100)
G& = G& + A&
COLOR 10
IF TX% > 0 THEN PRINT "You gained"; : COLOR 11: PRINT A&; : COLOR 10: PRINT "Gold from Taxes"
IF BG& * (IR% / 100) > 0 THEN PRINT "You earned"; : COLOR 11: PRINT BG& * (IR% / 100); : COLOR 10: PRINT "Gold from Interest": G& = G& + (BG& * (IR% / 100))
PRINT
'this area grows your food
IF D4 = 0 THEN GOTO GAMERESET
A& = (P& / (10 * D4)) + (TR& / (150 * D4))
IF EN4 > 0 THEN A& = A& - (A& / 3)
B& = RND(P& / 10) * (P& / 10)
C& = RND(FF& * 10) * (FF& * 10)
F& = F& + B& + C&
COLOR 10
PRINT "You grew"; : COLOR 11: PRINT B&; : COLOR 10: PRINT "tons of Food today"
COLOR 10
IF FF& > 0 THEN PRINT "You grew"; : COLOR 11: PRINT C&; : COLOR 10: PRINT "extra tons with Food Farms"
COLOR 10
PRINT "Your people and military require"; : COLOR 11: PRINT A&; : COLOR 10: PRINT "tons of Food to survive"
TURNFOOD0: A& = (P& / (10 * D4)) + (TR& / (150 * D4)): IF EN4 > 0 THEN A& = A& - (A& / 3)
IF A& > F& THEN GOSUB TURNFOOD
F& = F& - A&
IF F& >= 0 THEN COLOR 15: PRINT : PRINT "Your people are fed!"
IF F& < 0 THEN F& = 0
COLOR 10
GOSUB TERRORISM
IF EN4 > 0 THEN GOSUB RATIONINGDEATHS
CALL RANDOMEVENTS(FF&, FA&, PS%, P&, G&, TR&, HU&, TK&, JT&, BM&, AG&, MB&, F&, FM&)
PRINT : PRINT : COLOR 7: PRINT "Press a key"
DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> ""
CALL CREATEINDUSTRY(FA&, P&, G&, TR%, TR&, HU%, HU&, TK%, TK&, JT%, JT&, BM%, BM&, AG%, AG&, MB%, MB&)
C = 0: GOSUB AUTOSAVE: CHAIN "MAINMENU"
TURNFOOD: COLOR 12: PRINT
PRINT "You dont have enough Food to feed them!! You need"; : COLOR 15: PRINT A& - F&; : COLOR 12: PRINT "tons of Food!"
PRINT "Goto Food Market? (Y/N)"
DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> ""
SELECT CASE A$
CASE "N": GOTO TURNFOOD1
CASE "Y": CALL FOODMARKET(D4, G&, FM&, F&): GOTO TURNFOOD0
END SELECT
GOTO TURNFOOD
TURNFOOD1: COLOR 12: PRINT
PRINT "You deciede not to feed your people this turn!"
PRINT "Riots have ensued and engulfed your nation!"
PRINT
A% = RND(PS% / 2) * (PS% / 2): PS% = PS% - A%
PRINT " Popularity is down"; : COLOR 15: PRINT A%; : COLOR 12: PRINT "%"
B& = RND(P& / 5) * (P& / 5): P& = P& - B&
COLOR 15: PRINT B&; : COLOR 12: PRINT "million civilians have fled!"
B& = RND(TR& / 10) * (TR& / 10)
COLOR 15: PRINT B&; : COLOR 12: PRINT "Soldiers have deserted!!"
TR& = TR& - B&
IF MM% > 0 THEN MM% = MM% * .9: PRINT " Military Moral is also down!"
RETURN
RATIONINGDEATHS: 'this is food rationing starving deaths
A% = RND(10) * 10: IF A% < 5 THEN RETURN
A& = RND(P& / 100) * (P& / 100)
IF A& = 0 AND P& > 0 THEN A& = 1
COLOR 11: PRINT : PRINT A&; : COLOR 12: PRINT "million citizens died from starvation because of Food Rationing!"
P& = P& - A&: RETURN
TERRORISM: 'this checks if you do a terrorist attack or not
IF EN3 = 0 THEN RETURN
A% = RND(100) * 100: IF A% < 10 THEN EN3 = EN3 + 1: IF EN3 > 100 THEN EN3 = 100
B% = RND(100) * 100: IF B% > EN3 THEN GOTO TERRORISM1
PRINT : COLOR 12: PRINT "You were struck by a terrorist attack!! Popular Support is down "; : COLOR 11: PRINT "1"; : COLOR 12: PRINT " % !!"
PS% = PS% - 1: IF PS% < 0 THEN PS% = 0
A% = RND(5) * 5
IF A% = 0 THEN A& = P&: A$ = "Million Civilians"
IF A% = 1 THEN A& = TR&: A$ = "Soldiers"
IF A% = 2 THEN A& = HU&: A$ = "Humvees"
IF A% = 3 THEN A& = MB&: A$ = "Missile Bases"
IF A% >= 4 THEN A& = AG&: A$ = "Anti-Aircraft Guns"
B& = RND(A&) * (A&): B& = B& / 50
PRINT : PRINT "You lost"; : COLOR 11: PRINT B&; : PRINT A$; : COLOR 12: PRINT " in the unprovoked attack!"
IF A% = 0 THEN P& = P& - B&
IF A% = 1 THEN TR& = TR& - B&
IF A% = 2 THEN HU& = HU& - B&
IF A% = 3 THEN MB& = MB& - B&
IF A% >= 4 THEN AG& = AG& - B&
RETURN
TERRORISM1: 'this does a terrorist strike to other nation
C = 0: GOSUB AUTOSAVE
C = CT%: GOSUB AUTOLOAD
PS% = PS% - 1: IF PS% < 0 THEN PS% = 0
A% = RND(5) * 5
IF A% = 0 THEN A& = P&
IF A% = 1 THEN A& = TR&
IF A% = 2 THEN A& = HU&
IF A% = 3 THEN A& = MB&
IF A% >= 4 THEN A& = AG&
B& = RND(A&) * (A&): B& = B& / 50
IF A% = 0 THEN P& = P& - B&
IF A% = 1 THEN TR& = TR& - B&
IF A% = 2 THEN HU& = HU& - B&
IF A% = 3 THEN MB& = MB& - B&
IF A% >= 4 THEN AG& = AG& - B&
GOSUB AUTOSAVE: C = 0: GOSUB AUTOLOAD: RETURN
'data meanings: #, name, descript,cost,attack,defend,x,x,x
DATA 1,Soldiers,,10,1,2,0,0,0
DATA 2,Humvees,,15,2,1,0,0,0
DATA 3,Tanks,,40,4,4,0,0,0
DATA 4,Jets,,30,3,3,0,0,0
DATA 5,Bombers,,35,4,1,0,0,0
DATA 6,Anti Aircraft Guns,,10,0,2,0,0,0
DATA 7,Missile Bases,,20,0,3,0,0,0
DATA 8,Covert Agent,,50,0,0,0,0,0
DATA 9,Food Farms,,500,0,0,0,0,0
DATA 10,Industrial Factories,,1000,0,0,0,0,0
'data meanings: #,name,descript,cost,populat,troops,ground,air,success rate
DATA 11,BIOLOGICAL ATTACK,TARGETS ENEMY POPULATION,20,10,0,0,0,95
DATA 12,CHEMICAL ATTACK,TARGETS ENEMY TROOPS,30,0,15,0,0,95
DATA 13,EMP ATTACK,TARGETS ENEMY AIRCRAFT,40,0,0,0,15,95
DATA 14,SMALL NUCLEAR STRIKE,HITS ENEMY MILITARY AND POPULATION,60,20,15,10,10,95
DATA 15,LARGE NUCLEAR STRIKE,HITS ENEMY MILITARY AND POPULATION,80,40,25,20,15,90
DATA 16,HYDROGEN BOMB,STRONGER THAN NUCLEAR STRIKE,100,50,40,30,30,85
DATA 17,ION BOMB,TARGETS ENEMY AIRCRAFT,130,0,0,0,45,90
DATA 18,PLANET BUSTER,TARGETS ALL MILITARY AND POPULATION,160,70,50,40,40,70
DATA 19,RADION BOMB,INCINERATES THE PLANET,250,85,60,60,60,60
DATA 20,THE ONE,DESTROYS ENEMY AND POSSIBLY YOU ALSO,320,100,80,80,80,50
SUB COMPMAINT
COMPMAINT: CLS
COLOR 10
PRINT "PLEASE WAIT WHILE WE RUN COMPUTER MAINTANCE. THIS MAY TAKE SEVERAL MINUTES!"
'THIS RETRIEVES COMP DATA
FOR C = 1 TO 20
C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
GET 1, 1, D0: GET 1, 2, D1: GET 1, 3, D2
GET 1, 4, D3: GET 1, 5, D4: GET 1, 6, D5
GET 1, 7, D6: GET 1, 8, D7: GET 1, 9, D8
GET 1, 10, D9: GET 1, 11, D10: GET 1, 12, D11
GET 1, 13, VR: GET 1, 14, F&: GET 1, 15, G&
GET 1, 16, BG&: GET 1, 17, XX&: GET 1, 18, P&
GET 1, 19, TR&: GET 1, 20, HU&: GET 1, 21, TK&
GET 1, 22, JT&: GET 1, 23, BM&: GET 1, 24, MB&
GET 1, 25, AG&: GET 1, 26, SP&: GET 1, 27, FF&
GET 1, 28, FA&: GET 1, 29, X&: GET 1, 30, X&
GET 1, 31, PS%: GET 1, 32, TX%: GET 1, 33, IR%
GET 1, 34, HU%: GET 1, 35, TR%: GET 1, 36, TK%
GET 1, 37, JT%: GET 1, 38, BM%: GET 1, 39, MB%
GET 1, 40, AG%: GET 1, 41, UL%: GET 1, 42, MM%
GET 1, 43, CT%: GET 1, 44, N$: GET 1, 45, D$
GET 1, 46, EN: GET 1, 47, EN1: GET 1, 48, EN2
GET 1, 49, CO: GET 1, 50, E1: GET 1, 51, E2
GET 1, 52, E3
CLOSE
OPEN "MARKET" FOR RANDOM AS 1
GET 1, 1, FM&: GET 1, 2, OM&: GET 1, 3, SM&
CLOSE
COMPMAINT1: 'THIS CREATES NEW POPULATION
IF C = 1 THEN A = 120
IF C = 2 THEN A = 150
IF C = 3 THEN A = 140
IF C = 4 THEN A = 90
IF C = 5 THEN A = 130
IF C = 6 THEN A = 80
IF C = 7 THEN A = 65
IF C = 8 THEN A = 75
IF C = 9 THEN A = 80
IF C = 10 THEN A = 85
IF C = 11 THEN A = 90
IF C = 12 THEN A = 80
IF C = 13 THEN A = 45
IF C = 14 THEN A = 140
IF C = 15 THEN A = 90
IF C = 16 THEN A = 100
IF C = 17 THEN A = 85
IF C = 18 THEN A = 75
IF C = 19 THEN A = 100
IF C = 20 THEN A = 80
A% = RND(A) * A
C% = RND(110 - PS%) * (110 - PS%)
CC% = (A% - C% - TX%)
IF P& + CC% < 0 THEN CC% = 0
P& = P& + CC%
MAINTTAXES: 'THIS CREATES NEW TAX RATE
IF PS% < 60 THEN TX% = TX% - 1
IF PS% < 80 THEN TX% = TX% - 1
IF PS% < 95 THEN TX% = TX
IF PS% >= 95 THEN TX% = TX% + 1
IF PS% = 100 THEN TX% = TX% + 1
IF PS% < 30 THEN TX% = 0
IF TX% < 0 THEN TX% = 0
IF PS% > 80 AND TX% = 0 THEN TX% = 1
GOTO MAINTUNEMPLOYMENT
MAINTUNEMPLOYMENT: 'THIS CREATES NEW UNEMPLOYMENT
UL% = UL% - (FA&) + (P& / D3) + (TX% / 5)
IF UL% < 0 THEN UL% = 0
IF UL% > 100 THEN UL% = 100
MAINTMMORAL: 'THIS CREATES THE NEW MILITARY MORAL
A% = RND(2) * 2
B% = RND(100 - PS%) * (100 - PS%)
MM% = MM% + A% - (B% / 25)
IF MM% > 100 THEN MM% = 100
MAINTPS: 'THIS CREATES NEW POPULAR SUPPORT
B% = RND(15) * 15
PS% = PS% + (B% - TX% - UL%) * .5
IF PS% < 0 THEN PS% = 0
IF PS% > 100 THEN PS% = 100
MAINTFOOD1: 'THIS DETERMINES IF COMP HAS ENOUGH FOOD TO FEED PEOPLE
IF A& > F& THEN GOTO MAINTFOODBUY
F& = F& - A&
IF F& < 0 THEN GOTO MAINTFOODPUNISH
GOTO MAINTFOODSELL
MAINTFOODBUY: 'BUYS FOOD FOR COMP
B& = G& / D4
IF B& > FM& THEN B& = FM&
IF B& = 0 THEN GOTO MAINTFOODPUNISH
G& = G& - (B& * D4)
F& = F& + B&
FM& = FM& - B&
GOTO MAINTFOOD1
MAINTFOODPUNISH: 'PUNISHES COMP FOR NOT FEEDING THE CIVILIANS
A% = RND(PS% / 2) * (PS% / 2)
PS% = PS% - A%
IF PS% < 0 THEN PS% = 0
B& = RND(P& / 10) * (P& / 10)
P& = P& - B&
AA& = RND(TR& / 10) * (TR& / 10)
IF TR& > 0 THEN TR& = TR& - AA&
F& = 0
GOTO MAINTFOODSELL
MAINTFOODSELL: 'THIS DETERMINES IF THE COMP CAN SELL FOOD
IF F& < A& * 5 THEN GOTO MAINTINDUSTRY
AA& = F& / 5
G& = G& + (AA& * (D4 / 2))
FM& = FM& + AA&
F& = F& - AA&
GOTO MAINTINDUSTRY
MAINTPURCHASE: 'this is where comp makes smart purchases
IF FM& < 2000 THEN GOSUB MAINTBUYFOODFARM
IF A& > (FF& * 5) + (P& / 20) THEN GOSUB MAINTBUYFOODFARM
IF FA& < (P& / 500) + 1 THEN GOSUB MAINTBUYFACTORY
IF SP& < CO THEN GOSUB MAINTBUYSPY
GOSUB MAINTBUYTHINGS
IF TR& < 500000 THEN GOSUB MAINTBUYFACTORY
IF HU& < 400000 THEN GOSUB MAINTBUYFACTORY
IF TK& < 300000 THEN GOSUB MAINTBUYFACTORY
IF JT& < 350000 THEN GOSUB MAINTBUYFACTORY
IF BM& < 200000 THEN GOSUB MAINTBUYFACTORY
IF AG& < 300000 THEN GOSUB MAINTBUYFACTORY
IF MB& < 200000 THEN GOSUB MAINTBUYFACTORY
GOTO MAINTCOVERTOP
MAINTBUYFACTORY: 'the comp buys factories
IF G& < 1000 THEN RETURN
B& = G& / 1000
G& = G& - (B& * 1000)
FA& = FA& + B&
RETURN
MAINTBUYTHINGS: 'this determines what the comp will purchase
IF PS% < 80 THEN RETURN
IF UL% > 0 THEN RETURN
IF G& < 200 THEN GOSUB MAINTBANKWITHDRAW
A% = RND(15) * 15
IF A% = 0 THEN GOTO MAINTBANK
IF A% = 1 THEN GOTO MAINTBANK
IF A% = 2 THEN GOTO MAINTBUYTROOPS
IF A% = 3 THEN GOTO MAINTBUYHUMVEES
IF A% = 4 THEN GOTO MAINTBUYTANKS
IF A% = 5 THEN GOTO MAINTBUYJETS
IF A% = 6 THEN GOTO MAINTBUYBOMBERS
IF A% = 7 THEN GOTO MAINTBUYAAGUNS
IF A% = 8 THEN GOTO MAINTBUYMISSILEBASES
IF A% = 9 THEN GOTO MAINTBUYSPY
IF A% >= 10 THEN GOTO MAINTBANK
RETURN
MAINTBANKWITHDRAW: 'this is where comp takes gold from bank
G& = G& + (BG& / 10)
BG& = BG& - (BG& / 10)
RETURN
MAINTBANK: 'this is where comp deposits gold in the bank
IF G& < 1500 THEN RETURN
BG& = BG& + 1000
G& = G& - 1000
RETURN
MAINTBUYSPY: 'this is where comp buys spys
IF SP& > CO * 10 THEN RETURN
B& = G& / 50
SP& = SP& + B&
G& = G& - (B& * 50)
RETURN
MAINTCOVERTOP: 'this lets comp do covert ops
MAINTSAVEDATA: 'This saves the comp data
C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
PUT 1, 43, CT%: PUT 1, 44, N$: PUT 1, 45, D$
PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
PUT 1, 52, E3
CLOSE
OPEN "MARKET" FOR RANDOM AS 1
PUT 1, 1, FM&: PUT 1, 2, OM&: PUT 1, 3, SM&
CLOSE
NEXT C
END SUB
SUB CREATECOMP (D4, D3)
CREATECOMP: FOR C = 1 TO 20
PS% = 100: 'Popular Support
TX% = RND(10) * 10: 'Starting Tax Rate
F& = RND(300) * 300: 'Starting Food
SP& = RND(50) * 50: ' Starting Spys
IF C = 1 THEN N$ = "Renegade's Realm": FA& = 7: P& = 180
IF C = 2 THEN N$ = "The One World Order": FA& = 10: P& = 300
IF C = 3 THEN N$ = "Bishop's Realm": FA& = 6: P& = 250
IF C = 4 THEN N$ = "The Banana Republic": FA& = 2: P& = 100
IF C = 5 THEN N$ = "Clintron": FA& = 7: P& = 200
IF C = 6 THEN N$ = "United Socialist States": FA& = 1: P& = 110
IF C = 7 THEN N$ = "The Land Of Zod": FA& = 2: P& = 90
IF C = 8 THEN N$ = "Republiconia": FA& = 1: P& = 85
IF C = 9 THEN N$ = "Reaper's Realm": FA& = 2: P& = 90
IF C = 10 THEN N$ = "Stonia": FA& = 1: P& = 95
IF C = 11 THEN N$ = "Iraqinam": FA& = 2: P& = 100
IF C = 12 THEN N$ = "Endor": FA& = 1: P& = 65
IF C = 13 THEN N$ = "Peacenik": FA& = 1: P& = 40
IF C = 14 THEN N$ = "United Terrorist League": FA& = 2: P& = 200
IF C = 15 THEN N$ = "Destroyer's Realm": FA& = 1: P& = 80
IF C = 16 THEN N$ = "Gorf Island Chain": FA& = 3: P& = 120
IF C = 17 THEN N$ = "The Kingdom Of Gohan": FA& = 4: P& = 60
IF C = 18 THEN N$ = "Blundor": FA& = 1: P& = 55
IF C = 19 THEN N$ = "Democratia": FA& = 1: P& = 90
IF C = 20 THEN N$ = "Warmonger Realm": FA& = 2: P& = 80
FF& = RND(5) * 5
P& = RND(300) * 300
G& = ((TX% / 100) * P&)
BG& = 0
UL% = 0
MM% = 100
CREATECT: 'This creates current target for the comp nations
A% = RND(21) * (21)
IF A% = C THEN GOTO CREATECT
IF A% = 21 THEN GOTO CREATECT
CT% = A%
C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
PUT 1, 43, CT%: PUT 1, 44, N$: PUT 1, 45, D$
PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
PUT 1, 52, E3
CLOSE : NEXT C
TR& = TR& + A1&
HU& = HU& + A2&
TK& = TK& + A3&
JT& = JT& + A4&
BM& = BM& + A5&
AG& = AG& + A6&
MB& = MB& + A7&
PRINT : COLOR 11
PRINT "Factories produced:"
COLOR 10: PRINT : PRINT
PRINT "Soldiers:"; : COLOR 11: PRINT A1&
PRINT
COLOR 10: PRINT "Humvees:"; : COLOR 11: PRINT A2&
PRINT
COLOR 10: PRINT "Tanks:"; : COLOR 11: PRINT A3&
PRINT
COLOR 10: PRINT "Jets:"; : COLOR 11: PRINT A4&
PRINT
COLOR 10: PRINT "Bombers:"; : COLOR 11: PRINT A5&
PRINT
COLOR 10: PRINT "Anti Aircraft:"; : COLOR 11: PRINT A6&
PRINT
COLOR 10: PRINT "Missile Bases:"; : COLOR 11: PRINT A7&
RETURN
END SUB
SUB EDITOR (A$, D4, D3)
EDITOR: CLS
COLOR 10
PRINT "Welcome to the WarGame4 Editor! With this you can change most of the major"
PRINT : PRINT "variables in the game."
PRINT : PRINT
PRINT "Current Settings:"
PRINT "================="
GOSUB CURRENTSETTINGS
COLOR 10
PRINT
PRINT "(R)andom Options Generator"
PRINT
PRINT "(Y)our Own Settings"
PRINT
PRINT "(C)ontinue with Reset using above settings (Game will be Reset)"
PRINT
PRINT "(E)xit Editor (No save changes/no game Reset)"
GOSUB EDITORREPLY
SELECT CASE A$
CASE "R": GOSUB RANDOMED: GOTO EDITOR
CASE "Y": GOTO EDITOR1
CASE "C": GOTO EDITOREND
CASE "E": EXIT SUB
END SELECT
GOTO EDITOR
EDITORREPLY: PRINT : PRINT : PRINT : COLOR 11
PRINT "What is your choice?"
DO: A$ = UCASE$(INKEY$): LOOP UNTIL A$ <> ""
RETURN
RANDOMED: 'this creates random editor options
D0 = 0
A% = RND(5) * 5: IF A% = 5 THEN A% = 2
IF A% = 0 THEN D1 = 500: D0 = D0 + 0
IF A% = 1 THEN D1 = 250: D0 = D0 + 2.5
IF A% = 2 THEN D1 = 100: D0 = D0 + 5
IF A% = 3 THEN D1 = 50: D0 = D0 + 7.5
IF A% = 4 THEN D1 = 25: D0 = D0 + 10
A% = RND(5) * 5: IF A% = 5 THEN A% = 2
IF A% = 0 THEN D2 = 100: D0 = D0 + 0
IF A% = 1 THEN D2 = 75: D0 = D0 + 2.5
IF A% = 2 THEN D2 = 50: D0 = D0 + 5
IF A% = 3 THEN D2 = 25: D0 = D0 + 7.5
IF A% = 4 THEN D2 = 5: D0 = D0 + 10
A% = RND(5) * 5: IF A% = 5 THEN A% = 2
IF A% = 0 THEN D3 = 1000: D0 = D0 + 0
IF A% = 1 THEN D3 = 800: D0 = D0 + 2.5
IF A% = 2 THEN D3 = 600: D0 = D0 + 5
IF A% = 3 THEN D3 = 400: D0 = D0 + 7.5
IF A% = 4 THEN D3 = 200: D0 = D0 + 10
A% = RND(5) * 5: IF A% = 5 THEN A% = 2
IF A% = 0 THEN D4 = 2.5: D0 = D0 + 0
IF A% = 1 THEN D4 = 2: D0 = D0 + 2.5
IF A% = 2 THEN D4 = 1.5: D0 = D0 + 5
IF A% = 3 THEN D4 = 1: D0 = D0 + 7.5
IF A% = 4 THEN D4 = .75: D0 = D0 + 10
A% = RND(5) * 5: IF A% = 5 THEN A% = 2
IF A% = 0 THEN D6 = 400: D0 = D0 + 0
IF A% = 1 THEN D6 = 300: D0 = D0 + 2.5
IF A% = 2 THEN D6 = 200: D0 = D0 + 5
IF A% = 3 THEN D6 = 100: D0 = D0 + 7.5
IF A% = 4 THEN D6 = 10: D0 = D0 + 10
A% = RND(5) * 5: IF A% = 5 THEN A% = 2
IF A% = 0 THEN D7 = 20: D0 = D0 + 0
IF A% = 1 THEN D7 = 15: D0 = D0 + 2.5
IF A% = 2 THEN D7 = 10: D0 = D0 + 5
IF A% = 3 THEN D7 = 5: D0 = D0 + 7.5
IF A% = 4 THEN D7 = 1: D0 = D0 + 10
A% = RND(5) * 5: IF A% = 5 THEN A% = 2
IF A% = 0 THEN D9 = 25000: D0 = D0 + 0
IF A% = 1 THEN D9 = 20000: D0 = D0 + 2.5
IF A% = 2 THEN D9 = 15000: D0 = D0 + 5
IF A% = 3 THEN D9 = 10000: D0 = D0 + 7.5
IF A% = 4 THEN D9 = 5000: D0 = D0 + 10
A% = RND(5) * 5: IF A% = 5 THEN A% = 2
IF A% = 0 THEN D10 = 5: D0 = D0 + 0
IF A% = 1 THEN D10 = 4: D0 = D0 + 2.5
IF A% = 2 THEN D10 = 3: D0 = D0 + 5
IF A% = 3 THEN D10 = 2: D0 = D0 + 7.5
IF A% = 4 THEN D10 = 1: D0 = D0 + 10
RETURN
CURRENTSETTINGS: COLOR 11
IF D1 = 0 THEN GOSUB DEFAULT
D0 = 0
IF D1 = 500 THEN B$ = "Very Easy": D0 = D0 + 0
IF D1 = 250 THEN B$ = "Easy": D0 = D0 + 2.5
IF D1 = 100 THEN B$ = "Normal": D0 = D0 + 5
IF D1 = 50 THEN B$ = "Hard": D0 = D0 + 7.5
IF D1 = 25 THEN B$ = "Very Hard": D0 = D0 + 10
PRINT "Turns per day:"; : COLOR 15: PRINT D1; : PRINT "... "; : PRINT B$
PRINT : COLOR 11
IF D2 = 100 THEN B$ = "Very Easy": D0 = D0 + 0
IF D2 = 75 THEN B$ = "Easy": D0 = D0 + 2.5
IF D2 = 50 THEN B$ = "Normal": D0 = D0 + 5
IF D2 = 25 THEN B$ = "Hard": D0 = D0 + 7.5
IF D2 = 5 THEN B$ = "Very Hard": D0 = D0 + 10
PRINT "Turns of Protection:"; : COLOR 15: PRINT D2; : PRINT "... "; : PRINT B$
PRINT : COLOR 11
IF D3 = 1000 THEN B$ = "Very Easy": D0 = D0 + 0
IF D3 = 800 THEN B$ = "Easy": D0 = D0 + 2.5
IF D3 = 600 THEN B$ = "Normal": D0 = D0 + 5
IF D3 = 400 THEN B$ = "Hard": D0 = D0 + 7.5
IF D3 = 200 THEN B$ = "Very Hard": D0 = D0 + 10
PRINT "Factory requirement:"; : COLOR 15: PRINT D3; : PRINT "... "; : PRINT B$
PRINT : COLOR 11
IF D4 = 2.5 THEN B$ = "Very Easy": D0 = D0 + 0
IF D4 = 2 THEN B$ = "Easy": D0 = D0 + 2.5
IF D4 = 1.5 THEN B$ = "Normal": D0 = D0 + 5
IF D4 = 1 THEN B$ = "Hard": D0 = D0 + 7.5
IF D4 = .75 THEN B$ = "Very Hard": D0 = D0 + 10
PRINT "Price of Food:"; : COLOR 15: PRINT D4; : PRINT "... "; : PRINT B$
PRINT : COLOR 11
IF D6 = 400 THEN B$ = "Very Easy": D0 = D0 + 0
IF D6 = 300 THEN B$ = "Easy": D0 = D0 + 2.5
IF D6 = 200 THEN B$ = "Normal": D0 = D0 + 5
IF D6 = 100 THEN B$ = "Hard": D0 = D0 + 7.5
IF D6 = 10 THEN B$ = "Very Hard": D0 = D0 + 10
PRINT "Starting Population:"; : COLOR 15: PRINT D6; : PRINT "... "; : PRINT B$
PRINT : COLOR 11
IF D7 = 20 THEN B$ = "Very Easy": D0 = D0 + 0
IF D7 = 15 THEN B$ = "Easy": D0 = D0 + 2.5
IF D7 = 10 THEN B$ = "Normal": D0 = D0 + 5
IF D7 = 5 THEN B$ = "Hard": D0 = D0 + 7.5
IF D7 = 1 THEN B$ = "Very Hard": D0 = D0 + 10
PRINT "Covert Ops per turn:"; : COLOR 15: PRINT D7; : PRINT "... "; : PRINT B$
PRINT : COLOR 11
IF D9 = 25000 THEN B$ = "Very Easy": D0 = D0 + 0
IF D9 = 20000 THEN B$ = "Easy": D0 = D0 + 2.5
IF D9 = 15000 THEN B$ = "Normal": D0 = D0 + 5
IF D9 = 10000 THEN B$ = "Hard": D0 = D0 + 7.5
IF D9 = 5000 THEN B$ = "Very Hard": D0 = D0 + 10
PRINT "Food in Food Market:"; : COLOR 15: PRINT D9; : PRINT "... "; : PRINT B$
PRINT : COLOR 11
IF D10 = 5 THEN B$ = "Very Easy": D0 = D0 + 0
IF D10 = 4 THEN B$ = "Easy": D0 = D0 + 2.5
IF D10 = 3 THEN B$ = "Normal": D0 = D0 + 5
IF D10 = 2 THEN B$ = "Hard": D0 = D0 + 7.5
IF D10 = 1 THEN B$ = "Very Hard": D0 = D0 + 10
PRINT "Interest Rate: "; : COLOR 15: PRINT "0 -"; : PRINT D10; : PRINT "% ... "; : PRINT B$
PRINT : COLOR 11
PRINT "Overall Difficulty:"; : COLOR 15: PRINT D0; : PRINT "%"
PRINT : RETURN
EDITOR1: CLS : COLOR 11
PRINT "Turns per Day:"
PRINT "=============="
COLOR 10
PRINT "This is how many turns per day you have. The less you have, the slower and"
PRINT
PRINT "longer it will take to complete. A higher amount tends to speed up the game"
PRINT
PRINT "and allow for faster building. A higher amount is definitely easier but will"
PRINT
PRINT "also give you less points."
PRINT : PRINT
PRINT "A very easy setting (1) gives you 500 turns per day"
PRINT
PRINT "An easy setting (2) gives you 250 turns per day"
PRINT
PRINT "A normal setting (3) gives you 100 turns per day"
PRINT
PRINT "A hard setting (4) gives you 50 turns per day"
PRINT
PRINT "A very hard setting (5) gives you 25 turns per day"
GOSUB EDITORREPLY: SELECT CASE A$
CASE "1": D1 = 500: B = 0: GOTO EDITOR2
CASE "2": D1 = 250: B = 2.5: GOTO EDITOR2
CASE "3": D1 = 100: B = 5: GOTO EDITOR2
CASE "4": D1 = 50: B = 7.5: GOTO EDITOR2
CASE "5": D1 = 25: B = 10: GOTO EDITOR2
END SELECT: GOTO EDITOR1
EDITOR2: CLS : COLOR 11
PRINT "Turns of Protection:"
PRINT "===================="
COLOR 10
PRINT "This is how many turns you get at the beginning of your nations existance"
PRINT
PRINT "where you are free from attacks. A lower setting is harder and will get you"
PRINT
PRINT "killed more often. A higher setting will allow you to build to where you can"
PRINT
PRINT "properly defend yourself."
PRINT : PRINT
PRINT "A very easy setting (1) gives you 100 turns of Protection"
PRINT
PRINT "An easy setting (2) gives you 75 turns of Protection"
PRINT
PRINT "A normal setting (3) gives you 50 turns of Protection"
PRINT
PRINT "A hard setting (4) gives you 25 turns of Protection"
PRINT
PRINT "A very hard setting (5) gives you 5 turns of protection"
GOSUB EDITORREPLY: SELECT CASE A$
CASE "1": D2 = 100: B = B + 0: GOTO EDITOR3
CASE "2": D2 = 75: B = B + 2.5: GOTO EDITOR3
CASE "3": D2 = 50: B = B + 5: GOTO EDITOR3
CASE "4": D2 = 25: B = B + 7.5: GOTO EDITOR3
CASE "5": D2 = 5: B = B + 10: GOTO EDITOR3
END SELECT: GOTO EDITOR2
EDITOR3: CLS : COLOR 11
PRINT "Factory Requirements:"
PRINT "====================="
COLOR 10
PRINT "This option determines how many Industrial Factories you will need for every"
PRINT
PRINT "x amount of citizens. More people per Factory means you will not have to buy"
PRINT
PRINT "as many Factories to keep Unemployment stable. Less people per Factory means"
PRINT
PRINT "you must purchase more Factories to combat Unemployment. Example, if one had"
PRINT
PRINT "a national Population of 2400 million people, on very easy mode they would"
PRINT
PRINT "only require 2 Factories to keep Unemployment down. But on very hard setting,"
PRINT
PRINT "you would need 6 Factories to accomplish the same thing. "
PRINT : PRINT
PRINT "A very easy setting (1) needs 1 Factory for every 1000 million citizens"
PRINT
PRINT "An easy setting (2) needs 1 Factory for every 800 million citizens"
PRINT
PRINT "A normal setting (3) needs 1 Factory for every 600 million citizens"
PRINT
PRINT "A hard setting (4) needs 1 Factory for every 400 million citizens"
PRINT
PRINT "A very hard setting (5) needs 1 Factory for every 200 million citizens"
GOSUB EDITORREPLY: SELECT CASE A$
CASE "1": D3 = 1000: B = B + 0: GOTO EDITOR4
CASE "2": D3 = 800: B = B + 2.5: GOTO EDITOR4
CASE "3": D3 = 600: B = B + 5: GOTO EDITOR4
CASE "4": D3 = 400: B = B + 7.5: GOTO EDITOR4
CASE "5": D3 = 200: B = B + 10: GOTO EDITOR4
END SELECT: GOTO EDITOR3
EDITOR4: CLS : COLOR 11
PRINT "Price of Food:"
PRINT "=============="
COLOR 10
PRINT "This is how much Food will cost per ton. At first glance it would appear that"
PRINT
PRINT "a cheaper price would be easier, but its not. This is because the lower the"
PRINT
PRINT "Food cost, the more Food they consume. Civilians and Soldiers on very hard"
PRINT
PRINT "eat over 3 times the amount of Food as those on very easy. Hard and very hard"
PRINT
PRINT "modes are difficult and you will be spending alot of Gold on Food Farms."
PRINT : PRINT
PRINT "A very easy setting (1) makes the price 2.5 Gold per ton"
PRINT
PRINT "An easy setting (2) makes the price 2 Gold per ton"
PRINT
PRINT "A normal setting (3) makes the price 1.5 Gold per ton"
PRINT
PRINT "A hard setting (4) makes the price 1 Gold per ton"
PRINT
PRINT "A very hard setting (5) makes the price .75 Gold per ton"
GOSUB EDITORREPLY: SELECT CASE A$
CASE "1": D4 = 2.5: B = B + 0: GOTO EDITOR5
CASE "2": D4 = 2: B = B + 2.5: GOTO EDITOR5
CASE "3": D4 = 1.5: B = B + 5: GOTO EDITOR5
CASE "4": D4 = 1: B = B + 7.5: GOTO EDITOR5
CASE "5": D4 = .75: B = B + 10: GOTO EDITOR5
END SELECT: GOTO EDITOR4
EDITOR5: GOTO EDITOR6
EDITOR6: CLS : COLOR 11
PRINT "Starting Population:"
PRINT "===================="
COLOR 10
PRINT "This is the number of civilians you start with. Although they may not look"
PRINT
PRINT "like much of a difference, in the early game having a larger Population to"
PRINT
PRINT "start out can help greatly. With the larger Population, you could be 5-6"
PRINT
PRINT "turns ahead of what you would be with a lower setting."
PRINT : PRINT
PRINT "A very easy setting (1) has you start with 400 million"
PRINT
PRINT "An easy setting (2) has you start with 300 million"
PRINT
PRINT "A normal setting (3) has you start with 200 million"
PRINT
PRINT "A hard setting (4) has you start with 100 million"
PRINT
PRINT "A very hard setting (5) has you start with 10 million"
GOSUB EDITORREPLY: SELECT CASE A$
CASE "1": D6 = 400: B = B + 0: GOTO EDITOR7
CASE "2": D6 = 300: B = B + 2.5: GOTO EDITOR7
CASE "3": D6 = 200: B = B + 5: GOTO EDITOR7
CASE "4": D6 = 100: B = B + 7.5: GOTO EDITOR7
CASE "5": D6 = 10: B = B + 10: GOTO EDITOR7
END SELECT: GOTO EDITOR6
EDITOR7: CLS : COLOR 11
PRINT "Amount of Covert Ops per turn:"
PRINT "=============================="
COLOR 10
PRINT "This is how many Covert Ops you can perform each turn. More Covert Ops allow"
PRINT
PRINT "you to do more destruction to your enemies, and is easier. A harder setting"
PRINT
PRINT "will make Covert Ops less a factor in the overall game. This will severely"
PRINT
PRINT "restrict your ability to wage war on the other nations."
PRINT : PRINT
PRINT "A very easy setting (1) gives you 20 Covert operations per turn"
PRINT
PRINT "AN easy setting (2) gives you 15 Covert Operations per turn"
PRINT
PRINT "A normal setting (3) gives you 10 Covert Operations per turn"
PRINT
PRINT "A hard setting (4) gives you 5 Covert Operations per turn"
PRINT
PRINT "A very hard setting (5) gives you 1 Covert Operation per turn"
GOSUB EDITORREPLY: SELECT CASE A$
CASE "1": D7 = 20: B = B + 0: GOTO EDITOR8
CASE "2": D7 = 15: B = B + 2.5: GOTO EDITOR8
CASE "3": D7 = 10: B = B + 5: GOTO EDITOR8
CASE "4": D7 = 5: B = B + 7.5: GOTO EDITOR8
CASE "5": D7 = 1: B = B + 10: GOTO EDITOR8
END SELECT: GOTO EDITOR7
EDITOR8: CLS : GOTO EDITOR9
EDITOR9: CLS : COLOR 11
PRINT "Starting amount of Food in Food Market:"
PRINT "======================================="
COLOR 10
PRINT "This setting determines the amount of Foof that starts out in the Food Market."
PRINT
PRINT "A higher amount is recommended for those who dont want to see Food shortages."
PRINT
PRINT "As comps also buy and sell Food, they can deplete the amount of Food in the"
PRINT
PRINT "Food Market."
PRINT : PRINT
PRINT "A very easy setting (1) sets the amount at 25,000 tons"
PRINT
PRINT "AN easy setting (2) sets the amount at 20,000 tons"
PRINT
PRINT "A normal setting (3) sets the amount at 15,000 tons"
PRINT
PRINT "A hard setting (4) sets the amount at 10,000 tons"
PRINT
PRINT "A very hard setting (5) sets the amount at 5000 tons"
GOSUB EDITORREPLY: SELECT CASE A$
CASE "1": D9 = 25000: B = B + 0: GOTO EDITOR10
CASE "2": D9 = 20000: B = B + 2.5: GOTO EDITOR10
CASE "3": D9 = 15000: B = B + 5: GOTO EDITOR10
CASE "4": D9 = 10000: B = B + 7.5: GOTO EDITOR10
CASE "5": D9 = 5000: B = B + 10: GOTO EDITOR10
END SELECT: GOTO EDITOR9
EDITOR10: CLS : COLOR 11
PRINT "Interest Rate:"
PRINT "======================================"
COLOR 10
PRINT "This is how much Interest you recieve when you invest Gold in the Bank. Higher"
PRINT
PRINT "interest Rates will get you more Gold but lower your overall point total at"
PRINT
PRINT "the end of the game."
PRINT : PRINT
PRINT "A very easy setting (1) sets the Interest Rate at 0%-5%"
PRINT
PRINT "An easy setting (2) sets the Interest Rate at 0%-4%"
PRINT
PRINT "A normal setting (3) sets the Interset Rate at 0%-3%"
PRINT
PRINT "A hard setting (4) sets the Interest Rate at 0%-2%"
PRINT
PRINT "A very hard setting (5) sets the Interest Rate at 0%-1%"
GOSUB EDITORREPLY: SELECT CASE A$
CASE "1": D10 = 5: B = B + 0: GOTO EDITOR11
CASE "2": D10 = 4: B = B + 2.5: GOTO EDITOR11
CASE "3": D10 = 3: B = B + 5: GOTO EDITOR11
CASE "4": D10 = 2: B = B + 7.5: GOTO EDITOR11
CASE "5": D10 = 1: B = B + 10: GOTO EDITOR11
END SELECT: GOTO EDITOR10
EDITSAVE: PRINT
C = 0
C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
PUT 1, 43, X%: PUT 1, 44, N$: PUT 1, 45, D$
PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
PUT 1, 52, E3
CLOSE
OPEN "MARKET" FOR RANDOM AS 1
PUT 1, 1, FM&: PUT 1, 2, OM&: PUT 1, 3, SM&
CLOSE : RETURN
END SUB
SUB FOODMARKET (D4, G&, FM&, F&)
FOODMARKET: CLS : COLOR 10: A = 0
PRINT "Planetary Food Market:": PRINT "======================"
IF FM& <= 5000 THEN GOSUB LOWFOOD
IF FM& < 0 THEN FM& = 0
PRINT : COLOR 10
PRINT "We have"; : COLOR 11: PRINT FM&; : COLOR 10: PRINT "tons of Food."
PRINT
PRINT "We are selling Food for"; : COLOR 11: PRINT D4 + A; : COLOR 10: PRINT "Gold per ton."
PRINT
PRINT "We are buying Food for"; : COLOR 11: PRINT D4 / 2; : COLOR 10: PRINT "Gold per ton."
PRINT
PRINT "You have"; : COLOR 11: PRINT F&; : COLOR 10: PRINT "tons of Food."
PRINT
PRINT "You also have"; : COLOR 11: PRINT G&; : COLOR 10: PRINT "Gold."
PRINT : PRINT : PRINT : COLOR 11
PRINT "(B)uy Food"
PRINT : PRINT "(E)xit Food Market"
PRINT : PRINT : COLOR 10
PRINT "What is your choice?"
DO: A$ = UCASE$(INKEY$)
LOOP UNTIL A$ <> ""
SELECT CASE A$
CASE "E": EXIT SUB
CASE "B": GOTO BUYFOOD
END SELECT
GOTO FOODMARKET
LOWFOOD: COLOR 12
IF FM& = 0 THEN PRINT "We have no Food to sell!! Perhaps you could sell us some!": RETURN
IF FM& <= 1000 THEN PRINT "We have little Food to sell! We are forced to yet again raise prices!": A = 3: RETURN
IF FM& <= 3000 THEN PRINT "We are very short on Food! This does not bode well for the future!": A = 2: RETURN
IF FM& <= 5000 THEN PRINT "We have a Food shortage! We have no choice but to raise our prices!": A = 1: RETURN
BUYFOOD: CLS : COLOR 10
PRINT "We are selling our Food Market brand Food for"; : COLOR 11: PRINT D4 + A; : COLOR 10: PRINT "Gold per ton."
PRINT
PRINT "We have"; : COLOR 11: PRINT FM&; : COLOR 10: PRINT "tons of Food for sale."
PRINT
PRINT "You have"; : COLOR 11: PRINT G&; : COLOR 10: PRINT "Gold."
PRINT
A& = G& / (D4 + A)
IF A& > FM& THEN A& = FM&
PRINT "You can buy"; : COLOR 11: PRINT A&; : COLOR 10: PRINT "tons of Food."
PRINT : PRINT
PRINT "How much would you like to buy (0 -"; : PRINT A&; : PRINT ")"; : INPUT B&
IF B& = 9778 THEN F& = F& + 100: GOTO FOODMARKET
IF B& < 0 THEN GOTO BUYFOOD
IF B& > A& THEN GOTO BUYFOOD
IF B& = 0 THEN GOTO FOODMARKET
G& = G& - (B& * (D4 + A))
F& = F& + B&: FM& = FM& - B&
GOTO FOODMARKET
END SUB
SUB IMPROVEMENTS
IMPROVEMENTS: CLS : COLOR 11
PRINT "Recent Improvements: Version 4.00"
PRINT "================================"
COLOR 10
PRINT "* Finished Food Market options"
PRINT "* Finished Global Bank options"
PRINT "* Finished Purchase Units options"
PRINT "* Finished Top Ten list"
PRINT "* Finished Industrial Output options"
PRINT "* Finished Current Status"
PRINT : PRINT : COLOR 11
PRINT "Recent Improvements: Version 4.01"
PRINT "================================="
COLOR 10
PRINT "* Finished Policies/Taxes options"
PRINT "* Finished Covert Operations options"
PRINT "* Finished Advisors options"
PRINT : PRINT
PRINT "Press a key"
DO: A$ = UCASE$(INKEY$)
LOOP UNTIL A$ <> ""
END SUB
SUB MILITARYMORAL (MM%)
COLOR 15
IF MM% = 100 THEN PRINT "Your military sees you as the perfect commander!": EXIT SUB
IF MM% > 95 THEN PRINT "Your military has confidence in your ability to lead!": EXIT SUB
IF MM% > 90 THEN PRINT "The military trusts you when you issue commands!": EXIT SUB
IF MM% > 85 THEN PRINT "Your military, for the most part, agree with your orders!": EXIT SUB
IF MM% > 80 THEN PRINT "Some military personel are puzzled by your tactics!": EXIT SUB
IF MM% > 75 THEN PRINT "Your military officers are questioning your orders!": EXIT SUB
IF MM% > 60 THEN PRINT "The military has little trust in your leadership qualities!": EXIT SUB
IF MM% > 45 THEN PRINT "The military is divided on your ability to lead them!": EXIT SUB
IF MM% > 30 THEN PRINT "Many in the military speak hostily of you!": EXIT SUB
IF MM% > 15 THEN PRINT "Your military has no confidence in your ability to lead them!": EXIT SUB
IF MM% > 0 THEN PRINT "Most of your generals are calling for your overthrow!": EXIT SUB
IF MM% = 0 THEN PRINT "You just survived a military coup!": EXIT SUB
END SUB
SUB POPULARSUPPORT (PS%)
POPULARSUPPORT: COLOR 15
IF PS% = 100 THEN PRINT "The people love you! You are loved by everyone!!": EXIT SUB
IF PS% > 95 THEN PRINT "Your citizens admire you for your decision making skills!": EXIT SUB
IF PS% > 90 THEN PRINT "The people of the nation think highly of your policies!": EXIT SUB
IF PS% > 85 THEN PRINT "You are well liked by the citizens of the nation!": EXIT SUB
IF PS% > 75 THEN PRINT "Some people are questioning your policies!": EXIT SUB
IF PS% > 60 THEN PRINT "A slim majority of your citizens appove of your actions!": EXIT SUB
IF PS% > 45 THEN PRINT "The nation is divided by your policies!": EXIT SUB
IF PS% > 30 THEN PRINT "Most citizens are disgusted by your administration!": EXIT SUB
IF PS% > 15 THEN PRINT "The citizens want you out of office!": EXIT SUB
IF PS% > 0 THEN PRINT "You have just survived an assassination attempt! WATCH OUT!!": EXIT SUB
IF PS = 0 THEN PRINT "You just survived a presidental car bombing! This isnt good!": EXIT SUB
RANDOMEVENTS: COLOR 10
B% = RND(100) * 100
IF B% >= 11 THEN EXIT SUB
A% = RND(34) * 34
IF A% = 1 THEN GOTO RANDOMEVENTS1
IF A% = 2 THEN GOTO RANDOMEVENTS2
IF A% = 3 THEN GOTO RANDOMEVENTS3
IF A% = 4 THEN GOTO RANDOMEVENTS4
IF A% = 5 THEN GOTO RANDOMEVENTS5
IF A% = 6 THEN GOTO RANDOMEVENTS6
IF A% = 7 THEN GOTO RANDOMEVENTS7
IF A% = 8 THEN GOTO RANDOMEVENTS8
IF A% = 9 THEN GOTO RANDOMEVENTS9
IF A% = 10 THEN GOTO RANDOMEVENTS10
IF A% = 11 THEN GOTO RANDOMEVENTS11
IF A% = 12 THEN GOTO RANDOMEVENTS12
IF A% = 13 THEN GOTO RANDOMEVENTS13
IF A% = 14 THEN GOTO RANDOMEVENTS14
IF A% = 15 THEN GOTO RANDOMEVENTS15
IF A% = 16 THEN GOTO RANDOMEVENTS16
IF A% = 17 THEN GOTO RANDOMEVENTS17
IF A% = 18 THEN GOTO RANDOMEVENTS18
IF A% = 19 THEN GOTO RANDOMEVENTS19
IF A% = 20 THEN GOTO RANDOMEVENTS20
IF A% = 21 THEN GOTO RANDOMEVENTS21
IF A% = 22 THEN GOTO RANDOMEVENTS22
IF A% = 23 THEN GOTO RANDOMEVENTS23
IF A% = 24 THEN GOTO RANDOMEVENTS24
IF A% = 25 THEN GOTO RANDOMEVENTS25
IF A% = 26 THEN GOTO RANDOMEVENTS26
IF A% = 27 THEN GOTO RANDOMEVENTS27
IF A% = 28 THEN GOTO RANDOMEVENTS28
IF A% = 29 THEN GOTO RANDOMEVENTS29
IF A% = 30 THEN GOTO RANDOMEVENTS30
IF A% = 31 THEN GOTO RANDOMEVENTS31
IF A% = 32 THEN GOTO RANDOMEVENTS32
IF A% = 33 THEN GOTO RANDOMEVENTS33
'IF A% = 34 THEN GOTO RANDOMEVENTS34
EXIT SUB
RANDOMEVENTS1: COLOR 15
A& = RND(P& / 2) * (P& / 2): P& = P& + A&: PRINT
PRINT A&; : PRINT "million people have immigrated to your nation!!"
EXIT SUB
RANDOMEVENTS2: COLOR 15
A& = RND(P& / 2) * (P& / 2): P& = P& - A&: PRINT
PRINT A&; : PRINT "million people were killed from a government released virus!"
PRINT "Popular Support is also lowered as a result!"
A% = RND(20) * 20: PS% = PS% - A%: IF PS% < 0 THEN PS% = 0
EXIT SUB
RANDOMEVENTS3: COLOR 15
A& = RND(P& / 4) * (P& / 4): P& = P& + A&: PRINT
PRINT "Because of a cloning experiment gone wrong, your population has dramatically"
PRINT "increased by"; : PRINT A&; : PRINT "million!"
EXIT SUB
RANDOMEVENTS4: COLOR 15
A& = RND(TR& / 5) * (TR& / 5): TR& = TR& + A&: PRINT
PRINT A&; : PRINT "extra Soldiers enlist in your military!"
EXIT SUB
RANDOMEVENTS5: COLOR 15
A& = RND(TR& / 5) * (TR& / 5): TR& = TR& - A&: PRINT
PRINT A&; : PRINT "Soldiers are killed from an ammo explosion!"
EXIT SUB
RANDOMEVENTS6: COLOR 15
A& = RND(TR& / 10) * (TR& / 10): TR& = TR& + A&: PRINT
PRINT A&; : PRINT "Soldiers are re-activated from inactive duty!"
EXIT SUB
RANDOMEVENTS7: COLOR 15
A& = RND(TR& / 10) * (TR& / 10): TR& = TR& - A&: PRINT
PRINT "Because of friendly fire,"; : PRINT A&; : PRINT "Soldiers are killed!"
EXIT SUB
RANDOMEVENTS8: COLOR 15
A& = RND(HU& / 10) * (HU& / 10): HU& = HU& + A&: PRINT
PRINT "Because of strong output,"; : PRINT A&; : PRINT "extra Humvees were produced!"
EXIT SUB
RANDOMEVENTS21: COLOR 15
A& = RND(F& / 5) * (F& / 5): F& = F& - A&: PRINT
PRINT "Because of poor storage,"; : PRINT A&; : PRINT "tons of Food spoil!"
EXIT SUB
RANDOMEVENTS22: COLOR 15
A& = RND(TR& / 10) * (TR& / 10): TR& = TR& - A&: PRINT
PRINT A&; : PRINT "Soldiers die from complications from Agent Orange!"
EXIT SUB
RANDOMEVENTS23: COLOR 15
A& = RND(HU& / 10) * (HU& / 10): HU& = HU& - A&: PRINT
PRINT A&; : PRINT "Humvees were given Jet fuel and explode!"
EXIT SUB
RANDOMEVENTS24: COLOR 15
A& = RND(TK& / 10) * (TK& / 10): TK& = TK& - A&: PRINT
PRINT A&; : PRINT "Tanks were melted for scrap metal!"
EXIT SUB
RANDOMEVENTS25: COLOR 15
A& = RND(JT& / 10) * (JT& / 10): JT& = JT& - A&: PRINT
PRINT A&; : PRINT "Jets were lost in the Bermuda Triangle!"
EXIT SUB
RANDOMEVENTS26: COLOR 15
A& = RND(BM& / 10) * (BM& / 10): BM& = BM& - A&: PRINT
PRINT A&; : PRINT "Bombers were destroyed in mid-air collisions!"
EXIT SUB
RANDOMEVENTS27: COLOR 15
A& = RND(FF& / 10) * (FF& / 10): FF& = FF& - A&: PRINT
PRINT A&; : PRINT "Food Farms were destroyed by floods!"
EXIT SUB
RANDOMEVENTS28: COLOR 15
A& = RND(FA& / 10) * (FA& / 10): FA& = FA& - A&: PRINT
PRINT A&; : PRINT "Factories explode from bad chemical reactions!"
EXIT SUB
RANDOMEVENTS29: COLOR 15
A& = RND(F& / 10) * (F& / 10): F& = F& - A&: PRINT
PRINT A&; : PRINT "tons of food are devoured by rats and other vermin!"
EXIT SUB
RANDOMEVENTS30: COLOR 15
A& = RND(G& / 10) * (G& / 10): G& = G& - A&: PRINT
PRINT A&; : PRINT "Gold disappears from your treasury!"
EXIT SUB
RANDOMEVENTS31: COLOR 15
A& = RND(P& / 10) * (P& / 10): P& = P& - A&: PRINT
PRINT A&; : PRINT "million citizens die from a nationwide hunger strike!"
EXIT SUB
RANDOMEVENTS32: COLOR 15
A& = RND(FM& / 10) * (FM& / 10): FM& = FM& - A&: PRINT
PRINT A&; : PRINT "tons of Food Market food is destroyed by mold!"
EXIT SUB
RANDOMEVENTS33: COLOR 15
A& = RND(PS% / 10) * (PS% / 10): PS% = PS% - A&: PRINT
PRINT "Your Popular Support dropped"; : PRINT A&; : PRINT "% from a scandal!"
EXIT SUB
END SUB
SUB STATUS
STATUS: C = 0
GOSUB AUTOLOAD1
'IF N$ = "" THEN EXIT SUB
CLS : COLOR 11
PRINT N$; : COLOR 10: LOCATE , 55: PRINT "Difficulty:"; : COLOR 11: PRINT D0; : COLOR 10: PRINT "%"
PRINT "============================================================================"
PRINT "Turns left today:"; : COLOR 11: PRINT E1
IF E2 > 0 THEN COLOR 10: PRINT "Turns of protection left:"; : COLOR 11: PRINT E2
COLOR 10: PRINT "Total turns taken thus far:"; : COLOR 11: PRINT E3
PRINT
COLOR 10: PRINT "Current population:"; : COLOR 11: PRINT P&; : COLOR 10: PRINT "million"
PRINT "Popular Support:"; : COLOR 11: PRINT PS%; : COLOR 10: PRINT "%"
PRINT "Tax Rate:"; : COLOR 11: PRINT TX%; : COLOR 10: PRINT "%"
PRINT "Unemployment Rate:"; : COLOR 11: PRINT UL%; : COLOR 10: PRINT "%"
PRINT "Current Interest Rate:"; : COLOR 11: PRINT IR%; : COLOR 10: PRINT "%"
PRINT "Gold:"; : COLOR 11: PRINT G&
COLOR 10: PRINT "Gold in bank:"; : COLOR 11: PRINT BG&
PRINT
COLOR 10: PRINT "Military Moral:"; : COLOR 11: PRINT MM%; : COLOR 10: PRINT "%"
COLOR 10: PRINT "Soldiers:"; : COLOR 11: PRINT TR&
COLOR 10: PRINT "Humvees:"; : COLOR 11: PRINT HU&
COLOR 10: PRINT "Tanks:"; : COLOR 11: PRINT TK&
COLOR 10: PRINT "Jets:"; : COLOR 11: PRINT JT&
COLOR 10: PRINT "Bombers:"; : COLOR 11: PRINT BM&
COLOR 10: PRINT "Anti-Aircraft:"; : COLOR 11: PRINT AG&
COLOR 10: PRINT "Missile Bases:"; : COLOR 11: PRINT MB&
PRINT
COLOR 10: PRINT "Tons of Food:"; : COLOR 11: PRINT F&
COLOR 10: PRINT "Food Farms:"; : COLOR 11: PRINT FF&
COLOR 10: PRINT "Factories:"; : COLOR 11: PRINT FA&
PRINT
COLOR 10: PRINT "Spys:"; : COLOR 11: PRINT SP&
COLOR 10: PRINT "Covert Operations left this turn:"; : COLOR 11: PRINT CO
PRINT
FOR C = 1 TO CT%
NEXT C
GOSUB AUTOLOAD1
COLOR 10: PRINT "Current Target: "; : COLOR 11: PRINT N$
PRINT : PRINT : COLOR 7
PRINT "Would you like to change your Current Target? (Y/N)"
DO: A$ = UCASE$(INKEY$)
LOOP UNTIL A$ <> ""
SELECT CASE A$
CASE "Y": GOTO CURRENTTARGET
CASE "N": EXIT SUB
END SELECT
GOTO STATUS
AUTOLOAD1: C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
GET 1, 1, D0: GET 1, 2, D1: GET 1, 3, D2
GET 1, 4, D3: GET 1, 5, D4: GET 1, 6, D5
GET 1, 7, D6: GET 1, 8, D7: GET 1, 9, D8
GET 1, 10, D9: GET 1, 11, D10: GET 1, 12, D11
GET 1, 13, VR: GET 1, 14, F&: GET 1, 15, G&
GET 1, 16, BG&: GET 1, 17, FM&: GET 1, 18, P&
GET 1, 19, TR&: GET 1, 20, HU&: GET 1, 21, TK&
GET 1, 22, JT&: GET 1, 23, BM&: GET 1, 24, MB&
GET 1, 25, AG&: GET 1, 26, SP&: GET 1, 27, FF&
GET 1, 28, FA&: GET 1, 29, X&: GET 1, 30, X&
GET 1, 31, PS%: GET 1, 32, TX%: GET 1, 33, IR%
GET 1, 34, HU%: GET 1, 35, TR%: GET 1, 36, TK%
GET 1, 37, JT%: GET 1, 38, BM%: GET 1, 39, MB%
GET 1, 40, AG%: GET 1, 41, UL%: GET 1, 42, MM%
GET 1, 43, CT%: GET 1, 44, N$: GET 1, 45, D$
GET 1, 46, EN: GET 1, 47, EN1: GET 1, 48, EN2
GET 1, 49, CO: GET 1, 50, E1: GET 1, 51, E2
GET 1, 52, E3
CLOSE
RETURN
CURRENTTARGET: 'this changes your current target
CLS : COLOR 11: PRINT "Nation # Nation Name"
PRINT "====================================="
FOR C = 1 TO 20
GOSUB AUTOLOAD1
IF N$ = "" THEN GOTO CURRENTTARGET1
COLOR 10
LOCATE , 3: PRINT C; : LOCATE , 20: PRINT N$
CURRENTTARGET1: NEXT C
COLOR 11: PRINT
PRINT "Which nation do you want as your Current Target (0 exits)"; : INPUT A%
IF A% < 0 THEN GOTO CURRENTTARGET
IF A% = 0 THEN EXIT SUB
IF A% > 20 THEN GOTO CURRENTTARGET
C = A%: GOSUB AUTOLOAD1
IF N$ = "" THEN GOTO NOTARGET
C = 0: GOSUB AUTOLOAD1
CT% = A% - 1: GOSUB AUTOSAVE1
GOTO STATUS
AUTOSAVE1: PRINT
C = 0
C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
PUT 1, 1, D0: PUT 1, 2, D1: PUT 1, 3, D2
PUT 1, 4, D3: PUT 1, 5, D4: PUT 1, 6, D5
PUT 1, 7, D6: PUT 1, 8, D7: PUT 1, 9, D8
PUT 1, 10, D9: PUT 1, 11, D10: PUT 1, 12, D11
PUT 1, 13, VR: PUT 1, 14, F&: PUT 1, 15, G&
PUT 1, 16, BG&: PUT 1, 17, XX&: PUT 1, 18, P&
PUT 1, 19, TR&: PUT 1, 20, HU&: PUT 1, 21, TK&
PUT 1, 22, JT&: PUT 1, 23, BM&: PUT 1, 24, MB&
PUT 1, 25, AG&: PUT 1, 26, SP&: PUT 1, 27, FF&
PUT 1, 28, FA&: PUT 1, 29, X&: PUT 1, 30, X&
PUT 1, 31, PS%: PUT 1, 32, TX%: PUT 1, 33, IR%
PUT 1, 34, HU%: PUT 1, 35, TR%: PUT 1, 36, TK%
PUT 1, 37, JT%: PUT 1, 38, BM%: PUT 1, 39, MB%
PUT 1, 40, AG%: PUT 1, 41, UL%: PUT 1, 42, MM%
PUT 1, 43, CT%: PUT 1, 44, N$: PUT 1, 45, D$
PUT 1, 46, EN: PUT 1, 47, EN1: PUT 1, 48, EN2
PUT 1, 49, CO: PUT 1, 50, E1: PUT 1, 51, E2
PUT 1, 52, E3
CLOSE : RETURN
NOTARGET: COLOR 12
PRINT : PRINT "This nation no longer exists!! Please choose a different one!"
COLOR 7: PRINT : PRINT "Press a key"
DO: A$ = UCASE$(INKEY$)
LOOP UNTIL A$ <> ""
GOTO CURRENTTARGET
END SUB
SUB TOPSCORES
TOPSCORES: 'this creates top ten list
CLS : COLOR 10
PRINT "WarGame4 - Top Ten nations with highest net value:"
COLOR 11
LOCATE 4, 1: PRINT "Rank"; : LOCATE 4, 15: PRINT "Nation"; : LOCATE 4, 50: PRINT "Net Worth"
PRINT "==========================================================================="
S& = 0: S$ = "": C = 0
GOSUB LOADTOPSCORES
IF S& > S6& THEN S9$ = S8$: S8$ = S7$: S7$ = S6$: S6$ = N$
IF S& > S6& THEN S9& = S8&: S8& = S7&: S7& = S6&: S6& = S&: GOTO TC
IF S& > S7& THEN S9$ = S8$: S8$ = S7$: S7$ = N$
IF S& > S7& THEN S9& = S8&: S8& = S7&: S7& = S&: GOTO TC
IF S& > S8& THEN S9$ = S8$: S8$ = N$: S9& = S8&: S8& = S&: GOTO TC
IF S& > S9& THEN S9$ = N$: S9& = S&: GOTO TC
TC: NEXT C
COLOR 10
IF S0$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "1"; : LOCATE , 11: PRINT S0$; : LOCATE , 50: PRINT S0&
COLOR 10
IF S1$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "2"; : LOCATE , 11: PRINT S1$; : LOCATE , 50: PRINT S1&
COLOR 10
IF S2$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "3"; : LOCATE , 11: PRINT S2$; : LOCATE , 50: PRINT S2&
COLOR 10
IF S3$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "4"; : LOCATE , 11: PRINT S3$; : LOCATE , 50: PRINT S3&
COLOR 10
IF S4$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "5"; : LOCATE , 11: PRINT S4$; : LOCATE , 50: PRINT S4&
COLOR 10
IF S5$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "6"; : LOCATE , 11: PRINT S5$; : LOCATE , 50: PRINT S5&
COLOR 10
IF S6$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "7"; : LOCATE , 11: PRINT S6$; : LOCATE , 50: PRINT S6&
COLOR 10
IF S7$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "8"; : LOCATE , 11: PRINT S7$; : LOCATE , 50: PRINT S7&
COLOR 10
IF S8$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "9"; : LOCATE , 11: PRINT S8$; : LOCATE , 50: PRINT S8&
COLOR 10
IF S9$ = B$ THEN COLOR 12
LOCATE , 2: PRINT "10"; : LOCATE , 11: PRINT S9$; : LOCATE , 50: PRINT S9&
IF B% > 10 THEN COLOR 12: LOCATE , 1: PRINT B%; : LOCATE , 11: PRINT B$; : LOCATE , 50: PRINT B&
PRINT : PRINT : PRINT
COLOR 10
PRINT "Your nation's net worth is the total worth in gold of your military units,"
PRINT
PRINT "spys, food farms, factories, gold, and amount of food. A higher net value"
PRINT
PRINT "does not always mean a stronger military and vice versa. It is representative"
PRINT
PRINT "of a nation's overall strength."
PRINT : COLOR 7
PRINT : PRINT : PRINT "Press a key"
DO: A$ = UCASE$(INKEY$)
LOOP UNTIL A$ <> ""
GOTO TOPEND
LOADTOPSCORES: C$ = STR$(C)
OPEN "WAR4-" + C$ FOR RANDOM AS 1
GET 1, 14, F&: GET 1, 15, G&: GET 1, 16, BG&
GET 1, 19, TR&: GET 1, 20, HU&: GET 1, 21, TK&
GET 1, 22, JT&: GET 1, 23, BM&: GET 1, 24, MB&
GET 1, 25, AG&: GET 1, 26, SP&: GET 1, 27, FF&
GET 1, 28, FA&: GET 1, 44, N$
CLOSE : RETURN