HELLDIVERS 2

Upload your cheat tables here (No requests)
CrimbsonVoorhees
What is cheating?
What is cheating?
Posts: 1
Joined: Sat May 11, 2024 7:09 am
Reputation: 0

Re: HELLDIVERS 2

Post by CrimbsonVoorhees »

im just waiting for gir489 to update his table

How to use this cheat table?
  1. Install Cheat Engine
  2. Double-click the .CT file in order to open it.
  3. Click the PC icon in Cheat Engine in order to select the game process.
  4. Keep the list.
  5. Activate the trainer options by checking boxes or setting values from 0 to 1

vallenvega
Noobzor
Noobzor
Posts: 5
Joined: Sat Sep 11, 2021 2:52 pm
Reputation: 1

Re: HELLDIVERS 2

Post by vallenvega »

ZoDDeL wrote:
Fri May 10, 2024 1:48 pm
Spoiler
UPDATE:
re-added no sway (fixed by gir489)
added weapon ID's
strafing run / orbital gatling
orbital gas

added on super damage script:
pushback / stagger
demolition

table + guide as usual in my signature


demolition let your super weapons(whitelisted) destroy any destroyable(not enemy) object like
bug hive holes, radar jammer or saurons eye tower on bot planets.
while small things just got deleted (walls, fences, shipping containers, vending machines) bigger stuff mostly explodes.
(i also checked if this can destroy code terminals or extraction shuttle and the answer is no. it wont brick your game)
this makes explosives weapons and strategmens obsolete because you can destroy pretty much
everything with a redeemer or AR-23.

i also added pushback / stagger , demolition and penetration for enemy attacks with value of 0
so the cant ragdoll you anymore what makes energy shield obsolete
you still might get some screenskake but no stagger or ragdoll / knockup sh!t


i also added a check to make sure the multiplied weapon damage
does not exceed 7000 and stay below energy shield (7777) or infinite health (9999).
you may still able to kill yourself with the airburst rocket launcher because it ribs off your limbs and currently we dont have
inf health / godmode for player limbs yet.
if you stay away from explosive weapons you should be invicible with super damage mod + inf health (both part of AIO)


anyway just want to mention that naisu brought me up to the demo, pushback values with a private message.
they where in the same array as damage and penetration but i did not give them attention before.
so his contribution let this update happen.

btw. dont get the wrong idea, even if the game loses playercount and has some trouble with nasty publisher behaviour
there are still people out there who keep datamine or make spreadsheets with collected information.
its not over yet but now features will come slower and i will priorize fixing broken scripts (on game updates).


p.s.
thanks for the reputation points, the donations and kind words i received in the last weeks.
thank you for this update!
after trying this in some missions, I think it would be a lot better if the Super Damage and the additional functions (destroyer,explosive,concussive) have separate flag as opposed to united under dmg_Super thingy.

buttfucker2000
Noobzor
Noobzor
Posts: 6
Joined: Thu Nov 30, 2023 3:44 pm
Reputation: 0

Re: HELLDIVERS 2

Post by buttfucker2000 »

vallenvega wrote:
Sat May 11, 2024 8:20 am
ZoDDeL wrote:
Fri May 10, 2024 1:48 pm
Spoiler
UPDATE:
re-added no sway (fixed by gir489)
added weapon ID's
strafing run / orbital gatling
orbital gas

added on super damage script:
pushback / stagger
demolition

table + guide as usual in my signature


demolition let your super weapons(whitelisted) destroy any destroyable(not enemy) object like
bug hive holes, radar jammer or saurons eye tower on bot planets.
while small things just got deleted (walls, fences, shipping containers, vending machines) bigger stuff mostly explodes.
(i also checked if this can destroy code terminals or extraction shuttle and the answer is no. it wont brick your game)
this makes explosives weapons and strategmens obsolete because you can destroy pretty much
everything with a redeemer or AR-23.

i also added pushback / stagger , demolition and penetration for enemy attacks with value of 0
so the cant ragdoll you anymore what makes energy shield obsolete
you still might get some screenskake but no stagger or ragdoll / knockup sh!t


i also added a check to make sure the multiplied weapon damage
does not exceed 7000 and stay below energy shield (7777) or infinite health (9999).
you may still able to kill yourself with the airburst rocket launcher because it ribs off your limbs and currently we dont have
inf health / godmode for player limbs yet.
if you stay away from explosive weapons you should be invicible with super damage mod + inf health (both part of AIO)


anyway just want to mention that naisu brought me up to the demo, pushback values with a private message.
they where in the same array as damage and penetration but i did not give them attention before.
so his contribution let this update happen.

btw. dont get the wrong idea, even if the game loses playercount and has some trouble with nasty publisher behaviour
there are still people out there who keep datamine or make spreadsheets with collected information.
its not over yet but now features will come slower and i will priorize fixing broken scripts (on game updates).


p.s.
thanks for the reputation points, the donations and kind words i received in the last weeks.
thank you for this update!
after trying this in some missions, I think it would be a lot better if the Super Damage and the additional functions (destroyer,explosive,concussive) have separate flag as opposed to united under dmg_Super thingy.

Code: Select all

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],#100 // writes demolition value
  mov [rcx+20],#100 // 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
Correct me if I'm wrong, but I think "concussive" would would be

Code: Select all

  mov [rcx+20],#100 // writes pushback / stagger value

User avatar
ZoDDeL
Table Makers
Table Makers
Posts: 136
Joined: Mon May 08, 2017 9:37 am
Reputation: 290

Re: HELLDIVERS 2

Post by ZoDDeL »

UPDATE:
sorry nothing game relevant here only table improvements

changed lua header code
(no more annoying auto open browser)
added an donation button (paypal)
added an update button (leads to my main post)
added missing credits to some script headers
added credits to script titles
changed gir489's diaper :roll:


table + guide in my signature

Image

vallenvega
Noobzor
Noobzor
Posts: 5
Joined: Sat Sep 11, 2021 2:52 pm
Reputation: 1

Re: HELLDIVERS 2

Post by vallenvega »

buttfucker2000 wrote:
Sat May 11, 2024 8:38 am


Code: Select all

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],#100 // writes demolition value
  mov [rcx+20],#100 // 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
Correct me if I'm wrong, but I think "concussive" would would be

Code: Select all

  mov [rcx+20],#100 // writes pushback / stagger value
thanks for the response but I think I didn't explain myself very well.
what I have in mind is to have different setup/capabilities for different weapons e.g.
  • CB-9 has Explosive and Stagger
  • AMR has Explosive and Destruction
  • Liberator has Stagger and Destruction
this way we can customize it to not be very obvious to other users.
as of now, it's one size fits all. you either 'have' it or you dont.

oddity93
Noobzor
Noobzor
Posts: 7
Joined: Wed May 08, 2024 8:58 am
Reputation: 0

Re: HELLDIVERS 2

Post by oddity93 »

buttfucker2000 wrote:
Sat May 11, 2024 6:30 am
oddity93 wrote:
Sat May 11, 2024 3:55 am
Cogitationis wrote:
Thu May 09, 2024 6:37 pm


Just close it before the cutscene starts.
Put all the cheats you want on a single hotkey then open game, hit that key after game opens then exit cheat engine before cutscene starts. This way, you will always be detected, but the game won’t close or crash.
i do that, but i want to edit my samples since other scripts dont credit them to me. (in the table i have, if i end up with more than i should, such as 30 out of 10, i get nothing but the base exp and reqs) i want to be able to leave it open and change them myself.
i want to be able to leave it open and change them myself.
I'm not a table maker -- I'm just a casual enthusiast at best and a loser at worst, so please take this with a grain of salt.

There is no way to really keep it open and change for yourself. Even if you had an unsigned CE that was able to remain undetected, GameGuard would likely not detect scanning for the samples, but definitely editing them.

>well then how do the known sample scripts work genius
That's a little outside my technical expertise, but our level of knowledge is about the same. There's a difference between directly editing the memory in a very small time window, and a couple smooth brains (respectfully, us) trying to scan for samples and edit them while GameGuard is watching you play.

The sample scripts work for me - so as far "other scripts don't credit them to me" - I feel like you're doing something wrong, but there's not enough information to make that assessment accurately.
all i know is what i can reiterate. plus some more context after looking at whats happening
in mission, i get more samples per pickup, but when i leave, i get nothing.
and if i go over the amount thats in the mission all i get is the base reqs and exp. no bonuses for difficulty, no medals for completion, and i can go back into the same mission.
the instructions i was given are: open game, wait a moment for black screen, click boxes, close CE before game fully launches. i havent the foggiest what i would be doing wrong when everything else i have works, such as infinite health or strats
>>i went back and got other cheat tables. i was using one that had the majority of what i needed. i didnt realize someone had updated their table to work better. TL:DR its all good now

ikstarven
Novice Cheater
Novice Cheater
Posts: 16
Joined: Sat Feb 24, 2024 6:27 am
Reputation: 2

Re: HELLDIVERS 2

Post by ikstarven »

oddity93 wrote:
Sat May 11, 2024 12:51 pm
buttfucker2000 wrote:
Sat May 11, 2024 6:30 am
oddity93 wrote:
Sat May 11, 2024 3:55 am


i do that, but i want to edit my samples since other scripts dont credit them to me. (in the table i have, if i end up with more than i should, such as 30 out of 10, i get nothing but the base exp and reqs) i want to be able to leave it open and change them myself.
i want to be able to leave it open and change them myself.
I'm not a table maker -- I'm just a casual enthusiast at best and a loser at worst, so please take this with a grain of salt.

There is no way to really keep it open and change for yourself. Even if you had an unsigned CE that was able to remain undetected, GameGuard would likely not detect scanning for the samples, but definitely editing them.

>well then how do the known sample scripts work genius
That's a little outside my technical expertise, but our level of knowledge is about the same. There's a difference between directly editing the memory in a very small time window, and a couple smooth brains (respectfully, us) trying to scan for samples and edit them while GameGuard is watching you play.

The sample scripts work for me - so as far "other scripts don't credit them to me" - I feel like you're doing something wrong, but there's not enough information to make that assessment accurately.
all i know is what i can reiterate. plus some more context after looking at whats happening
in mission, i get more samples per pickup, but when i leave, i get nothing.
and if i go over the amount thats in the mission all i get is the base reqs and exp. no bonuses for difficulty, no medals for completion, and i can go back into the same mission.
the instructions i was given are: open game, wait a moment for black screen, click boxes, close CE before game fully launches. i havent the foggiest what i would be doing wrong when everything else i have works, such as infinite health or strats
>>i went back and got other cheat tables. i was using one that had the majority of what i needed. i didnt realize someone had updated their table to work better. TL:DR its all good now
that's because there is a limit of 100 samples total (cumulative amount of all three samples), Zoddel's table only gives you samples for the first pickup, and the rest after that will not give any to avoid going over 100, you can change the amount of samples per pickup, for me personally 20 supers is too much since it's barely used, and i'd reduce the amount of supers in favor of rare

R7Wolfy
What is cheating?
What is cheating?
Posts: 3
Joined: Tue Apr 30, 2024 5:09 pm
Reputation: 2

Re: HELLDIVERS 2

Post by R7Wolfy »

vallenvega wrote:
Sat May 11, 2024 12:36 pm
buttfucker2000 wrote:
Sat May 11, 2024 8:38 am


Code: Select all

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],#100 // writes demolition value
  mov [rcx+20],#100 // 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 return
  jmp code
Correct me if I'm wrong, but I think "concussive" would would be

Code: Select all

  mov [rcx+20],#100 // writes pushback / stagger value
thanks for the response but I think I didn't explain myself very well.
what I have in mind is to have different setup/capabilities for different weapons e.g.
  • CB-9 has Explosive and Stagger
  • AMR has Explosive and Destruction
  • Liberator has Stagger and Destruction
