Re: Where are the 2008 servers?
Quote:
Originally Posted by
00niels00
I'm currently developing with 2008 files.
But it's hard because of those adress changes and such.
Im not even able to get a gravity dll to work :/
Also the difference between 2007 and 2008 is small, just a few modifications.
But I will probaly use 2008 files trough.
Same for me.
@KillerStefan
I'm glad you released the files, 2007 is much easy'er te develop I think that's the reason^^
Re: Where are the 2008 servers?
Quote:
Originally Posted by
00niels00
I'm currently developing with 2008 files.
But it's hard because of those adress changes and such.
Im not even able to get a gravity dll to work :/
Also the difference between 2007 and 2008 is small, just a few modifications.
But I will probaly use 2008 files trough.
They are the easier has 2007 files to develop...
They changed a little but not that much...
Should take me around 1min to get the gravity const address
1 Attachment(s)
Re: Where are the 2008 servers?
Low Gravity Source for 2008 Files:
Code:
#include <windows.h>
#include <stdio.h>
#include <string>
using namespace std;
// (GunZ) The Duel addresses for "Jul 21 2008 11:27:35".
#define ROOMNAME 0x005096D0
#define ROOMNAMECALL 0x0045B7AB
#define ROOMNAMERETN 0x0045B7B0
#define GRAVITY 0x0048106E
#define GRAVITYRETN 0x00481074
// Initialize start.
unsigned long ulOldProtect;
bool GravityBool = false;
char *AsmRoomName = "Default RoomName";
float NormalGravityValue = 1.0;
float LowGravityValue = 0.25;
// Initialize end.
// Edit memory jump to this dll. start.
void CopyBuffer(BYTE *Buffer, int Size, DWORD *Address) {
DWORD pPrevious = 0;
VirtualProtect(Address, Size, PAGE_EXECUTE_READWRITE, &pPrevious);
memcpy(Address, Buffer, Size);
VirtualProtect(Address, Size, pPrevious, &pPrevious);
}
void SetupHook(DWORD Function, DWORD Hook, int Size) {
Hook = Hook - Function - 5;
BYTE bHook[4];
memcpy(bHook,(void*)&Hook,4);
BYTE Buffer[10];
memset(Buffer,0x90,10);
Buffer[0] = 0xE9;
Buffer[1] = bHook[0];
Buffer[2] = bHook[1];
Buffer[3] = bHook[2];
Buffer[4] = bHook[3];
CopyBuffer(Buffer, Size, (DWORD*)Function);
}
// Edit memory jump to this dll. end.
// Assembler start.
__declspec(naked) void RoomName() {
// Get the room name.
_asm {
mov AsmRoomName, edi
mov eax, ROOMNAME
call eax
mov ecx, ROOMNAMERETN
jmp ecx
}
}
__declspec(naked) void Gravity() {
// Low gravity.
if(GravityBool == false) {
_asm {
fld NormalGravityValue
}
}
else {
_asm {
fld LowGravityValue
}
}
_asm {
mov eax, GRAVITYRETN
jmp eax
}
}
// Assembler end.
void MemoryEdit() {
// Setup for get the room name.
SetupHook((DWORD)ROOMNAMECALL, (DWORD)RoomName, 5);
// Setup for low gravity.
SetupHook((DWORD)GRAVITY, (DWORD)Gravity, 6);
}
// Room name check loop start.
void MainLoop() {
while(1) {
string name = AsmRoomName;
if(name.find("[G]") != string::npos) {
GravityBool = true;
}
if(name.find("[G]") == string::npos) {
GravityBool = false;
}
Sleep(1000);
}
}
// Room name check loop end.
// Dll main. start.
void main() {
MemoryEdit();
MainLoop();
}
// Dll main. end.
#define ThreadMake(x) CreateThread(NULL,NULL,(LPTHREAD_START_ROUTINE)&x,NULL,NULL,NULL); //Makes creating thread ez just 1 param
extern "C" //DLL Hook
{
__declspec(dllexport) BOOL __stdcall DllMain(HINSTANCE hInst,DWORD reason,LPVOID lpv)
{
if (reason == DLL_PROCESS_ATTACH)
{
DisableThreadLibraryCalls(hInst);
CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)&main,NULL,0,NULL);
//the L before the messages is just to tell MSVS that those are LPCTSTR characters.
}
return true;
}
}
Compiled DLL below.
Credits to GUNZ2830 for both.
Download:
Re: Where are the 2008 servers?
Quote:
Originally Posted by
phoenix_147
Low Gravity Source for 2008 Files:
Code:
#include <windows.h>
#include <stdio.h>
#include <string>
using namespace std;
// (GunZ) The Duel addresses for "Jul 21 2008 11:27:35".
#define ROOMNAME 0x005096D0
#define ROOMNAMECALL 0x0045B7AB
#define ROOMNAMERETN 0x0045B7B0
#define GRAVITY 0x0048106E
#define GRAVITYRETN 0x00481074
// Initialize start.
unsigned long ulOldProtect;
bool GravityBool = false;
char *AsmRoomName = "Default RoomName";
float NormalGravityValue = 1.0;
float LowGravityValue = 0.25;
// Initialize end.
// Edit memory jump to this dll. start.
void CopyBuffer(BYTE *Buffer, int Size, DWORD *Address) {
DWORD pPrevious = 0;
VirtualProtect(Address, Size, PAGE_EXECUTE_READWRITE, &pPrevious);
memcpy(Address, Buffer, Size);
VirtualProtect(Address, Size, pPrevious, &pPrevious);
}
void SetupHook(DWORD Function, DWORD Hook, int Size) {
Hook = Hook - Function - 5;
BYTE bHook[4];
memcpy(bHook,(void*)&Hook,4);
BYTE Buffer[10];
memset(Buffer,0x90,10);
Buffer[0] = 0xE9;
Buffer[1] = bHook[0];
Buffer[2] = bHook[1];
Buffer[3] = bHook[2];
Buffer[4] = bHook[3];
CopyBuffer(Buffer, Size, (DWORD*)Function);
}
// Edit memory jump to this dll. end.
// Assembler start.
__declspec(naked) void RoomName() {
// Get the room name.
_asm {
mov AsmRoomName, edi
mov eax, ROOMNAME
call eax
mov ecx, ROOMNAMERETN
jmp ecx
}
}
__declspec(naked) void Gravity() {
// Low gravity.
if(GravityBool == false) {
_asm {
fld NormalGravityValue
}
}
else {
_asm {
fld LowGravityValue
}
}
_asm {
mov eax, GRAVITYRETN
jmp eax
}
}
// Assembler end.
void MemoryEdit() {
// Setup for get the room name.
SetupHook((DWORD)ROOMNAMECALL, (DWORD)RoomName, 5);
// Setup for low gravity.
SetupHook((DWORD)GRAVITY, (DWORD)Gravity, 6);
}
// Room name check loop start.
void MainLoop() {
while(1) {
string name = AsmRoomName;
if(name.find("[G]") != string::npos) {
GravityBool = true;
}
if(name.find("[G]") == string::npos) {
GravityBool = false;
}
Sleep(1000);
}
}
// Room name check loop end.
// Dll main. start.
void main() {
MemoryEdit();
MainLoop();
}
// Dll main. end.
#define ThreadMake(x) CreateThread(NULL,NULL,(LPTHREAD_START_ROUTINE)&x,NULL,NULL,NULL); //Makes creating thread ez just 1 param
extern "C" //DLL Hook
{
__declspec(dllexport) BOOL __stdcall DllMain(HINSTANCE hInst,DWORD reason,LPVOID lpv)
{
if (reason == DLL_PROCESS_ATTACH)
{
DisableThreadLibraryCalls(hInst);
CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)&main,NULL,0,NULL);
//the L before the messages is just to tell MSVS that those are LPCTSTR characters.
}
return true;
}
}
Compiled DLL below.
Credits to GUNZ2830 for both.
Download:
I gave you that. >_>
Re: Where are the 2008 servers?
I thought GUNZ2830 included it with his dll. Thanks.