Alright guys here’s a very straight forward tutorial on adding a new faction. The files you'll need are PlayerTemplate.ini, CommandButton.ini, CommandSet.ini, and YourSidesNameHere.ini, CommandBarScheme.ini.
Alright now before you open anything make sure you have all the right folders in the Zero Hour Main Directory.
You need an INI folder in the Data folder, and if you are going to use new models and cameos you need an Art folder in the main directory, the Art folder will contain the W3d folder where you put your new w3d files, and then the Texture folder where all your .dds, .tga files are stored so the game can read them. If you don't have the folders in the right area, you'll either not see your new side in the side selection drop down menu, this has to do with the inis. Or your unit will be invisible which is a problem with the game finding your W3D folder, or your model will be pink or some other color, and this problem has to do with the game being able to read from your Textures folder. If everything is working you'll see your new side, models, and skins.
Ok now on to business. Anywhere you see YourSide, YourSides, or YOURSIDE in this file replace it with the name of your new Faction.
First open the CommandBarScheme.ini and then paste this into the opened file.
ControlBarScheme YourSide8x6
ScreenCreationRes X:800 Y:600
Side YourSide
QueueButtonImage SCBigButton
RightHUDImage SULogo
BuildUpClockColor R:0 G:0 B:0 A:160
ButtonBorderBuildColor R:67 G:108 B:190 A:255 ;blue
ButtonBorderActionColor R:1 G:175 B:2 A:255 ;Green
ButtonBorderUpgradeColor R:208 G:108 B:0 A:255 ;Orange
ButtonBorderSystemColor R:207 G:195 B:2 A:255 ;yellow
CommandBarBorderColor R:124 G:62 B:0 A:255 ;blue
GenBarButtonIn SUBarButtonGen2IN
GenBarButtonOn SUBarButtonGen2ON
CommandMarkerImage SUEmptyFrame
ToggleButtonUpIn SUMaxMinHU
ToggleButtonUpOn SUMaxMinU
ToggleButtonUpPushed SUMaxMinPU
ToggleButtonDownIn SUMaxMinH
ToggleButtonDownOn SUMaxMin
ToggleButtonDownPushed SUMaxMinP
OptionsButtonDisabled SUOptionsI
BuddyButtonDisabled SUChatI
BeaconButtonDisabled SUBeaconI
OptionsButtonEnable SUOptions
OptionsButtonHightlited SUOptionsH
OptionsButtonPushed SUOptionsP
IdleWorkerButtonEnable SUWorkerE
IdleWorkerButtonHightlited SUWorkerH
IdleWorkerButtonPushed SUWorkerP
IdleWorkerButtonDisabled SUWorkerI
BuddyButtonEnable SUChat
BuddyButtonHightlited SUChatH
BuddyButtonPushed SUChatP
BeaconButtonEnable SUBeacon
BeaconButtonHightlited SUBeaconH
BeaconButtonPushed SUBeaconP
GeneralButtonEnable SUGeneral
GeneralButtonHightlited SUGeneralH
GeneralButtonPushed SUGeneralP
GeneralButtonDisabled SUGeneralI
UAttackButtonEnable SUUAttackI
UAttackButtonHightlited SUUAttackH
UAttackButtonPushed SUUAttackP
MinMaxButtonEnable SUMinMax
MinMaxButtonHightlited SUMinMaxH
MinMaxButtonPushed SUMinMaxP
MinMaxUL X:639 Y:433
MinMaxLR X:698 Y:459
GeneralUL X:722 Y:429
GeneralLR X:787 Y:458
UAttackUL X:184 Y:426
UAttackLR X:206 Y:450
OptionsUL X:184 Y:490
OptionsLR X:220 Y:514
WorkerUL X:184 Y:516
WorkerLR X:220 Y:540
ChatUL X:184 Y:568
ChatLR X:220 Y:592
BeaconUL X:184 Y:545
BeaconLR X:220 Y:566
PowerBarUL X:259 Y:470
PowerBarLR X:537 Y:476
GenArrow GLALevelUP
MoneyUL X:360 Y:443
MoneyLR X:439 Y:462
ExpBarForegroundImage SUExpBar
ImagePart
Position X:0 Y:399
Size X:800 Y:200
ImageName InGameUIGLABase
Layer 4 ;; layer means how deep the image will be drawn, it's a number between 0-5 with 0 being on top
End
PowerPurchaseImage GeneralsPowerWindow_GLA
End
Now save your changes.
After that open the PlayerTemplate.ini. Then paste this into the file.
PlayerTemplate FactionYourSide
Side = YourSide
BaseSide = YourSide
PlayableSide = Yes
StartMoney = 0
PreferredColor = R:255 G:255 B:255
IntrinsicSciences = SCIENCE_YOURSIDE
PurchaseScienceCommandSetRank1 = SCIENCE_YOURSIDE_CommandSetRank1
PurchaseScienceCommandSetRank3 = SCIENCE_YOURSIDE_CommandSetRank3
PurchaseScienceCommandSetRank8 = SCIENCE_YOURSIDE_CommandSetRank8
SpecialPowerShortcutCommandSet = SpecialPowerShortcutYourSide
SpecialPowerShortcutWinName = GenPowersShortcutBarGLA.wnd
SpecialPowerShortcutButtonCount = 10
DisplayName = INI:FactionYourSide
StartingBuilding = YourSideCommandCenter
StartingUnit0 = YourSidesDozer/Worker
ScoreScreenImage = GLA_ScoreScreen
LoadScreenImage = SUFactionLogoPage_GLA
LoadScreenMusic = Load_GLA
ScoreScreenMusic = Score_GLA
;HeadWaterMark = SCTempSelectPortrait ; don't use unless we add a "generalshead for non selected generals
FlagWaterMark = WatermarkGLA
EnabledImage = SSObserverGLA
BeaconName = MultiplayerBeacon
SideIconImage = GameinfoGLA
GeneralImage = GLA_Logo
OldFaction = No ; This faction was available in the original Generals and should be available even if the oldFactionsOnly flag is set
ArmyTooltip = TOOLTIP:BioStrategyLong_YourSide
Features = GUI:BioFeatures_YourSide
MedallionRegular = GLAGeneral_slvr
MedallionHilite = GLAGeneral_blue
MedallionSelect = GLAGeneral_orng
End
Now save your work.
Now open the ini called CommandSet.ini. Then Paste this into it.
CommandSet SCIENCE_YOURSIDE_CommandSetRank1
; 1 = Command_PurchaseScienceScudLauncher
; 2 = Command_PurchaseScienceMarauderTank
; 3 = Command_PurchaseScienceTechnicalTraining
END
CommandSet SCIENCE_YOURSIDE_CommandSetRank3
; 1 = Command_PurchaseScienceHijacker
; 2 = Command_PurchaseScienceRebelTraining
; 4 = Command_PurchaseScienceFundamentalistAmbush1
; 5 = Command_PurchaseScienceFundamentalistAmbush2
; 6 = Command_PurchaseScienceFundamentalistAmbush3
; 7 = Command_PurchaseScienceCashBounty1
; 8 = Command_PurchaseScienceCashBounty2
; 9 = Command_PurchaseScienceCashBounty3
; 10 = Command_PurchaseScienceEmergencyRepair1
; 11 = Command_PurchaseScienceEmergencyRepair2
; 12 = Command_PurchaseScienceEmergencyRepair3
; 13 = Command_PurchaseScienceTerrorCell
END
CommandSet SCIENCE_YOURSIDE_CommandSetRank8
; 1 = Command_PurchaseScienceAnthraxBomb
; 2 = Command_PurchaseScienceSneakAttack
; 3 = Command_PurchaseScienceGPSScrambler
; 4 = Command_PurchaseScienceConvoyAmbush
END
CommandSet SpecialPowerShortcutYourSide
; 1 = Command_Fund.AmbushFromShortcut
; 2 = Command_EmergencyRepairFromShortcut
; 3 = Command_AnthraxBombFromShortcut
; 4 = Command_ScudStormFromShortcut
; 5 = Command_RadarVanScanFromShortcut
; 6 = Command_SneakAttackFromShortcut
; 7 = Command_GPSScramblerFromShortcut
; 8 = Command_ConvoyAmbushFromShortcut
; 9 = Command_TerrorCellFromShortcut
END
CommandSet YourSideDozer/WorkerCommandSet
1 = Command_ConstructYourSideBarracks
2 = Command_ConstructYourSideSupplyStash
3 = Command_ConstructYourSideWarFactory
4 = Command_ConstructYourSideSupplyGenerater/SuperWeapon
5 = Command_ConstructYourSideDefense
12 = Command_ConstructYourSideCommandCenter
14 = Command_DisarmMinesAtPosition
End
CommandSet YourSideCommandCenterCommandSet
1 = Command_ConstructYourSideDozer/Worker
; 2 = Command_Fund.Ambush
; 3 = Command_EmergencyRepair
14 = Command_Sell
End
CommandSet YourSideBarracksCommandSet
1 = Command_ConstructYourSideInfantryBasic
2 = Command_ConstructYourSideInfantryRocket/Missile
14 = Command_Sell
End
CommandSet YourSideSupplyStashCommandSet
1 = Command_ConstructYourSideDozer/Worker
14 = Command_Sell
End
CommandSet YourSideWarFactoryCommandSet
1 = Command_ConstructYourSideTank
2 = Command_ConstructYourSideVehicleTransport
13 = Command_SetRallyPoint
14 = Command_Sell
End
Now you must add your own Sciences and purchase things, but I will write another tutorial on that in a while.
So save your work.
Now create a new folder in the INI folder called Objects, then create a new INI called YourNewSideNameHere.ini <- Use your own name.
Then open the new file and copy and paste any new units and buildings you want into it. I will not go into adding the stuff in this tutorial.
Now after you have added all you want to it, then save your work, and then open CommandButton.ini.
Now make command buttons for all your new units and buildings and add them to the new commandsets you made.
CommandButton Command_ConstructYourSideCommandCenter
Command = DOZER_CONSTRUCT
Object = YourSideCommandCenter
TextLabel = CONTROLBAR:ConstructYourSideCommandCenter
ButtonImage = SUHeadquarters
ButtonBorderType = BUILD ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipYourSideBuildCommandCenter
End
CommandButton Command_ConstructYourSideSupplyStash
Command = DOZER_CONSTRUCT
Object = YourSideSupplyCenter
TextLabel = CONTROLBAR:ConstructYourSideSupplyStash
ButtonImage = SUSupplyCenter
ButtonBorderType = BUILD ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipYourSideBuildSupplyStash
End
CommandButton Command_ConstructYourSideSupplyGenerater/SuperWeapon
Command = DOZER_CONSTRUCT
Object = YourSideSupplyGenerater/SuperWeapon
TextLabel = CONTROLBAR:ConstructYourSideSupplyGenerater/SuperWeapon
ButtonImage = SUBlackMarket
ButtonBorderType = BUILD ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipYourSideBuildSupplyGenerater/SuperWeapon
End
CommandButton Command_ConstructYourSideBarracks
Command = DOZER_CONSTRUCT
Object = YourSideBarracks
TextLabel = CONTROLBAR:ConstructYourSideBarracks
ButtonImage = SUBarracks
ButtonBorderType = BUILD ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipYourSideBuildBarracks
End
CommandButton Command_ConstructYourSideDefense
Command = DOZER_CONSTRUCT
Object = YourSideDefense
TextLabel = CONTROLBAR:ConstructYourSideDefense
ButtonImage = SAArtillery
ButtonBorderType = BUILD ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipYourSideBuildDefense
End
CommandButton Command_ConstructYourSideWarFactory
Command = DOZER_CONSTRUCT
Object = YourSideWarFactory
TextLabel = CONTROLBAR:ConstructYourSideWarFactory
ButtonImage = SACWeaponsfact
ButtonBorderType = BUILD ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipYourSideBuildWarFactory
End
CommandButton Command_ConstructYourSideTank
Command = UNIT_BUILD
Object = YourSideTank
TextLabel = CONTROLBAR:ConstructYourSideTank
ButtonImage = SNBattlemaster
ButtonBorderType = BUILD ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipYourSideBuildTank
End
CommandButton Command_ConstructYourSideVehicleTransport
Command = UNIT_BUILD
Object = YourSideVehicleTransport
TextLabel = CONTROLBAR:ConstructYourSideVehicleTransport
ButtonImage = SAHummer
ButtonBorderType = BUILD ; Identifier for the User as to what kind of button this is
DescriptLabel = CONTROLBAR:ToolTipYourSideBuildVehicleTransport
End
Now save your work. Congratulations, you have just added a new side.
0
[Tutorial] Adding New Side/Faction
Started By Chrizz, Sep 19 2005 13:17
No replies to this topic
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users