Racial maximums

Discussion in 'Fallout Tactics Modding' started by +Zeke+, Apr 16, 2019 at 8:43 AM.

  1. +Zeke+

    +Zeke+ First time out of the vault

    Sep 21, 2010
    Is there a list somewhere that has all the racial maximums? All the classes including the nonplayer type.

    Do the various large tribals and large raiders conform to basic human stats? What about Reavers?

    Also, if you swapped out a human player in the editor for a large tribal then can they use armor?
     
  2. nadeauhugo

    nadeauhugo Author of FOT mod THE SUM Modder

    Mar 9, 2014
    Hi!

    All you are asking is stocked within "races.txt" file, stored in core/tables folder. It looks like that :

    Code:
    ////////////////////////////////////////////////////////////////////////////////
    // RACES
    //
    //  WARNING: Changing order of any of these tables will effect the game code!
    //
    // Columns:
    //      Race         - Used to find sprite name, lowest common denominator.
    //      PhysicalType - Used to specify hit locations and combat messages
    //      TraitType    - Used to allocate racial traits
    //      RaceIndex    - Used internally
    races = {
    //     Race                PhysicalType           TraitType                 RaceIndex
        { {BOS},                {Humanoid},           {Human},         },         // 0
        { {Ghoul},              {Humanoid},           {Ghoul},         },         // 1
        { {Tribal},             {Humanoid},           {Human},         },         // 2
        { {TribalLarge},        {Humanoid},           {Human},         },         // 3
        { {Raider},             {Humanoid},           {Human},         },         // 4
        { {RaiderLarge},        {Humanoid},           {Human},         },         // 5
        { {RaiderHuge},         {Humanoid},           {Human},         },         // 6
        { {Reaver},             {Humanoid},           {Human},         },         // 7
        { {ReaverHuge},         {Humanoid},           {Human},         },         // 8
        { {Mutant},             {Humanoid},           {Mutant},        },         // 9
        { {BOSScribe},          {Humanoid},           {Human},         },         // 10
        { {BOSElder},           {Humanoid},           {Human},         },         // 11
        { {CitizenAlpha},       {Humanoid},           {Human},         },         // 12
        { {CitizenThin},        {Humanoid},           {Human},         },         // 13
        { {CitizenMedium},      {Humanoid},           {Human},         },         // 14
        { {VaultZero},          {Humanoid},           {Human},         },         // 15
        { {Deathclaw},          {Deathclaw},          {Deathclaw},     },         // 16
        { {DeathclawBaby},      {Deathclaw},          {Deathclaw},     },         // 17
        { {BDCSmall},           {Cockroach},          {Critter},       },         // 18
        { {BDCLarge},           {Cockroach},          {Critter},       },         // 19
        { {RobotHumanoid},      {RobotHumanoid},      {RobotHumanoid}, },         // 20
        { {RobotPacification},  {RobotPacification},  {RobotHumanoid}, },         // 21
        { {RobotLifter},        {RobotLifter},        {RobotHumanoid}, },         // 22
        { {RobotHover},         {RobotHover},         {RobotHumanoid}, },         // 23
        { {RobotTank},          {RobotTank},          {RobotHumanoid}, },         // 24
        { {RobotBehemoth},      {RobotBehemoth},      {RobotHumanoid}, },         // 25
        { {RobotSecurity},      {RobotSecurity},      {RobotHumanoid}, },         // 26
        { {RobotScurry},        {RobotScurry},        {RobotHumanoid}, },         // 27
        { {Dog},                {Dog},                {Dog},           },         // 28
        { {Wasp},               {Wasp},               {Critter},       },         // 29
        { {Radscorpion},        {Radscorpion},        {Critter},       },         // 30
        { {Rat},                {GiantRat},           {Critter},       },         // 31
        { {Brahmin},            {Brahmin},            {Critter},       },         // 32
        { {Komodo},             {Komodo},             {Critter},       },         // 33
        { {GunTurret01},        {RobotHover},         {RobotHumanoid}, },         // 34
        { {Tank},               {Tank},               {Critter},       },         // 35
        { {Hummer},             {Hummer},             {Critter},       },         // 36
        { {Scouter},            {Scouter},            {Critter},       },         // 37
        { {APC},                {APC},                {Critter},       },         // 38
        { {DuneBuggy},          {DuneBuggy},          {Critter},       },         // 39
        { {PipBoy},             {Humanoid},           {Human},         },         // 40
        { {Wolf},               {Dog},                {Dog},           },         // 41
        { {Dummy},              {Humanoid},           {Human},         },         // 42
        { {Object},             {Object},              {RobotHumanoid},            },         // 43
        { {UniqueHumanoid},     {Humanoid},           {Human},            },         // 44
        { {UniqueOther},        {GiantRat},              {Critter},        },         // 45
    }
    
    ////////////////////////////////////////////////////////////////////////////////
    // USABLE RACES
    //    this data is mostly used by the character create screen,
    //    and to link to the statbase_ below
    //
    usable_races = {
        "BOS",  "Mutant",  "Deathclaw",  "Ghoul",  "RobotHumanoid", "Dog", "RaiderLarge",
    }
    
    ////////////////////////////////////////////////////////////////////////////////
    // MIN STAT RANGES
    statbase_Critter = {
        //    S    P    E    C    I    A    L
        {    1,    1,    1,    1,    1,    1,    1},        //    7  min special   
        {    3,    3,    3,    1,    1,    3,    3},        //    35 median special   
        {    99,    99,    99,    1,    1,    99,    99},    //    70 max special   
    }
    
    statbase_Human = {
        //    S    P    E    C    I    A    L
        {    1,    1,    1,    1,    2,    1,    1},        //    7  min special   
        {    5,    5,    5,    5,    5,    5,    5},        //    35 median special   
        {    25,    15,    15,    15,    15,    15,    15},    //    70 max special   
    }
    
    statbase_Mutant = {
        //    S    P    E    C    I    A    L
        {    1,    1,    1,    2,    2,    1,    1},        //    14 min special   
        {    5,    5,    5,    5,    5,    5,    5},        //    35 median special   
        {    25,    15,    15,    15,    15,    15,    15},    //    71 max special   
    }
    
    statbase_Deathclaw = {
        //    S    P    E    C    I    A    L
        {    1,    6,    1,    1,    2,    2,    1},        //    10 min special   
        {    2,    9,    2,    1,    3,    9,    5},        //    30 median special   
        {    5,    16,    4,    1,    4,    18,    10},    //    60 max special   
    }
    
    statbase_Ghoul = {
        //    S    P    E    C    I    A    L
        {    1,    1,    1,    2,    2,    1,    1},        //  15 min special   
        {    5,    5,    5,    5,    5,    5,    5},        //    37 median special   
        {    25,    15,    15,    15,    15,    15,    15},    //    69 max special   
    }
    
    statbase_RobotHumanoid = {
        //    S    P    E    C    I    A    L
        {    4,    4,    4,    1,    2,    1,    1},        //    29 min special   
        {    7,    7,    7,    1,    5,    5,    1},        //    37 median special   
        {    15,    15,    15,    1,    12,    12,    1},        //    66 special   
    }
    
    statbase_Dog = {
        //    S    P    E    C    I    A    L
        {    1,    4,    1,    1,    1,    1,    1},        //    10 min special   
        {    3,    7,    3,    1,    1,    7,    5},        //    30 median special   
        {    7,    14,    6,    1,    1,    15,    15},    //    60 max special   
    }
    
    
    /////////////////////////////////// UNARMED TABLES ///////////////////////////////////
    
    ////////////////////////////////////////////////////////////////////////////////
    // Unarmed Punching Entities
    punch_entities = {
        "punchVersion0",        // 0
        "punchVersion1",        // 1
        "punchVersion2",        // 2
        "punchVersion3",        // 3
        "punchVersion4",        // 4
        "punchVersion5",        // 5
        "punchVersion6",        // 6
        "punchVersion7",        // 7
        "deathclawshred",        // 8
        "brahminTrample",        // 9
        "dogSnap",                // 10
        "lizardSnap",            // 11
        "radScorpPincer",        // 12
        "ratClaw",                // 13
        "waspSting",            // 14
        "cockroachPierce",        // 15
        "robotBlades",            // 16
        "robotFlail",            // 17
        "robotProngs",            // 18
        "robotPunch",            // 19
        "robotRam",                // 20
        "robotSpikes",            // 21
        "robotStomp",            // 22
        "robotSuicide"            // 23
        "punchError",            // 24
        "punchError",            // 25
    }   
    
    ////////////////////////////////////////////////////////////////////////////////
    // PUNCHING
    punch_table = {
    //  race punch_entity   level   unarmed str     ag
    {    0,      0,          0,       0,     0,      0},  // BOS
    {    0,      1,          0,      55,     0,      6},  // BOS
    {    0,      2,          5,      75,     5,      7},  // BOS
    {    0,      3,          6,      75,     5,      6},  // BOS
    {    0,      4,          6,      75,     5,      7},  // BOS
    {    0,      5,          9,     100,     5,      7},  // BOS
    {    0,      6,          12,    115,     5,      7},  // BOS
    {    0,      7,          16,    130,     5,      7},  // BOS
    
    {    1,      0,          0,       0,     0,      0},  // Ghoul
    {    1,      1,          0,      55,     0,      6},  // Ghoul
    {    1,      2,          5,      75,     5,      7},  // Ghoul
    {    1,      3,          6,      75,     5,      6},  // Ghoul
    {    1,      4,          6,      75,     5,      7},  // Ghoul
    {    1,      5,          9,     100,     5,      7},  // Ghoul
    {    1,      6,          12,    115,     5,      7},  // Ghoul
    {    1,      7,          16,    130,     5,      7},  // Ghoul
    
    {    2,      0,          0,       0,     0,      0},  // Tribal
    {    2,      1,          0,      55,     0,      6},  // Tribal
    {    2,      2,          5,      75,     5,      7},  // Tribal
    {    2,      3,          6,      75,     5,      6},  // Tribal
    {    2,      4,          6,      75,     5,      7},  // Tribal
    {    2,      5,          9,     100,     5,      7},  // Tribal
    {    2,      6,          12,    115,     5,      7},  // Tribal
    {    2,      7,          16,    130,     5,      7},  // Tribal
    
    {    3,      0,          0,       0,     0,      0},  // TribalLarge
    {    3,      1,          0,      55,     0,      6},  // TribalLarge
    {    3,      2,          5,      75,     5,      7},  // TribalLarge
    {    3,      3,          6,      75,     5,      6},  // TribalLarge
    {    3,      4,          6,      75,     5,      7},  // TribalLarge
    {    3,      5,          9,     100,     5,      7},  // TribalLarge
    {    3,      6,          12,    115,     5,      7},  // TribalLarge
    {    3,      7,          16,    130,     5,      7},  // TribalLarge
    
    {    4,      0,          0,       0,     0,      0},  // Raider
    {    4,      1,          0,      55,     0,      6},  // Raider
    {    4,      2,          5,      75,     5,      7},  // Raider
    {    4,      3,          6,      75,     5,      6},  // Raider
    {    4,      4,          6,      75,     5,      7},  // Raider
    {    4,      5,          9,     100,     5,      7},  // Raider
    {    4,      6,          12,    115,     5,      7},  // Raider
    {    4,      7,          16,    130,     5,      7},  // Raider
    
    {    5,      0,          0,       0,     0,      0},  // RaiderLarge
    {    5,      1,          0,      55,     0,      6},  // RaiderLarge
    {    5,      2,          5,      75,     5,      7},  // RaiderLarge
    {    5,      3,          6,      75,     5,      6},  // RaiderLarge
    {    5,      4,          6,      75,     5,      7},  // RaiderLarge
    {    5,      5,          9,     100,     5,      7},  // RaiderLarge
    {    5,      6,          12,    115,     5,      7},  // RaiderLarge
    {    5,      7,          16,    130,     5,      7},  // RaiderLarge
    
    {    6,      0,          0,       0,     0,      0},  // RaiderHuge
    {    6,      1,          0,      55,     0,      6},  // RaiderHuge
    {    6,      2,          5,      75,     5,      7},  // RaiderHuge
    {    6,      3,          6,      75,     5,      6},  // RaiderHuge
    {    6,      4,          6,      75,     5,      7},  // RaiderHuge
    {    6,      5,          9,     100,     5,      7},  // RaiderHuge
    {    6,      6,          12,    115,     5,      7},  // RaiderHuge
    {    6,      7,          16,    130,     5,      7},  // RaiderHuge
    
    {    7,      0,          0,       0,     0,      0},  // Reaver
    {    7,      1,          0,      55,     0,      6},  // Reaver
    {    7,      2,          5,      75,     5,      7},  // Reaver
    {    7,      3,          6,      75,     5,      6},  // Reaver
    {    7,      4,          6,      75,     5,      7},  // Reaver
    {    7,      5,          9,     100,     5,      7},  // Reaver
    {    7,      6,          12,    115,     5,      7},  // Reaver
    {    7,      7,          16,    130,     5,      7},  // Reaver
    
    {    8,      0,          0,       0,     0,      0},  // ReaverHuge
    {    8,      1,          0,      55,     0,      6},  // ReaverHuge
    {    8,      2,          5,      75,     5,      7},  // ReaverHuge
    {    8,      3,          6,      75,     5,      6},  // ReaverHuge
    {    8,      4,          6,      75,     5,      7},  // ReaverHuge
    {    8,      5,          9,     100,     5,      7},  // ReaverHuge
    {    8,      6,          12,    115,     5,      7},  // ReaverHuge
    {    8,      7,          16,    130,     5,      7},  // ReaverHuge
    
    {    9,      0,          0,       0,     0,      0},  // Mutant
    {    9,      1,          0,      55,     0,      6},  // Mutant
    {    9,      2,          5,      75,     5,      7},  // Mutant
    {    9,      3,          6,      75,     5,      6},  // Mutant
    {    9,      4,          6,      75,     5,      7},  // Mutant
    {    9,      5,          9,     100,     5,      7},  // Mutant
    {    9,      6,          12,    115,     5,      7},  // Mutant
    {    9,      7,          16,    130,     5,      7},  // Mutant
    
    {    10,     0,          0,       0,     0,      0},  // BOSScribe
    {    10,     1,          0,      55,     0,      6},  // BOSScribe
    {    10,     2,          5,      75,     5,      7},  // BOSScribe
    {    10,     3,          6,      75,     5,      6},  // BOSScribe
    {    10,     4,          6,      75,     5,      7},  // BOSScribe
    {    10,     5,          9,     100,     5,      7},  // BOSScribe
    {    10,     6,          12,    115,     5,      7},  // BOSScribe
    {    10,     7,          16,    130,     5,      7},  // BOSScribe
    
    {    11,     0,          0,       0,     0,      0},  // BOSElder
    {    11,     1,          0,      55,     0,      6},  // BOSElder
    {    11,     2,          5,      75,     5,      7},  // BOSElder
    {    11,     3,          6,      75,     5,      6},  // BOSElder
    {    11,     4,          6,      75,     5,      7},  // BOSElder
    {    11,     5,          9,     100,     5,      7},  // BOSElder
    {    11,     6,          12,    115,     5,      7},  // BOSElder
    {    11,     7,          16,    130,     5,      7},  // BOSElder
    
    {    12,     1,          0,       0,     0,      0},  // CitizenAlpha
    {    13,     1,          0,       0,     0,      0},  // CitizenThin
    {    14,     1,          0,       0,     0,      0},  // CitizenMedium
    {    15,     1,          0,       0,     0,      0},  // VaultZero
    {    16,     8,          0,       0,     0,      0},  // Deathclaw
    {    17,     8,          0,       0,     0,      0},  // DeathclawBaby
    {    18,     15,         0,       0,     0,      0},  // BDCSmall
    {    19,     15,         0,       0,     0,      0},  // BDCLarge
    {    20,     21,         0,       0,     0,      0},  // RobotHumanoid
    {    21,     22,         0,       0,     0,      0},  // RobotPacification
    {    22,     18,         0,       0,     0,      0},  // RobotLifter
    {    23,     23,         0,       0,     0,      0},  // RobotHover
    {    24,     17,         0,       0,     0,      0},  // RobotTank
    {    25,     22,         0,       0,     0,      0},  // RobotBehemoth
    {    26,     19,         0,       0,     0,      0},  // RobotSecurity
    {    27,     16,         0,       0,     0,      0},  // RobotScurry
    {    28,     10,         0,       0,     0,      0},  // Dog
    {    29,     14,         0,       0,     0,      0},  // Wasp
    {    30,     12,         0,       0,     0,      0},  // Radscorpion
    {    31,     13,         0,       0,     0,      0},  // Rat
    {    32,     9,          0,       0,     0,      0},  // Brahmin
    {    33,     11,         0,       0,     0,      0},  // Komodo
    {    34,     25,         0,       0,     0,      0},  // GunTurret01
    {    40,     0,          0,       0,     0,      0},  // PipBoy
    {    41,     10,         0,       0,     0,      0},  // Wolf
    {    42,     0,          0,       0,     0,      0},  // Dummy
    {    43,     0,          0,       0,     0,      0},  // Object
    {    44,     0,          0,       0,     0,      0},  // UniqueHumanoid
    {    45,     0,          0,       0,     0,      0},  // UniqueOther
    }
    
    ////////////////////////////////////////////////////////////////////////////////
    // Unarmed Kicking Entities
    kick_entities = {
        "kickError",
        "kickVersion1",        // 1
        "kickVersion2",        // 2
        "kickVersion3",        // 3
        "kickVersion4",        // 4
        "kickVersion5",        // 5
        "kickVersion6",        // 6
        "kickVersion7",        // 7
        "deathclawGore",    // 8
        "brahminGore",        // 9
        "dogMaul",        // 10
        "lizardSpue",        // 11
        "radScorpSting",    // 12
        "ratRake",        // 13
        "waspThrash",        // 14
        "cockroachSpit",    // 15
        "robotKick",        // 16
        "robotElectrical",    // 17
        "robotExplode",        // 18
        "robotFlamer",        // 19
        "robotGrenLauncher",    // 20
        "robotHeavy",        // 21
        "robotLaser",        // 22
        "robotMiniGun",        // 23
        "robotRifle",         // 24
        "robotMiniRocket",    // 25
        "robotSMG",        // 26
        "robotGattlingLaser"    // 27
        "cockroachPierce",    // 28 Next are ugly punch fixes...
        "robotProngs",        // 29
        "robotFlail",        // 30
        "robotPunch",        // 31
        "robotBlades",        // 32
    }
    
    
    ////////////////////////////////////////////////////////////
    ////////////////////
    // KICKING
    kick_table = {
    //  race    entity     level   unarmed  str     ag
    {    0,      1,          0,       0,     0,      0},  // BOS
    {    0,      2,          0,      40,     0,      6},  // BOS
    {    0,      3,          6,      60,     6,      6},  // BOS
    {    0,      4,          6,      60,     6,      7},  // BOS
    {    0,      5,          9,      80,     6,      7},  // BOS
    {    0,      6,         12,     100,     6,      7},  // BOS
    {    0,      7,         15,     125,     6,      8},  // BOS
    
    {    1,      1,          0,       0,     0,      0},  // Ghoul
    {    1,      2,          0,      40,     0,      6},  // Ghoul
    {    1,      3,          6,      60,     6,      6},  // Ghoul
    {    1,      4,          6,      60,     6,      7},  // Ghoul
    {    1,      5,          9,      80,     6,      7},  // Ghoul
    {    1,      6,         12,     100,     6,      7},  // Ghoul
    {    1,      7,         15,     125,     6,      8},  // Ghoul
    
    {    2,      1,          0,       0,     0,      0},  // Tribal
    {    2,      2,          0,      40,     0,      6},  // Tribal
    {    2,      3,          6,      60,     6,      6},  // Tribal
    {    2,      4,          6,      60,     6,      7},  // Tribal
    {    2,      5,          9,      80,     6,      7},  // Tribal
    {    2,      6,         12,     100,     6,      7},  // Tribal
    {    2,      7,         15,     125,     6,      8},  // Tribal
    
    {    3,      1,          0,       0,     0,      0},  // TribalLarge
    {    3,      2,          0,      40,     0,      6},  // TribalLarge
    {    3,      3,          6,      60,     6,      6},  // TribalLarge
    {    3,      4,          6,      60,     6,      7},  // TribalLarge
    {    3,      5,          9,      80,     6,      7},  // TribalLarge
    {    3,      6,         12,     100,     6,      7},  // TribalLarge
    {    3,      7,         15,     125,     6,      8},  // TribalLarge
    
    {    4,      1,          0,       0,     0,      0},  // Raider
    {    4,      2,          0,      40,     0,      6},  // Raider
    {    4,      3,          6,      60,     6,      6},  // Raider
    {    4,      4,          6,      60,     6,      7},  // Raider
    {    4,      5,          9,      80,     6,      7},  // Raider
    {    4,      6,         12,     100,     6,      7},  // Raider
    {    4,      7,         15,     125,     6,      8},  // Raider
    
    {    5,      1,          0,       0,     0,      0},  // RaiderLarge
    {    5,      2,          0,      40,     0,      6},  // RaiderLarge
    {    5,      3,          6,      60,     6,      6},  // RaiderLarge
    {    5,      4,          6,      60,     6,      7},  // RaiderLarge
    {    5,      5,          9,      80,     6,      7},  // RaiderLarge
    {    5,      6,         12,     100,     6,      7},  // RaiderLarge
    {    5,      7,         15,     125,     6,      8},  // RaiderLarge
    
    {    6,      1,          0,       0,     0,      0},  // RaiderHuge
    {    6,      2,          0,      40,     0,      6},  // RaiderHuge
    {    6,      3,          6,      60,     6,      6},  // RaiderHuge
    {    6,      4,          6,      60,     6,      7},  // RaiderHuge
    {    6,      5,          9,      80,     6,      7},  // RaiderHuge
    {    6,      6,         12,     100,     6,      7},  // RaiderHuge
    {    6,      7,         15,     125,     6,      8},  // RaiderHuge
    
    {    7,      1,          0,       0,     0,      0},  // Reaver
    {    7,      2,          0,      40,     0,      6},  // Reaver
    {    7,      3,          6,      60,     6,      6},  // Reaver
    {    7,      4,          6,      60,     6,      7},  // Reaver
    {    7,      5,          9,      80,     6,      7},  // Reaver
    {    7,      6,         12,     100,     6,      7},  // Reaver
    {    7,      7,         15,     125,     6,      8},  // Reaver
    
    {    8,      1,          0,       0,     0,      0},  // ReaverHuge
    {    8,      2,          0,      40,     0,      6},  // ReaverHuge
    {    8,      3,          6,      60,     6,      6},  // ReaverHuge
    {    8,      4,          6,      60,     6,      7},  // ReaverHuge
    {    8,      5,          9,      80,     6,      7},  // ReaverHuge
    {    8,      6,         12,     100,     6,      7},  // ReaverHuge
    {    8,      7,         15,     125,     6,      8},  // ReaverHuge
    
    {    9,      1,          0,       0,     0,      0},  // Mutant
    {    9,      2,          0,      40,     0,      6},  // Mutant
    {    9,      3,          6,      60,     6,      6},  // Mutant
    {    9,      4,          6,      60,     6,      7},  // Mutant
    {    9,      5,          9,      80,     6,      7},  // Mutant
    {    9,      6,         12,     100,     6,      7},  // Mutant
    {    9,      7,         15,     125,     6,      8},  // Mutant
    
    {    10      1,          0,       0,     0,      0},  // BOSScribe
    {    10      2,          0,      40,     0,      6},  // BOSScribe
    {    10,     3,          6,      60,     6,      6},  // BOSScribe
    {    10,     4,          6,      60,     6,      7},  // BOSScribe
    {    10,     5,          9,      80,     6,      7},  // BOSScribe
    {    10,     6,         12,     100,     6,      7},  // BOSScribe
    {    10,     7,         15,     125,     6,      8},  // BOSScribe
    
    {    11,     1,          0,       0,     0,      0},  // BOSElder
    {    11,     2,          0,      40,     0,      6},  // BOSElder
    {    11,     3,          6,      60,     6,      6},  // BOSElder
    {    11,     4,          6,      60,     6,      7},  // BOSElder
    {    11,     5,          9,      80,     6,      7},  // BOSElder
    {    11,     6,         12,     100,     6,      7},  // BOSElder
    {    11,     7,         15,     125,     6,      8},  // BOSElder
    
    {    12,     1,          0,       0,     0,      0},  // CitizenAlpha
    {    13,     1,          0,       0,     0,      0},  // CitizenThin
    {    14,     1,          0,       0,     0,      0},  // CitizenMedium
    {    15,     1,          0,       0,     0,      0},  // VaultZero
    {    16,     8,          0,       0,     0,      0},  // Deathclaw
    {    17,     8,          0,       0,     0,      0},  // DeathclawBaby
    {    18,     28,         0,       0,     0,      0},  // BDCSmall
    {    19,     15,         0,       0,     0,      0},  // BDCLarge
    {    20,     16,         0,       0,     0,      0},  // RobotHumanoid
    {    21,     17,         0,       0,     0,      0},  // RobotPacification
    {    22,     29,         0,       0,     0,      0},  // RobotLifter
    {    23,     25,         0,       0,     0,      0},  // RobotHover
    {    24,     30,         0,       0,     0,      0},  // RobotTank
    {    25,     23,         0,       0,     0,      0},  // RobotBehemoth
    {    26,     31,         0,       0,     0,      0},  // RobotSecurity
    {    27,     32,         0,       0,     0,      0},  // RobotScurry
    {    28,     10,         0,       0,     0,      0},  // Dog
    {    29,     14,         0,       0,     0,      0},  // Wasp
    {    30,     12,         0,       0,     0,      0},  // Radscorpion
    {    31,     13,         0,       0,     0,      0},  // Rat
    {    32,     9,          0,       0,     0,      0},  // Brahmin
    {    33,     11,         0,       0,     0,      0},  // Komodo
    {    34,     0,          0,       0,     0,      0},  // GunTurret01
    {    40,     1,          0,       0,     0,      0},  // PipBoy
    {    41,     10,         0,       0,     0,      0},  // Wolf
    {    42,     1,          0,       0,     0,      0},  // Dummy
    {    43,     1,          0,       0,     0,      0},  // Object
    {    44,     1,          0,       0,     0,      0},  // UniqueHumanoid
    {    45,     1,          0,       0,     0,      0},  // UniqueOther
    }
    
    //     1       2       3         4            5          6         7           8
    //  "Torso", "Head", "Eyes", "Right Arm", "Left Arm", "Groin", "Left Leg", "Right Leg"
    
    locmap_Humanoid                = { 2,4,8,6, 3,1,5,7 }
    locmap_Deathclaw            = { 3,1,4,8, 2,5,6,7 }
    locmap_Cockroach            = { 3,2,4,8, 1,6,7,5 }
    locmap_Dog                    = { 2,3,4,5, 1,6,7,8 }
    locmap_Brahmin                = { 1,8,6,7, 2,3,5,4 }
    
    locmap_RobotHumanoid        = { 2,4,6,8, 3,1,5,7 }
    locmap_RobotPacification    = { 6,8,4,1, 7,2,5,3 }
    locmap_RobotLifter            = { 2,1,4,8, 3,5,7,6 }
    locmap_RobotHover            = { 1,2,8,4, 5,6,7,3 }
    locmap_RobotTank            = { 5,8,4,1, 3,2,6,7 }
    locmap_RobotBehemoth        = { 4,2,3,7, 1,6,8,5 }
    locmap_RobotSecurity        = { 1,2,8,7, 3,6,4,5 }
    locmap_RobotScurry            = { 1,8,7,2, 6,5,4,3 }
    locmap_Wasp                    = { 2,3,5,1, 6,7,4,8 }
    locmap_Radscorpion            = { 6,7,5,4, 1,2,7,3 }
    locmap_GiantRat                = { 1,6,8,7, 2,3,5,4 }
    locmap_Komodo                = { 1,6,8,4, 2,3,5,7 }
    locmap_GunTurret01            = { 1,2,5,7, 3,4,6,8 }
    locmap_GunTurret02            = { 1,2,5,7, 3,4,6,8 }
    
    locmap_APC                    = { 6,4,8,1, 3,2,7,5 }
    locmap_Hummer                = { 1,6,8,7, 2,3,5,4 }
    locmap_DuneBuggy            = { 6,8,4,1, 3,7,2,4 }
    locmap_Scouter                = { 1,6,8,7, 2,3,5,4 }
    locmap_Tank                    = { 5,6,2,8, 3,4,1,7 }
    
    // these ones are not done yet!
    
    locmap_UniqueOther            = { 2,3,4,5, 1,6,7,8 }
    locmap_Car                    = { 1,2,3,4, 5,6,7,8 }
    MY FILE HERE IS STRONGLY MODIFIED, so don't refer to it for numbers. I just show it to you to give you an idea as what to look for.

    As you can see, you can setup physical type (body parts aiming), race used for traits, min. and max. attribute points and Unarmed skill points per level for punch and kicks.

    It seems obvious here that reaver, all raiders, tribals and humans have the same min. and max. stats and traits. And you can't individually change that. Ghoul and mutants, as you probably already know, has their unique points and traits.

    Personnally I don't recommand you use another race than BOS, Ghoul and Mutant for human prefab characters. Simply because you might end up either not having any portrait when using MODIFY button, or you will be unable to crouch/prone (even if the animation exists in the sprite)... If you want to try it anyways, don't forget to test these two problematic elements.

    An interesting way to play with armors the way you want it is to install FT Improver 2.0.0. You then can "install" new types of armors that can be relative to sex (by adding "Male" and "Female" at the end of two .spr files of a chosen name, like "Metal" for example.
     
  3. +Zeke+

    +Zeke+ First time out of the vault

    Sep 21, 2010
    Thanks, but it raises a question. Just for grins once I had created elixirs for all 7 SPECIAL stats and tried them on a human recruit to try to max him out. The table states 10 max on everything but I was able to reach 12 on every stat. Mind you, putting on power armor was useless because it would boost the human past 12 on anything. It would let me boost a mutant 2 points past their maximums as well. 15str, 14 end, etc.

    Basically I'm trying to make a visually hulking recruit that isn't locked out of small arms. Massive strength and endurance but slow and stupid. Using shotguns and fists for weapons.

    I'm now considering maybe a Reaver as they appear a bit larger, but use small arms and can assume all positions. They have dedicated armor too. I just wonder what kind of stats limits they would have. Clearly the tables and the game don't exactly jive since you can boost up two past on every stat.
     
  4. nadeauhugo

    nadeauhugo Author of FOT mod THE SUM Modder

    Mar 9, 2014
    Yeah you have a lot more choices concerning recruits than main characters for races. I think Reaver could be a pretty good idea yes for the sprite.

    I don't really know why you can exeed of 2 points each stats, strange. 1 could make sense because of the possible Gifted trait, but besides that, nothing. Nevertheless you are not forced to use elixirs to max the stats. It is very straightforward to open a recruit entity in entity editor and max its stats or change them the way you want them. As you are using the editor, you can go above max stats and under min stats. Red colors for number might appear. I made some recruits with non-conventional attributes myself and it worked fine. I mean more or less than 5 for each attribute + 5. You can even assign as many perks and traits as you want. When doing that, you can manually assign the "bruiser" trait too, that would make sense.

    Oh, yeah, I forgot. I am quite sure attributes for Reavers are exactly the same as other humans.
     
  5. +Zeke+

    +Zeke+ First time out of the vault

    Sep 21, 2010
    So I played around using Reavers, big tribals, and big raiders as recruits.

    Positioning is fine. They can crouch and crawl fine. They can use all weapons. They can use just about anything except a few things. They can't use doctor/paramedic bags. They can't use tool kits. I thought it was an enhancement item issue but they use lockpicks and FAKs just fine. Since they use the same movements as doctor bags as they do for FAKs I presume it is a table issue I could hunt down and fix eventually. I did not run the tests long enough to try vehicles, so that remains a mystery. The doctor bag and tool kit issue isn't much of a game stopper either for my needs and one can always give the jobs to another team member if you plan in advance.

    Where it all breaks down is armor. Big tribals can't use any armor. The reavers and raiders do but you can't take it on or off, swap out, or really even get it to do anything. Even the reaver and raider armor you see really does nothing for armor class. Unless you permanently mod the character you only see the AC bonus that agility offers. Take the armor off in the inventory and AC stays the same. You can't even get it back on them in their inventory. Their visual aspect doesn't change either. What you set for the character AC in the editor is what you get the entire game. At least with mutants and ghouls you can take armor on and off.

    Having modified mutants as starting recruits or prefabs I could make progressive armor after a fashion. You make 3 unique armor sets for them. Give them their first weak armor and place progressively better versions in the APC and the tank. Those are loosely close to when teams shift from leather to metal to powered.

    I suspect I'm running into a lack of useful sprites for animate characters being the root of the armor problem here with the big tribals, reavers, and raiders. I might be about to mess with the tables some to let them use gear, but I doubt the sprite issue can be solved.

    All the humans look like clones once you get past sex and hair color. No body shape differential. I'd be fine subbing in a mutant, but the no small guns issue is probably more than just a tables limitation as well. I doubt there is a sprite for a mutant carrying a pistol, rifle, or shotgun.

    Maybe I need to see if I could dummy up a shotgun as a heavy weapon. That and a grenade launcher. Add an AA12 and a Mark 19 weapons to the game. The AA12 isn't truly a heavy weapon, but it is a large gun. The MK19 should have been in the game. There is a massive laundry list of weapon mistakes in the game if you use the 2001 cutoff date for weapons tech. AR weapons should have been far more common in the game than AK weapons if you assume leftovers on the American continent. I need to stop on that point before I go on a huge rant about the guns in the game. I'll get back after trying to make an AA12 and MK19. That would solve my immediate desires for a brute who is a huge slayer type that carries a shotgun.
     
  6. +Zeke+

    +Zeke+ First time out of the vault

    Sep 21, 2010
    Fast update. Seems that I can make an AA12 and a MK19. I used a Lewis gun sprite for the AA12 and the useless Chauchat for the MK19. I might rethink those sprite choices. Working and working right with game balance are two different concepts though. Running around in Brahmin Wood with either was a lot of overkill. And needless to say, a MK19 doesn't have an indoor voice. Everyone in the room dies. LOL. Sure wish someone would crank out an up-armored Humvee with choice of M2 or Mk19. I suspect a mutant carried MK19 is a very late game weapon. I got the AA12 to act like a Pancor, so that will be my likely focus for a while. It would be nice to get a 3 selection version of one, three, and six round choices. I need to balance ranges and damage amounts too. I was shredding everything using regular shotgun shells from a respectable distance. That needs to be toned down a lot if fllechette rounds are going to be introduced as anything other than WMD's. But a heavy weapon version of a shotgun is very doable conceptually. Good idea for a mutant short range weapon.