Advertisement
TATATATRATATATA

Untitled

Oct 5th, 2019
460
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.72 KB | None | 0 0
  1. --- This script will edit all players in your Career Mode save.
  2. --- All attributes, potential and ovr will be 99
  3. --- Age will be 18
  4.  
  5. --- https://i.imgur.com/F9BbWiH.gifv
  6.  
  7. --- HOW TO USE:
  8. --- 1. While in game main menu open Live Editor
  9. --- 2. Activate "FIFA Database Tables" script
  10. --- 3. Load your career mode save.
  11. --- 4. In Cheat Engine click on "Memory View" button.
  12. --- 5. Press "CTRL + L" to open lua engine
  13. --- 6. Then press "CTRL + O" and open this script
  14. --- 7. Click on 'Execute' button to execute script and wait for 'done' message box.
  15.  
  16. --- AUTHOR: ARANAKTU
  17.  
  18. require 'lua/consts';
  19.  
  20. start_time = os.time()
  21.  
  22. local comp_desc = get_components_description_player_edit()
  23.  
  24. -- list of attributes
  25. local attributes_to_edit = {
  26. "Potential",
  27. "Crossing",
  28. "Finishing",
  29. "HeadingAccuracy",
  30. "ShortPassing",
  31. "Volleys",
  32. "Marking",
  33. "StandingTackle",
  34. "SlidingTackle",
  35. "Dribbling",
  36. "Curve",
  37. "FreeKickAccuracy",
  38. "LongPassing",
  39. "BallControl",
  40. "GKDiving",
  41. "GKHandling",
  42. "GKKicking",
  43. "GKPositioning",
  44. "GKReflex",
  45. "ShotPower",
  46. "Jumping",
  47. "Stamina",
  48. "Strength",
  49. "LongShots",
  50. "Acceleration",
  51. "SprintSpeed",
  52. "Agility",
  53. "Reactions",
  54. "Balance",
  55. "Aggression",
  56. "Composure",
  57. "Interceptions",
  58. "AttackPositioning",
  59. "Vision",
  60. "Penalties",
  61. }
  62.  
  63.  
  64. -- Find all links
  65. local i = 0
  66. local playerid_arr = {}
  67. local sizeOf = 16 -- Teamplayerlinks sizeOf record
  68. local teamid = 46 - 1
  69.  
  70. while true do
  71. local tplinks_playerid_record = ADDR_LIST.getMemoryRecordByID(3533)
  72.  
  73. local current_playerid = bAnd(bShr(readInteger(string.format('[%s]+%X', 'ptrFirstTeamplayerlinks', tplinks_playerid_record.getOffset(0)+(i*sizeOf))), tplinks_playerid_record.Binary.Startbit), (bShl(1, tplinks_playerid_record.Binary.Size) - 1))
  74. if current_playerid == 0 then
  75. break
  76. end
  77. writeQword('ptrTeamplayerlinks', readPointer('ptrFirstTeamplayerlinks') + i*sizeOf)
  78.  
  79. local current_teamid = tonumber(ADDR_LIST.getMemoryRecordByID(3527).Value)
  80. -- Player from user team
  81. if current_teamid == teamid then
  82. table.insert(playerid_arr, tonumber(tplinks_playerid_record.Value))
  83. end
  84. i = i + 1
  85. end
  86.  
  87. -- players table
  88. local sizeOf = 112 -- Size of one record in players database table (0x70)
  89.  
  90. -- iterate over all players in 'players' database table
  91. local i = 0
  92. local current_playerid = 0
  93.  
  94.  
  95. while true do
  96. local playerid_record = ADDR_LIST.getMemoryRecordByID(CT_MEMORY_RECORDS['PLAYERID'])
  97. local current_playerid = bAnd(bShr(readInteger(string.format('[%s]+%X', 'firstPlayerDataPtr', playerid_record.getOffset(0)+(i*sizeOf))), playerid_record.Binary.Startbit), (bShl(1, playerid_record.Binary.Size) - 1))
  98. if current_playerid == 0 then
  99. break
  100. end
  101.  
  102. writeQword('playerDataPtr', readPointer('firstPlayerDataPtr') + i*sizeOf)
  103.  
  104. playerid_record = ADDR_LIST.getMemoryRecordByID(CT_MEMORY_RECORDS['PLAYERID'])
  105.  
  106. for j, playerid in ipairs(playerid_arr) do
  107. if tonumber(current_playerid) == playerid then
  108. -- 99 on all attributes
  109. for k=1, #attributes_to_edit do
  110. local attr_name = attributes_to_edit[k] .. 'Edit'
  111. ADDR_LIST.getMemoryRecordByID(comp_desc[attr_name]['id']).Value = 98
  112. end
  113. ADDR_LIST.getMemoryRecordByID(comp_desc['OverallEdit']['id']).Value = 98
  114.  
  115. -- 18 yo
  116. ADDR_LIST.getMemoryRecordByID(CT_MEMORY_RECORDS['BIRTHDATE']).Value = 152986 - 365
  117. end
  118. end
  119.  
  120. i = i + 1
  121. if i >= 26000 then
  122. break
  123. end
  124. end
  125. elapsed_time = os.difftime(os.time(),start_time)
  126. print(elapsed_time)
  127. showMessage("Done")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement