Would you like to react to this message? Create an account in a few clicks or log in to continue.

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง

Go down

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Empty หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง

Post by administrator 24/8/2010, 02:56

Crazy4Script "โปรแกรมเขียนสคริ๊ปง่ายแค่ปลายนี้ว"

คือ โปรแกรมทึ่จะช่วยให้คุณได้เขียน Script
ได้ง่ายขึ้น ไม่ว่าจะควบคุมคีย์บอร์ด หรือ ควบคุมเมาส์ เพียงแค่คุณ Click เพียงไม่กี่ Click ก็จะได้ Script ที่คุณต้องการ โปรแกรมนี้จัดทำขี้นเพื่อลดความยุ่งยากในการเขียน Script บ้างท่านเขียนได้ก็ OK แต่มีอีกหลายๆ ท่านที่ยังไม่เข้าใจคำสั่ง (หรืออ่านไม่เข้าใจก็ไม่รู้น๊อ) สาวๆ หลายท่านคงสบายขึ้น ได้ปรับเปลี่ยน Script กันให้มันส์ระเบิด มาดูหน้าตาโปรแกรมกันครับ

1. Download Program Crazy4Script Last Version ได้จากด้านล่างนะครับ
2. หลังจากที่ท่าน Download ไปแล้วให้แตกไฟล์ลงที่ไดว์ไหนก็ได้ (ตามแต่รักแต่ชอบครับ)
3. ไฟล์ที่แตกออกมาแล้วจะมีด้วยกัน 2 ไฟล์ คือ 1. Crazy4Script v1.2.4.exe 2. Serial Number Harddisk.txt
3.1 ไฟล์ Crazy4Script v1.2.4.exe ทำหน้าที่เป็นผู้ช่วยเขียน Script ครับ
3.2 ไฟล์ Serial Number Harddisk.txt ทำหน้าทีในการเก็บเลขลงทะเบียนโปรแกรม Crazy4bot
หมายเหตุ : เลขที่จะใส่ในไฟล์ Serial Number Harddisk.txt มาจาก เลข S/N Harddisk ดูได้จากโปรแกรมเลยครับ แล้วโทรมาลงทะเบียน หรือจะลงทะเบียนผ่านหน้าเว็ปก้ได้ครับ
4. หากเรายังไมได้ลงทะเบียนเมื่อเปิดโปรแกรมจะขึนข้อความเดือน ดังรูปด้านล่าง

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Screenhunter_05sep.2707.58

5. ก็ให้กดตงลงไปก็จะขึ้นหน้าต่าง Login ดังรูปด้านล่าง

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Screenhunter_06sep.2707.58

6. จะสังเกตุได้ว่า ปุ่ม Login ยังไม่ Active จะกดได้แค่ปุ่ม Donate หรือ Exit ลงกดเข้าไปในปุ่ม Donate ก็จะขึ้น ดังรูปด้านล่าง

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Screenhunter_09sep.2707.59

7.หากต้องการลงทะเบียน ก็ให้กรอกข้อมูลให้ครบถ้วนแล้วกดปุ่ม Copy แล้วตามด้วยปุ่ม PM (ก่อนกดปุ่ม PM อย่าลืม Login ที่เว็ปบอร์ดก่อนนะครับ) หลังจากกดปุ่ม PM แล้วจะเด้งเข้าที่เว็ปในส่วน PM หา Administrator ให้เลย ก็ให้ตั้งหัวข้อว่า "สั่งซื้อโปรแกรม Crazy4Script" แล้วทำการ Pate วางข้อความที่ได้ Copy มา กด Send
หมายเหตุ : ก่อนจะกรอบข้อมูลลงทะเบียนต้องโอนเงินค่าโปรแกรมมาก่อนนะครับ ระบบจะถาม วัน เวลา จำนวนที่โอน

8.กดปิดหน้า Donate ไปแล้วลองมาดูหน้า Login กันอีกที จะมี Username กับ Password ส่วนนี้ไม่ต้องสนใจนะครับ เป็นเมนูที่ผมสร้างเอาไว้ใช้ในกรณีฉุกเฉิน (เฉพาะ Administrator กับทีมงานเท่านั้น) หากใครดื้นกดไปก็จะเจอกับข้ำความ ดังถามด้านล่าง

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Screenhunter_07sep.2707.58

