Hello, thanks for your amazing job to @zoddel, @gir489 and @cfemen for the cheattable. Right now I can only help making it easier to find wepaons in superdamage script, I reorganizated the IDs by classifying them.
There are commented weapons and stratgems because some of them have same ids.
Some IDs are still missing.
Code: Select all
[ENABLE]
// super damage mod V2 // by ZoDDeL
aobscanmodule(damageMulti,game.dll,66 0F 6E 59 04 66 0F 6E 49 08 0F 5B C9 0F 5B DB) // should be unique
alloc(dmg_newmem,$2000)
label(dmg_code)
label(dmg_return)
dmg_newmem:
cmp dword ptr [_source],'Fear'
jne dmg_code
cmp dword ptr [_source+4],'less'
jne dmg_code
cmp dword ptr [_source+8],'Revo'
jne dmg_code
cmp dword ptr [_source+C],'luti'
jne dmg_code
cmp dword ptr [_source+10],'on.c'
jne dmg_code
cmp dword ptr [_source+14],'om'
jne dmg_code
cmp [rcx+04],#0 // skip any 0 dmg weapons like smoke or unknown shit
je dmg_code
// Assault rifles
//cmp [rcx+00],#51 // AR-23 Liberator / AR-22C Patriot / AR-48 Truth Whisperer / M-105 Stalwart / AR-61 Tenderizer / Guard Dog
//je dmg_code
cmp [rcx+00],#48 // AR-23P Liberator Penetrator
je dmg_code
cmp [rcx+00],#50 // AR-23C Liberator Concussive
je dmg_code
//cmp [rcx+00],#65 // BR-14 Adjudicator
//je dmg_code
// Snipers
cmp [rcx+00],#74 //#70 // R-63CS Diligence Counter SNiper
je dmg_code
cmp [rcx+00],#122 // Anti material rifle
je dmg_Super
// Submachine guns
cmp [rcx+00],#26 // MP-98 Knight
je dmg_code
cmp [rcx+00],#34 // SMG-37 Defender
je dmg_code
cmp [rcx+00],#41 // SMG-72 Pummeler
je dmg_Super
// Shotguns
cmp [rcx+00],#88 // SG-8 Punisher
je dmg_code
cmp [rcx+00],#99 // SG-8S Slugger
je dmg_code
cmp [rcx+00],#102 // SG-225 Breaker
je dmg_code
cmp [rcx+00],#101 // SG-225SP Breaker Spray&Pray (16)
je dmg_code
cmp [rcx+00],#105 // SG-225IE Breaker Incendiary
je dmg_code
cmp [rcx+00],#104 // SG-225NS Breaker Nailspitter (11)
je dmg_code
// Explosives
cmp [rcx+00],#124 // CB-9 explosive crossbow 1
je dmg_code
cmp [rcx+00],#125 // CB-9 explosive crossbow 2
je dmg_code
cmp [rcx+00],#84 // JAR-5 Dominator
je dmg_code
cmp [rcx+00],#80 // R-36 Eruptor 1
je dmg_code
//cmp [rcx+00],#122 // R-36 Eruptor 2 // the shrapnel they removed with patch .302 ???
//je dmg_code
cmp [rcx+00],#205 // R-36 Eruptor 3
je dmg_code
// Energy
cmp [rcx+00],#20 // SG-8P Punisher Plasma (1)
je dmg_code
cmp [rcx+00],#186 // SG-8P Punisher Plasma explosion
je dmg_code
cmp [rcx+00],#297 // LAS-5 Scythe
je dmg_code
cmp [rcx+00],#19 // LAS-16 Sickle
je dmg_code
//cmp [rcx+00],#20 // PLAS-1 Scorcher
//je dmg_code
cmp [rcx+00],#184 // PLAS-1 Scorcher explosion
je dmg_code
//cmp [rcx+00],#20 // PLAS-101 Purifier
//je dmg_Super
//cmp [rcx+00],#186 // PLAS-101 Purifier part 2 (explosion?)
//je dmg_Super
// Pistols
cmp [rcx+00],#27 // P-2 Peacemaker
je dmg_code
cmp [rcx+00],#25 // P-19 Redeemer
je dmg_code // my improved legit redeemer
cmp [rcx+00],#134 // GP-31 grenade pistol part 1 (part 2 = gren launcher explo)
je dmg_code
cmp [rcx+00],#220 // GP-31 grenade pistol explosion
je dmg_code
cmp [rcx+00],#296 // LAS-7 Dagger
je dmg_code
cmp [rcx+00],#42 // P-113 Verdict
je dmg_Super
cmp [rcx+00],#44 // P-4 Senator
je dmg_code
// Grenades
cmp [rcx+00],#201 // G-6 Frag
je dmg_code
cmp [rcx+00],#111 // G-6 Frag part 2
je dmg_code
//cmp [rcx+00],#213 // G-12 High Explosive
//je dmg_code
cmp [rcx+00],#203 // G-10 Incendiary
je dmg_code
// Special Grenades
cmp [rcx+00],#213 // G-16 Impact
je dmg_code
cmp [rcx+00],#204 // G-123 Thermite (explosion)
je dmg_code
cmp [rcx+00],#310 // G-123 Thermite (burn)
je dmg_code
//helldiver pot damage
cmp [rcx+00],#258 //#253
je dmg_Super
// EXO-45 EXOSUIT HOMELANDER
cmp [rcx+00],#65 // EXO-45 Gatling
je dmg_code
cmp [rcx+00],#147 // EXO-45 rocket part 1
je dmg_code
cmp [rcx+00],#234 // EXO-45 rocket part 2
je dmg_code
// EXO-49 EXOSGUIT EMANCIPATOR
cmp [rcx+00],#129 // emancipator exo gun part 1
je dmg_code
cmp [rcx+00],#217 // emancipator exo gun part 2
je dmg_code
// Machineguns
//cmp [rcx+00],#65 // MG-43
//je dmg_code
cmp [rcx+00],#51 // M-105 Stalwart
je dmg_Super
cmp [rcx+00],#121 // MG-206 HMG
je dmg_code
// Flamethrower
cmp [rcx+00],#9 // FLAM-40 part 1
je dmg_code
cmp [rcx+00],#309 // FLAM-40 part 2 // ground fire shares ID with flame tornados
je dmg_code
// Rocketlaunchers
cmp [rcx+00],#135 // EAT-17 part 1
je dmg_code
//cmp [rcx+00],#184 // EAT-17 part 2
//je dmg_code
cmp [rcx+00],#226 // EAT-17 part 3
je dmg_code
cmp [rcx+00],#136 // GR-8 recoil-less rifle part 1 shell
je dmg_code
cmp [rcx+00],#225 // GR-8 recoil-less rifle part 2 explosion
je dmg_code
cmp [rcx+00],#127 // AC-8 autocannon part 1 // projectile
je dmg_code
cmp [rcx+00],#216 // AC-8 autocannon part 2 // explosion
je dmg_code
//cmp [rcx+00],#201 // RL-77 airburst (cluster)
//je dmg_code
cmp [rcx+00],#202 // RL-77 airburst (ground???)
je dmg_code
cmp [rcx+00],#224 // RL-77 airburst (rocket)
je dmg_code
cmp [rcx+00],#22 // RS-422 railgun
je dmg_code
//cmp [rcx+00],#220 // GL-21
//je dmg_code
cmp [rcx+00],#10 // GL-21 part 1 projectile / mortar shell (turret)
je dmg_code
// Laser
cmp [rcx+00],#302 // LAS-98
je dmg_code
cmp [rcx+00],#227 // LAS-99 quasar part 1
je dmg_code
cmp [rcx+00],#228 // LAS-99 quasar part 2
je dmg_code
// Stratgems
//cmp [rcx+00],#65 // Gatling Turret
//je dmg_code
cmp [rcx+00],#126 // tesla tower
je dmg_code
cmp [rcx+00],#130 // pelican weapon part 1
je dmg_code
cmp [rcx+00],#219 // pelican weapon part 2
je dmg_code
//cmp [rcx+00],#203 // incendiary mines (explosion) // burning is ground fire 309 like flame tornadoes or flamethrower ground fire
//je dmg_code
cmp [rcx+00],#223 // mortar turred explosion
je dmg_code
cmp [rcx+00],#243 // anti personnel mines
je dmg_code
cmp [rcx+00],#245 // anti tank mines
je dmg_code
cmp [rcx+00],#140 //rocket sentry turret 1
je dmg_code
cmp [rcx+00],#239 //rocket sentry turret 2
je dmg_code
cmp [rcx+00],#287 //hellbomb (untested but gir489 say this one is right)
je dmg_code
cmp [rcx+00],#154 //#150 500kg bomb shell
je dmg_code
cmp [rcx+00],#273 //#268 500kg bomb explosion
je dmg_code
cmp [rcx+00],#305 //#299 orbital laser // burning is ground fire 309 like flame tornadoes or flamethrower ground fire
je dmg_code
cmp [rcx+00],#160 //#156 orbital precision strike
je dmg_code
cmp [rcx+00],#267 //#262 orbital precision strike
je dmg_code
cmp [rcx+00],#161 //#157 orbital railcannon strike
je dmg_code
cmp [rcx+00],#266 //#261 orbital railcannon strike
je dmg_code
cmp [rcx+00],#159 //#155 orbital 120MM HE barrage
je dmg_code
cmp [rcx+00],#268 //#263 orbital 120MM HE barrage
je dmg_code
cmp [rcx+00],#142 //#138 eagle airstrike
je dmg_code
cmp [rcx+00],#254 //#249 eagle airstrike
je dmg_code
//cmp [rcx+00],#160 //#156 orbital 380MM HE barrage identical ID's as precision strike
//je dmg_code
//cmp [rcx+00],#267 //#262 orbital 380MM HE barrage identical ID's as precision strike
//je dmg_code
cmp [rcx+00],#152 //#148 eagle 110mm rocket pods
je dmg_code
cmp [rcx+00],#241 //#236 eagle 110mm rocket pods
je dmg_code
cmp [rcx+00],#229 //#224 eagle clusterbomb
je dmg_code
// 10 shell
cmp [rcx+00],#112 // orbital airburst
je dmg_code
//cmp [rcx+00],#229 orbital airburst // identical to eagle cluster
//je dmg_code
cmp [rcx+00],#132 //eagle strafing run
je dmg_code
cmp [rcx+00],#214 //eagle strafing run
je dmg_code
cmp [rcx+00],#158 //orbital gas
je dmg_code
cmp [rcx+00],#321 //orbital gas
je dmg_code
cmp [rcx+00],#231 // Napalm SEAF impact
je dmg_code
//cmp [rcx+00],#309 // Napalm SEAF burn
//je dmg_code
//cmp [rcx+00],#273 // High-yield SEAF explosion
//je dmg_code
//cmp [rcx+00],#287 // SEAF Mini-Nuke
//je dmg_code
cmp [rcx+00],#298 // AX/LAS-5 "Guard Dog" Rover
je dmg_code
//cmp [rcx+00],#132 //orbital gatling // identical ID's to strafing run
//je dmg_code
//cmp [rcx+00],#214 //orbital gatling // identical ID's to strafing run
//je dmg_code
//----------------------------------------------------------------------\\
// source: https://fearlessrevolution.com/viewtopic.php?p=342693#p342693
// ZoDDeL strictly disallow anyone to reupload this to UC forum
// Xz0v / Jealousy120101 is a rep grabber and should be banned
//----------------------------------------------------------------------\\
jmp dmg_Enemy // no super ID found? then it must be an enemy!!!
// customize a weapon to your needs
dmg_SuperCustom:
movd xmm3,[rcx+04]
movd xmm1,[rcx+08]
cvtdq2ps xmm1,xmm1
cvtdq2ps xmm3,xmm3
// use these to multiply original damage value
mulss xmm3, dword ptr [dmg_multiplierCustom] // multiplies value with dmg_multiplierCustom
mulss xmm1, dword ptr [admg_multiplierCustom] // multiplies value with admg_multiplierCustom
// use these to set damage value
movss xmm3, dword ptr [dmg_staticCustom] // sets value from dmg_staticCustom
movss xmm1, dword ptr [admg_staticCustom] // sets value from admg_staticCustom
// use these to add damage value to original damage
addss xmm3, dword ptr [dmg_staticCustom] // adds value from dmg_staticCustom
addss xmm1, dword ptr [admg_staticCustom] // adds value from admg_staticCustom
// use these to change penetration for your custom weapon (default are 0 - 10)
mov [rcx+0C],#777 // writes penetration value 1
mov [rcx+10],#777 // writes penetration value 2
mov [rcx+14],#777 // writes penetration value 3
mov [rcx+18],#777 // writes penetration value 4
// use this to add the ability to destroy bug hives and building for your custom weapon
mov [rcx+1C],#100 // writes demolition value
// use this to add concussive/stagger for your custom weapon
mov [rcx+20],#100 // writes pushback / stagger value
jmp dmg_return
// player global order from damage to stagger
dmg_Super:
mov [rcx+0C],#777 // writes penetration value 1
mov [rcx+10],#777 // writes penetration value 2
mov [rcx+14],#777 // writes penetration value 3
mov [rcx+18],#777 // writes penetration value 4
mov [rcx+1C],#50 // writes demolition value
mov [rcx+20],#50 // writes pushback / stagger value
//mov [rcx+24],#100 // writes ??? value
movd xmm3,[rcx+04]
movd xmm1,[rcx+08]
cvtdq2ps xmm1,xmm1
cvtdq2ps xmm3,xmm3
mulss xmm3, dword ptr [dmg_multiplier] // multiplies value with dmg_multiplier
mulss xmm1, dword ptr [admg_multiplier] // multiplies value with admg_multiplier
jmp dmg_check
dmg_Oneshot:
mov [rcx+0C],#777 // writes penetration value 1
mov [rcx+10],#777 // writes penetration value 2
mov [rcx+14],#777 // writes penetration value 3
mov [rcx+18],#777 // writes penetration value 4
mov [rcx+1C],#50 // writes demolition value
mov [rcx+20],#50 // writes pushback / stagger value
//mov [rcx+24],#100 // writes ??? value
movd xmm3,[rcx+04]
movd xmm1,[rcx+08]
cvtdq2ps xmm1,xmm1
cvtdq2ps xmm3,xmm3
mulss xmm3, dword ptr [dmg_multiplier_oneshot] // multiplies value with dmg_multiplier
mulss xmm1, dword ptr [admg_multiplier] // multiplies value with admg_multiplier
jmp dmg_check
dmg_check:
comiss xmm3, dword ptr [dmg_limit] // checks if dmg after multiplier is above dmg_limit
ja dmg_cap
comiss xmm1, dword ptr [dmg_limit] // checks if admg after multiplier is above dmg_limit
ja dmg_cap
jmp dmg_return
dmg_cap:
movss xmm3, dword ptr [dmg_limit] // writes dmg_limit value
movss xmm1, dword ptr [dmg_limit] // writes dmg_limit value
jmp dmg_return
dmg_Enemy:
//mov [rcx+0C],#0 // writes penetration value 1
//mov [rcx+10],#0 // writes penetration value 2
//mov [rcx+14],#0 // writes penetration value 3
//mov [rcx+18],#0 // writes penetration value 4
//mov [rcx+1C],#0 // writes demolition value //
//mov [rcx+20],#0 // writes pushback / stagger value
//mov [rcx+24],#0 // writes ??? value
movd xmm3,[rcx+04]
movd xmm1,[rcx+08]
cvtdq2ps xmm1,xmm1
cvtdq2ps xmm3,xmm3
mulss xmm3, dword ptr [enemydmg_multiplier]
mulss xmm1, dword ptr [enemydmg_multiplier]
jmp dmg_return
// original code. we jump here if nothing should happen(keep default values) or no ID fits
dmg_code:
movd xmm3,[rcx+04]
movd xmm1,[rcx+08]
cvtdq2ps xmm1,xmm1
cvtdq2ps xmm3,xmm3
jmp dmg_return
dmg_multiplier:
dd (float)2 // edit this for times x base damage (1 is default)
dmg_multiplier_oneshot:
dd (float)20 // edit this for times x base damage (1 is default)
admg_multiplier:
dd (float)1 // edit this for times x armor/limb damage (1 is default)
enemydmg_multiplier:
dd (float)0.75 // edit this for times x enemy damage (1 is default)
dmg_limit:
dd (float)7000 // limit the super damage to prevent creating weapons that would outdamage inf health
damageMulti:
jmp far dmg_newmem
nop 2
dmg_return:
//------------------------------------------------------------
[DISABLE]