this way we can customize it to not be very obvious to other users.
as of now, it's one size fits all. you either 'have' it or you dont.
well you could custumize it to your needs by writing in more Damage varibles/sets. like create a new set call it dub with stagger buffs

Code: Select all

//as an example 
//x2 multi
Dubdmg_multiplier:
  dd (float)2
Dubadmg_multiplier:
  dd (float)2
dubstag:
 mov [rcx+20],#100 // writes pushback / stagger value
 movd xmm3,[rcx+04]
 movd xmm1,[rcx+08]
  cvtdq2ps xmm1,xmm1
  cvtdq2ps xmm3,xmm3
  mulss xmm3, dword ptr [Dubdmg_multiplier]  // multiplies value with dmg_multiplier
  mulss xmm1, dword ptr [Dubadmg_multiplier] // multiplies value with admg_multiplier
  jmp return
  jmp code
dubex:
 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],#100 // writes demolition value
 movd xmm3,[rcx+04]
 movd xmm1,[rcx+08]
  cvtdq2ps xmm1,xmm1
  cvtdq2ps xmm3,xmm3
  mulss xmm3, dword ptr [Dubdmg_multiplier]  // multiplies value with dmg_multiplier
  mulss xmm1, dword ptr [Dubadmg_multiplier] // multiplies value with admg_multiplier
  jmp return
  jmp code
 
  

Woci
What is cheating?
What is cheating?
Posts: 2
Joined: Wed May 08, 2024 12:29 pm
Reputation: 0

Re: HELLDIVERS 2

Post by Woci »

can't finish main + second quests fast?

Xedius
What is cheating?
What is cheating?
Posts: 1
Joined: Fri Apr 19, 2024 12:20 am
Reputation: 0

Re: HELLDIVERS 2

Post by Xedius »

@ZoDDeL I'm new here, but it seems instant finishing the missions doesn't work anymore. Am I doing something wrong? Thank you!!!

Apocalypse17
What is cheating?
What is cheating?
Posts: 4
Joined: Fri May 03, 2024 11:10 pm
Reputation: 1

Re: HELLDIVERS 2

Post by Apocalypse17 »

Any idea when the autocannon infinite ammo will be fixed?

User avatar
ZoDDeL
Table Makers
Table Makers
Posts: 136
Joined: Mon May 08, 2017 9:37 am
Reputation: 290

Re: HELLDIVERS 2

Post by ZoDDeL »

Xedius wrote:
Sat May 11, 2024 9:13 pm
@ZoDDeL I'm new here, but it seems instant finishing the missions doesn't work anymore. Am I doing something wrong? Thank you!!!
totally works as intended.

you need to press right mouse button / mouse 2 once while at planet to trigger the mission complete.
for complete bug hives / bot bases you need to open the map once.

the press right mouse button thing is a workaround to avoid a gamecrash on/after loading screen for some newer missions.
might be possible this doenst work for some systems or other operating systems since it calls the windows api function GetAsyncKeyState to make sure to only act while the button is pressed.

nos4r2
Expert Cheater
Expert Cheater
Posts: 241
Joined: Sun Oct 29, 2017 3:58 am
Reputation: 46

Re: HELLDIVERS 2

Post by nos4r2 »

Exemplify1524 wrote:
Wed May 01, 2024 10:29 am
latest and full version of modified ZoDDels damage script rewritten in ccode to more usability and changebility. good to use with table [Link]

main part is
// default damage multiplier for all damages.
damage_ratio = 0.2f;

and the weapons table
{51, 100.0f, -1, -1, 100, 100, 100, 100, "AR-22C Patriot / AR-23 Liberator / AR-48 Truth Whisperer / Guard Dog / Stalwart"},

