|
|
Article
บทความอันเป็นประโยชน์รวมไว้ที่นี่ครับ |
 |
 |
พื้นฐานเกี่ยวกับการเก็บค่าตัวเลข
โดยปกติแล้วค่าทุกอย่างที่เราเห็นในเกมไม่ว่าจะเป็นหลอดพลังงาน
ชนิดของไอเทม หรือ ค่าพลังต่างๆ
ล้วนถูกเก็บอยู่ในลักษณะตัวเลขทั้งหมด
ดังนั้นหากเราสามารถทราบตำแหน่งของหน่วยความจำที่ใช้เก็บค่านั้นๆแล้ว
ก็สามารถแก้ไขค่าดังกล่าวได้ตามความต้องการ
ค่าที่นิยมทำการแก้ไข
ส่วนมากจะเป็นค่าตัวเลขที่เห็นเด่นชัดเช่น HP MP EXP GOLD
ซึ่งหลายๆคนน่าจะเคยแก้ด้วยตัวเองมาบ้างแล้ว
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ตัวอย่าง1. Hp

1. จากภาพผมใช้อีมู VirtuaNES หลังจากนี้จะเรียกย่อว่า VN
เปิดรอมเกมไฟนอล3 ขึ้นมา และเปิดโปรแกรม Memory Doctor
ซึ่งหลังจากนี้จะเรียกย่อว่า MD
เมื่อเปิดโปรแกรม MD
ขึ้นมาแล้วให้คลิ๊กที่ Select Process แล้วเลือกที่อีมู VN
เพื่อให้โปรแกรม MD
จับการทำงานของอีมู VN
โดยที่ผมจะทำการแก้ค่าพลังของตัวละครที่สองที่ชื่อว่าเซซิล
ซึ่งปัจจุบันมีค่าพลัง 32 หน่วย
ผมก็จะทำการหาค่า 32 ใน โปรแกรมMD โดยกดที่ First Search
คือค่าแรกที่เราต้องกรอกเพื่อจะเป็นตัวตั้งต้นในการค้นหาตำแหน่งที่เก็บค่าพลังของตัวละครที่สอง
ในช่อง Value ให้กรอก 32 ลงไปนะครับ ส่วนอื่นๆไม่ต้องสนใจ Auto
อย่างเดียว
ผลการค้นหาดูจากในภาพจะพบว่า โปรแกรมค้นพบตำแหน่งที่เก็บค่าเป็นเลข32อยู่ถึง
897558 เลยทีเดียว
ซึ่งตำแหน่งที่เก็บมีจำนวนกว้างมากทำให้เรายังไม่สามารถระบุค่าที่เก็บพลังได้ชัดเจน
ให้เราดำเนินเกมไปจนตัวละครที่ 2
มีค่าพลังที่เปลี่ยนไป

2. จากภาพ ผมได้เล่นไปจนตัวละครที่2 พลังเปลี่ยนจาก 32 เป็น 18 แล้ว
ดังนั้นให้กด Next Search
เพื่อทำการหาค่าต่อจากตำแหน่งที่หามาได้ครั้งแรก ให้กรอก 18 ลงไป
แล้วกด OK
ผลการค้นหาปรากฎว่า ตำแหน่งที่เคยเก็บค่า 32 แล้วเปลี่ยนค่าเป็น 18
นั้นมีอยู่เพียงสองตำแหน่ง
แบบนี้แสดงว่าไม่ตำแหน่งใดก็ตำแหน่งหนึ่งในสองตำแหน่งนี้เป็นที่เก็บค่าพลังของตัวละครที่
2

ให้ทำซ้ำขั้นตอนที่2อีกครั้ง
คราวนี้น่าจะเหลือค่าเพียงตำแหน่งเดียวซึ่งเราสามารถระบุได้แน่นอนแล้วว่าตำแหน่งดังกล่าวเป็นที่เก็บค่าพลังของตัวละครที่2
ผมลองแก้เป็นเลข 230 ดู พอกลับเข้าเกมก็พบว่าตัวละครที่2 มีพลัง 230
แล้ว ดังนั้นการแก้ไขจึงสำเร็จ
- การค้นหาข้อมูลที่มีขนาดของข้อมูลไม่เกิน 255 จะถูกเลือกเป็น 1
byte โดยอัตโนมัติ
ซึ่ง 1 Byte จะเก็บค่าได้ไม่เกิน 0-255 และ ที่ 2 byte
จะเก็บได้ไม่เกิน 256-65535 และที่ 4 Byte จะเก็บได้ตั้งแต่ 65536
ขึ้นไป จนถึงซักอย่างจำไม่ได้

ดังนั้นถ้าเราจะแก้ไขตัวเลขที่เกินกว่า byte สูงสุดให้กด Add Address
ใหม่โดยพิมพ์ตำแหน่งเดิม แต่กำหนดหน่วยใหม่เป็น 2 หรือ 4 byte
ตามค่าที่ต้องการครับ
- ปุ่ม Freeze
ในโปรแกรมเป็นการกำหนดให้ตำแหน่งนั้นๆคงค่าที่เราเลือกไว้ตลอดเวลา
เช่นหากกรอกตำแหน่งที่เก็บค่าพลังไว้99แล้วfreezeไว้
เมื่อถูกศัตรูโจมตีไม่ว่าค่าพลังจะลดไปเท่าไหร่ก็ตาม
ค่าพลังที่เหลืออยู่ก็จะเป็น 99 ตามที่เราได้เลือกไว้เสมอ
- ในโปรแกรมอื่นๆ อาจใช้ลักษณะหน้ายิ้มหรือ
ติ๊กถูกก็มีผลเช่นเดียวกัน
- เทคนิคนี้สามารถนำไปใช้กับเงินหรือ mp exp status หรือ
อะไรก็ตามที่สามาถเห็นเป็นตัวเลขเด่นชัดได้ทั้งหมด
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ตัวอย่าง2. Exp

ที่หน้าจอหลังจากการต่อสู้จบลง เมื่อมีการแสดงค่า Exp ที่ได้
ให่เราหาค่านั้นๆในโปรแกรม MD ซึ่งจากภาพคือ 13 ผลการค้นหามีจำนวนมาก
ก็ให้เราไปสู้กับศัตรูกลุ่มใหม่แล้วทำซ้ำอีกครั้งจนเหลือค่าเดียว

จากภาพ หลังจากหาตำแหน่งที่เก็บค่า exp ที่ได้หลังจากต่อสู้พบแล้ว
ผมลองแก้เป็น 255 ดู
พบว่าหลังจากชนะก็ได้ประสบการณ์ตามค่าที่เรากรอกไว้

ครั้งต่อจะมาต่อให้สำหรับวิธีการแฮกเพิ่มจำนวนไอเทมกับวิธีเรียกไอเทมที่ต้องการออกมาครับ
 |
|
 |
|
|
|