Jump to content

How Soldiers get assigned a class


Amineri

Recommended Posts

While digging around for the answer to how reward soldier rank is determined, I discovered that the prior mechanic for picking class only applies to reward soldiers for abduction missions.

 

Reward soldiers for Funding Council Missions/Requests use the same XGFacility_Barracks.PickAClass function as is used to pick the class of a soldier upon reaching Squaddie. FC Reward Soldiers are determined in the function XGFundingCouncil.RewardSoldier. It allows for the class and rank to be specified as optional parameters.

 

Reward soldier rank is is also computed differently for the two cases :

 

1) For abduction mission reward soldiers, the rank is your current soldiers highest rank - 1 , clamped between 3 and 5 (inclusive)

 

2) For Funding Council Missions/Requests, the rank is your current soldiers highest rank - 1, clamped to be no greater than 3 (inclusive).

 

There are two special cases of FC Missions that are configured to provide a different rank reward:

a) The mission with map "URB_CommercialAlley_Rescue (Mission Variant Commercial Alley Rescue)" always generates a rank 3 reward soldier

b) The mission with map "URB_HighwayFallen_Extraction (Mission Variant Urban Highway Fallen Extraction)" always generates a rank 5 reward soldier

 

The specifics of FC Mission rewards are defined in XGFundingCouncil.BuildMission.

 

I'm not 100% sure if these two FC missions are activated, though.

Link to comment
Share on other sites

  • Replies 45
  • Created
  • Last Reply

Top Posters In This Topic

But given that Enemy within is only a few weeks away and with absolute certainty will mess with the very definition of classes it seems like a waste to create an UI for something almost guaranteed to be obsolete before being used by anyone.

From that perspective combined with me likely being the only mod-user, and that my personal preference is deterministic, I think I will put this thread on ice and revisit the topic when EW has arrived :smile:

Ehr... Well...

I may have accidently created a custom toolboks mod which just happens to isolate and comment the exact bytes affecting probability, but technically that is not an UI so the above statement is still true :smile:

 

 

MOD_NAME=Custom class probabilty mod
AUTHOR=Bertilsson
DESCRIPTION=Allows custom percent based class probabilities when soldiers are promoted to squaddie rank. 

Version: 1.0

Compatible with XCOM Enemy Unknown versions:
 - Patch 4 ( Changelist: 356266 )

UPK_FILE=XComStrategyGame.upk
OFFSET=2864023
[MODDED_HEX]
9A 28 00 00 AB 1F 00 00 00 00 00 00 92 28 00 00 00 00 00 00 00 00 00 00 9A 28 00 00 00 00 00 00 3A 05 00 00 41 92 00 00 1A 01 00 00 22 01 00 00 54 00 99 28 00 00 2C 05 16 0F 10 2C 01 00 99 28 00 00 2C 19 0F 10 2C 02 00 99 28 00 00 2C 19 0F 10 2C 03 00 99 28 00 00 2C 19 0F 10 2C 04 00 99 28 00 00 2C 19 0F 00 95 28 00 00 26 07 9D 00 96 00 95 28 00 00 2C 04 16 A1 10 92 00 95 28 00 00 26 16 00 99 28 00 00 10 00 95 28 00 00 00 99 28 00 00 16 A5 00 95 28 00 00 16 06 54 00 0F 00 96 28 00 00 92 A7 10 2C 04 00 99 28 00 00 16 26 16 0F 00 97 28 00 00 26 07 0C 01 96 00 97 28 00 00 2C 05 16 07 FE 00 98 00 96 28 00 00 10 00 97 28 00 00 00 99 28 00 00 16 04 00 97 28 00 00 A5 00 97 28 00 00 16 06 C3 00 04 2C 01 04 3A 9A 28 00 00 53 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 00 00 00 02 00 02 00 B6 21 00 00 00 00 00 00