51 is ID
100.0f is damage and armor damage multiplier (damage * multiplier)
-1 is damage (-1 for not change, for example to only multiply default value)
-1 is armor damage
100 is penetration1 at no angle is set to 100 (you can use -1 to not change)
100 is penetration2 with angle is set to 100 (you can use -1 to not change)
100 is penetration3 unknown is set to 100 (you can use -1 to not change)
100 is penetration4 unknown is set to 100 (you can use -1 to not change)

also damage monitoring with miscosoft DebugView tool is working.

Code: Select all

[ENABLE]
aobscanmodule(damage_inject,game.dll,66 0F 6E 59 04 66 0F 6E 49 08 0F 5B C9 0F 5B DB)
alloc(damage_newmem,$10000)
label(damage_return)

//label(damage_change)
//label(damage_and_penetration_change)
//label(damage_no_change)
//label(damage_multiplier)


alloc(damage_ratio,4)
registersymbol(damage_ratio)


damage_newmem:
// push rbx //save rbx as it's going to be changed

{$ccode base_address=rcx jmpaddress=rbx}
extern __cdecl int sprintf(char *, char *, ...);
extern __cdecl void OutputDebugStringA(const char* lpOutputString);

extern float damage_ratio;

//extern void damage_change();
//extern void damage_and_penetration_change();
//extern void damage_no_change();

char debug_string[400];
char* weapon_name;
//float unknown_damage_mult = 0.2f;
//bool damage_is_unknown;
// char* damage_type_name;

typedef struct {
   int id;
   float damage_mult;
   int damage_value;
   int armor_damage_value;
   int penetration1_no_angle_value;
   int penetration2_angle_value;
   int penetration3_unknown_value;
   int penetration4_unknown_value;
   char* weapon_name;
} Weapon;

int *weapon_id=(int*)(base_address);
int *weapon_dmg=(int*)(base_address+0x04);
int *weapon_admg=(int*)(base_address+0x08);
int *weapon_pen1=(int*)(base_address+0x0C);
int *weapon_pen2=(int*)(base_address+0x10);
int *weapon_pen3=(int*)(base_address+0x14);
int *weapon_pen4=(int*)(base_address+0x18);

