ไปที่เนื้อหา


MasterOishi

เป็นสมาชิกตั้งแต่ 23 Dec 2006
ออฟไลน์ ใช้งานล่าสุด Jun 21 2007 10:43 PM
-----

กระทู้ที่ฉันเริ่ม

อยากได้ความช่วยเหลือเรื่อง Xtrap Yulgang

19 May 2007 - 10:51:27 PM

ตอนนี้ผมต้องการให้ทุกท่านที่เก่งๆ ทั้งหลาย มาช่วยผมเรื่อง Xtrap ของเกม Yulgang หน่อยนะคับ

ตอนนี้ผมต้องการก็คือ Code หรือ lockcode ของโยวกังนะครับ ปัญหาก็คึอ ผม Debug ไม่เปน เลยต้องมาวอนทุกท่านในบอร์ดนี้มาช่วยผมหน่อย

ช่วยตอบด้วยละกันคับ จะเอาไงเด่วมาคุยกันอีกที

ขอบคุณคับ

เรียนรู้ Packet เกม DarkStory

04 May 2007 - 08:46:01 AM

1. Introduction

ก็ ไม่มีอะไรทำนะครับ + ต้องการความช่วยเหลือด้วย เลยเอาความรู้ Packet มาให้กัน...

' = = = *************

คนที่เริ่มใหม่ๆ ให้อ่านกระทู้ของท่าน XCrosS ก่อนละกันนะครับ

