Edain Mod Wiki
(Adding categories)
No edit summary
Line 1: Line 1:
  +
{{Guide|author=The_Necromancer0}}
  +
 
Every so often on the Edain Discord we get the question: "will Arnor ever be implemented as a standalone faction?". The answer to that is usually "No", as ET have not mentioned any intent to make it so. But, there are ways to implemented Arnor on any map you want as a replacement for Gondor. Of course, that still won't help you settle the debate of whether Araphant or Denethor was the dad most skilled in weapons but it'll allow you to play Arnor on any map layout such as siege maps. You could also potentially add them to scripted maps although that is more risky.
 
Every so often on the Edain Discord we get the question: "will Arnor ever be implemented as a standalone faction?". The answer to that is usually "No", as ET have not mentioned any intent to make it so. But, there are ways to implemented Arnor on any map you want as a replacement for Gondor. Of course, that still won't help you settle the debate of whether Araphant or Denethor was the dad most skilled in weapons but it'll allow you to play Arnor on any map layout such as siege maps. You could also potentially add them to scripted maps although that is more risky.
   

Revision as of 06:35, 13 August 2020

Every so often on the Edain Discord we get the question: "will Arnor ever be implemented as a standalone faction?". The answer to that is usually "No", as ET have not mentioned any intent to make it so. But, there are ways to implemented Arnor on any map you want as a replacement for Gondor. Of course, that still won't help you settle the debate of whether Araphant or Denethor was the dad most skilled in weapons but it'll allow you to play Arnor on any map layout such as siege maps. You could also potentially add them to scripted maps although that is more risky.

Prerequisites

  • The .big extraction tool FinalBig, available at here.
  • The Arnor code, available here
  • The name of a map you desire to convert, in this guide we will be using Ford of Isen I

Adding Arnor to an official Edain Map

Usually, players want to add Arnor to their favorite official Edain map, this is usually the more complex of the two procedures but this guide will attempt to make it simple.

  1. Navigate to your game folder (which is by default is C:\Program Files\Electronic Arts\The Lord of the Rings, The Rise of the Witch-king) and locate ____edain_maps.big.
  2. Open ____edain_maps.big with FinalBIG then go to Edit > Extract All and extract to a folder (not the game folder)
  3. Locate the __edain_data.big and open it with FinalBIG, extracting it to the same folder (this is very important)
  4. Navigate to the folder you extracted to and go to the maps folder.
  5. This is the hard bit, you have to locate the map you want to change based on its folder name. For our map, Ford of Isen I, the folder name is map mp fords of isen i so it's pretty easy. But if you wanted to add Arnor to Stoneway Valley, the name of the folder in that case is map mp fall back 4p. If you don't know the folder name you'll have to just guess, opening map files until you find the one you want.
  6. In the folder you idenfitied, open the map.ini file, go to the bottom, and paste the Arnor Code
  7. Save the map.ini
  8. Copy paste the entire map folder into your "My Rise of the Witch King Files" folder
  9. The map will now appear in game and selecting Gondor will let you play as Arnor

Adding Arnor to a custom map

Adding Arnor to another custom map is much more simple.

  1. In the map folder, create or open a map.ini file
  2. Copy paste the Arnor Code at the bottom of the map.ini file
  3. Save the map.ini
  4. Launching the map with Gondor will now let you play as Arnor.

Common Issues

The big risk when copy pasting a huge chunk of code into a map that might already have its own chunk of code is that the two might conflict. It is unlikely because of how specific the concept of switching one faction for another is in terms of code but it is possible. In this case not much can be done if you have no desire to code and it's usually best to just move on to the next map, as removing any part of the original map's code will cause it to error.

If you're a bit familiar with INI coding then your best bet is to have a look at the module causing the error and the error that is being caused. If it's the case of a duplicate name an easy fix could be just changing the name of a module.

More common issues will be added as they are reported...

Arnor Code