UPK_FILE=XComStrategyGame.upk
OFFSET=2864090
[MODDED_HEX]
{Change below hex value to modify probability percent for Sniper Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=2864101
[MODDED_HEX]
{Change below hex value to modify probability percent for Heavy Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=2864112
[MODDED_HEX]
{Change below hex value to modify probability percent for Support Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=2864123
[MODDED_HEX]
{Change below hex value to modify probability percent for Assault Class  - See bottom for conversion table}
19

{Decimal to hexadecimal conversion table below
0  = 00
1  = 01
2  = 02
3  = 03
4  = 04
5  = 05
6  = 06
7  = 07
8  = 08
9  = 09
10 = 0A
11 = 0B
12 = 0C
13 = 0D
14 = 0E
15 = 0F
16 = 10
17 = 11
18 = 12
19 = 13
20 = 14
21 = 15
22 = 16
23 = 17
24 = 18
25 = 19
26 = 1A
27 = 1B
28 = 1C
29 = 1D
30 = 1E
31 = 1F
32 = 20
33 = 21
34 = 22
35 = 23
36 = 24
37 = 25
38 = 26
39 = 27
40 = 28
41 = 29
42 = 2A
43 = 2B
44 = 2C
45 = 2D
46 = 2E
47 = 2F
48 = 30
49 = 31
50 = 32
51 = 33
52 = 34
53 = 35
54 = 36
55 = 37
56 = 38
57 = 39
58 = 3A
59 = 3B
60 = 3C
61 = 3D
62 = 3E
63 = 3F
64 = 40
65 = 41
66 = 42
67 = 43
68 = 44
69 = 45
70 = 46
71 = 47
72 = 48
73 = 49
74 = 4A
75 = 4B
76 = 4C
77 = 4D
78 = 4E
79 = 4F
80 = 50
81 = 51
82 = 52
83 = 53
84 = 54
85 = 55
86 = 56
87 = 57
88 = 58
89 = 59
90 = 5A
91 = 5B
92 = 5C
93 = 5D
94 = 5E
95 = 5F
96 = 60
97 = 61
98 = 62
99 = 63
100= 64
} 

 

 

 

As a side-effect I have also learned that the game engine gets really cranky if I completely ignore and don't assign any value at all to the original return value variable, even if I always return a value and don't have any need for the return value variable.

Link to comment
Share on other sites

I've always wanted to assign classes myself. But thinking about it, it's wrong to give sniper rifle to a rookie with words: "Man, I need a sniper... try not to suck at it".

 

25% class probability is logical, because different people have different skills, but on top of that, I'd love to hire classes I need. "Dear XCOM members, I need 2 snipers, 1 heavy, 3 supports and 2 assaults. Please pick your best, pack them and send to our HQ. Thank you." :smile:

Edited by Drakous79
Link to comment
Share on other sites

While digging around for the answer to how reward soldier rank is determined, I discovered that the prior mechanic for picking class only applies to reward soldiers for abduction missions.

 

Reward soldiers for Funding Council Missions/Requests use the same XGFacility_Barracks.PickAClass function as is used to pick the class of a soldier upon reaching Squaddie. FC Reward Soldiers are determined in the function XGFundingCouncil.RewardSoldier. It allows for the class and rank to be specified as optional parameters.

 

Reward soldier rank is is also computed differently for the two cases :

 

1) For abduction mission reward soldiers, the rank is your current soldiers highest rank - 1 , clamped between 3 and 5 (inclusive)

 

2) For Funding Council Missions/Requests, the rank is your current soldiers highest rank - 1, clamped to be no greater than 3 (inclusive).

 

There are two special cases of FC Missions that are configured to provide a different rank reward:

a) The mission with map "URB_CommercialAlley_Rescue (Mission Variant Commercial Alley Rescue)" always generates a rank 3 reward soldier

b) The mission with map "URB_HighwayFallen_Extraction (Mission Variant Urban Highway Fallen Extraction)" always generates a rank 5 reward soldier

 

The specifics of FC Mission rewards are defined in XGFundingCouncil.BuildMission.

 

I'm not 100% sure if these two FC missions are activated, though.

 

If I'm doing my math right, then rank 5 is Captain, which doesn't fit what I've seen since I've gotten Majors as rewards.

 

