Skocz do zawartości

CSGO WeaponID bez konwersji na m_iItemDefinitionIndex


# CSH External VIP Project

Masz dosyć problemów z czynnikiem zaufania w CS2 lub notorycznymi banami?

Sprawdź CSH External VIP Project.


Więcej informacji  

Rekomendowane odpowiedzi

Witam, zmagam sie z malym problem otoz zakowodalem sobie kiedys DPI tool + skin changer i aby program dzialal musi zczytac dana bron w rece, po kilku aktualizacjach csgo "Weaponoffset" (tutaj sie moge mylic) przestal istniec i moj kod jest outdated ...

probowalem konwersje na m_iItemDefinitionIndex ale wywala mi mnostwo bledow a gdy juz sie uda skompilowac to vac mnie kicka z serwerow z jakis dziwnym errorem ... 

podrzucam moj kod na weapon : 

using namespace std;
 
enum CSGO_Weapon_ID
{
	weapon_none,
	weapon_deagle,
	weapon_elite,
	weapon_fiveseven,
	weapon_glock,
	weapon_p228,
	weapon_usp,
	weapon_ak47,
	weapon_aug,
	weapon_awp,
	weapon_famas,
	weapon_g3sg1,
	weapon_galil,
	weapon_galilar,
	weapon_m249,
	weapon_m3,
	weapon_m4a1,
	weapon_mac10,
	weapon_mp5navy,
	weapon_p90,
	weapon_scout,
	weapon_sg550,
	weapon_sg552,
	weapon_tmp,
	weapon_ump45,
	weapon_xm1014,
	weapon_bizon,
	weapon_mag7,
	weapon_negev,
	weapon_sawedoff,
	weapon_tec9,
	weapon_taser,
	weapon_hkp2000,
	weapon_mp7,
	weapon_mp9,
	weapon_nova,
	weapon_p250,
	weapon_scar17,
	weapon_scar20,
	weapon_sg556,
	weapon_ssg08,
	weapon_knifegg,
	weapon_knife,
	weapon_flashbang,
	weapon_hegrenade,
	weapon_smokegrenade,
	weapon_molotov,
	weapon_decoy,
	weapon_incgrenade,
	weapon_c4
};
 
string weaponClass;
 
 
DWORD GetEntityForWeaponId(int mIndex)
{
	DWORD dwEntity;
	ReadProcessMemory(hProcess, clientBase + entityList + ((mIndex-1) * 0x10), &dwEntity, sizeof(dwEntity), 0);
	return dwEntity;
}
 
void GetWeaponClass(int weaponId)
{
	if(weaponId == weapon_deagle || weaponId == weapon_elite || weaponId == weapon_fiveseven || weaponId == weapon_glock
								|| weaponId == weapon_p228 || weaponId == weapon_usp || weaponId == weapon_tec9
								|| weaponId == weapon_taser || weaponId == weapon_hkp2000 || weaponId == weapon_p250)
	{
		weaponClass = "pistol";
	}
	else if(weaponId == weapon_ak47 || weaponId == weapon_aug || weaponId == weapon_famas || weaponId == weapon_sg556
									 || weaponId == weapon_galil || weaponId == weapon_galilar || weaponId == weapon_m249
									  || weaponId == weapon_m3 || weaponId == weapon_m4a1 || weaponId == weapon_mac10
									   || weaponId == weapon_mp5navy || weaponId == weapon_p90 || weaponId == weapon_sg550
									    || weaponId == weapon_sg552 || weaponId == weapon_tmp || weaponId == weapon_ump45
									     || weaponId == weapon_bizon || weaponId == weapon_negev || weaponId == weapon_mp7
									      || weaponId == weapon_mp9)
	{
		weaponClass = "rifle";
	}
	else if(weaponId == weapon_awp || weaponId == weapon_scout || weaponId == weapon_ssg08)
	{
		weaponClass = "sniper";
	}
	else if(weaponId == weapon_scar17 || weaponId == weapon_scar20 || weaponId == weapon_g3sg1)
	{
		weaponClass = "autosniper";
	}
	else if(weaponId == weapon_xm1014 || weaponId == weapon_mag7 || weaponId == weapon_sawedoff || weaponId == weapon_nova)
	{
		weaponClass = "shotgun";
	}
	
	else if(weaponId == weapon_knifegg || weaponId == weapon_knife || weaponId == weapon_flashbang || weaponId == weapon_hegrenade
										 || weaponId == weapon_smokegrenade || weaponId == weapon_molotov || weaponId == weapon_decoy
										  || weaponId == weapon_incgrenade || weaponId == weapon_c4)
	{
		weaponClass = "none";
	}
}
 
void GetWeaponId()
{
	DWORD local;
	ReadProcessMemory(hProcess, clientBase + localPlayer, &local, sizeof(local), 0);
	
	DWORD hActiveWeapon;
	ReadProcessMemory(hProcess, (LPVOID)(local + activeWeapon), &hActiveWeapon, sizeof(hActiveWeapon), 0);
	int mIndex = hActiveWeapon & 0xFFF;
	ReadProcessMemory(hProcess, (LPVOID)(GetEntityForWeaponId(mIndex) + weaponOffset), &weaponId, sizeof(weaponId), 0);
	
	if(weaponId == lastWeaponId)
	{
		changedWeapon = false;
	}
	else
	{
		lastWeaponId = weaponId;
		changedWeapon = true;
		cout << weaponId << flush << endl << endl;
		GetWeaponClass(weaponId);
		cout << GetWeaponClass(weaponId) << flush << endl << endl;
	}
}

co wiecej, po danych aktualizacjach udalo mi sie nadal korzystac z "weaponid" tak jak powyzej z takim patternem na weaponoffset  :  

Jakies pomysly ? jakis nowy pattern ew. spoonfeed z gotowym source przyedytowanym na m_iItemDefinitionIndex:-)

weaponOffset = accuracyPenalty - 0x328;

Edytowane przez beliar1
Odnośnik do komentarza
enum CSGO_Weapon_ID
{
	weapon_none = 0,
	weapon_deagle,
	weapon_elite,
	weapon_fiveseven,
	weapon_glock,
	weapon_ak47 = 7,
	weapon_aug,
	weapon_awp,
	weapon_famas,
	weapon_g3sg1,
	weapon_galil = 13,
	weapon_m249,
	weapon_m4a4 = 16,
	weapon_mac10,
	weapon_p90 = 19,
	weapon_mp5sd = 23,
	weapon_ump45,
	weapon_xm1014,
	weapon_bizon,
	weapon_mag7,
	weapon_negev,
	weapon_sawedoff,
	weapon_tec9,
	weapon_zeus,
	weapon_p2000,
	weapon_mp7,
	weapon_mp9,
	weapon_nova,
	weapon_p250,
	weapon_shield,
	weapon_scar20,
	weapon_sg553,
	weapon_ssg08,
	weapon_knifegg,
	weapon_knife,
	weapon_flashbang,
	weapon_hegrenade,
	weapon_smokegrenade,
	weapon_molotov,
	weapon_decoy,
	weapon_inc,
	weapon_c4,
	weapon_healthshot = 57,
	weapon_knife_t = 59,
	weapon_m4a1s,
	weapon_usps,
	weapon_cz75 = 63,
	weapon_revolver,
};

 

	ReadProcessMemory(hProcess, (LPVOID)(GetEntityForWeaponId(mIndex) + 0x2FAA), &weaponId, sizeof(short), 0); //"DT_BaseCombatWeapon->m_iItemDefinitionIndex"

 

Odnośnik do komentarza
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Regulamin. Polityka prywatności