Code is located in collapsed tab, click expand to reveal.

   PlayerTemplate FactionMen
       StartingUnit1               = ArnorFighterHorde
       StartingUnitOffset1         = X:30 Y:200 Z:0
       StartingUnit0               = ArnorFighterHorde
       StartingUnitOffset0         = X:1 Y:130 Z:0
       SpellBook                   = GoodSpellBook
       SpellBookMp                 = ArnorSpellBook
       PurchaseScienceCommandSet   = GoodSpellStoreCommandSet
       PurchaseScienceCommandSetMP = ArnorSpellStoreCommandSet
       IntrinsicSciences           = SCIENCE_GOOD
       IntrinsicSciencesMP         = SCIENCE_ARNOR
       DisplayName                 = INI:FactionArnor
       MultiSelectionPortrait      = UPArnor_Army
       InitialUpgrades             = Upgrade_MenFaction Upgrade_AllFactionUpgrade Upgrade_ArnorFaction
       BuildableHeroesMP           = CreateAHero ArnorCaptainStealthless_mod ArnorMalbethRecruit ArnorAraphant ArnorAranarthDunedain GondorArvedui GondorGandalf_mod_forFornost ImladrisGlorfindel_forArnor LothlorienCirdan 
       BuildableRingHeroesMP       = RingHeroDummy
   End
   
   Object GondorCampKeep
       CommandSet = ArnorCampKeepCommandSet
   End
   
   Object GondorCastleUpgrade
       ReplaceModule ModuleTag_MenTreb
         Behavior = ObjectCreationUpgrade ModuleTag_MenTrebforFornost
           TriggeredBy               = Upgrade_HasWallTrebuchet
           ConflictsWith             = Upgrade_PosternGate Upgrade_OpenGarrison
           Delay                     = 0.0        
           RemoveUpgrade             = Upgrade_WallTrebuchetButtonEnable
           ThingToSpawn              = ArnorTrebuchetWall
           Offset                    = X:50.0 Y:0.0 Z:68
           FadeInTime                = 1000
         End
       End
   End
   
   Object GondorForge
   
       CommandSet              = ArnorForgeCommandSet
    
    
   End
   
   Object GondorBuildingFoundation
   
    SelectPortrait = BRArnorFoundation
   
     CommandSet = ArnorGondorFoundationCommandSet
   
       ReplaceModule ModuleTag_Draw2
         Draw = W3DScriptedModelDraw ModuleTag_Draw2_Arnor
           DefaultModelConditionState
               Model = OBBFoundationX
           End
           ModelConditionState = WORLD_BUILDER
               Model = GBSizeTemplate
           End
         End
       End
       ReplaceModule ModuleTag_Draw
         Draw = W3DFloorDraw ModuleTag_Draw_Arnor
           ModelName = ABFoundationX
         End
       End
   End
   
   Object GondorBuildingFoundation_Lager
   
    SelectPortrait = BRArnorFoundation
   
     CommandSet = ArnorGondorFoundationLagerCommandSet
   
       ReplaceModule ModuleTag_Draw2
         Draw = W3DScriptedModelDraw ModuleTag_Draw2_Arnor
           DefaultModelConditionState
               Model = OBBFoundationX
           End
           ModelConditionState = WORLD_BUILDER
               Model = GBSizeTemplate
           End
         End
       End
       ReplaceModule ModuleTag_Draw
         Draw = W3DFloorDraw ModuleTag_Draw_Arnor
           ModelName = ABFoundationX
         End
       End
   End
   
   Object GondorBaseDefenceFoundation
   
    SelectPortrait = BRArnorFoundation
   
       ReplaceModule ModuleTag_Draw2
         Draw = W3DScriptedModelDraw ModuleTag_Draw2_Arnor
           DefaultModelConditionState
               Model = OBBFoundationX
           End
           ModelConditionState = WORLD_BUILDER
               Model = GBBtlTwrM
           End
         End
       End
       ReplaceModule ModuleTag_Draw
         Draw = W3DFloorDraw ModuleTag_Draw_Arnor
           ModelName = ABFoundationM
         End
       End
   End
   
   Object GondorCastleBaseKeep
     CommandSet = ArnorGondorCastleBaseKeepCommandSet
   
       ReplaceModule MakeTheFreeTreb2
          Behavior = ObjectCreationUpgrade MakeTheFreeTreb2_Arnor
             TriggeredBy             = Upgrade_PurchaseUpgradeMalbeth 
             Delay                   = 3000.0
             RemoveUpgrade           = Upgrade_WallTrebuchetButtonEnable
             ThingToSpawn            = ArnorMalbeth
             Offset                  = X:28 Y:0.8 Z:35
             FadeInTime              = 500
          End
       End
   End
   
   Object GondorStable
       CommandSet = GondorStablesCommandSet_forFornost
   
       ReplaceModule ModueTag_StableLevel2CommandSet
         Behavior = CommandSetUpgrade ModueTag_StableLevel2CommandSet_Arnor
           TriggeredBy       = Upgrade_GondorStructureLevel2
           ConflictsWith     = Upgrade_GondorStructureLevel3
           CommandSet        = GondorStablesCommandSetLevel2_forFornost
         End   
       End
   
       ReplaceModule ModueTag_StableLevel3CommandSet
         Behavior = CommandSetUpgrade ModueTag_StableLevel3CommandSet_Arnor
           TriggeredBy       = Upgrade_GondorStructureLevel3
           CommandSet        = GondorStablesCommandSetLevel3_forFornost
         End  
       End
   End
   
   Object GondorWorkshop
       CommandSet = GondorWorkshopCommandSet_forFornost
   
       ReplaceModule ModuleTag_GondorWorkshopLevel2CommandSet
         Behavior = CommandSetUpgrade ModueTag_GondorWorkshopLevel2CommandSet_Arnor
           TriggeredBy          = Upgrade_GondorStructureLevel2
           ConflictsWith        = Upgrade_GondorStructureLevel3
           CommandSet           = GondorWorkshopCommandSetLevel2_forFornost
         End   
       End
   
       ReplaceModule ModuleTag_GondorWorkshopLevel3CommandSet
         Behavior = CommandSetUpgrade ModueTag_GondorWorkshopLevel3CommandSet_Arnor
           TriggeredBy          = Upgrade_GondorStructureLevel3
           CommandSet           = GondorWorkshopCommandSetLevel3_forFornost
         End  
       End
   End
   
   Object GondorRangerTents
       Description         = OBJECT:ArnorRangerTentsDescription
       Description         = OBJECT:ArnorRangerTentsDescription
       ReplaceModule ModuleTag_SpawnFighters
         Behavior = SpawnBehavior ModuleTag_SpawnFighters_Neu
           TriggeredBy          = Upgrade_StructureLevel1
           ConflictsWith        = Upgrade_ObjectUnderAIControl
           SpawnNumber          = 3
           InitialBurst         = 3
           SpawnTemplateName    = DunedainRangerMod_SlavedCreep
           SpawnReplaceDelay    = 30000
           CanReclaimOrphans    = Yes
         End
       End
       CommandSet = ArnorRangerTentsCommandSet
   End