I'll keep an eye on those 2 Council missions to see what ranks I get as rewards next time I play them. But the HighwayFallen seems odd because I've got it as the 1st Council mission in March and it might be a little too much of a reward to get a Captain right at the end of March.

Edited by Hobbes77
Link to comment
Share on other sites

I've always wanted to assign classes myself. But thinking about it, it's wrong to give sniper rifle to a rookie with words: "Man, I need a sniper... try not to suck at it".

 

25% class probability is logical, because different people have different skills, but on top of that, I'd love to hire classes I need. "Dear XCOM members, I need 2 snipers, 1 heavy, 3 supports and 2 assaults. Please pick your best, pack them and send to our HQ. Thank you." :smile:

It would actually make more sense if the soldiers were not civilians picked up directly off the street but instead had some basic military training where they had been specialized in different areas. How many weeks does it really take to discover that the big guy who can't aim would probably not make a good sniper?

 

I will look into making an "even rookies have a class mod".

 

With a little bit of luck soldiers could be created with rank -1 and immediately leveled up to rookie and be assigned a class without giving access to any perk or improved stats.

 

By lowering base stat's and upping the stat increase at promotions it would not necessarily be cheating either since rookies could still be crappy soldiers, only now they would be specialized crappy soldiers :smile:

Edited by Bertilsson
Link to comment
Share on other sites

  • 3 weeks later...

Enemy within has a completely new model for selecting class on promotion to squaddie.

The new model is partially tied into DefaultGameData.ini

NUM_PER_CLASS_DISTRIBUTION=4 ; to determine what classes your soldiers get, all classes are added this number of times to an array
NUM_REMOVE_CLASS_DISTRIBUTION=3 ; this number of entries is removed at random from that array.
; each soldier picks a class at random from the array when it hits Squaddie rank
; when the array is empty, a NEW array is created using the same rules

The result is that you can expect almost perfectly "fair" number of soldiers of each class.

The less funny part is that it does not take existing classes in barracks into account, so you can still be stuck with only snipers and supports and still get a support or sniper if you have lost all other.

 

So it is back to the drawing board on this one as soon as I finish my first game of EW :)

Link to comment
Share on other sites

I haven't checked the code yet, but it's still definitely possible to get very biased class selections.

 

My current playthrough I've had an extreme lack of Supports, with lots of Heavies and a fair number of Snipers. I had 1 Support early on that died on the first Slingshot mission to a flank-shot by that Plasma Rifle-wielding Muton. After that I've only gotten 3 Supports, and 2 of those were abduction mission rewards.

 

Lots of Heavies is bad for Covert Ops, since they can't go on those missions ~_~.

Link to comment
Share on other sites

Reward soldiers seem to be picked independently of the new class selections for squaddies. I guess the idea is that they should truely be a reward and not just a replacement for a soldier you would eventually end up with anyway...

 

Edit: And yes if you are really unlucky you can get 4 snipers, 4 heavies, 4 assaults but only a single support, since 3 soldiers are randomly removed from the list of soldiers to pick from.

Edited by Bertilsson
Link to comment
Share on other sites

  • 2 weeks later...

I have now re-created a mod that allows selecting individual probabilities for each class for Enemy Within, by hijacking NeverGiven which selects class for PickAClass-function as long as it doesn't return 0:

 

Object code:

 

 

function XComGame.XGTacticalGameCoreData.ESoldierClass NeverGiven()
{
  local array<XComGame.XGTacticalGameCoreData.ESoldierClass> arrClasses;
  local array<int> arrClassDistribution;
  local XGStrategySoldier kSoldier;
  local int I;

  arrClassDistribution.Length = 5;
  arrClassDistribution[1] = 0 + 25;
  arrClassDistribution[2] = arrClassDistribution[1] + 25;
  arrClassDistribution[3] = arrClassDistribution[2] + 25;
  arrClassDistribution[4] = arrClassDistribution[3] + 25;
  arrClassDistribution[0] = Rand(arrClassDistribution[4]) + 1;
  I = 1;
  J0xA2:
  // End:0xF0 [Loop If]
  if(I < 5)
  {
    // End:0xE2
    if(arrClassDistribution[0] <= arrClassDistribution[I])
    {
      return byte(I);
    }
    ++ I;
    // [Loop Continue]
    goto J0xA2;
  }
  return 0;
  //return ReturnValue;  
}

