What is the Function For Setting Skills? (Can't Find it In Game.Player/.Character)
-
I can't seem to find how to set/modify player skills like Stamina, Driving or Shooting.
I have looked through Game.Player & Game.Player.Character and I'm not sure where else to look.
Thanks for all help.
-
We can mark this as Solved I think.
To set the stats for X character change the number after SP.
PlayerZero = Micheal = SP0
PlayerOne = Franklin = SP1
PlayerTwo = Trevor = SP2C# Class
public static class Stats { public enum PlayerStats { TOTAL_CASH, STAMINA, SHOOTING_ABILITY, STRENGTH, STEALTH_ABILITY, FLYING_ABILITY, WHEELIE_ABILITY, LUNG_CAPACITY } public static void SetPlayerStat(int playerIndex, PlayerStats stat, int value) { if (playerIndex < 0 || playerIndex >= 3) throw new Exception("Stats.SetStat playerIndex must be between 0 and 2."); if (value < 0) throw new Exception("Stats.SetStat value cannot be negative."); string enumName = Enum.GetName(typeof(PlayerStats), stat); Function.Call(Hash.STAT_SET_INT, Game.GenerateHash(String.Format("SP{0}_{1}", playerIndex, enumName)), value, false); } }
Usage
// Reset player zero Stats.SetPlayerStat(0, Stats.PlayerStats.TOTAL_CASH, 0); Stats.SetPlayerStat(0, Stats.PlayerStats.FLYING_ABILITY, 0); Stats.SetPlayerStat(0, Stats.PlayerStats.LUNG_CAPACITY, 0); Stats.SetPlayerStat(0, Stats.PlayerStats.SHOOTING_ABILITY, 0); Stats.SetPlayerStat(0, Stats.PlayerStats.STAMINA, 0); Stats.SetPlayerStat(0, Stats.PlayerStats.STEALTH_ABILITY, 0); Stats.SetPlayerStat(0, Stats.PlayerStats.STRENGTH, 0); Stats.SetPlayerStat(0, Stats.PlayerStats.WHEELIE_ABILITY, 0); // Reset player one Stats.SetPlayerStat(1, Stats.PlayerStats.TOTAL_CASH, 0); Stats.SetPlayerStat(1, Stats.PlayerStats.FLYING_ABILITY, 0); Stats.SetPlayerStat(1, Stats.PlayerStats.LUNG_CAPACITY, 0); Stats.SetPlayerStat(1, Stats.PlayerStats.SHOOTING_ABILITY, 0); Stats.SetPlayerStat(1, Stats.PlayerStats.STAMINA, 0); Stats.SetPlayerStat(1, Stats.PlayerStats.STEALTH_ABILITY, 0); Stats.SetPlayerStat(1, Stats.PlayerStats.STRENGTH, 0); Stats.SetPlayerStat(1, Stats.PlayerStats.WHEELIE_ABILITY, 0); // Reset player two Stats.SetPlayerStat(2, Stats.PlayerStats.TOTAL_CASH, 0); Stats.SetPlayerStat(2, Stats.PlayerStats.FLYING_ABILITY, 0); Stats.SetPlayerStat(2, Stats.PlayerStats.LUNG_CAPACITY, 0); Stats.SetPlayerStat(2, Stats.PlayerStats.SHOOTING_ABILITY, 0); Stats.SetPlayerStat(2, Stats.PlayerStats.STAMINA, 0); Stats.SetPlayerStat(2, Stats.PlayerStats.STEALTH_ABILITY, 0); Stats.SetPlayerStat(2, Stats.PlayerStats.STRENGTH, 0); Stats.SetPlayerStat(2, Stats.PlayerStats.WHEELIE_ABILITY, 0);
You can see all stats in common.rpf/data/spstatssetup.xml and mpstatssetup.xml.
spstatssetup.xml
https://pastebin.com/cnzgrjVS