At first I thought it was as easy simply giving the Goliath Base a weapon, an attack code in it's Iscript and that'd be that. Buuuut I was horribly wrong. The Goliath does not use the weapon and so I figured if it were that easy someone would've done it before.
Here is my current iscript if it helps;
Code
# ----------------------------------------------------------------------------- #
# This header is used by images.dat entries:
# 234 Goliath Base (terran\goliath.grp)
.headerstart
IsId 75
Type 23
Init Goliath_Base_Init
Death Goliath_Base_Death
GndAttkInit Goliath_Base_GndAttkInit
AirAttkInit [NONE]
Unused1 [NONE]
GndAttkRpt Goliath_Base_GndAttkRpt
AirAttkRpt [NONE]
CastSpell [NONE]
GndAttkToIdle Goliath_Base_GndAttkInit
AirAttkToIdle [NONE]
Unused2 [NONE]
Walking Goliath_Base_Walking
WalkingToIdle Goliath_Base_GndAttkInit
SpecialState1 [NONE]
SpecialState2 [NONE]
AlmostBuilt [NONE]
Built [NONE]
Landing [NONE]
LiftOff [NONE]
IsWorking [NONE]
WorkingToIdle [NONE]
WarpIn [NONE]
Unused3 [NONE]
StarEditInit Goliath_Base_StarEditInit
.headerend
# ----------------------------------------------------------------------------- #
Goliath_Base_Init:
imgul 236 0 0 # Goliath Shadow (terran\tgoShad.grp)
Goliath_Base_GndAttkInit:
playfram 0x77 # Frame set 7
goto Goliath_Base_Local00
Goliath_Base_Local00:
wait 125
goto Goliath_Base_Local00
Goliath_Base_Death:
playsnd 8 # Misc\ExploMed.wav
imgol 332 0 0 # Explosion2 (Small) (thingy\tBangS.grp)
lowsprul 273 0 0 # Terran Building Rubble (Small) (thingy\RubbleS.grp)
wait 3
end
Goliath_Base_GndAttkRpt:
playfram 0x88 # Frame set 8
wait 1
playfram 0x99 # Frame set 9
wait 1
attackwith 1
attackmelee 1 894 # Zerg\Ultra\zulHit00.WAV
playfram 0x00 # Frame set 0
wait 1
playfram 0x88 # Frame set 8
wait 1
playfram 0x99 # Frame set 9
wait 1
gotorepeatattk
ignorerest
goto Goliath_Base_GndAttkInit
Goliath_Base_Walking:
move 6
wait 1
playfram 0x88 # Frame set 8
move 3
wait 1
playfram 0x99 # Frame set 9
move 3
wait 1
playfram 0x00 # Frame set 0
move 3
wait 1
playfram 0x11 # Frame set 1
move 5
wait 1
playfram 0x22 # Frame set 2
move 5
wait 1
playfram 0x33 # Frame set 3
move 4
wait 1
playfram 0x44 # Frame set 4
move 8
wait 1
playfram 0x55 # Frame set 5
move 6
wait 1
playfram 0x66 # Frame set 6
move 4
wait 1
playfram 0x77 # Frame set 7
goto Goliath_Base_Walking
Goliath_Base_StarEditInit:
imgol 235 0 0 # Goliath Turret (terran\goliathT.grp)
imgul 236 0 0 # Goliath Shadow (terran\tgoShad.grp)
playfram 0x77 # Frame set 7
goto Goliath_Base_Local00
# This header is used by images.dat entries:
# 234 Goliath Base (terran\goliath.grp)
.headerstart
IsId 75
Type 23
Init Goliath_Base_Init
Death Goliath_Base_Death
GndAttkInit Goliath_Base_GndAttkInit
AirAttkInit [NONE]
Unused1 [NONE]
GndAttkRpt Goliath_Base_GndAttkRpt
AirAttkRpt [NONE]
CastSpell [NONE]
GndAttkToIdle Goliath_Base_GndAttkInit
AirAttkToIdle [NONE]
Unused2 [NONE]
Walking Goliath_Base_Walking
WalkingToIdle Goliath_Base_GndAttkInit
SpecialState1 [NONE]
SpecialState2 [NONE]
AlmostBuilt [NONE]
Built [NONE]
Landing [NONE]
LiftOff [NONE]
IsWorking [NONE]
WorkingToIdle [NONE]
WarpIn [NONE]
Unused3 [NONE]
StarEditInit Goliath_Base_StarEditInit
.headerend
# ----------------------------------------------------------------------------- #
Goliath_Base_Init:
imgul 236 0 0 # Goliath Shadow (terran\tgoShad.grp)
Goliath_Base_GndAttkInit:
playfram 0x77 # Frame set 7
goto Goliath_Base_Local00
Goliath_Base_Local00:
wait 125
goto Goliath_Base_Local00
Goliath_Base_Death:
playsnd 8 # Misc\ExploMed.wav
imgol 332 0 0 # Explosion2 (Small) (thingy\tBangS.grp)
lowsprul 273 0 0 # Terran Building Rubble (Small) (thingy\RubbleS.grp)
wait 3
end
Goliath_Base_GndAttkRpt:
playfram 0x88 # Frame set 8
wait 1
playfram 0x99 # Frame set 9
wait 1
attackwith 1
attackmelee 1 894 # Zerg\Ultra\zulHit00.WAV
playfram 0x00 # Frame set 0
wait 1
playfram 0x88 # Frame set 8
wait 1
playfram 0x99 # Frame set 9
wait 1
gotorepeatattk
ignorerest
goto Goliath_Base_GndAttkInit
Goliath_Base_Walking:
move 6
wait 1
playfram 0x88 # Frame set 8
move 3
wait 1
playfram 0x99 # Frame set 9
move 3
wait 1
playfram 0x00 # Frame set 0
move 3
wait 1
playfram 0x11 # Frame set 1
move 5
wait 1
playfram 0x22 # Frame set 2
move 5
wait 1
playfram 0x33 # Frame set 3
move 4
wait 1
playfram 0x44 # Frame set 4
move 8
wait 1
playfram 0x55 # Frame set 5
move 6
wait 1
playfram 0x66 # Frame set 6
move 4
wait 1
playfram 0x77 # Frame set 7
goto Goliath_Base_Walking
Goliath_Base_StarEditInit:
imgol 235 0 0 # Goliath Turret (terran\goliathT.grp)
imgul 236 0 0 # Goliath Shadow (terran\tgoShad.grp)
playfram 0x77 # Frame set 7
goto Goliath_Base_Local00
So my question at hand. Is it possible to give the Goliath Base a weapon? Or is it impossible/hardcoded otherwise?
None.