The 0 + part is only to make all probabilities (default 25) have offset 21 from each other, to make it simple if a GUI is added.

The return 0; should never happen but I don't see any downside to keep it there as it would hopefully avoid a crash if the function was ever to reach that line.

 

Toolboks mod:

 

 

MOD_NAME=Class probabilty mod for EW
AUTHOR=Bertilsson
DESCRIPTION=Allows custom percent based class probabilities when soldiers are promoted to squaddie rank. 

Version: 1.0

Compatible with XCOM Enemy Within Patch 0 (No Patch)

UPK_FILE=XComStrategyGame.upk
OFFSET=3543795
[MODDED_HEX]
4E 32 00 00 94 25 00 00 00 00 00 00 47 32 00 00 00 00 00 00 00 00 00 00 4E 32 00 00 00 00 00 00 6A 06 00 00 F0 B9 00 00 FE 00 00 00 17 01 00 00 0F 36 00 4C 32 00 00 2C 05 0F 10 2C 01 00 4C 32 00 00 92 2C 00 2C 19 16 0F 10 2C 02 00 4C 32 00 00 92 10 2C 01 00 4C 32 00 00 2C 19 16 0F 10 2C 03 00 4C 32 00 00 92 10 2C 02 00 4C 32 00 00 2C 19 16 0F 10 2C 04 00 4C 32 00 00 92 10 2C 03 00 4C 32 00 00 2C 19 16 0F 10 2C 00 00 4C 32 00 00 92 A7 10 2C 04 00 4C 32 00 00 16 2C 01 16 0F 00 4A 32 00 00 2C 01 07 F0 00 96 00 4A 32 00 00 2C 05 16 07 E2 00 98 10 2C 00 00 4C 32 00 00 10 00 4A 32 00 00 00 4C 32 00 00 16 04 38 3D 00 4A 32 00 00 A5 00 4A 32 00 00 16 06 A2 00 04 24 00 04 3A 4E 32 00 00 53 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 00 00 00 02 00 02 00 61 25 00 00 00 00 00 00
UPK_FILE=XComStrategyGame.upk
OFFSET=3543865
[MODDED_HEX]
{Change below hex value to modify probability percent for Sniper Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=3543886
[MODDED_HEX]
{Change below hex value to modify probability percent for Heavy Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=3543907
[MODDED_HEX]
{Change below hex value to modify probability percent for Support Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=3543928
[MODDED_HEX]
{Change below hex value to modify probability percent for Assault Class  - See bottom for conversion table}
19

{Decimal to hexadecimal conversion table below
0  = 00
1  = 01
2  = 02
3  = 03
4  = 04
5  = 05
6  = 06
7  = 07
8  = 08
9  = 09
10 = 0A
11 = 0B
12 = 0C
13 = 0D
14 = 0E
15 = 0F
16 = 10
17 = 11
18 = 12
19 = 13
20 = 14
21 = 15
22 = 16
23 = 17
24 = 18
25 = 19
26 = 1A
27 = 1B
28 = 1C
29 = 1D
30 = 1E
31 = 1F
32 = 20
33 = 21
34 = 22
35 = 23
36 = 24
37 = 25
38 = 26
39 = 27
40 = 28
41 = 29
42 = 2A
43 = 2B
44 = 2C
45 = 2D
46 = 2E
47 = 2F
48 = 30
49 = 31
50 = 32
51 = 33
52 = 34
53 = 35
54 = 36
55 = 37
56 = 38
57 = 39
58 = 3A
59 = 3B
60 = 3C
61 = 3D
62 = 3E
63 = 3F
64 = 40
65 = 41
66 = 42
67 = 43
68 = 44
69 = 45
70 = 46
71 = 47
72 = 48
73 = 49
74 = 4A
75 = 4B
76 = 4C
77 = 4D
78 = 4E
79 = 4F
80 = 50
81 = 51
82 = 52
83 = 53
84 = 54
85 = 55
86 = 56
87 = 57
88 = 58
89 = 59
90 = 5A
91 = 5B
92 = 5C
93 = 5D
94 = 5E
95 = 5F
96 = 60
97 = 61
98 = 62
99 = 63
100= 64
}  

 

 

 

However while putting this mod together I finally realized that what I personally want is NOT what I have been creating so far...

What I really want is perfectly random with individual max limit for each class similar to this:

Heavy: Max 3 in barracks

Support: Max 3 in barracks

Sniper: Max 2 in barracks

Assault: Max 99 in barracks

 

So as soon as max limit has been reached I stop receiving any more of that class until someone dies.

Edited by Bertilsson
Link to comment
Share on other sites

Finally! THIS is how I want it :wub:

 

Object Code:

 

 

function XComGame.XGTacticalGameCoreData.ESoldierClass NeverGiven()
{
  local array<XComGame.XGTacticalGameCoreData.ESoldierClass> arrClasses;
  local array<int> arrClassDistribution;
  local XGStrategySoldier kSoldier;
  local int I;

  arrClassDistribution.Length = 9;
  arrClassDistribution[1] = 0 + 25;  //probability for class 1 (0 + only for GUI friendliness)
  arrClassDistribution[2] = arrClassDistribution[1] + 25; //stack with all before
  arrClassDistribution[3] = arrClassDistribution[2] + 25; //stack with all before
  arrClassDistribution[4] = arrClassDistribution[3] + 25; //stack with all before
  arrClassDistribution[5] = 255; //Max soldiers allowed class 1
  arrClassDistribution[6] = 255; //Max soldiers allowed class 2
  arrClassDistribution[7] = 255; //Max soldiers allowed class 3
  arrClassDistribution[8] = 255; //Max soldiers allowed class 4
  J0xB3:  //Random selection starts here
  arrClassDistribution[0] = Rand(arrClassDistribution[4]) + 1; //Random value between 1 and all stacked
  I = 1;
  J0xDE:
  // End:0x160 [Loop If]
  if(I < 5)
  {
    // End:0x152
    if(arrClassDistribution[0] <= arrClassDistribution[I]) //Randomly selected class identified
    {
      // End:0x14F
      if((GetNumSoldiersOfClass(byte(I))) < arrClassDistribution[I + 4]) //Randomly selected class within max limit
      {
        return byte(I);
      }
      // [Spaghetti time]
      goto J0xB3; //The randomly selected class has reached max limit jump all the way back to randomization and try again.
    }
    ++ I;
    // [Loop Continue]
    goto J0xDE;
  }
  return 0;  //Should not be possible to reach
  //return ReturnValue;  
} 

 

 

 

Toolboksmod for Enemy Within (no patch)

 

 

MOD_NAME=Class probabilty mod for EW
AUTHOR=Bertilsson
DESCRIPTION=Allows custom percent based class probabilities when soldiers are promoted to squaddie rank. 

Version: 2.0

Compatible with XCOM Enemy Within Patch 0 (No Patch)

UPK_FILE=XComStrategyGame.upk
OFFSET=3543795
[MODDED_HEX]
4E 32 00 00 94 25 00 00 00 00 00 00 47 32 00 00 00 00 00 00 00 00 00 00 4E 32 00 00 00 00 00 00 6A 06 00 00 F0 B9 00 00 6E 01 00 00 17 01 00 00 0F 36 00 4C 32 00 00 2C 09 0F 10 2C 01 00 4C 32 00 00 92 2C 00 2C 19 16 0F 10 2C 02 00 4C 32 00 00 92 10 2C 01 00 4C 32 00 00 2C 19 16 0F 10 2C 03 00 4C 32 00 00 92 10 2C 02 00 4C 32 00 00 2C 19 16 0F 10 2C 04 00 4C 32 00 00 92 10 2C 03 00 4C 32 00 00 2C 19 16 0F 10 2C 05 00 4C 32 00 00 2C FF 0F 10 2C 06 00 4C 32 00 00 2C FF 0F 10 2C 07 00 4C 32 00 00 2C FF 0F 10 2C 08 00 4C 32 00 00 2C FF 0F 10 2C 00 00 4C 32 00 00 92 A7 10 2C 04 00 4C 32 00 00 16 2C 01 16 0F 00 4A 32 00 00 2C 01 07 60 01 96 00 4A 32 00 00 2C 05 16 07 52 01 98 10 2C 00 00 4C 32 00 00 10 00 4A 32 00 00 00 4C 32 00 00 16 07 4F 01 96 1B C5 12 00 00 00 00 00 00 38 3D 00 4A 32 00 00 16 10 92 00 4A 32 00 00 2C 04 16 00 4C 32 00 00 16 04 38 3D 00 4A 32 00 00 06 B3 00 A5 00 4A 32 00 00 16 06 DE 00 04 24 00 04 3A 4E 32 00 00 53 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 00 00 00 02 00 02 00 61 25 00 00 00 00 00 00

UPK_FILE=XComStrategyGame.upk
OFFSET=3543865
[MODDED_HEX]
{Change below hex value to modify probability percent for Sniper Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=3543886
[MODDED_HEX]
{Change below hex value to modify probability percent for Heavy Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=3543907
[MODDED_HEX]
{Change below hex value to modify probability percent for Support Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=3543928
[MODDED_HEX]
{Change below hex value to modify probability percent for Assault Class  - See bottom for conversion table}
19

UPK_FILE=XComStrategyGame.upk
OFFSET=3543940
[MODDED_HEX]
{Change below hex value to set max number of Snipers allowed in barracks  - See bottom for conversion table}
FF

UPK_FILE=XComStrategyGame.upk
OFFSET=3543951
[MODDED_HEX]
{Change below hex value to set max number of Heavies allowed in barracks  - See bottom for conversion table}
FF

UPK_FILE=XComStrategyGame.upk
OFFSET=3543962
[MODDED_HEX]
{Change below hex value to set max number of Supports allowed in barracks  - See bottom for conversion table}
FF

UPK_FILE=XComStrategyGame.upk
OFFSET=3543973
[MODDED_HEX]
{Change below hex value to set max number of Assaults allowed in barracks  - See bottom for conversion table}
FF


{Decimal to hexadecimal conversion table below
0  = 00
1  = 01
2  = 02
3  = 03
4  = 04
5  = 05
6  = 06
7  = 07
8  = 08
9  = 09
10 = 0A
11 = 0B
12 = 0C
13 = 0D
14 = 0E
15 = 0F
16 = 10
17 = 11
18 = 12
19 = 13
20 = 14
21 = 15
22 = 16
23 = 17
24 = 18
25 = 19
26 = 1A
27 = 1B
28 = 1C
29 = 1D
30 = 1E
31 = 1F
32 = 20
33 = 21
34 = 22
35 = 23
36 = 24
37 = 25
38 = 26
39 = 27
40 = 28
41 = 29
42 = 2A
43 = 2B
44 = 2C
45 = 2D
46 = 2E
47 = 2F
48 = 30
49 = 31
50 = 32
51 = 33
52 = 34
53 = 35
54 = 36
55 = 37
56 = 38
57 = 39
58 = 3A
59 = 3B
60 = 3C
61 = 3D
62 = 3E
63 = 3F
64 = 40
65 = 41
66 = 42
67 = 43
68 = 44
69 = 45
70 = 46
71 = 47
72 = 48
73 = 49
74 = 4A
75 = 4B
76 = 4C
77 = 4D
78 = 4E
79 = 4F
80 = 50
81 = 51
82 = 52
83 = 53
84 = 54
85 = 55
86 = 56
87 = 57
88 = 58
89 = 59
90 = 5A
91 = 5B
92 = 5C
93 = 5D
94 = 5E
95 = 5F
96 = 60
97 = 61
98 = 62
99 = 63
100= 64
255= FF
}  

 

 

Possible to select individual probability for each class

Possible to select max limit in barracks for each class

(Also possible to get stuck in infinite loop if hiring more soldiers than sum of all max limits... So don't do that!)

Edited by Bertilsson
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...