OpenXcom Forum

Modding => Work In Progress => Topic started by: vladdrak on February 23, 2016, 01:26:24 pm

Title: [MAYDAY] trying to make 2 mods compatible, but
Post by: vladdrak on February 23, 2016, 01:26:24 pm
questions, questions..

so last year i asked SolariusScorch if Svanh's Cultists mod could be used with his Final Mod Pack. he said:
Quote
Probably not, since it uses 3 item levels in unit deployments ( the alienDeployments section), while Final Mod Pack uses 5. If you want to make them compatible, you'll have to add two item sets to every unit in the Cult mod - a bit of work, but not much.

now looking at alienDeployments i find this:

Quote
alienDeployments:
  - type: STR_CULT
    data:
      - alienRank: 7
        lowQty: 5
        highQty: 7
        dQty: 6
        percentageOutsideUfo: 100
        itemSets:
          -
            - STR_PISTOL
            - STR_PISTOL_CLIP
            - STR_PISTOL_CLIP
            - STR_GRENADE
          -
            - STR_RIFLE
            - STR_RIFLE_CLIP
            - STR_RIFLE_CLIP
            - STR_GRENADE
            - STR_GRENADE
          -
            - STR_HEAVY_CANNON
            - STR_HC_HE_AMMO
            - STR_HC_HE_AMMO
            - STR_GRENADE
            - STR_HC_HE_AMMO
      - alienRank: 6
        lowQty: 5
        highQty: 7
        dQty: 6
        percentageOutsideUfo: 100
        itemSets:
          -
            - STR_PISTOL
            - STR_PISTOL_CLIP
            - STR_PISTOL_CLIP
            - STR_GRENADE
          -
            - STR_RIFLE
            - STR_RIFLE_CLIP
            - STR_RIFLE_CLIP
            - STR_GRENADE
            - STR_GRENADE
          -
            - STR_AUTO_CANNON
            - STR_AC_AP_AMMO
            - STR_AC_AP_AMMO
            - STR_GRENADE
            - STR_AC_AP_AMMO
      - alienRank: 5
        lowQty: 3
        highQty: 5
        dQty: 4
        percentageOutsideUfo: 90
        itemSets:
          -
            - STR_PISTOL
            - STR_PISTOL_CLIP
            - STR_PISTOL_CLIP
            - STR_GRENADE
          -
            - STR_RIFLE
            - STR_RIFLE_CLIP
            - STR_RIFLE_CLIP
            - STR_GRENADE
            - STR_GRENADE
          -
            - STR_AUTO_CANNON
            - STR_AC_HE_AMMO
            - STR_AC_IN_AMMO
            - STR_GRENADE
            - STR_AC_HE_AMMO
      - alienRank: 4
        lowQty: 3
        highQty: 5
        dQty: 3
        percentageOutsideUfo: 80
        itemSets:
          -
            - STR_PLASMA_PISTOL
            - STR_PLASMA_PISTOL_CLIP
            - STR_PLASMA_PISTOL_CLIP
          -
            - STR_PLASMA_RIFLE
            - STR_PLASMA_RIFLE_CLIP
            - STR_PLASMA_RIFLE_CLIP
          -
            - STR_HEAVY_PLASMA
            - STR_HEAVY_PLASMA_CLIP
            - STR_ALIEN_GRENADE
            - STR_HEAVY_PLASMA_CLIP
      - alienRank: 3
        lowQty: 2
        highQty: 3
        dQty: 2
        percentageOutsideUfo: 0
        itemSets:
          -
            - STR_PLASMA_PISTOL
            - STR_PLASMA_PISTOL_CLIP
            - STR_PLASMA_PISTOL_CLIP
          -
            - STR_PLASMA_RIFLE
            - STR_PLASMA_RIFLE_CLIP
            - STR_ALIEN_GRENADE
            - STR_PLASMA_RIFLE_CLIP
          -
            - STR_HEAVY_PLASMA
            - STR_HEAVY_PLASMA_CLIP
            - STR_HEAVY_PLASMA_CLIP
            - STR_HEAVY_PLASMA_CLIP
      - alienRank: 2
        lowQty: 3
        highQty: 6
        dQty: 5
        percentageOutsideUfo: 90
        itemSets:
          -
            - STR_PLASMA_PISTOL
            - STR_PLASMA_PISTOL_CLIP
            - STR_PLASMA_PISTOL_CLIP
          -
            - STR_PLASMA_RIFLE
            - STR_PLASMA_RIFLE_CLIP
            - STR_PLASMA_RIFLE_CLIP
          -
            - STR_HEAVY_PLASMA
            - STR_HEAVY_PLASMA_CLIP
            - STR_ALIEN_GRENADE
            - STR_HEAVY_PLASMA_CLIP
      - alienRank: 1
        lowQty: 1
        highQty: 2
        dQty: 1
        percentageOutsideUfo: 100
        itemSets:
          -
            - STR_PLASMA_PISTOL
            - STR_PLASMA_PISTOL_CLIP
            - STR_PLASMA_PISTOL_CLIP
          -
            - STR_PLASMA_RIFLE
            - STR_PLASMA_RIFLE_CLIP
            - STR_PLASMA_RIFLE_CLIP
          -
            - STR_HEAVY_PLASMA
            - STR_HEAVY_PLASMA_CLIP
            - STR_ALIEN_GRENADE
            - STR_HEAVY_PLASMA_CLIP
      - alienRank: 0
        lowQty: 0
        highQty: 1
        dQty: 0
        percentageOutsideUfo: 100
        itemSets:
          -
            - STR_PLASMA_PISTOL
            - STR_PLASMA_PISTOL_CLIP
            - STR_PLASMA_PISTOL_CLIP
          -
            - STR_PLASMA_RIFLE
            - STR_PLASMA_RIFLE_CLIP
            - STR_PLASMA_RIFLE_CLIP
          -
            - STR_HEAVY_PLASMA
            - STR_HEAVY_PLASMA_CLIP
            - STR_ALIEN_GRENADE
            - STR_HEAVY_PLASMA_CLIP

