ตอนนี้ผมต้องการให้ทุกท่านที่เก่งๆ ทั้งหลาย มาช่วยผมเรื่อง Xtrap ของเกม Yulgang หน่อยนะคับ
ตอนนี้ผมต้องการก็คือ Code หรือ lockcode ของโยวกังนะครับ ปัญหาก็คึอ ผม Debug ไม่เปน เลยต้องมาวอนทุกท่านในบอร์ดนี้มาช่วยผมหน่อย
ช่วยตอบด้วยละกันคับ จะเอาไงเด่วมาคุยกันอีกที
ขอบคุณคับ
- ParadizeX Forum
- → ดูโปรไฟล์: กระทู้: MasterOishi
สถิติเว็บบอร์ด
- กลุ่ม Exclusive Programmer
- โพสต์ 10020
- ดูโปรไฟล์ 2915
- ฉายา/ตำแหน่ง Exclusive Member
- อายุ ไม่เปิดเผย
- วันเกิด ไม่เปิดเผย
-
Gender
ไม่เปิดเผย
0
Neutral
เครื่องมือผู้ใช้งาน
กระทู้ที่ฉันเริ่ม
อยากได้ความช่วยเหลือเรื่อง Xtrap Yulgang
19 May 2007 - 10:51:27 PM
เรียนรู้ 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]
Note: Character Server แต่ละเซิฟมี 3 อันเพราะว่า มันจะส่งสุ่ม มา อันไหนสักอันนึงให้เรา Connect
ก็ ไม่มีอะไรทำนะครับ + ต้องการความช่วยเหลือด้วย เลยเอาความรู้ 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
===============================
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 ยังไงพี่ที่รู้ช่วยตอบด้วยละกันครับ
ผมเคยไปถามท่าน 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 ไรให้หาเลย สมุมตจะหาตอนมันคำนวน
ตัวอย่างเช่น
ปันหาคือ จะหายังงัยหว่า มันคำนวนยังงัย...
ง้ะ อิธิบายไม่ค่อยเก่ง ไม่เข้าใจก็บอกด้วยนะครับ....
- ทุกคนอาจจะเห็นผมถามคำถามโง่ๆ บ่อย (หรือไม่โง่หว่า เหอะๆ๗ ก็ขอโทดด้วยนะครับ ความารู้น้อยง้ะ (หรือเยอง้ะ)- -*
ธรรมดาเวลาผมดีบัคเอาพวก การเข้ารหัสไฟล์อะไรก็ (พอได้มั้ง) โดยการ หา Text Strings มาแล้วดูๆ มันไป
แต่คำถามคือว่าผมจะดีบัคการคำนวนมันยังงัยอ่า มันไม่มี Text Reference ไรให้หาเลย สมุมตจะหาตอนมันคำนวน
ตัวอย่างเช่น
ใส่รหัสทั่วไปลงมา
โปรแกรมทำการตรวจสอบ ว่าถูกมั้ย
######### - รหัสถูกต้อง
แล้วใส่รหัสประจำตัวลงไป
#########
คำนวน
#########
ผลออกมาเป็น ChdLf;lsfkgs หรือะไรก็แล้วแต่ โดยการเอารหัสประจำตัวมาคำนวนกับฟังชั่นในโปรแกรม
โปรแกรมทำการตรวจสอบ ว่าถูกมั้ย
######### - รหัสถูกต้อง
แล้วใส่รหัสประจำตัวลงไป
#########
คำนวน
#########
ผลออกมาเป็น ChdLf;lsfkgs หรือะไรก็แล้วแต่ โดยการเอารหัสประจำตัวมาคำนวนกับฟังชั่นในโปรแกรม
ปันหาคือ จะหายังงัยหว่า มันคำนวนยังงัย...
ง้ะ อิธิบายไม่ค่อยเก่ง ไม่เข้าใจก็บอกด้วยนะครับ....
- ทุกคนอาจจะเห็นผมถามคำถามโง่ๆ บ่อย (หรือไม่โง่หว่า เหอะๆ๗ ก็ขอโทดด้วยนะครับ ความารู้น้อยง้ะ (หรือเยอง้ะ)- -*
คำถามโง่ๆ 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 ด้วย
เคยลองรันตัว 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 อีกทีนึง ตอบทีนะคับ
- ParadizeX Forum
- → ดูโปรไฟล์: กระทู้: MasterOishi
- Privacy Policy