9. ส่วนนี้เป็นส่วนในการ Gen เลขให้ลูกค้าทุกท่าน (ให้ดูเฉยๆ ><") ดังภาพด้านล่าง

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Screenhunter_08sep.2707.58

10.หลังจากที่ท่านได้ลงทะเบียนเรียบร้อยแล้ว แล้วได้นำไฟล์ใส่ไว้ใน Serial Number Harddisk.txt เรียบร้อยแล้ว หลังจากเปิดโปรแกรมขึ้นมาก็จะเป็นปุ่ม Login เป็นสีดำแล้ว Active พร้อมให้ท่านกด ดังรูปด้านล่าง

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Screenhunter_14sep.2708.34

11. ให้ท่านกดที่ปุ่ม Login ได้เลยก็จะเข้าสู้หน้าต่างการเขียน Script ดังรูปด้านล่าง

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Screenhunter_10sep.2707.59

12. หากต้องการเปลี่ยนภาษาก็ให้กดที่ Menu ด้านบนที่คำว่า Language จะมีให้เลือกอยู่ 2 ภาษา ดังรูปด้านล่าง

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Screenhunter_11sep.2707.59

13. อีกปุ่มที่จะขาดไม่ได้คือปุ่ม About ดังรูปด้านล่าง

หลักการทำงาน, รูปแบบคำสั่ง, Script ตัวอย่าง Screenhunter_13sep.2708.00

ปล.หากลูกค้าท่านใดที่ซื้อไปแล้ว อยากให้เพิ่มเติมส่วนไหน ลงเสนอแนะเข้ามาได้ในกระทู้นี้นะครับ หากไม่เกินความสามารถจะเพิ่มเติมเข้าไปให้นะครับ

------------------------------------------------------------------------------------------

Avatar MacroKey
คือ USB Keyboard and Mouse Emulator ที่จะสามารถจำลอง Keyboard และ Mouse ได้ในเวลาเดียวกัน อีกทั้งยังสามารถที่จะกำหนด หรือสร้าง Macro Script ให้ทำงานตามต้องการได้โดยกำหนด Script ผ่านโปรแกรม "Avatar_setup.exe" (ซึ่งบรรจุมาใน Package)

ความสามารถคร่าวๆ ของ Avatar MacroKey

  • สามารถกำหนดค่าให้ปุ่มใด เป็นได้ทั้ง Keyboard หรือ Mouse อย่างอิสระ
  • สามารถใส่ค่า Delay ได้
  • กำหนดปุ่มให้แต่ละปุ่มทำงานร่วมกัน (Macro) ได้
  • สามารถจำลองการกดปุ่มค้างได้ รวมไปถึงปุ่มพิเศษ เช่น จำลองการกด Shift ค้าง หรือ Alt ค้าง เป็นต้น
  • สามารถกำหนดตำแหน่ง Mouse ให้ไปตำแหน่งใดๆ ก็ได้
Avatar MacroKey 1 ชุดประกอบไปด้วย "Update 23/03/2554"

  1. Avatar Board เป็น Board หลักมีสมองกลที่จะคอยจำลองการทำงานเป็น Mouse และ Keyboard
  2. Avatar Keypad เป็น แผงปุ่มกด ใช้กดเพื่อสั่งการ
  3. Avatar Uploader เป็น Board ที่ใช้ส่งข้อมูลไปเก็บไว้ที่ตัว Avatar Board ผ่าน Serial ระดับ TTL
  4. ซึ่งข้อ 1-3 ได้จัดทำเป็น V2 ออกมาแล้วรวม 3 ส่วนเข้าด้วยกัน
  5. Avatar CD & Wire เป็น CD คู่มือ
  6. สาย USB 2 เส้น
การเชื่อมต่อกับคอมพิวเตอร์

Uploader (หัวขวา)
1. คุณจะต้องเสียบ Avatar Uploader เข้าที่ Port USB ด้านหลัง Main Board เท่านั้น ห้าม!! เสียบผ่าน USB Hub จะทำให้ไฟไม่พอ (แต่หากใช่ Notebook เสียบ Port ไหนก็ได้ครับ)
2. สาย Upload จริงๆ แล้วใช้สองเส้นคือ Rx, Tx ต้องไปเสียบที่ Avatar Macrokey ด้วย

Avatar (หัวซ้าย)

1. สายจากหัว Avatar อันนี้จะเสียบผ่าน USB Hub ก็ไม่ว่ากัน (เวลาใช้งานจริงจะเสียบเพียงแค่หัวซ้ายหัวเดียวเท่านั้นนะครับ) แต่ต้องอัพ Script เข้าไปก่อน

การเขียน Script MacroKey

โปรแกรม Avatar จะเป็นโปรแกรมที่ใช้สำหรับโหลดข้อมูลของ Script ไปเก็บที่ Avatar Board ผ่าน Avatar Uploader โดยคุณสามารถเขียน Script จาก Editor ของโปรแกรมได้ทันที

หมวดคำสั่งต่างๆ ของ Avatar จะมีอยู่ 4 ประเภทคือ

1. Keyboard ธรรมดา - ใช้สั่งว่าจะให้กดปุ่มอักษรใด
2. Mouse ธรรมดา - ใช้สั่งว่าจะให้เลื่อน Mouse ขึ้น-ลง-ซ้าย-ขวา ให้ Click ซ้ายหรือขวา
3. Special - ใช้แทนปุ่ม คีย์ที่ต้องการให้กดค้าง โดยเป็นลักษณะกดครั้งแรกติด กดอีกครั้งจะยกเลิก
4. Macro - ใช้ประกอบรวมกับคำสั่งต่าง ให้เป็นชุดคำสั่งตามต้องการ
5. Direct Command - คำสั่งเฉพาะกิจ เป็นคำสั่งที่เขียนขึ้นเพื่อใช้ในบางงาน ที่ต้องการความเร็วสูง

การเขียนรูปแบบคำสั่งใดๆ 1 คำสั่งจะถือเป็น 1 byte โดย Avatar จะเก็บได้สูงสุด 480 byte
คุณสามารถจะเลือกให้ปุ่มใดเก็บ หรือไม่เก็บ หรือจะให้มีขนาดมากน้อยเท่าใดก็ได้ (แต่ขนาดของปุ่มอื่นๆ จะมีเนื้อที่น้อยลดถอยตามกันไป) แต่ละคำสั่งจะถูกคั่นด้วยเครื่องหมาย "," (Comma) การขึ้นบรรทัดใหม่ไม่ได้หมายความจบคำสั่ง การจบแต่ละคำสั่งต้องใช้เครื่องหมาย "," เท่านั้น การเว้นวรรค หรือ Tab ไม่มีผลใดๆทั้งสิ้น

หลักสำคัญ

- รูปแบบคร่าวๆ ในการเขียนคำสั่งจะประกอบไปด้วย คำสั่งเปิด และ คำสั่งปิด

เช่น

MACRO_BLOCK_START, ...................
MACRO_BLOCK_STOP

หรือ

MACRO_SPECIAL_KEY
, ....................
END_BUTTON

- ในทุกๆ การจบคำสั่งของปุ่มนั้นๆ จะต้องลงด้วย "END_BUTTON" เสมอ ถ้าเป็นปุ่มสุดท้ายหรือไม่สนใจปุ่มอื่นๆ แล้วสามารถจบด้วย "MACRO_NULL" ก็ได้

อธิบายการเขียน Script

1. หมวด Keyboard ธรรมดา
รูปแบบ :


MACRO_TYPE_KEYBOARD,
] คีย์พิเศษ ถ้าไม่มีใส่ 0 ], <ค่าปุ่มกด> ,
END_BUTTON

อธิบาย :


- คีย์พิเศษ คือคีย์ประเภท Alt, Ctrl , Shift เป็นต้น (ดูรายละเอียดตาราง คำสั่งและ Keyboard ได้จากตารางข้างล่าง)
- ค่าปุ่มกด คือ ปุ่มที่ต้องการให้จำลองการกด

