Ide for hack 9d-eu

02/22/2010 21:56 lph2003#1
Hi all,
I have done some steps for hack 9d-eu, but still dont get it works, maybe you can finde out at last
1. use hexeditor change ip in 9d-unpack.exe by InstantDeath at 0045f6c8(85.17.144.236) to ex. localhost9deu
2. edit host file to 127.0.0.1 localhost9deu
3. change ip in 9disple to 85.17.144.236
4. run 9disple as admin
5. run wpe pro as admin
6. run 9d-unpack.exe with gg-killer
7. attach 9d to wpe pro and log, i can see that client can get server list(eu) thought 9disple and can login with the right id and password( you can try with wrong password), but problem is:
the fake server(ip: 69.89.80.83) always sends a packet 30 30 30 back to client and dont send the next packet 40 00 00 xx like normal(you can log with wpe when login to another server). I have tried to block that packet with wpe pro, but got error -1
Have you any ide?
why server 85.17.144.236 dont sende next packet 40 00 00 xx ?
02/23/2010 23:47 mardan#2
Ask this Master Mod Saweet... he know everything.. atlest it sounds like :) Cheers


PS: is not Rude... i think ur good saweet...
02/27/2010 07:45 bla-bla-bla#3
Quote:
Originally Posted by mardan View Post
Ask this Master Mod Saweet... he know everything.. atlest it sounds like :) Cheers


PS: is not Rude... i think ur good saweet...
hmm so ironic but true saweet is good at this..

Hmm maybe the client have some thing in and dont allow to send packets....or something
03/03/2010 08:07 C47#4
im totally new to this, but im willing to give it a shot. starting off, i couldnt find the c8 value (rather it was c0 then d0). so i search for the ip directly :P

is this the one to edit? o_0

[Only registered and activated users can see links. Click Here To Register...]
03/03/2010 08:56 lph2003#5
Quote:
Originally Posted by C47 View Post
im totally new to this, but im willing to give it a shot. starting off, i couldnt find the c8 value (rather it was c0 then d0). so i search for the ip directly :P

is this the one to edit? o_0

[Only registered and activated users can see links. Click Here To Register...]

yes, that is it!
03/03/2010 09:30 C47#6
Quote:
Originally Posted by lph2003 View Post
yes, that is it!
thx bud, made the change, ill go home start checking it out. 9Dis givin me .net errors at work :p
03/03/2010 12:39 lph2003#7
Read my first post agian, you have to do alle steps like i have done!
03/03/2010 18:38 C47#8
hehe well, here it is....

tried what you did. and i reach "Logging in..." only. server status etc works fine..

too look deeper how things are working, i redownloaded the VN ninedragons, edited out the IP to local, and it worked with 9Disciple

which means... it aint that simple.

@saweet
i wonder what ip this is for 210.201.10.194 - which is located in taiwan...

moving to ports...there are
50001
48300
25017 (addressed to a alive check ip?)
for 9d vn

but for acclaim there is
50001
48300
25001

acclaims user/pass server is 69.89.80.83...in america
vinagames user/pass server is 118 something.. in vn

if u compare the packet sent to these ip between the two different versions, you see they are structured differently and i guess 9Disciple just doesnt send the packet in the right form to the US version

which means that editing should be done to 9Disciples too... for the other server and that is not as easy to find as the other server ip... even if it is changed... its the content of the packet which differs from VN to US

these are my initial thoughts....

did u manage to reach the character screen Iph2003 in acclaim? o_O
03/03/2010 19:22 lph2003#9
not yet, i try to make a methods PacketTunnel thought ip 69.89.80.83 port 8221 but cant make it thought, here is my code, i need a pro to help me out

namespace firefox.Server
{
using firefox.Network;
using HND.Properties;
using System;
using System.Collections;
using System.Net;
using System.Net.Sockets;
using System.Threading;

public class Autho
{
private ArrayList clients = new ArrayList();
private TcpListener myAuthoServer;
private bool running = true;
private Thread thread;

public Autho()
{
this.thread = new Thread(new ThreadStart(this.Listener));
this.thread.IsBackground = true;
this.thread.Start();
}

private void Listener()
{
this.myAuthoServer = new TcpListener(IPAddress.Any, Settings.Default.AuthoPort);
this.myAuthoServer.Start();
while (this.running)
{
PacketTunnel p;
Thread.Sleep(0x7d0);
// using (IEnumerator enumerator = this.clients.GetEnumerator())
{
IEnumerator enumerator = this.clients.GetEnumerator();
while (enumerator.MoveNext())
{
p = (PacketTunnel) enumerator.Current;
p.Close();
}
}
this.clients.Clear();
TcpClient client = this.myAuthoServer.AcceptTcpClient();
if (this.clients != null)
{
p = new PacketTunnel(client, Settings.Default.AuthoServerIP, Settings.Default.AuthoPort);
this.clients.Add(p);
p.Start();
}
}
this.myAuthoServer.Stop();
}

public void Stop()
{
this.running = false;
this.thread.Abort();
this.myAuthoServer.Stop();
foreach (PacketTunnel p in this.clients)
{
p.Close();
}
this.clients.Clear();
}

public bool Running
{
get
{
return this.running;
}
set
{
this.running = value;
}
}
}
}
03/03/2010 19:39 saweet#10
Quote:
Originally Posted by lph2003 View Post
not yet, i try to make a methods PacketTunnel thought ip 69.89.80.83 port 8221 but cant make it thought, here is my code, i need a pro to help me out
Code:
        private void Listener()
        {
            this.myAuthoServer = new TcpListener(IPAddress.Any, Settings.Default.AuthoPort);
            this.myAuthoServer.Start();
            while (this.running)
            {
                PacketTunnel p;
                Thread.Sleep(0x7d0);
 //               using (IEnumerator enumerator = this.clients.GetEnumerator())
                {
                    IEnumerator enumerator = this.clients.GetEnumerator();
                    while (enumerator.MoveNext())
                    {
                        p = (PacketTunnel) enumerator.Current;
                        p.Close();
                    }
                }
                this.clients.Clear();
                TcpClient client = this.myAuthoServer.AcceptTcpClient();
                if (this.clients != null)
                {
                    p = new PacketTunnel(client, Settings.Default.AuthoServerIP, Settings.Default.AuthoPort);
                    this.clients.Add(p);
                    p.Start();
                }
            }
            this.myAuthoServer.Stop();
        }
Try something like this:
Code:
        private void Listener()
        {
            this.myAuthoServer  = new TcpListener(IPAddress.Any, Settings.Default.AuthoPort);
            this.myAuthoServer.Start();
            while (this.running)
            {
                Thread.Sleep(2000);
                this.clients.Clear();
                TcpClient client = this.myAuthoServer.AcceptTcpClient();
                if (client != null)
                {
                    PacketTunnel tunnel = new PacketTunnel(client, Settings.Default.AuthoServerIP, Settings.Default.AuthoPort);
                    tunnel.SetEventHandlers(new OnServer(this.OnServer), new OnClient(this.OnClient), new OnError(this.OnError));
                    this.clients.Add(tunnel);
                    tunnel.Start();
                }
            }
            this.myAuthoServer.Stop();
        }
It is structured slightly different, but most importantly you're missing event handlers
03/03/2010 20:22 C47#11
haha to think we need to go this deep for a pixelated game :D

gotta go learn meself some .net :P

edit : ill try to learn whats going on ^.^ (seems like some server port fetching)