[ http://www.maplehack...opic.php?t=5616 ]

2. รูปแบบของ Packet เกมนี้เปนยังไง??

Packet ของเกมนี้ รูปแบบเหมือนเกมทั่วๆ ไปแหละครับ แต่จะ No Header & Footer หรือเป็นผีหัวขาดครับ และที่สำคัญ ไม่เข้ารหัสอะไรเลย ^ ^[2.1 Header คืออะไร?] [2.2 Footer คืออะไร?]

รูปแบบก็จะเป็น:

<<SIZE>> <<DATA>>

แค่นี้แหละ!

2.1 Header คืออะไร?

Header ก็คือ หัวของ Packet ที่มีขนาด 2 Bytes ครับ ตามชื่อภาษาอังกฤษ

2.2 Footer คืออะไร?

Footer ก็คือ ท้ายของ Packet (หรือว่าเท้า (ผมเรียกว่า ***)) ที่มีขนาด 2 Bytes ครับ ตามชื่อ ภาษาอังกฤษเช่นกัน

3. เจาะลึกกับ Format ของ Packet

SIZE??
DATA??

SIZE คือ ตัวเลข ที่บอก ความยาวของ ข้อมูลใน packet เพื่อ ที่จะได้รู้ ว่า จะต้อง เก็บข้อมูลจาก packet นั้น ๆ ก็ bytes ส่วน ขนาด ก็ 2 BYTES

DATA คือ ข้อมูลที่ต่อท้ายเข้ามายัง packet เพื่อใช้ เป็น ข่าวสาร แลกเปลี่ยน ระหว่าง SERVER กะ ตัว เกมส์ CLIENT

ตัวอย่าง Packet

[08 00] [05 00 07 46 CC CC CC CC]

จะเห็นได้ว่า:

ความยาว คือ 08 00 หรือถ้าแปลงเป็น Decimal ก็จะได้ 8
ข้อมูล ก็คือ (05 00 07 46 CC CC CC CC)

รุ้แค่นี้ก็ถือว่ารุ้จักเรื่อง Packet ไปนิดนึงแล้วละกัน (เพราะเรื่องพื้นฐานพวกนี้ ใน กระทู้ที่ผมเขียนมีอธิบายเยอะกว่านี้ครับ)

[ http://board.thaicom...pic.php?t=41923 ]

4. IP & Port ของ เกม DarkStory

รายการ IP และ Port ของเกม DarkStory Online [Thai]

Login Server
===============================
SERVER 1
61.47.6.132:16400

SERVER 2 (PK)
61.47.6.135:16400

SERVER 3
61.47.6.138:16400


Character Server
===============================
SERVER 1
61.47.6.132:16600
61.47.6.133:16600
61.47.6.134:16600

SERVER 2 (PK)
61.47.6.135:16601
61.47.6.136:16601
61.47.6.137:16601

SERVER 3
61.47.6.138:16602
61.47.6.139:16602
61.47.6.140:16602


Note: Character Server แต่ละเซิฟมี 3 อันเพราะว่า มันจะส่งสุ่ม มา อันไหนสักอันนึงให้เรา Connect

การถอดรหัสไฟล์ (เช่น. Map, Data)

02 April 2007 - 09:51:45 PM

ผมรู้แล้วหล่ะครับ ว่ามาจากการ Debug ตัวเกม แต่ Debug ได้ Code มาให้ทำอะไรต่อ??

ผมเคยไปถามท่าน vittee ที่ เว็อบบอร์ด YGO ของเค้าทีนึงมาแล้ว เค้าบอกวิธีการหา code มาให้ผม ซึ่งช่วยผมได้เยอะมากเลย

พี่ Vittee เค้าบอกมาว่าให้ Search หา Referenced String ที่มันเกี่ยวกับไฟลืให้มากที่สุดเช่น นามสกุล/ชื่อ ของไฟล์....


คำถามก็คือ... ได้ Code มาแล้วไม่รู้จะทำยังไงดี T_T ยังไงพี่ที่รู้ช่วยตอบด้วยละกันครับ

ขอถามเรื่อง Debug ตัวเกม หรือโปรแกรม หน่อยครับ

10 February 2007 - 01:01:34 PM

ผมพอจะเป็น พื้นๆ เรื่อง Debug โปรแกรมหรือเกมหนะครับ พอจะ crack โปรแกรมง่ายๆได้... ตั้งแต่ที่เริ่มเขียนโปรแกรมมายังไม่ได้ลอง Debug ดูเลยครับ เขียนโปรแกรมธรรมดาเป็นอย่างเดียว พอจะเป็นพวก VB , Delphi...

ธรรมดาเวลาผมดีบัคเอาพวก การเข้ารหัสไฟล์อะไรก็ (พอได้มั้ง) โดยการ หา Text Strings มาแล้วดูๆ มันไป

แต่คำถามคือว่าผมจะดีบัคการคำนวนมันยังงัยอ่า มันไม่มี Text Reference ไรให้หาเลย สมุมตจะหาตอนมันคำนวน

ตัวอย่างเช่น

ใส่รหัสทั่วไปลงมา
โปรแกรมทำการตรวจสอบ ว่าถูกมั้ย
######### - รหัสถูกต้อง
แล้วใส่รหัสประจำตัวลงไป
#########
คำนวน
#########
ผลออกมาเป็น ChdLf;lsfkgs หรือะไรก็แล้วแต่ โดยการเอารหัสประจำตัวมาคำนวนกับฟังชั่นในโปรแกรม


ปันหาคือ จะหายังงัยหว่า มันคำนวนยังงัย... unsure.gif

ง้ะ อิธิบายไม่ค่อยเก่ง ไม่เข้าใจก็บอกด้วยนะครับ....

- ทุกคนอาจจะเห็นผมถามคำถามโง่ๆ บ่อย (หรือไม่โง่หว่า เหอะๆ๗ ก็ขอโทดด้วยนะครับ ความารู้น้อยง้ะ (หรือเยอง้ะ)- -*

คำถามโง่ๆ Again

26 December 2006 - 03:05:39 PM

ผมขอแนะนำนะครับ ว่า มีหนทางที่อาจจะสะดวกกว่าการทำ winsock hooking เสียอีกครับ

เคยลองรันตัว THaiClient.exe โดยไม่ผ่าน launcher มั๊ยครับ มันจะเกิดอาการ Login ไม่ได้ (นิ่งไปเลย) นั่นก็แปลว่า launcher จะต้องส่งค่าอะไรสักอย่างมาให้ THaiClient.exe

ผมก็ลองดูแล้วนะครับ มันส่งเลข IP กับ Port ของ Login server มาให้

แบบนี้ก็สวยเลยครับ ทำ Proxy ซะเลย โดยเราก็ทำโปรแกรมขึ้นมาตัวนึง โดยโปรแกรมตัวนี้จะเข้าไปคั่นกลาง ระหว่าง launcher กับ THaiClient.exe

จากปกติ

launcher -> THaiClient.exe

เป็น

launcher -> {โปรแกรมของเรา} -> Old_THaiClient.exe

นั่นแปลว่า เราจะต้อง Rename THaiClient.exe ของเดิมไปเป็นชื่ออื่น แล้ว rename โปรแกรมที่เราเขียนขึ้นมาให้เป็น THaiClient.exe ซะ

แล้วโปรแกรมของเราจะทำอะไรบ้าง?

1. รับค่า Argument ที่ launcher ส่งให้มาเก็บไว้
2. ทำการ Listen ที่ port ที่เราต้องการ
3. Execute ThaiClient ตัวเดิม แต่ส่ง argument ใหม่ให้มัน โดยส่งเป็น IP ของเรา และ port ที่โปรแกรมเราได้ Listen รอไว้

ทีนี้เมื่อ client เกมทำงาน ก็จะเป็นการ connect เข้ามาหาโปรแกรมเราแทน เราก็จัดการ connect ต่อไปยัง Ip/Port จริงที่เราได้เก็บไว้
จากนั้นก็ทำการ bypass data ระหว่างกันได้ตามปกติ

ทีนี้ ระหว่างที่ข้อมูลวิ่งเข้าวิ่งออก เราก็สามารถเอาข้อมูลมาดูได้สดๆเลยครับ ไม่ต้องใช้ WPE คอยจับ แล้วต้องมา stop ทีหลังอีกต่อไป

วิธีนี้ผมเคยทำสำเร็จมาแล้วกับเกม O2Jam นะครับ ได้ข้อมูลเยอะแยะมากมาย จนผมทำ Server เล่นเองได้เลย

ลองดูนะครับ ผมว่าง่ายกว่า winsock hooking เยอะ

ป.ล. ถ้าจะทำ X Mode อันนี้คงเรื่องยาวละครับ เพราะต้องทำ DLL Injection ด้วย


Credit คุณ vitee

เอ่อ คือยากถามหน่อยครับ ว่า โปรแกรมของเรา เนี่ย มันคือโปรแกรมอะไรคับ ต้องทำอะไรยังงัย บอทหรอคับ หรือโปรแกรมที่ไช้เปิด ThaiClient.exe อีกทีนึง ตอบทีนะคับ