2. หมวด Mouse ธรรมดา

รูปแบบ :

MACRO_TYPE_MOUSE,
e]ปุ่มที่ต้องการกด ถ้าไม่มีใส่ 0 ], , ,
END_BUTTON

อธิบาย :

- ปุ่มกดที่ต้องการได้แค่ Click ซ้าย หรือ Click ขวา
- Speed X ,Y ถ้าเป็นค่าลบจะให้เลื่อนซ้ายหรือบน ถ้าเป็นค่าบวกจะเลื่อนขวาหรือลงล่าง

3. หมวด Special Key
รูปแบบ :

MACRO_SPECIAL_KEY,
[ คีย์พิเศษ ถ้าไม่มีใส่ 0 ], <ค่าปุ่มกด> ,
END_BUTTON

อธิบาย :

จะคล้ายๆ กับหมวด Keyboard ธรรมดา เพียงแต่ ถ้าเป็น Keyboard ธรรมดา จะกด 1 ครั้ง ต่อการทำงาน 1 ครั้ง แต่ถ้าเป็นหมวด Special กดหนึ่งครั้งจะเสมือนว่ากดปุ่มที่ตั้งค่านั้น ค้างเอาไว้ และหากกดอีกครั้งจะเป็นการยกเลิก

4. หมวด MacroKey การ Macro เราจะสามารถแบ่งเป็นหลายๆ Macrokey ในปุ่มเดียวก็ได้ โดยจะแบ่งเป็น Block และแต่ละ Block ก็จะสามารถใช้คำสั่งของหมวด Keyboard ธรรมดา และ Mouse ธรรมดาก็ได้ (แต่ไม่สามารถนำคำสั่งจาก หมวด Special หรือ Direct Command มาใช้ได้) และภายใน Block จะมีคำสั่งพิเศษให้เลือกใช้เพิ่มจากปกติด้วย โดยมันจะทำงานเรียงตามลำดับกันไป

รูปแบบ:

MACRO_BLOCK_START,
คำสั่งใน block นี้
MACRO_BLOCK_STOP

...(มีหลายๆ Block ได้)

MACRO_BLOCK_START,
คำสั่งใน block นี้
MACRO_BLOCK_STOP,
END_BUTTON

คำสั่งที่เพิ่มขึ้นที่นอกเหนือจาก Keyboard ธรรมดา และ Mouse ธรรมดา ได้แก่

4.1 MACRO_CMD_INTERRUPT ใช้ยกเลิกการกดค้างจากหมวด Special แล้วแทรกด้วยคีย์ที่กำหนด เมื่อกดแล้วก็ให้กลับไปใช้ คีย์เดิมที่ค้างไว้ได้

รูปแบบ :

MACRO_BLOCK_START,MACRO_CMD_INTERRUPT,
[ คีย์พิเศษ ถ้าไม่มีใส่ 0 ], <ค่าปุ่มกด> ,
MACRO_BLOCK_STOP,

อธิบาย :

การใช้จะเหมือนหมวด Keyboard ธรรมดา แต่ใช้ในกรณีต้องการความมั่นใจ โดยจะยกเลิกหมวด Special ทั้งหมดทุกปุ่มก่อน แล้วแทรกด้วยค่าคีย์ที่ระบุ หลังจากที่กดเสร็จแล้ว Avatar จะกลับไปใช้หมวด Special ที่ถูกขัดจังหวะเมื่อสักครู่ต่อทันที และจะยังคงใช้ต่อไปได้เรื่อยๆ จนกว่าจะกดปุ่มยกเลิกหมวด Special หรือเจอคำสั่ง ยกเลิกทั้งหมด

4.2 MACRO_CMD_DELAY ใช้หน่วงเวลา มีหน่วยเป็น Millisecond

รูปแบบ :

MACRO_BLOCK_START,MACRO_CMD_DELAY,
,,
MACRO_BLOCK_STOP,

อธิบาย :

ใช้ Calc แปลงค่าที่ต้องการเป็นเลขฐาน 16 ก่อน แล้วเอาค่าตัวแรกกรอกช่อง High ค่าที่สองกรอกช่อง Low
หรือแปลงผ่านหน้าเว็ปได้ที่นี่ แปลงฐาน 10 เป็นฐาน 16

4.3 MACRO_CMD_DISABLE_ALL ใช้ยกเลิกการกดปุ่มจากหมวด Special ทั้งหมด

รูปแบบ :

MACRO_BLOCK_START, MACRO_CMD_DISABLE_ALL,
MACRO_BLOCK_STOP

อธิบาย :


ถ้ามีการกดปุ่มหมวด Special ค้างไว้ จะยกเลิกทั้งหมดได้ด้วย Macro นี้ เพื่อความมั่นใจก่อนใช้คำสั่ง Macro ชุดอื่นๆ

5. หมวด Direct Command เป็นหมวดที่จะมีคำสั่งเฉพาะกิจ (ณ เวลานี้มีคำสั่งเดียว) เช่นสั่ง Mouse เคลื่อนไปตามตำแหน่งที่ระบุโดยตรงหากเป็นการทำงานแบบ Macrokey จะล่าช้าไม่ทันการณ์ แต่ถ้าใช้ DirectCommand จะได้รับ Priority สูงสุด โดยจะยกเลิกการทำงานของคำสั่งอื่นๆ ที่ค้างไว้ แล้วทำงานนี้ก่อน

รูปแบบ :

MACRO_TYPE_MOUSE_XY,
Step ครั้งการเลื่อนไปทางซ้าย, Step ครั้งการเลื่อนขึ้น,
<แกน x byte high>, <แกน x byte low>,
<แกน y byte high>, <แกน y byte low>,
END_BUTTON

อธิบาย:

