Spaceboy 0 Posted April 30, 2012 hello i wanna ask how to transfer an promotion , maybe cashbounty for usa , scan / spydrohne for china or Artillery promotion for gla ? i just know how to change the buttons. Share this post Link to post
freak4twenty 0 Posted May 18, 2012 (edited) I'm assuming this is for the new faction you made based on another post. If not ignore the steps for creating a new command center and command sets and just edit the existing ones (you can follow this for new and old factions). In PlayerTemplate.ini you will need to change a few command sets, FOR YOUR FACTION (new faction): PurchaseScienceCommandSetRank1 = SCIENCE_AMERICA_CommandSetRank1 PurchaseScienceCommandSetRank3 = SCIENCE_AMERICA_CommandSetRank3 PurchaseScienceCommandSetRank8 = SCIENCE_AMERICA_CommandSetRank8 SpecialPowerShortcutCommandSet = SpecialPowerShortcutUSA Whatever you named your new faction, (I will use "FactionX" as an example) change your command sets to match. PurchaseScienceCommandSetRank1 = SCIENCE_FactionX_CommandSetRank1 PurchaseScienceCommandSetRank3 = SCIENCE_FactionX_CommandSetRank3 PurchaseScienceCommandSetRank8 = SCIENCE_FactionX_CommandSetRank8 SpecialPowerShortcutCommandSet = SpecialPowerShortcutFactionX You will also need to make a new Command Center so change: StartingBuilding = AmericaCommandCenter to StartingBuilding = FactionXCommandCenter If you wish to make all your units completely custom you will need to change the dozer as well (if you want to build buildings that aren't whatever faction you copied). Then in CommandSet.ini you will need to copy a faction's CommandCenterCommandSet, SpecialPowerShortcutCommandSet, and SCIENCE_CommandSets. (I will continue to use vanilla USA as an example). Copy the enitre command set. CommandSet AmericaCommandCenterCommandSet 1 = Command_ConstructAmericaDozer 2 = Command_SpectreGunship 4 = Command_LeafletDrop 5 = Command_A10ThunderboltMissileStrike 6 = Command_Paradrop 7 = Command_SpyDrone 8 = Command_EmergencyRepair 9 = Command_DaisyCutter ;NOTE THIS GETS UPGRADED BELOW 10 = Command_SpySatelliteScan 13 = Command_SetRallyPoint 14 = Command_Sell End CommandSet SpecialPowerShortcutUSA 1 = Command_SpyDroneFromShortcut 2 = Command_ParadropFromShortcut 3 = Command_A10ThunderboltMissileStrikeFromShortcut 4 = Command_EmergencyRepairFromShortcut 5 = Command_DaisyCutterFromShortcut 6 = Command_FireParticleUplinkCannonFromShortcut 7 = Command_SpySatelliteScanFromShortcut 8 = Command_CIAIntelligenceFromShortcut 9 = Command_SpectreGunshipFromShortcut 10 = Command_LeafletDropFromShortcut END ;Rank 1 only has 4 positions CommandSet SCIENCE_AMERICA_CommandSetRank1 1 = Command_PurchaseSciencePaladinTank 2 = Command_PurchaseScienceStealthFighter 3 = Command_PurchaseScienceSpyDrone END ; Rank 3 assign buttons to position like so: ; 1 4 7 10 13 ; 2 5 8 11 14 ; 3 6 9 12 15 CommandSet SCIENCE_AMERICA_CommandSetRank3 1 = Command_PurchaseSciencePathfinder 4 = Command_PurchaseScienceParadrop1 5 = Command_PurchaseScienceParadrop2 6 = Command_PurchaseScienceParadrop3 7 = Command_PurchaseScienceA10ThunderboltMissileStrike1 8 = Command_PurchaseScienceA10ThunderboltMissileStrike2 9 = Command_PurchaseScienceA10ThunderboltMissileStrike3 10 = Command_PurchaseScienceEmergencyRepair1 11 = Command_PurchaseScienceEmergencyRepair2 12 = Command_PurchaseScienceEmergencyRepair3 END ; Rank 8 has 3 positions CommandSet SCIENCE_AMERICA_CommandSetRank8 1 = Command_PurchaseScienceDaisyCutter 2 = Command_PurchaseScienceLeafletDrop 3 = Command_PurchaseScienceSpectreGunship 4 = Command_FAKECOMMAND_PurchaseScienceMOAB ;Need the slot (it's SCRIPT_ONLY) and hidden. END Paste them at the bottom of the ini and change the names. CommandSet FactionXCommandCenterCommandSet CommandSet SpecialPowerShortcutFactionX CommandSet SCIENCE_FactionX_CommandSetRank1 CommandSet SCIENCE_FactionX_CommandSetRank3 CommandSet SCIENCE_FactionX_CommandSetRank8 We will get to the actual command sets later (after you made the CommandButtons which you know how to do). Now in Science.ini you will need to copy the abilities you want to learn which don't match your "IntrinsicSciences =" in PlayerTemplate.ini (OR if they have different prerequisites than you want you will need to copy them as well) and paste them at the bottom of the ini and change their names. I will use CashBounty for example and Assume you want it for a SCIENCE_USA faction. Science SCIENCE_CashBounty1 PrerequisiteSciences = SCIENCE_GLA SCIENCE_Rank3 SciencePurchasePointCost = 1 IsGrantable = Yes DisplayName = SCIENCE:GLACashBounty1 Description = CONTROLBAR:ToolTipGLAScienceCashBounty End Science SCIENCE_CashBounty2 PrerequisiteSciences = SCIENCE_CashBounty1 SCIENCE_Rank3 SciencePurchasePointCost = 1 IsGrantable = Yes DisplayName = SCIENCE:GLACashBounty2 Description = CONTROLBAR:ToolTipGLAScienceCashBounty End Science SCIENCE_CashBounty3 PrerequisiteSciences = SCIENCE_CashBounty2 SCIENCE_Rank3 SciencePurchasePointCost = 1 IsGrantable = Yes DisplayName = SCIENCE:GLACashBounty3 Description = CONTROLBAR:ToolTipGLAScienceCashBounty End You will need to change the NAME of the science as well as PrerequisiteSciences in this case. Science FactionX_SCIENCE_CashBounty1 PrerequisiteSciences = SCIENCE_USA SCIENCE_Rank3 SciencePurchasePointCost = 1 IsGrantable = Yes DisplayName = SCIENCE:GLACashBounty1 Description = CONTROLBAR:ToolTipGLAScienceCashBounty End Science FactionX_SCIENCE_CashBounty2 PrerequisiteSciences = FactionX_SCIENCE_CashBounty1 SCIENCE_Rank3 SciencePurchasePointCost = 1 IsGrantable = Yes DisplayName = SCIENCE:GLACashBounty2 Description = CONTROLBAR:ToolTipGLAScienceCashBounty End Science FactionX_SCIENCE_CashBounty3 PrerequisiteSciences = FactionX_SCIENCE_CashBounty2 SCIENCE_Rank3 SciencePurchasePointCost = 1 IsGrantable = Yes DisplayName = SCIENCE:GLACashBounty3 Description = CONTROLBAR:ToolTipGLAScienceCashBounty End Notice because I assumed you wanted this science from a SCIENCE_USA faction I changed the first PrerequisiteSciences to work with that faction. After that, just use the name if the Science that comes before it. You can do this however you like, even remove the first 2 and just use the third. Just set the prerequisites accordingly. Repeat this step for whatever sciences you want. Keep in mind your CommandSet limitations (3 buttons for rank 1, 15 buttons for rank 3 and 3 buttons for rank 5 (rank 8 as the game states). You can have buttons wherever you want in the command sets (Rank 1 sciences don't need to be only in SCIENCE_FactionX_CommandSetRank1) but keep in mind you may only have 21 accessible buttons although if you look at how the game did MOAB you can have hidden buttons as script only which you make purchasable via a different CommandSet. Now you will need to make your CommandCenter (if you want this for a new faction as I assumed thus far). I will continue to use vanilla USA as an example. In FactionBuilding.ini (located in the Object folder) find AmericaCommandCenter. Copy the WHOLE thing (it's rather long) until you see "End" with no spaces in front of it. Object AmericaCommandCenter (A BUGILLION LINES OF CODE) Side = America (a few more lines code) CommandSet = AmericaCommandCenterCommandSet (and even more lines of code) Behavior = OCLSpecialPower ModuleTag_20 SpecialPowerTemplate = SuperweaponDaisyCutter UpgradeOCL = SCIENCE_MOAB SUPERWEAPON_MOAB OCL = SUPERWEAPON_DaisyCutter CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE End Behavior = OCLSpecialPower ModuleTag_21 SpecialPowerTemplate = SpecialPowerSpyDrone OCL = SUPERWEAPON_SpyDrone CreateLocation = CREATE_ABOVE_LOCATION End Behavior = OCLSpecialPower ModuleTag_22 SpecialPowerTemplate = SuperweaponParadropAmerica UpgradeOCL = SCIENCE_Paradrop3 SUPERWEAPON_Paradrop3 UpgradeOCL = SCIENCE_Paradrop2 SUPERWEAPON_Paradrop2 OCL = SUPERWEAPON_Paradrop1 CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE OCLAdjustPositionToPassable = Yes ;Like RA2, shift target to passable cell so we don't land in water and on cliffs. End ; Behavior = OCLSpecialPower ModuleTag_23;this has been removed from everywhere but the ChinaAirfield in CHI05 ; SpecialPowerTemplate = SuperweaponCarpetBomb ; OCL = SUPERWEAPON_CarpetBomb ; CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE ; End Behavior = OCLSpecialPower ModuleTag_24 SpecialPowerTemplate = SpecialPowerSpySatellite OCL = SUPERWEAPON_SpySatellite CreateLocation = CREATE_AT_LOCATION End Behavior = OCLSpecialPower ModuleTag_25 SpecialPowerTemplate = SuperweaponCrateDrop OCL = SUPERWEAPON_CrateDrop CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE End Behavior = OCLSpecialPower ModuleTag_26 SpecialPowerTemplate = SuperweaponA10ThunderboltMissileStrike UpgradeOCL = SCIENCE_A10ThunderboltMissileStrike3 SUPERWEAPON_A10ThunderboltMissileStrike3 UpgradeOCL = SCIENCE_A10ThunderboltMissileStrike2 SUPERWEAPON_A10ThunderboltMissileStrike2 OCL = SUPERWEAPON_A10ThunderboltMissileStrike1 CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE End Behavior = OCLSpecialPower ModuleTag_27 SpecialPowerTemplate = SuperweaponEmergencyRepair UpgradeOCL = SCIENCE_EmergencyRepair3 SUPERWEAPON_RepairVehicles3 UpgradeOCL = SCIENCE_EmergencyRepair2 SUPERWEAPON_RepairVehicles2 OCL = SUPERWEAPON_RepairVehicles1 CreateLocation = CREATE_AT_LOCATION End (a few more lines of code) End There are a few things you're going to want to change here: Object FactionXCommandCenter (A BUGILLION LINES OF CODE, which you will ignore) Side = FactionX (a few more lines code) CommandSet = FactionXCommandCenterCommandSet (and even more lines of code) Behavior = OCLSpecialPower ModuleTag_20 SpecialPowerTemplate = SuperweaponDaisyCutter UpgradeOCL = SCIENCE_MOAB SUPERWEAPON_MOAB OCL = SUPERWEAPON_DaisyCutter CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE End Behavior = OCLSpecialPower ModuleTag_21 SpecialPowerTemplate = SpecialPowerSpyDrone OCL = SUPERWEAPON_SpyDrone CreateLocation = CREATE_ABOVE_LOCATION End Behavior = OCLSpecialPower ModuleTag_22 SpecialPowerTemplate = SuperweaponParadropAmerica UpgradeOCL = SCIENCE_Paradrop3 SUPERWEAPON_Paradrop3 UpgradeOCL = SCIENCE_Paradrop2 SUPERWEAPON_Paradrop2 OCL = SUPERWEAPON_Paradrop1 CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE OCLAdjustPositionToPassable = Yes ;Like RA2, shift target to passable cell so we don't land in water and on cliffs. End ; Behavior = OCLSpecialPower ModuleTag_23;this has been removed from everywhere but the ChinaAirfield in CHI05 ; SpecialPowerTemplate = SuperweaponCarpetBomb ; OCL = SUPERWEAPON_CarpetBomb ; CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE ; End Behavior = OCLSpecialPower ModuleTag_24 SpecialPowerTemplate = SpecialPowerSpySatellite OCL = SUPERWEAPON_SpySatellite CreateLocation = CREATE_AT_LOCATION End Behavior = OCLSpecialPower ModuleTag_25 SpecialPowerTemplate = SuperweaponCrateDrop OCL = SUPERWEAPON_CrateDrop CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE End Behavior = OCLSpecialPower ModuleTag_26 SpecialPowerTemplate = SuperweaponA10ThunderboltMissileStrike UpgradeOCL = SCIENCE_A10ThunderboltMissileStrike3 SUPERWEAPON_A10ThunderboltMissileStrike3 UpgradeOCL = SCIENCE_A10ThunderboltMissileStrike2 SUPERWEAPON_A10ThunderboltMissileStrike2 OCL = SUPERWEAPON_A10ThunderboltMissileStrike1 CreateLocation = CREATE_AT_EDGE_NEAR_SOURCE End Behavior = OCLSpecialPower ModuleTag_27 SpecialPowerTemplate = SuperweaponEmergencyRepair UpgradeOCL = SCIENCE_EmergencyRepair3 SUPERWEAPON_RepairVehicles3 UpgradeOCL = SCIENCE_EmergencyRepair2 SUPERWEAPON_RepairVehicles2 OCL = SUPERWEAPON_RepairVehicles1 CreateLocation = CREATE_AT_LOCATION End Behavior = CashBountyPower ModuleTag_FactionXCashBounty1 SpecialPowerTemplate = FactionX_SpecialAbilityCashBounty1 Bounty = 5% End Behavior = CashBountyPower ModuleTag_FactionXCashBounty2 SpecialPowerTemplate = FactionX_SpecialAbilityCashBounty2 Bounty = 10% End Behavior = CashBountyPower ModuleTag_FactionXCashBounty3 SpecialPowerTemplate = FactionX_SpecialAbilityCashBounty3 Bounty = 20% End (a few more lines of code) End Notice the SpecialPowers I did nothing to. You should remove these if they will not be used with your faction. Also notice the ModuleTag, when creating something new for a faction i always give the ModuleTag a unique name. Finally notice the SpecialPowerTemplate, I made a new one because the old one required a science that we copied but changed the name of. Add all the other special powers to your command center. You will need to copy the behaviors from existing command centers that have that ability (just search for them using Ctrl+F) and change the SpecialPowerTemplates accordingly (if you had to create a new science or wish to change the countdown timer). Now you have your command center working for your faction. Now you will need to edit SpecialPower.ini because you had to make a new science and we need a special power tha reflects that. Copy all the special powers you created (if you had to make a new science or you just want to change the timer on the ability). SpecialPower SpecialAbilityCashBounty1 Enum = SPECIAL_CASH_BOUNTY RequiredScience = SCIENCE_CashBounty1 PublicTimer = No End SpecialPower SpecialAbilityCashBounty2 Enum = SPECIAL_CASH_BOUNTY RequiredScience = SCIENCE_CashBounty2 PublicTimer = No End SpecialPower SpecialAbilityCashBounty3 Enum = SPECIAL_CASH_BOUNTY RequiredScience = SCIENCE_CashBounty3 PublicTimer = No End And change it to your new name listed in the Command Center. Also change the science name (that's the whole reason we had to make a new SpecialPower in the first place). SpecialPower FactionX_SpecialAbilityCashBounty1 Enum = SPECIAL_CASH_BOUNTY RequiredScience = FactionX_SCIENCE_CashBounty1 PublicTimer = No End SpecialPower FactionX_SpecialAbilityCashBounty2 Enum = SPECIAL_CASH_BOUNTY RequiredScience = FactionX_SCIENCE_CashBounty2 PublicTimer = No End SpecialPower FactionX_SpecialAbilityCashBounty3 Enum = SPECIAL_CASH_BOUNTY RequiredScience = FactionX_SCIENCE_CashBounty3 PublicTimer = No End Finally just make the CommandButtons for purchasing your sciences, using your special powers (both from your command center and shortcut bar) and fill in the CommandSets and you are done. Notice that you can replace FactionX with whatever faction name you choose. If you are making NEW (ones that exist only in your head) Special Powers and it requires something actually happening (like a missile or plane flying in) you will need to edit ObjectCreationList.ini and add the new OCL(s) to your CommandCenter. Your CommandButtons should match the sciences in Science.ini and special powers in SpecialPower.ini, for example: CommandButton FactionX_Command_PurchaseScienceCashBounty1 Command = PURCHASE_SCIENCE Science = FactionX_SCIENCE_CashBounty1 ButtonImage = SSCashBounty ButtonBorderType = UPGRADE ; Identifier for the User as to what kind of button this is End And if you were to do DaisyCutter (Fuel Air Bomb): CommandButton Command_PurchaseScienceDaisyCutter Command = PURCHASE_SCIENCE Science = SCIENCE_DaisyCutter ButtonImage = SACDaisyCutter ButtonBorderType = UPGRADE ; Identifier for the User as to what kind of button this is TextLabel = CONTROLBAR:DaisyCutter ;Used for controlbar button (with hotkey) ConflictingLabel = OBJECT:DaisyCutterBomb ;Used for shortcut button (no hotkey) DescriptLabel = CONTROLBAR:TooltipDaisyCutter End CommandButton Command_DaisyCutter Command = SPECIAL_POWER SpecialPower = SuperweaponDaisyCutter Options = NEED_SPECIAL_POWER_SCIENCE NEED_TARGET_POS CONTEXTMODE_COMMAND Science = SCIENCE_DaisyCutter SCIENCE_MOAB ;These will cause the buttons to change icons, nothing more TextLabel = CONTROLBAR:DaisyCutter ButtonImage = SACDaisyCutter ButtonBorderType = ACTION DescriptLabel = CONTROLBAR:TooltipDaisyCutter RadiusCursorType = DAISYCUTTER InvalidCursorName = GenericInvalid End CommandButton Command_DaisyCutterFromShortcut Command = SPECIAL_POWER_FROM_SHORTCUT SpecialPower = SuperweaponDaisyCutter Options = NEED_SPECIAL_POWER_SCIENCE NEED_TARGET_POS CONTEXTMODE_COMMAND Science = SCIENCE_DaisyCutter SCIENCE_MOAB ;These will cause the buttons to change icons, nothing more TextLabel = OBJECT:DaisyCutterBomb ButtonImage = SACDaisyCutter ; ButtonBorderType = ACTION DescriptLabel = CONTROLBAR:TooltipDaisyCutter RadiusCursorType = DAISYCUTTER InvalidCursorName = GenericInvalid End You wouldn't need to change anything because you are SCIENCE_USA but if you were a different one you would need to make a new science and copy/paste these buttons and rename all the SCIENCE_DaisyCutter to FactionX_SCIENCE_DaisyCutter for example and if you wanted MOAB upgrade you would need to copy/paste that button at the bottom and rename all the SCIENCE_DaisyCutter to FactionX_SCIENCE_MOAB. You will also need to change the names of the CommandButton(s) and SpecialPower(s) and make new SpecialPower(s). I hope this wasn't too confusing and I answered your question to you satisfaction. I will check again in a few days so if you have any further questions on this topic, go ahead and reply. Edited May 18, 2012 by freak4twenty Share this post Link to post