so i guess i could just add 2 new weapons/ammo strings to each set and i should be good to go, right? in Final Mod Pack's items_FMP.rul there are custom goodies such as STR_MAGNUM and STR_AK47, etc. will i have to reference anything or i could just use the strings like any default one?
btw according to https://www.ufopaedia.org/index.php?title=Alien_Rank (https://www.ufopaedia.org/index.php?title=Alien_Rank) there are 7 ranks, while CULT.rul has 8, so i'd assume alienRanks is also expandable. is that correct?

thanks in advance!
Title: Re: [MAYDAY] trying to make 2 mods compatible, but
Post by: Solarius Scorch on February 23, 2016, 07:17:48 pm
Hi,

Yeah, it's exactly how you do that. For example you change this part:

Code: [Select]
      - alienRank: 7
        lowQty: 5
        highQty: 7
        dQty: 6
        percentageOutsideUfo: 100
        itemSets:
          -
            - STR_PISTOL
            - STR_PISTOL_CLIP
            - STR_PISTOL_CLIP
            - STR_GRENADE
          -
            - STR_RIFLE
            - STR_RIFLE_CLIP
            - STR_RIFLE_CLIP
            - STR_GRENADE
            - STR_GRENADE
          -
            - STR_HEAVY_CANNON
            - STR_HC_HE_AMMO
            - STR_HC_HE_AMMO
            - STR_GRENADE
            - STR_HC_HE_AMMO

into something like this:

Code: [Select]
      - alienRank: 7
        lowQty: 5
        highQty: 7
        dQty: 6
        percentageOutsideUfo: 100
        itemSets:
          -
            - STR_PISTOL
            - STR_PISTOL_CLIP
            - STR_PISTOL_CLIP
            - STR_GRENADE
          -
            - STR_PISTOL
            - STR_PISTOL_CLIP
            - STR_PISTOL_CLIP
            - STR_GRENADE
          -
            - STR_RIFLE
            - STR_RIFLE_CLIP
            - STR_RIFLE_CLIP
            - STR_GRENADE
            - STR_GRENADE
          -
            - STR_RIFLE
            - STR_RIFLE_CLIP
            - STR_RIFLE_CLIP
            - STR_GRENADE
            - STR_GRENADE
          -
            - STR_HEAVY_CANNON
            - STR_HC_HE_AMMO
            - STR_HC_HE_AMMO
            - STR_GRENADE
            - STR_HC_HE_AMMO

So now you have 5 items instead of 3. Do the same for each rank and you're set. (And be very careful about indentation, so use the correct number of spaces and don't ever use tabs.)

As for other weapons, yes you may add them even though they're in another mod, as long as the other mod is also active. So you can add STR_MACHETE instead of STR_RIFLE, for example. Just don't give them more than one shooting weapon (one shooting and one melee is fine).

As for the alien ranks, there are always 8 ranks, ranging from 0 to 7:
0 - Commander
1 - Leader
2 - Engineer
3 - Medic
4 - Navigator
5 - Soldier
6 & 7 - terror units (can be the same, can be different)

You can add more ranks if you want, but it's really complicated as you'd have to add more ranks to all the deployments in all rulesets, so I wouldn't recommend that for you. In fact, it's only for people who need specifically this.

I hope this helps!