การทำงานของคำสั่ง MOUSE_XY นี้ จะทำโดย โปรแกรมจะพยายามเลื่อน mouse ไปในตำแหน่ง ซ้ายสุด บนสุดก่อน (เพื่อใช้เป็นจุดอ้างอิง) การเลื่อนไปที่ตำแหน่งซ้ายสุด บนสุดนั้นจะทำได้รอบละ 120 pixel ดังนั้นสมมุติถ้าหน้าจอของคุณมีขนาด 1280 * 800 จะได้ค่าแกน ที่ต้องการจะเลื่อนไปทางซ้าย 1280 / รอบละ 120 px จะได้ 10.xx ให้ปัดเศษเป็น "11 รอบ" ส่วนแกนบนจะได้ 800 / รอบละ 120 px จะได้ 6.xx ให้ปัดเศษจะเป็น "7 รอบ" ดังนั้นไม่ว่า mouse ปัจจุบันคุณจะอยู่ ณ ที่ตำแหน่งใดๆ ในหน้าจอ 1280 * 800 มันจะวิ่งไปที่ ตำแหน่ง ซ้ายสุด บนสุดก่อน จากนั้นมันจึงจะวิ่งไปตามคำสั่งที่คุณตั้งไว้ ว่าให้ไป ณ ตำแหน่งใด
อนึ่งค่าตำแหน่งต้องเก็บเป็นเลข 2 byte คุณต้องแบ่งค่าออกเป็น 2 byte ก่อนระบุลงไปเช่น (ใช้ calc ของ windows ก็ได้) 640 => ถือเลขฐาน 16 เป็น $0280 คุณก็กรอก $02 ลงไป ถือเป็น High และ $80 ตามไปถือเป็นLow ทั้งแกน X และ Y ใช้หลักการเดียวกัน

** การทำงานอาจจะมีข้อผิดพลาด หากท่านเปิดโหมด Enhance Pointer Precision โดย Mouse จะเลื่อนไปไกลกว่าตำแหน่งที่ท่านระบุ หากท่านต้องการปิด สามารถทำได้โดย

- Start -> Settings -> Control Panel -> Mouse
- เลือก Tab Pointer Options ดูบริเวณกรอบของ Motion ให้ยกเลิกหัวข้อ Enhance Pointer Precision

เอกสารเพิ่มเติมอื่นๆ (Advance)


อ่านเพิ่มจากไฟล์ ExampleComplete.txt ที่อยู่ใน CD หรือจากตรงนี้ https://crazy4bot.thai-forum.net/forum-f25/topic-t1187.htm

ตัวอย่าง Script

คุณสามารถศึกษาได้จากไฟล์ต่างๆ ใน Folder เดียวกันนี้ โดยไฟล์จะขึ้นต้นด้วย test_xxxxx.dat ให้เปลี่ยนชื่อไฟล์เป็น avatar.dat แล้วเปิดโปรแกรมใหม่ เรียนรู้ไปสักพักจะเข้าใจ และคล่องครับ

------------------------------------------------------------------------------------------------------------------------------------

รูปแบบคำสั่งแบ่งออกเป็น 2 ส่วน

1. หมวด Mouse

LEFT_CLICK ปุ่มซ้าย Mouse
RIGHT_CLICK ปุ่มขวา Mouse

ค่ามาตราฐานความเร็ว Mouse

MOUSE_SPEED_LEFT -10
MOUSE_SPEED_RIGHT 10
MOUSE_SPEED_UP -10
MOUSE_SPEED_DOWN 10

2. หมวดคีย์บอร์ด

คีย์พิเศษ!! จะขึ้นด้วย MOD

MOD_CONTROL_LEFT ปุ่ม Control ด้านซ้าย
MOD_SHIFT_LEFT ปุ่ม Shift ด้านซ้าย
MOD_ALT_LEFT ปุ่ม Alt ด้านซ้าย
MOD_GUI_LEFT ปุ่ม ที่เรียก Windows ด้านซ้าย
MOD_CONTROL_RIGHT ปุ่ม Control ด้านขวา
MOD_SHIFT_RIGHT ปุ่ม Shift ด้านขวา
MOD_ALT_RIGHT ปุ่ม Alt ด้านขวา
MOD_GUI_RIGHT ปุ่ม ที่เรียก Windows ด้านขวา

ชื่อปุ่มต่างๆ ตัวเลข,ตัวอักษร

KEY_1
KEY_2
KEY_3
KEY_4
KEY_5
KEY_6
KEY_7
KEY_8
KEY_9
KEY_0
KEY_A
KEY_B
KEY_C
KEY_D
KEY_E
KEY_F
KEY_G
KEY_H
KEY_I
KEY_J
KEY_K
KEY_L
KEY_M
KEY_N
KEY_O
KEY_P
KEY_Q
KEY_R
KEY_S
KEY_T
KEY_U
KEY_V
KEY_W
KEY_X
KEY_Y
KEY_Z

KEY_ENTER