Weapon weapons[76] = {
{326,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Helldiver melee"},
{50,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"AR-23C Liberator Concussive"},
{48,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"AR-23P Liberator Penetrator"},
{51,	100.0f,	-1,	-1,	100,	100,	100,	100,	"AR-22C Patriot / AR-23 Liberator / AR-48 Truth Whisperer / Guard Dog / Stalwart"},
{73,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"R-63 Diligence"},
{74,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"R-63CS Diligence Counter Sniper"},
{65,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"AR-20L Justice / BR-14 Adjudicator / Machine Gun / Gatling/Machine Gun Sentry"},
{26,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"MP-98 Knight"},
{34,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"SG-8S / SMG-37 Defender"},
{117,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"ARC-12 Blitzer"},
{93,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Break action shotgun"},
{102,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"SG-225 Breaker"},
{103,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"SG-225BB Breaker Bugbiter"},
{104,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"SG-225NS Breaker Nailspitter"},
{101,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"SG-225SP Breaker Spray&Pray"},
{105,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"SG-255IE Breaker Incendiary"},
{88,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"SG-8 Punisher"},
{99,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"SG-8S Slugger"},
{124,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"CB-9 Exploding Crossbow"},
{84,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"JAR-5 Dominator"},
{80,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"R-36 Eruptor"},
{19,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"LAS-16 Sickle"},
{297,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"LAS-5 Scythe"},
{20,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"PLAS-1 Scorcher / SG-8P Punisher Plasma"},
{134,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"GP-31 Grenade Pistol"},
{296,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"LAS-7 Dagger"},
{44,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"P-4 Senator"},
{25,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"P-19 Redeemer / P-2 Peacemaker"},
{203,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"G-10 Incendiary"},
{201,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"G-6 Frag part 1"},
{201,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"G-6 Frag part 1"},
{111,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"G-6 Frag part 2"},
{213,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"G-12 High Explosive / G-16 Impact"},
{204,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"G-123 Thermite"},
{122,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Antimaterial Rifle"},
{115,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"ARC3 Thrower"},
{127,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Autocannon (part 1/2)"},
{216,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Autocannon (part 2/2)"},
{145,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Commando"},
{135,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"EAT-17 Expendable Anti-Tank part 1"},
{189,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"EAT-17 Expendable Anti-Tank part 2"},
{226,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"EAT-17 Expendable Anti-Tank part 3"},
{129,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"EXO-45 Emancipator gun part 1"},
{217,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"EXO-45 Emancipator gun part 2"},
{147,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"EXO-45 Emancipator rocket part 1"},
{234,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"EXO-45 Emancipator rocket part 2"},
{9,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"FLAM-40 Flamethrower part 1"},
{220,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"GL-21 Grenade launcher part 2 explosion"},
{121,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Heavy Machinegun"},
{149,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Javelin rocket part 1"},
{236,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Javelin rocket part 2"},
{302,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"LAS-98 Laser Cannon"},
{227,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Quasar Cannon part 1"},
{228,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Quasar Cannon part 2"},
{280,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Quasar Cannon part 3 (???)"},
{136,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Recoiless Rifle part 1 shell"},
{225,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Recoiless Rifle part 2 explosion"},
{22,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"RS-422 Railgun"},
{10,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"GL-21 Grenade launcher part 1 / Mortar Sentry shell"},
{11,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Grenade Launcher / EMS Mortar Sentry / Mortar Sentry 1"},
{223,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Mortar Sentry 2"},
{126,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Tesla Tower"},
{241,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"AntiPersonal MineField / Eagle 110mm rocket pods part 2"},
{154,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"500kg bomb1 shell"},
{273,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"500kg bomb2 explosion"},
{152,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Eagle 110mm rocket pods part 1"},
{142,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Eagle airstrike part 1"},
{254,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Eagle airstrike part 2"},
{229,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Eagle cluster bomb"},
{159,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Orbital 120MM HE barrage1"},
{268,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Orbital 120MM HE barrage2"},
{305,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Orbital laser"},
{160,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Orbital precision strike1"},
{267,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Orbital precision strike2"},
{161,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Orbital railcannon strike1"},
{266,	1.0f,	-1,	-1,	-1,	-1,	-1,	-1,	"Orbital railcannon strike2"}
};


// damage_type_name = "unknown type";

// strcpy(weapon_name_list, "");

// default damage multiplier for all damages.
damage_ratio = 0.2f;

if (*weapon_id != 0) {
  // set default values. May change during analyzing table later.
  weapon_name = "unknown damage";
  //damage_is_unknown = true;

  // analyzing if we have damage_id  in table
  for (int i = 0; i < sizeof(weapons) / sizeof(weapons[0]); ++i) {
    if (weapons[i].id == 0) {
      continue;
    }

    if (*weapon_id == weapons[i].id) {
       // damage_is_unknown = false; // we have this damage_id in table. So set flag 'damage_is_unknown' to false, with this we will not apply unknown_damage debuffer to this damage latter

       weapon_name = weapons[i].weapon_name;  // is only for debugging. Used only in sprintf and OutputDebugString latter

       // damage_type_name = weapons[i].damage_type_name;

       if (weapons[i].damage_value != -1) {
         *weapon_dmg = weapons[i].damage_value;
       }
       if (weapons[i].armor_damage_value != -1) {
         *weapon_admg = weapons[i].armor_damage_value;
       }
       if (weapons[i].penetration1_no_angle_value != -1) {
         *weapon_pen1 = weapons[i].penetration1_no_angle_value;
       }
       if (weapons[i].penetration2_angle_value != -1) {
         *weapon_pen2 = weapons[i].penetration2_angle_value;
       }
       if (weapons[i].penetration3_unknown_value != -1) {
         *weapon_pen3 = weapons[i].penetration3_unknown_value;
       }
       if (weapons[i].penetration4_unknown_value != -1) {
         *weapon_pen4 = weapons[i].penetration4_unknown_value;
       }

       // apply damage multiplier
       damage_ratio = weapons[i].damage_mult;

       //strcat(weapon_name_list, " / ");
       //strcat(weapon_name_list, weapons[i].name);
       //sprintf(debug_string, "HD2. ID %d is for %s", *weapon_id, weapon_name);
       //OutputDebugStringA(debug_string);
       break;
    }
  }

  // If damage_id was not found in table. Then assume it is some enemy or environmental damage.  Apply 'unknown_damage_mult' to it (reduce)
  /*
  if (damage_is_unknown) {
     *weapon_dmg = (int)((float)*weapon_dmg * unknown_damage_mult);
     *weapon_admg = (int)((float)*weapon_admg * unknown_damage_mult);
     *weapon_pen1 = (int)((float)*weapon_pen1 * unknown_damage_mult);
     *weapon_pen2 = (int)((float)*weapon_pen2 * unknown_damage_mult);
     *weapon_pen3 = (int)((float)*weapon_pen3 * unknown_damage_mult);
     *weapon_pen4 = (int)((float)*weapon_pen4 * unknown_damage_mult);
  }*/

  sprintf(debug_string, "HD2 %3d | DMG %3d %3d | PEN %3d %3d %3d %3d | %s", *weapon_id, *weapon_dmg, *weapon_admg, *weapon_pen1, *weapon_pen2, *weapon_pen3, *weapon_pen4, weapon_name);
  OutputDebugStringA(debug_string);
} // weapon_id != 0



{$asm}
  // standart code start
  movd xmm3,[rcx+04]
  movd xmm1,[rcx+08]
  cvtdq2ps xmm1,xmm1
  cvtdq2ps xmm3,xmm3
  // standart code end
  // damage_ratio part
  mulss xmm3, dword ptr [damage_ratio]
  mulss xmm1, dword ptr [damage_ratio]
  jmp damage_return

damage_inject:
  jmp far damage_newmem
  nop 2

damage_return:

// ------------------------------------------------------

[DISABLE]
Thank, this kinda nice customize each one btw i have some questions say if i set it like this {326, 2.0f, 200, 200, 5, 5, 5,5, "Helldiver melee"},

Will melee dmg do 400 dmg or fixed at 200?

wilsondgonzales
Noobzor
Noobzor
Posts: 10
Joined: Sat Mar 30, 2024 4:02 pm
Reputation: 3

Re: HELLDIVERS 2

Post by wilsondgonzales »

nos4r2 wrote:
Sun May 12, 2024 2:31 am


Thank, this kinda nice customize each one btw i have some questions say if i set it like this {326, 2.0f, 200, 200, 5, 5, 5,5, "Helldiver melee"},

Will melee dmg do 400 dmg or fixed at 200?
yes, and any melee by other helldivers will also be doubled if they melee you...but i don't think the damage script modifies other players. i do know that it affects rover dogs of other players

nos4r2
Expert Cheater
Expert Cheater
Posts: 241
Joined: Sun Oct 29, 2017 3:58 am
Reputation: 46

Re: HELLDIVERS 2

Post by nos4r2 »

wilsondgonzales wrote:
Sun May 12, 2024 5:20 am
nos4r2 wrote:
Sun May 12, 2024 2:31 am


Thank, this kinda nice customize each one btw i have some questions say if i set it like this {326, 2.0f, 200, 200, 5, 5, 5,5, "Helldiver melee"},

Will melee dmg do 400 dmg or fixed at 200?
yes, and any melee by other helldivers will also be doubled if they melee you
That not even what i'm asking for, i ask if i set multiplier to 2.0 but also set dmg to 200 it result in 200 dmg or 400 dmg.

Also aren't these client-side? it affect other people? i mostly play solo so i have no idea.

Post Reply

Who is online

Users browsing this forum: 96Knight, AhrefsBot, AmazonBot, Basch, gatagahshgatwe, Google [Bot], Google Adsense [Bot], jck1337, Jetadawoot, JKTrigger, KS212, NotAnyoneThatUKnow, SemrushBot, yourlover, zeng954