|
You last visited: Today at 05:07
Advertisement
[Memory] League of Legends 3.8.13_06_14_16_46 [EUW]
Discussion on [Memory] League of Legends 3.8.13_06_14_16_46 [EUW] within the League of Legends Hacks, Bots, Cheats & Exploits forum part of the League of Legends category.
07/08/2013, 02:46
|
#1
|
elite*gold: 19
Join Date: Sep 2007
Posts: 1,525
Received Thanks: 1,058
|
[Memory] League of Legends 3.8.13_06_14_16_46 [EUW]
Hi, since I began memory editing a while ago, I thought that we could work on getting the structs and the adresses from the memory to the public.
I don't have much information, but I am currently working on it.
Adresses:
Code:
X_POS = 0x01CE8770 (float)
Z_POS = 0x01CE8774 (float)
Y_POS = 0x01CE8778 (float)
I found a multilevel pointer pointing to the Current and Max HP and Mana:
Code:
"League of Legends.exe"+018AA5DC
+14 FIRST
+48 SECOND
+2C THIRD
+58 FORTH
-------------------
FIFTH
+68 = CurrMana
+6c = MaxMana
+58 = CurrHP
+5c = MaxHP
Tons of more stuff by NikM (thanks!):
Code:
//Pointer
private int iLocalEntity = 0x01CAA104;
private int iEntityList = 0x01CAA7AC;
private int iGameTime = 0x01CA9FE0;
private int iStats = 0x01CAA124;
//Entity Offsets
private int iType = 0x004;
private int iUserName = 0x02C;
private int iPositionX = 0x068;
private int iPositionY = 0x06C;
private int iPositionZ = 0x070;
private int iCurrentHealth = 0x120;
private int iMaxHealth = 0x130;
private int iCurrentMana = 0x18C;
private int iMaxMana = 0x19C;
private int iCharName = 0x534;
private int iCooldownReduction = 0x5EC;
private int iTenacity = 0x638;
private int iArmorPenetration = 0x668;
private int iMagicPenetration = 0x66C;
private int iArmorPenetrationPerCent = 0x670;
private int iMagicPenetrationPerCent = 0x674;
private int iAdditionalAD = 0x694;
private int iAbilityPower = 0x69C;
private int iLifeSteal = 0x6E8;
private int iSpellVamp = 0x6EC;
private int iAttackSpeed = 0x6F8;
private int iBaseAD = 0x6FC;
private int iCritChance = 0x714;
private int iArmor = 0x718;
private int iMagicResist = 0x71C;
private int iHealthReg = 0x720;
private int iManaReg = 0x728;
private int iWalkSpeed = 0x72C;
private int iAttackRange = 0x730;
private int iGold = 0xF68;
private int iAllGold = 0xF78;
private int iSpells = 0xFD0;
private int iItemsArray = 0xFE0;
//TimeOffset
private int iGameTimeOfs = 0x004;
//Stats Offsets
private int iToStats = 0x098;
private int iKills = 0x008;
private int iDeath = 0x00C;
private int iAssists = 0x010;
private int iMinions = 0x014;
private int iIterator = 0;
private int iCurrentPlayer = 0;
public bool isLastPlayerFound = false;
public void SetLocal()
{
this.iCurrentPlayer = this.ReadLongInt(this.iLocalEntity);
}
public void NextPlayer()
{
int iEntitys = this.ReadLongInt(this.iEntityList);
for (; this.iIterator < this.ReadLongInt(this.iEntityList + 0x04); ++this.iIterator)
{
int iTempEntity = this.ReadLongInt(iEntitys + (this.iIterator * 0x04));
if (iTempEntity != 0 && this.ReadByte (iTempEntity + 0x21) == 0x14)
{
if (this.ReadLongInt(this.iLocalEntity) == iTempEntity) continue;
if (this.iCurrentPlayer == iTempEntity) continue;
this.iCurrentPlayer = iTempEntity;
return;
}
}
this.iIterator = 0;
this.isLastPlayerFound = true;
}
private float toPerCent(float f)
{
return (f * 100.0f);
}
public string getUserName()
{
return (this.ReadStringASCII(this.iCurrentPlayer + this.iUserName, 0x10));
}
public string getCharName()
{
return (this.ReadStringASCII(this.iCurrentPlayer + this.iCharName, 0x10));
}
public float[] getPosition()
{
return (this.ReadFloatArray(this.iCurrentPlayer + this.iPositionX, 3));
}
public float getCurrentHealth()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iCurrentHealth));
}
public float getMaxHealth()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iMaxHealth));
}
public float getCurrentMana()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iCurrentMana));
}
public float getMaxMana()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iMaxMana));
}
public float getCooldownReduction()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iCooldownReduction)) * (-1.0f));
}
public float getTenacity()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iTenacity)));
}
public float getArmorPenetration()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iArmorPenetration));
}
public float getMagicPenetration()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iMagicPenetration));
}
public float getArmorPenetrationPerCent()
{
return (100.0f - this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iArmorPenetrationPerCent)));
}
public float getMagicPenetrationPerCent()
{
return (100.0f - this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iMagicPenetrationPerCent)));
}
public float getAttackDamage()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iBaseAD) + this.ReadFloat(this.iCurrentPlayer + this.iAdditionalAD));
}
public float getAbilityPower()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iAbilityPower));
}
public float getLifeSteal()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iLifeSteal)));
}
public float getSpellVamp()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iSpellVamp)));
}
public float getAttackSpeed()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iAttackSpeed) * 0.625f);
}
public float getCritChance()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iCritChance)));
}
public float getArmor()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iArmor));
}
public float getMagicResist()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iMagicResist));
}
public float getHealthReg()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iHealthReg));
}
public float getManaReg()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iManaReg));
}
public float getWalkSpeed()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iWalkSpeed));
}
public float getAttackRange()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iAttackRange));
}
public float getGold()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iGold));
}
public float getAllGold()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iAllGold));
}
public float getGameTime()
{
int iTemp = this.ReadLongInt(this.iGameTime);
return (this.ReadFloat(iTemp + this.iGameTimeOfs));
}
public int [] getStats()
{
int iTemp = this.ReadLongInt(this.iStats);
iTemp = this.ReadLongInt(iTemp + this.iToStats);
return (this.ReadLongIntArray(iTemp + this.iKills, 4));
}
I did not try this on another computer/client, it would be great if someone could test these pointers/adresses.
I'd also appreciate some contribution, since this is a lot of work to do. (For me atleast :P)
|
|
|
07/08/2013, 03:10
|
#2
|
elite*gold: 0
Join Date: Apr 2013
Posts: 4
Received Thanks: 0
|
wtf this code doo?
|
|
|
07/08/2013, 03:43
|
#3
|
elite*gold: 21
Join Date: Apr 2010
Posts: 1,725
Received Thanks: 1,237
|
Quote:
Originally Posted by Alisami
Hi, since I began memory editing a while ago, I thought that we could work on getting the structs and the adresses from the memory to the public.
I don't have much information, but I am currently working on it.
Adresses:
Code:
X_POS = 0x01CE8770 (float)
Z_POS = 0x01CE8774 (float)
Y_POS = 0x01CE8778 (float)
X_POS = 0x01CE8770 (float)
Z_POS = 0x01CE8774 (float)
Y_POS = 0x01CE8778 (float)
|
test it with :
Quote:
Addy:
//================ Position X,Y,Z ==========//
#define ADR_POSITION_X 0x01CE8770
#define ADR_POSITION_Y 0x01CE8778
#define ADR_POSITION_Z 0x01CE8774
//==========================================//
#define ADR_PlayerPointer ?????????
#define ADR_ServerPointer ?????????
Funktion:
DWORD Player = *(DWORD*) ADR_PlayerPointer;
DWORD Server = *(DWORD*) ADR_ServerPointer;
CH_Teleport =0;
if(CH_Teleport==1)
{DWORD dwPlayerPointer = *(DWORD*)ADR_PlayerPointer;
if(dwPlayerPointer != 0){
if (GetAsyncKeyState(VK_F5))
{
x = *(float*)(dwPlayerPointer + ADR_POSITION_X);
z = *(float*)(dwPlayerPointer + ADR_POSITION_Y);
y = *(float*)(dwPlayerPointer + ADR_POSITION_Z);
}
if (GetAsyncKeyState(VK_F6))
{
*(float*)(dwPlayerPointer + ADR_POSITION_X) = x;
*(float*)(dwPlayerPointer + ADR_POSITION_Y) = y;
*(float*)(dwPlayerPointer + ADR_POSITION_Z) = z + 10;
}}}
|
|
|
|
07/08/2013, 08:44
|
#4
|
elite*gold: 19
Join Date: Sep 2007
Posts: 1,525
Received Thanks: 1,058
|
Quote:
Originally Posted by HackTec
test it with : /code
|
I do not think that a PlayerPointer is needed to look up the Coordinates of the player.
What exactly do you want to test with your code? Since the variable CH_Teleport is zero, the if conditions wont work - I guess it is just a PART of the whole code.
Still it looks interesting that you have some kind of teleport functionality, even if I do not quite understand why you would teleport the character in the z-axis.
I guess that the Coordinates and the player movements are handled serverside - I will run tests today in the evening or tomorrow.
If this works, we might be able to create a teleport hack in League of Legends!
|
|
|
07/08/2013, 14:03
|
#5
|
elite*gold: 21
Join Date: Apr 2010
Posts: 1,725
Received Thanks: 1,237
|
Quote:
Originally Posted by Alisami
I do not think that a PlayerPointer is needed to look up the Coordinates of the player.
What exactly do you want to test with your code? Since the variable CH_Teleport is zero, the if conditions wont work - I guess it is just a PART of the whole code.
Still it looks interesting that you have some kind of teleport functionality, even if I do not quite understand why you would teleport the character in the z-axis.
I guess that the Coordinates and the player movements are handled serverside - I will run tests today in the evening or tomorrow.
If this works, we might be able to create a teleport hack in League of Legends!
|
if u want i have a D3D9 Menü Base for u
|
|
|
07/08/2013, 14:12
|
#6
|
elite*gold: 0
Join Date: Aug 2010
Posts: 972
Received Thanks: 1,583
|
You cannot do a teleport cheat in LoL but you can read the enemy stats if they are visible. If they are not visible their stats are frozen.
If you are interested in some more offsets:
Code:
//Pointer
private int iLocalEntity = 0x01CAA104;
private int iEntityList = 0x01CAA7AC;
private int iGameTime = 0x01CA9FE0;
private int iStats = 0x01CAA124;
//Entity Offsets
private int iType = 0x004;
private int iUserName = 0x02C;
private int iPositionX = 0x068;
private int iPositionY = 0x06C;
private int iPositionZ = 0x070;
private int iCurrentHealth = 0x120;
private int iMaxHealth = 0x130;
private int iCurrentMana = 0x18C;
private int iMaxMana = 0x19C;
private int iCharName = 0x534;
private int iCooldownReduction = 0x5EC;
private int iTenacity = 0x638;
private int iArmorPenetration = 0x668;
private int iMagicPenetration = 0x66C;
private int iArmorPenetrationPerCent = 0x670;
private int iMagicPenetrationPerCent = 0x674;
private int iAdditionalAD = 0x694;
private int iAbilityPower = 0x69C;
private int iLifeSteal = 0x6E8;
private int iSpellVamp = 0x6EC;
private int iAttackSpeed = 0x6F8;
private int iBaseAD = 0x6FC;
private int iCritChance = 0x714;
private int iArmor = 0x718;
private int iMagicResist = 0x71C;
private int iHealthReg = 0x720;
private int iManaReg = 0x728;
private int iWalkSpeed = 0x72C;
private int iAttackRange = 0x730;
private int iGold = 0xF68;
private int iAllGold = 0xF78;
private int iSpells = 0xFD0;
private int iItemsArray = 0xFE0;
//TimeOffset
private int iGameTimeOfs = 0x004;
//Stats Offsets
private int iToStats = 0x098;
private int iKills = 0x008;
private int iDeath = 0x00C;
private int iAssists = 0x010;
private int iMinions = 0x014;
private int iIterator = 0;
private int iCurrentPlayer = 0;
public bool isLastPlayerFound = false;
public void SetLocal()
{
this.iCurrentPlayer = this.ReadLongInt(this.iLocalEntity);
}
public void NextPlayer()
{
int iEntitys = this.ReadLongInt(this.iEntityList);
for (; this.iIterator < this.ReadLongInt(this.iEntityList + 0x04); ++this.iIterator)
{
int iTempEntity = this.ReadLongInt(iEntitys + (this.iIterator * 0x04));
if (iTempEntity != 0 && this.ReadByte (iTempEntity + 0x21) == 0x14)
{
if (this.ReadLongInt(this.iLocalEntity) == iTempEntity) continue;
if (this.iCurrentPlayer == iTempEntity) continue;
this.iCurrentPlayer = iTempEntity;
return;
}
}
this.iIterator = 0;
this.isLastPlayerFound = true;
}
private float toPerCent(float f)
{
return (f * 100.0f);
}
public string getUserName()
{
return (this.ReadStringASCII(this.iCurrentPlayer + this.iUserName, 0x10));
}
public string getCharName()
{
return (this.ReadStringASCII(this.iCurrentPlayer + this.iCharName, 0x10));
}
public float[] getPosition()
{
return (this.ReadFloatArray(this.iCurrentPlayer + this.iPositionX, 3));
}
public float getCurrentHealth()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iCurrentHealth));
}
public float getMaxHealth()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iMaxHealth));
}
public float getCurrentMana()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iCurrentMana));
}
public float getMaxMana()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iMaxMana));
}
public float getCooldownReduction()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iCooldownReduction)) * (-1.0f));
}
public float getTenacity()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iTenacity)));
}
public float getArmorPenetration()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iArmorPenetration));
}
public float getMagicPenetration()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iMagicPenetration));
}
public float getArmorPenetrationPerCent()
{
return (100.0f - this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iArmorPenetrationPerCent)));
}
public float getMagicPenetrationPerCent()
{
return (100.0f - this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iMagicPenetrationPerCent)));
}
public float getAttackDamage()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iBaseAD) + this.ReadFloat(this.iCurrentPlayer + this.iAdditionalAD));
}
public float getAbilityPower()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iAbilityPower));
}
public float getLifeSteal()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iLifeSteal)));
}
public float getSpellVamp()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iSpellVamp)));
}
public float getAttackSpeed()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iAttackSpeed) * 0.625f);
}
public float getCritChance()
{
return (this.toPerCent(this.ReadFloat(this.iCurrentPlayer + this.iCritChance)));
}
public float getArmor()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iArmor));
}
public float getMagicResist()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iMagicResist));
}
public float getHealthReg()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iHealthReg));
}
public float getManaReg()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iManaReg));
}
public float getWalkSpeed()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iWalkSpeed));
}
public float getAttackRange()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iAttackRange));
}
public float getGold()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iGold));
}
public float getAllGold()
{
return (this.ReadFloat(this.iCurrentPlayer + this.iAllGold));
}
public float getGameTime()
{
int iTemp = this.ReadLongInt(this.iGameTime);
return (this.ReadFloat(iTemp + this.iGameTimeOfs));
}
public int [] getStats()
{
int iTemp = this.ReadLongInt(this.iStats);
iTemp = this.ReadLongInt(iTemp + this.iToStats);
return (this.ReadLongIntArray(iTemp + this.iKills, 4));
}
|
|
|
07/08/2013, 21:06
|
#7
|
elite*gold: 19
Join Date: Sep 2007
Posts: 1,525
Received Thanks: 1,058
|
Quote:
Originally Posted by HackTec
if u want i have a D3D9 Menü Base for u
|
Thanks, but I have access to a really really great D3D9 Menu.
And Thanks NikM, ill try some things with your data!
|
|
|
07/08/2013, 21:42
|
#8
|
elite*gold: 10
Join Date: Nov 2009
Posts: 1,929
Received Thanks: 471
|
How I can find adresses? Is there any tutorial here?
|
|
|
07/08/2013, 22:52
|
#9
|
elite*gold: 80
Join Date: Mar 2012
Posts: 404
Received Thanks: 94
|
Quote:
Originally Posted by Son~Goku
How I can find adresses? Is there any tutorial here?
|
CheatEngine, OllyDBG
Tutorials can be found in YT etc. ^^
|
|
|
07/09/2013, 09:14
|
#10
|
elite*gold: 0
Join Date: Sep 2012
Posts: 61
Received Thanks: 7
|
how can I use these codes? What do I gain and how do I enable them?
|
|
|
07/09/2013, 10:05
|
#11
|
elite*gold: 0
Join Date: May 2012
Posts: 263
Received Thanks: 13
|
Don't use them if you have no idee about what's happening here.
|
|
|
All times are GMT +2. The time now is 05:07.
|
|