KEY_ESCAPE
KEY_BACKSPACE (ปุ่มลบ)
KEY_TAB
KEY_SPACE
KEY_DASH -
KEY_EQUALS =
KEY_LPAREN [
KEY_RPAREN ]
KEY_BACKSLASH \
KEY_SEMICOLON ;
KEY_QUOTE
'
KEY_TILDE `
KEY_COMMA ,
KEY_DOT .
KEY_SLASH /


KEY_CAPS_LOCK

KEY_F1
KEY_F2
KEY_F3
KEY_F4
KEY_F5
KEY_F6
KEY_F7
KEY_F8
KEY_F9
KEY_F10
KEY_F11
KEY_F12


ปุ่มพิเศษ

KEY_PRINT_SCREEN
KEY_SCROLL_LOCK
KEY_PAUSE
KEY_INSERT
KEY_HOME
KEY_PAGE_UP
KEY_DELETE
KEY_END
KEY_PAGE_DOWN


ปุ่มลูกศร

KEY_RIGHT_ARROW
KEY_LEFT_ARROW
KEY_DOWN_ARROW
KEY_UP_ARROW


ปุ่มแผงตัวเลขด้านขวามือ

KEY_NUM_LOCK
KEY_NUM_DIV /
KEY_NUM_MUL *
KEY_NUM_SUB -
KEY_NUM_ADD


KEY_NUM_ENTER
KEY_NUM_1
KEY_NUM_2
KEY_NUM_3
KEY_NUM_4
KEY_NUM_5
KEY_NUM_6
KEY_NUM_7
KEY_NUM_8
KEY_NUM_9
KEY_NUM_0
KEY_NUM_DOT .


ตัวอย่างการทำงานต่างๆ

รูปแบบที่จะแสดงต่อไปนี้เป็นแบบปกติ (ไม่ใช่ Macro) คือจะทำงานในลักษณะ 1 ปุ่ม 1 คำสั่ง "ไม่ใช่" 1 ปุ่ม 1 ชุดคำสั่ง (Macro)

------------------------------------------------------------------------------------------------------------------------------------

ชุดทดสอบ Keyboard ในแบบต่างๆ (นี่คือแบบปกติ จะทำได้ ปุ่มหนึ่ง เป็น 1 อักษร)
รูปแบบ MACRO_TYPE_KEYBOARD, <คีย์พิเศษ>,<คีย์ปกติต่างๆ>, END_BUTTON

กดลูกศรขึ้น
MACRO_TYPE_KEYBOARD,0,KEY_UP_ARROW, END_BUTTON

กดลูกศรลง
MACRO_TYPE_KEYBOARD,0,KEY_DOWN_ARROW, END_BUTTON

กดลูกศรซ้าย
MACRO_TYPE_KEYBOARD,0,KEY_LEFT_ARROW, END_BUTTON

กดลูกศรขวา
MACRO_TYPE_KEYBOARD,0,KEY_RIGHT_ARROW, END_BUTTON

กด Shift ด้านซ้าย
MACRO_TYPE_KEYBOARD,MOD_SHIFT_LEFT,0, END_BUTTON

กด [
MACRO_TYPE_KEYBOARD,0,KEY_LPAREN, END_BUTTON

กด ]
MACRO_TYPE_KEYBOARD,0,KEY_RPAREN, END_BUTTON

***** สำหรับปุ่มพิเศษ ในกรณีถ้ามีหลายปุ่มในเวลาเดียวกัน สามารถใช้ | คั่นระหว่างปุ่มได้ *****

ตัวอย่างการกดครั้งเดียวหลายๆ ปุ่ม เช่น Ctrl Alt Delete (CTRL และ ALT คือปุ่มพิเศษ , Delete คือปุ่มปกติ)

MACRO_TYPE_KEYBOARD,MOD_CONTROL_LEFT | MOD_ALT_LEFT,KEY_DELETE,END_BUTTON

ทดสอบปุ่มแบบ Special Key

** ปุ่มแบบ Special Key จะเป็นลักษณะ กดครั้งแรกเปิดการทำงาน กดอีกครั้งปิดการทำงาน **

รูปแบบ MACRO_SPECIAL_KEY, <คีย์พิเศษ ไม่มีใส่ 0>, <ปุ่มที่ต้องการให้เสมือนว่ากดค้างไว้>, END_BUTTON

** หมายเหตุ : การตั้งค่าการกดปุ่มแบบ Special Key ถ้าเป็นการใช้กับ คีย์พิเศษ ตามหลักคีย์ธรรมดา จะเป็นการยกเลิกคีย์ก่อนหน้าต้องกดใหม่เท่านั้น หรือมิเช่นนั้นต้องกด Special Key แบบคีพิเศษก่อน

ตัวอย่างกดปุ่ม [ เสมือนค้างไว้
MACRO_SPECIAL_KEY,0,KEY_LPAREN,END_BUTTON

ตัวอย่างกดปุ่ม ] เสมือนค้างไว้
MACRO_SPECIAL_KEY,0,KEY_RPAREN,END_BUTTON

ทดสอบ mouse (นี่คือแบบปกติ จะทำได้ 1 ปุ่ม 1 คำสั่ง mouse)

รูปแบบ MACRO_TYPE_MOUSE,<ค่าปุ่มกด>,<ทิศทางซ้ายขวา>, <ทิศทางบนล่าง>,END_BUTTON
หมายเหตุ : ค่าทิศทางซ้าย จะมีค่าเป็นลบ ถ้าไปทาง ขวา จะมีค่าเป็นบวก

ทิศทางบน - ล่างก็เช่นกัน คือ ถ้าจะไปข้างบนจะเป็นลบ ถ้าไปด้านล่างจะเป็นบวก โดยค่าจะเป็นระยะทาง (Pixel) ค่าสูงสุดคือ 120 ทั้งลบและบวก ทุกทิศทาง ในที่นี้ตั้งค่าไว้เป็น
MOUSE_SPEED_LEFT,RIGHT,UP,DOWN เป็น -10,10,-10,10 ตามลำดับ ถ้าหากต้องการแก้ไขเป็นค่าอื่นๆ ก็สามารถใส่ไปได้โดยตรง

ตัวอย่าง

กดปุ่มซ้าย Mouse
MACRO_TYPE_MOUSE,LEFT_CLICK,0,0,END_BUTTON

กดปุ่มขวา Mouse
MACRO_TYPE_MOUSE,RIGHT_CLICK,0,0,END_BUTTON

ลาก Mouseไปทางซ้าย
MACRO_TYPE_MOUSE,0,MOUSE_SPEED_LEFT,0,END_BUTTON

ลาก Mouseไปทางด้านล่าง
MACRO_TYPE_MOUSE,0,0,MOUSE_SPEED_DOWN,END_BUTTON

ลาก Mouseไปทางขวา
MACRO_TYPE_MOUSE,0,MOUSE_SPEED_RIGHT,0,END_BUTTON

ลาก Mouseไปทางด้านบน
MACRO_TYPE_MOUSE,0,0,MOUSE_SPEED_UP,END_BUTTON

ลาก Mouseไปทางขวาอย่างเร็ว (ค่ายิ่งมาก ยิ่งเร็ว แต่ไม่เกิน 120) ในที่นี้ไป 80 Pixel จากตำแหน่งปัจจุบัน
MACRO_TYPE_MOUSE,0, 80 ,0,END_BUTTON

------------------------------------------------------------------------------------------------------------------------------------

ทดสอบการสั่ง Mouse ไปในตำแหน่งที่ระบุเลย

ที่มา : ปกติแล้วการทำงานแบบ Macro จะเป็นการทำงานแบบชุดคำสั่ง ซึ่งจะจำลองลักษณะการเคลื่อนไหวของ Mouse และ Keyboard แบบคนจริงๆ และ "คน" ไม่สามารถที่จะทำงานได้เร็วเท่าเครื่องจักร จึงต้องมีการ "หน่วงเวลา" (แบบอัตโนมัติ) ดังนั้นการใช้ Mouse ใน Block Macro จะทำให้ทำงานช้ามาก จึงมีการออกแบบคำสั่งให้สามารถระบุตำแหน่งหน้าจอที่ต้องการจะไปได้โดยตรง คือคำสั่งนี้

การทำงาน : Mouse จะลากตัวเองไป บนสุด ซ้ายสุดของหน้าจอ แล้วจะขยับคราวละ 120 Pixel (ทั้งขึ้นและลง,ซ้ายและขวา) จนกว่าจะถึงตำแหน่งที่ระบุ
การใช้งาน : ค่อนข้างวุ่นวายนิดหน่อย แต่เชื่อว่าไม่น่าเกินความพยายามของคนบ้าเกมส์ (^_^)
รูปแบบ :

MACRO_TYPE_MOUSE_XY, 11,07,
<เลขฐาน16สูง ตำแหน่ง X>, <เลขฐาน16ต่ำ ตำแหน่ง X>,
<เลขฐาน16สูง ตำแหน่ง Y>, <เลขฐาน16ต่ำ ตำแหน่ง Y>,
END_BUTTON

หมายเหตุ : เลขฐาน 16 ต้องขึ้นด้วย '$' อาจจะใช้ Calc ของ Windows ช่วยคำนวนได้

ตัวอย่าง ลากไปทำแหน่งที่ 640(0280h) ,400(0190h)

MACRO_TYPE_MOUSE_XY, 11,07, $02,$80, $01,$90, END_BUTTON

ตัวอย่าง ลากไปทำแหน่งที่ 0(00h),0(00h)
MACRO_TYPE_MOUSE_XY, 11,07, $00,$00, $00,$00, END_BUTTON

ตัวอย่าง ลากไปทำแหน่งที่ 1280(0500h),0(0h)
MACRO_TYPE_MOUSE_XY, 11,07, $05,$00, $00,$00, END_BUTTON

ตัวอย่าง ลากไปทำแหน่งที่ 0(0h),800(0320h)

MACRO_TYPE_MOUSE_XY, 11,07, $00,$00, $03,$20, END_BUTTON

ตัวอย่าง ลากไปทำแหน่งที่ 1280(0500h),800(0320h)
MACRO_TYPE_MOUSE_XY, 11,07, $05,$00, $03,$20, END_BUTTON

ตัวอย่าง ลากไปทำแหน่งที่ 100(0064h),100(0064h)
MACRO_TYPE_MOUSE_XY, 11,07, $00,$64, $00,$64, END_BUTTON

ตัวอย่าง ลากไปทำแหน่งที่ 500(01F4h),500(01F4h)
MACRO_TYPE_MOUSE_XY, 11,07, $01,$F4, $01,$F4, END_BUTTON

จบการทำงานแบบ 1 ปุ่ม 1 คำสั่ง

------------------------------------------------------------------------------------------------------------------------------------

การทำงานแบบชุดคำสั่ง Macro

ปรัชญาการออกแบบ (ที่มา) : เริ่มจากการออกแบบเพื่อเล่นกับเกม DotA ซึ่งการทำงานจะมีหลายคำสั่งในเวลาเดียวกัน บางครั้งเป็นไปได้ยากที่จะ กดหลายๆ ปุ่มพร้อมๆ กันหรือเรียงลำดับ (Skill) ดังนั้นจึงต้องมี

'Macro Key' ช่วย เมื่อกดมัน '1 ครั้ง' มันจะได้ทำงาน 'เป็นชุดได้'
สำหรับการทำงานแบบ Macro นี้ "สามารถกดค้างเพื่อให้ทำงานเป็นวงรอบได้ แต่ >> ต้องไม่มี << คำสั่ง Delay อยู่ภายใน" เพราะการตั้ง Macro Keyboard เครื่องจะคำนวนเวลาการกดให้อัตโนมัติอยู่แล้ว, แต่ถ้า

หากว่าคุณมีการใช้คำสั่ง Delay ภายในนั้น จะเป็นการทำงานแบบชุดคำสั่ง ที่กด 1 ครั้ง แล้วมันจะทำงานไปเรื่อยๆจนจบ >> กดปุ่มค้างไม่ได้ << "ถ้ากดค้างมันจะถือว่าต้องการยกเลิก Macro เดิม เพื่อเริ่มต้นรอบใหม่"

(เหมือนกด Skill ใน DotA ที่ปรากฏว่า เมื่อศัตรูหลุดจากตำแหน่ง เราต้องการกด Skill ใหม่ โดยไม่ต้องการรอ Macro เดิมทำงานเสร็จ เพราะถ้ารอ Skill เดิมเสร็จ คงโดนสวนตาย)

อย่างไรก็ดี ก็มีข้อยกเว้นอยู่บ้าง หากต้องการใช้ Macro แบบกดค้างได้ ก็คือหากต้องการจะทำ Macro ชุดคำสั่งทั้งหมด ที่มีในชุดนั้นๆ ต้องทำงานให้เสร็จในเวลา 1 วินาที >> ถ้านานกว่านี้จะกดค้างไม่ได้ << ถ้าเร็วกว่า 1 วินาที จะกดค้างได้

ชุดรูปแบบ Macro สามารถทำเอา Mouse, Keyboard มาใช้ได้ และมีคำสั่งเพิ่มเติมเล็กน้อยได้แก่
1. Delay (หน่วงเวลา)
2. Interrupt (ยกเลิกคีย์เพื่อแทรก)
3. Diable (ยกเลิกปุ่มพิเศษทั้งหมด เพื่อเริ่มใหม่)
4. Repeat (ทำซ้ำชุดคำสั่งไปเรื่อยๆ)
และมีบางคำสั่งเอามาใช้ใน Macro ไม่ได้เช่น MACRO_TYPE_MOUSE_XY

รูปแบบ MACRO : จะเริ่มด้วย MACRO_BLOCK_START, และจบด้วย MACRO_BLOCK_STOP ในแต่ละชุดคำสั่ง หากเสร็จสิ้นคำสั่งทุกคำสั่งแล้ว ให้จบด้วย ,END_BUTTON

ทดสอบ Macro Mouse : เราสามารถใช้คำสั่ง Mouse ที่ได้เรียนรู้ก่อนหน้านี้มาทำงานได้ทันที
การทดสอบ : ให้เปิดโปรแกรม Paint Brush,หรือ Photoshop แล้วเลือกสีแดง และเลือกจุดใหญ่ๆ (หรือ Zoom รอไว้ จะเห็นจุดใหญ่) Macro จะทำการวาดจุดลงในโปรแกรมนั้นๆ, (จริงแล้วคือตั้งใจให้เหมือนว่าเล่น

เกม Counter Strike มันจะบังคับ Mouse ให้ยิง 4 นัดติดต่อกัน ระยะทางไม่เกิน 2 Pixel (สมมุติก็คือลาก Mouse ไปเล็งใกล้ๆ หัว แล้วกดใช้ จะเป็นการสุ่มยิง 4 นัดซ้อน) ในความเป็นจริง การลาก Mouse 2 Pixel

เป๊ะๆ ทำไม่ได้ด้วย "คน" จริงๆ

ตัวอย่างชุดคำสั่ง กดปุ่ม, เลื่อนขวา, กดปุ่ม, ลงล่าง, ไปทางซ้าย, กดปุ่ม, ไปทางขวา, กดปุ่ม
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,2,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,0,2, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,255 & -2,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,2,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
END_BUTTON

หมายเหตุ : เราอ้างอิงค่าติดลบโดยตรงไม่ได้ แต่ต้องใช้ "255 & " เข้าไปนำ เพื่อบังคับให้เอาข้อมูล Byte ต่ำ มาใช้งาน

ทดสอบ Macro mouse อีกครั้ง ให้เปิดโปรแกรม Paint Brush เช่นกันกับข้างบน โหลดไปใช้แล้วสังเกตุผล,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,49,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,0,49, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,255 & -49,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,0,49, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,

รอบ 2,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,49,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,0,49, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,255 & -49,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,49,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,
END_BUTTON


ตัวอย่าง Macro Keyboard
การใช้ Keyboard ใน Macro จะมีรูปแบบที่พิเศษเล็กน้อย คือสามารถพิมพ์ได้คราวละสูงสุด 6 อักษรดังรูปแบบนี้
รูปแบบ : MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD,
<คีย์พิเศษ ไม่มีใส่ 0>,<คีย์1>,<คีย์2>,<คีย์3>,<คีย์4>,<คีย์5>,<คีย์6>,
END_BUTTON

** ในกรณีที่มีปุ่มไม่ถึง 6 ปุ่ม ให้ใส่ปุ่มถัดไปด้วย 0 แล้วตามด้วย ,MACRO_BLOCK_STOP เพื่อจบเลย

ตัวอย่างการกดทีเดียวได้ 6 อักษร 'abcdef'
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD,0,KEY_A,KEY_B,KEY_C,KEY_D,KEY_E,KEY_F,END_BUTTON

ตัวอย่างการกดทีเดียวได้ 6 อักษร 'ABCDEF' (แต่เป็นอักษรพิมพ์ใหญ่) ก็ทำโดยกด Shift ค้างไว้ (คีย์พิเศษ)
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, MOD_SHIFT_LEFT,KEY_A,KEY_B,KEY_C,KEY_D,KEY_E,KEY_F,END_BUTTON

ตัวอย่างการกด 'aAbBcCdDeEfF' (ใหญ่เล็กเรียงกันไป) โดยกด 1 ครั้ง แล้วสังเกตุผล
สังเกตุว่า พิมพ์แค่อักษรเดียว (ไม่ถึง 6 อักษร) ตำแหน่งถัดไปจึงใส่ ,0 แล้วจบเลย (MACRO_BLOCK_STOP)
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_A,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, MOD_SHIFT_LEFT, KEY_A,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_B,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, MOD_SHIFT_LEFT, KEY_B,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_C,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, MOD_SHIFT_LEFT, KEY_C,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_D,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, MOD_SHIFT_LEFT, KEY_D,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_E,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, MOD_SHIFT_LEFT, KEY_E,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_F,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, MOD_SHIFT_LEFT, KEY_F,0, MACRO_BLOCK_STOP,
END_BUTTON

-----------------------------------------------------------------------------------------------------------------------------------------------------

ทดสอบการใช้ Delay เพื่อหน่วงเวลาใน Macro,การใช้ Interrupt เพื่อแทรกคีย์,การใช้ Diable All ยกเลิกทั้งหมด(เริ่มใหม่) และการใช้ Repeat เพื่อวนรอบการทำงานชุดคำสั่งเดิม
หลักการแนวคิด Delay : แม้ว่าเราจะสามารถตั้งค่าชุดคำสั่งให้ยาวเท่าไรก็ได้ แต่บางครั้งการทำงานของเครื่องมือจะเร็วเกินไป ดังนั้นต้องมีการหน่วงเวลา ซึ่งเราสามารถตั้งได้ระดับ Millisecond เลยทีเดียว
แต่การควบคุม (ณ เวลานี้ )จะต้องใช้ค่าเลขฐาน 16 ขนาด 2 Byte เท่านั้น
รูปแบบ : MACRO_BLOCK_START, MACRO_CMD_DELAY,
<ค่าเวลาฐาน 16 สูง>, <ค่าเวลาฐาน 16 ต่ำ>,
MACRO_BLOCK_STOP

-----------------------------------------------------------------------------------------------------------------------------------------------------

หลักการแนวคิด Interrupt : เราสามารถตั้งค่า "เสมือนกดค้าง" ได้ ด้วยคำสั่ง MACRO_SPECIAL_KEY
ยกตัวอย่างเช่น ต้องการกดปุ่ม Shift ค้างไว้ แต่ถ้าหากบางครั้งเราต้องการกด 'f' แบบปกติ
ถ้ากดไปในระหว่าง SPECIAL_KEY ทำงานจะได้ 'F' ถ้าหากเราไปยกเลิก Special Key ก่อน แล้วค่อยกด 'f' แล้วค่อยไปเริ่ม Special Key อีกครั้ง จะไม่สะดวกและวุ่นวายดังนั้นจึงมีคำสั่ง Interrupt ขึ้นมา
โดยมันจะยกเลิก Special Key ทั้งหมดที่มี แล้วแทรกค่าใหม่ไปเลย จากนั้นจะกลับมาทำงาน Special Key แบบอัตโนมัติอีกครั้ง
รูปแบบ : MACRO_BLOCK_START, MACRO_CMD_INTERRUPT, <คีย์พิเศษ ถ้าไม่มีใส่ 0>,<คีย์ที่จะแทรก>, MACRO_BLOCK_STOP

-----------------------------------------------------------------------------------------------------------------------------------------------------

แนวคิด Disable all : บางครั้งเราใช้ Special key เต็มไปหมด การจะไปยกเลิกรายปุ่มก็ไม่ไหวก็ให้ใช้คำสั่งนี้จะสามารถยกเลิก Special Key ทั้งหมดได้เลย
รูปแบบ : MACRO_BLOCK_START, MACRO_CMD_DISABLE_ALL, MACRO_BLOCK_STOP

-----------------------------------------------------------------------------------------------------------------------------------------------------

แนวคิด Repeat : เราสามารถทำซ้ำชุดคำสั่ง ที่เราได้กดไปก่อนหน้าได้ ในลักษณะ กดครั้งหนึ่งทำงาน และจะทำงานไปเรื่อยๆ จนกว่าจะกดปุ่ม macro นั้นอีกครั้ง
รูปแบบ : MACRO_CMD_REPEAT, <จำนวนคำสั่งที่จะย้อนกลับไปทำงาน โดยเริ่มจากทำแหน่งนี้เลยเป็น 1 , MACRO_CMD_REPEAT เป็น 2... (ไปเรื่อยๆ) >

-----------------------------------------------------------------------------------------------------------------------------------------------------

เอาล่ะ ไม่ต้องอ่านมาก เดี๋ยวงงดูตัวอย่างเลย สมมุติตั้งให้ปุ่ม 1 เป็น Special Key SHIFT (คือกดครั้งเดียว แต่จะเหมือนปุ่ม SHIFT ค้างไว้ กดอีกครั้งจะยกเลิก)
MACRO_SPECIAL_KEY, MOD_SHIFT_LEFT,0, END_BUTTON

และสมมุติให้ปุ่ม 2 เป็น Special key '['
MACRO_SPECIAL_KEY, 0, KEY_LPAREN, END_BUTTON

กำหนดปุ่ม 3 : จากปุ่ม 1 ถ้ากดอักษรใดๆ จะได้ อักษรพิมพ์ใหญ่ แต่เราต้องการให้ตั้งให้ยกเลิกก่อนแล้วค่อยกด a จะต้องได้ 'a' พิมพ์เล็ก
MACRO_BLOCK_START, MACRO_CMD_INTERRUPT, 0,KEY_A, MACRO_BLOCK_STOP,END_BUTTON

ตั้งปุ่ม 4 ให้เป็นการยกเลิก SpecialKey ทั้งหมด
MACRO_BLOCK_START, MACRO_CMD_DISABLE_ALL, MACRO_BLOCK_STOP,END_BUTTON

ตัวอย่างการ Repeat โดยจะพิมพ์ aAaA.... ไปเรื่อยๆ จนกว่าจะกดปุ่มอีกครั้ง (เพื่อหยุด)

MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_A,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, MOD_SHIFT_LEFT, KEY_A,0, MACRO_BLOCK_STOP,
MACRO_CMD_REPEAT, 14,
END_BUTTON

-----------------------------------------------------------------------------------------------------------------------------------------------------

ตัวอย่างที่ใช้งานจริงในเกม DotA ปุ่มเดียวกลับบ้าน แบบที่ 1 (Sentinel 20x20)
ซ้ายสุด ล่างสุด,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE_XY, 11,07, $00,$00, $03,$20, MACRO_BLOCK_STOP,

Move Right Up,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, 0,16, 27, MACRO_BLOCK_STOP,

F1,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_F1,0, MACRO_BLOCK_STOP,

Num5,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_NUM_5,0, MACRO_BLOCK_STOP,

Click,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,

DELAY 3sec,
MACRO_BLOCK_START, MACRO_CMD_DELAY , $13, $88, MACRO_BLOCK_STOP,

F1,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_F1,0, MACRO_BLOCK_STOP,

F1,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_F1,0, MACRO_BLOCK_STOP,
END_BUTTON

***** ปุ่มเดียวกลับบ้าน แบบที่ 2 (Scourge) move mouse เข้าไปตรงๆ เลย

Disable All,
MACRO_BLOCK_START, MACRO_CMD_DISABLE_ALL, MACRO_BLOCK_STOP,

gotoXY ,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE_XY, 11,07, $00,$B4, $02,$54, MACRO_BLOCK_STOP,

F1,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_F1,0, MACRO_BLOCK_STOP,

num5,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_NUM_5,0, MACRO_BLOCK_STOP,

Click,
MACRO_BLOCK_START, MACRO_TYPE_MOUSE, LEFT_CLICK,0,0, MACRO_BLOCK_STOP,

DELAY 3sec,
MACRO_BLOCK_START, MACRO_CMD_DELAY , $0C, $80, MACRO_BLOCK_STOP,

F1,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_F1,0, MACRO_BLOCK_STOP,

F1,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_F1,0, MACRO_BLOCK_STOP,
END_BUTTON

-------------------------------------------------------------------------

ตัวอย่าง เกมส์ Blackrouge กดสกิล F1,1,2,3,4,5,9,0
MACRO_BLOCK_START, MACRO_CMD_DISABLE_ALL, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOARD, 0,KEY_f1,0, MACRO_BLOCK_STOP,
MACRO_BLOCK_START, MACRO_TYPE_KEYBOAR
administrator
administrator
Administrator
Administrator

จำนวนข้อความ : 1468
คะแนน : 10002413
วันที่สมัคร : 2009-09-12

https://crazy4bot.thai-forum.net

Back to top Go down

Back to top


 
Permissions in this forum:
You cannot reply to topics in this forum