สรุปเนื้อหาจาก Y_Less หลังจากโดนเด้งออกจาก Beta Tester

วัสดีครับ วันนี้ผมจะมาสรุปบทความของ Y_Less ที่เขียนไว้หลังจากโดนเด้งออกจากตำแหน่ง Beta Tester และถูกแบนออกจาก SA-MP ในเวลาเดียวกัน ซึ่งรายละเอียดการถูกแบนมาจากที่ Kalcor รู้ว่า Y_Less พยายามจะสร้าง Project ใหม่กับกลุ่มคนที่อยู่ใน Discord SA-MP ที่ไม่เป็นทางการ (SA-MP ฉบับ Y_Less กับทีมใน Discord) พอหลังจาก Kalcor ทราบเรื่องพวกนี้ทั้งหมดก็ไม่ลังเลที่จะเด้ง Y_Less และ Beta Tester อีกหลายคนออกจากทีม เพราะถือว่ามีส่วนร่วมทั้งหมด แถมสมาชิกใน Discord ที่ใช้ชีวิตอยู่ในฟอรั่มก็โดนแบนไปด้วยรวม ๆ 10-20 ไอดีได้ โดยหลัก ๆ จะมี maddinator, SouthClaws, Y_Less, BigETI, KingHual, Ziggi(iggiz) โดนไปสองไอดี

_________________________________________________________________

รูปภาพ

_________________________________________________________________

ข้าเรื่อง มาสรุปข้อความจาก Y_Less กันหลังจากที่ย้ายเข้ามาอยู่ชุมชนใหม่ที่เขากับทีมใน Discord สร้างขึ้นมา burgershot.gg จะขอสรุปอันที่ผมเข้าใจที่สุดนะ อะไรที่มันไม่เกี่ยวจะไม่เอามาลง Lets go!

_________________________________________________________________

รูปภาพ

__________________________________________________________________

อันนี้เป็นเนื้อหาจาก Y_Less สรุปให้ (บางคำถูกดัดแปลงให้เข้าใจง่ายขึ้น)

  • ผมไม่ได้พยายามจะแบ่งแยกชุมชนของ SA-MP แต่ยังไงก็ตาม มีบางคนพยายามที่จะทำลายมัน พวกเขามีข้อมูลที่ถูกเก็บไว้ว่าจะระงับการอัพเดทระยะยาวแถมขู่ว่าจะลบฟอรั่มทั้งหมด(เมื่ออาทิตย์ก่อน) และจะแบนใครก็ตามที่ไม่เห็นด้วย(พวกเห็นต่างแหละ) และบุคคลนี้ได้แบ่งแยกชุมชนของ SA-MP แล้ว

    เป็นเวลานานกว่า 1 ปีที่ผู้คนต้องการให้มีการผสมเวอร์ชั่นระหว่าง 0.3.7 กับ 0.3 DL เข้าด้วยกัน ในขณะที่เขารู้แต่ดันสงสัยว่ามีใครบางคนกำลังต้องการมัน เขาบอกว่าชุมชน SA-MP กำลังจะตาย ในระยะเวลา 1-2 ปีที่เหลือ แต่พวกเราบางคนไม่เห็นด้วยและพยายามโน้มน้าวให้เขาทำอะไรบางอย่าง โดยให้พัฒนาต่อหรือส่งต่อให้ผู้ที่เหมาะสม ชุมชนที่มีผู้คนลดลงนั้นหลีกเลี่ยงไม่ได้ มันจะตายหากไม่ได้รับการสนับสนุน และนั่นคือสิงที่เกิดขึ้นในตอนนี้

    __________________________________________________________________
  • มี Discord ที่ไม่เป็นทางการของ SA-MP ที่ที่บางเวลาก็มีทั้งสนุกและล้อเล่นกันกับคนอื่น ๆ แต่ไม่ได้ถูกสร้างขึ้นมาสำหรับกลุ่มคนกบฏ มันถูกสร้างขึ้นเพราะกลุ่มคนที่ชื่นชอบ SA-MP และมีฟอรั่มที่ไม่เป็นทางการ Kalcor เคยพูดเองว่า “ถ้าคุณไม่ชอบคุณก็ไปสร้างเอาเอง” แต่การแบนก็เกิดขึ้นหลังจากที่พวกเราได้สร้างมัน ยังไงก็ตาม ฟอรั่มและ Discord ถูกสร้างโดยผมเอง สิ่งนี้ไม่ใช่การแบ่งแยกชุมชน แต่เป็นการสร้างอีกชุมชนเพื่อให้เดินต่อได้

    ___________________________________________________________________
  • ผมไม่ได้พยายามที่จะเริ่มเป็นคู่แข่งกับ SA-MP สองคำนี้มันผิด “เริ่ม” และ “คู่แข่ง” ผมไม่ได้พยายาม “เริ่ม” อะไรทั้งนั้น ผมพยายามจะวัดระดับความสนใจใน Project ที่ผมกำลังทำอยู่ (หมายถึง SA-MP) สิ่งเหล่านี้คือความมุ่งมั่นของผมในปีที่แล้ว

    ผมเคยออกจากวงการ SA-MP ใช่ แต่มัน 6 ปีที่แล้ว ลืมมันไปซะ
__________________________________________________________________

มไม่ได้พยายามจะทรยศ SA-MP ผมไม่ได้จะทรยศ Kalcor แต่มีเขานี่แหละที่กำลังทรยศ SA-MP ใช่ เขาสร้างมันมา แต่นั่นไม่ได้หมายความว่ามันเป็นของเขา กว่าร้อยคนที่ใช้เวลาต่อ ชั่วโมง/วัน/สัปดาห์ ในการทำงานกับ SA-MP ทำให้มันเป็นวันนี้ แต่เพราะ Kalcor มีสิทธิ์เพียงส่วนเดียวเท่านั้น คือ SA-MP Code เขาเชื่อว่าเขาเป็นส่วนสำคัญที่สุดและสามารถกำหนดได้ว่าจะให้มันออกไปทิศทางไหนและเมื่อไหร่ที่จะหยุด ในความเป็นจริง ใช่ คุณคิดถูก เขาทำงานส่วนที่สำคัญที่สุด แต่คุณลองถามตัวเองว่าในช่วงปีที่ผ่านมาใครทำงานหนักที่สุด Kalcor หรือกลุ่มคนที่ Kalcor แบน ภาพจากด้านบน 4/11

__________________________________________________________________

วกเราไม่ได้จะแย่งชิงอะไรจากเขา เราไม่ได้จะดูถูกผลงานของเขา เขาก่อตั้ง SA-MP ขึ้นมา โดยมีทีมงานของเขา แต่คนอื่น ๆ ทั้งหมดก็ช่วยให้ SA-MP มาได้ถึงปัจจุบัน และคนเหล่านี้คือกลุ่มคนที่ถูกเพิกเฉย ผมพยายามทำตัวให้เป็นกลาง โดยการทำให้ Kalcor เห็นมุมมองของกลุ่มคนเหล่านี้ ผมได้พยายามซ้ำ ๆ เพื่อให้ Kalcor ทำงาน/อัพเดท ให้กับคนอื่น (ไม่จำเป็นต้องเป็นผม) แต่ก็ไม่เป็นผล และคำตอบคืออะไร?

  • เขาไม่เชื่อว่าผมสามารถเพิ่ม Feature สำคัญ ๆ ได้ แน่นอนว่าเขาก็ไม่เพิ่ม Feature อะไรลงไปเหมือนกัน และมันสำคัญอะไร?
  • เขาต้องการแผน แผนลำดับของผมคือการแก้ไข Bugs ต่าง ๆ และจะสร้าง platform ที่ดีกว่าสำหรับภาษาอื่น ๆ (รองรับภาษาอื่นนอกเหนือจาก pawn)
  • คำพูดของเขาที่ว่า “พวกคุณไม่สมควรได้รับมัน” นั่นคือสิ่งที่เขาคิดต่อชุมชน SA-MP ผมพยายามที่จะแยกตัวออกมา และมันคือไอเดียสำหรับบางคนที่กำลังคิดจะไปต่อ เช่นผม
__________________________________________________________________

ม่มีใครสนใจหรอกว่าเขาจะเลิกทำ SA-MP มันเป็นเรื่องธรรมชาติ เราคัดค้านเขาว่าคุณกำลังจะทำให้ SA-MP ตายไปกับคุณ นี่คือชุมชน มันเป็นชุมชนที่ดีมาก ๆ มีทั้งเพื่อนพี่น้องในระยะเวลาที่นานสุด ๆ เราไม่ต้องการทำลาย SA-MP เราไม่ได้จะแบ่งแยกชุมชน เราต้องการที่จะพัฒนา SA-MP ต่อแต่ Kalcor ไม่

และนี้คือสิ่งที่ผมมอบให้คุณ:

open.mp

__________________________________________________________________

open.mp คือ mod multiplayer สำหรับ GTA:SA ที่กำลังจะมาเร็ว ๆ นี้ ซึ่งหมายความว่า สคริปต์ของ SA-MP ที่มีอยู่จะสามารถทำงานร่วมกับ open.mp ได้ปกติ รวมถึง Bugs ที่มีใน SA-MP จะถูกแก้ไข

__________________________________________________________________

มันขึ้นอยู่กับคุณในการตัดสินใจว่าใครที่ทรยศ SA-MP คุณรู้ว่าจะหาเราได้ที่ไหน

เนื้อหาหลักจาก Y_Less ฟอรั่ม burgershot.gg

บางประโยคอาจผิดเพี้ยนไปขออภัยด้วยครับ บางอันก็เลือกที่จะไม่แปลเพราะคิดว่ามันไม่เข้าประเด็น


ที่มา: http://forum.script-wise.in.th/viewtopic.php?f=31&t=98&fbclid=IwAR3KME4HtUdIlTl9XvnqcQtLkPJQ_zrkssAy3KOW5tBaiKeDRnOre9wGdWA

เขียนสคริปต์ด้วย VSCode (ฉบับเร่งรัด)

คุณจะได้รู้วิธี
– คอมไพด้วยการกด F5 (build only, build watcher)
– ตั้ง Workspace ให้เปิดไฟล์สคริปต์ขึ้นมาแล้วภาษาไทยไม่เพี้ยน
– การติดตั้ง Plugin หรือ Include ที่อยู่บน Github
– การติดตั้ง Include ที่ไม่มีอยู่ใน Github

ลิงค์ต่าง ๆ
agency-cli: https://github.com/aktah/agency-ctl
Pawndex: https://packages.sampctl.com/
Plugin CEFix: https://github.com/aktah/SAMP-CEFix

ฟอรั่มของเรา: http://forum.script-wise.in.th
Discord: https://discord.gg/nEjhMH2

อัปเดตฟีเจอร์ สัญญาณโทรศัพท์

จากเดิมที่สัญญาณโทรศัพท์เหลือต่ำถึงจะเห็นข้อความขาด ๆ หาย ๆ และมันค่อนข้างถี่

ในการอัปเดตครั้งนี้ได้มีการคิดอัลกอริทึ่มใหม่ และได้รับความช่วยเหลือจาก Kristo (forum.sa-mp.com)

ข้อความที่ขาดหายไปจะขึ้นอยู่กับระดับสัญญาณดังรูปภาพตัวอย่างด้านล่างนี้

CEFix เวอร์ชั่น 3 มาแล้ว !!

จัดเรียงเนื้อหาใน Dialog ได้ด้วย “\t” และใช้ CE_CountVowel นับวรรณยุกต์เอาไปใช้หาความยาวที่แท้จริง เพื่อตัดสินใจว่าควรจะใช้ “\t” หรือ “\t\t” เป็นต้น (ประยุกต์ใช้เอาได้ครับ)

– \t คือการเว้นวรรคใหญ่ เหมือนการกด Tab

V. 3.0.0

  • แก้ไข Parameter ฟังก์ชั่นของ CEFix ทั้งหมด
  • แก้ไขบัค CreateDynamic3DTextLabel
  • แก้ไขบัครายการของ Dialog สไตล์ DIALOG_STYLE_LIST
  • แก้ไขบัคข้อความของปุ่ม Dialog ที่อาจแสดงไม่ตรงตามสคริปต์
  • ใช้งานร่วมกับ easyDialog ได้อย่างเต็มที่ (ไม่จำเป็นต้องลำดับ Include แล้ว)

V. 3.1.0

  • แก้ไขบัคการแสดงผล Dialog กับวรรณยุกต์ “การันต์” กับ “\t”
  • เพิ่มฟังก์ชั่นในการนับวรรณยุกต์ CE_CountVowel(const input[]);

Github: https://github.com/aktah/SAMP-CEFix

error 035: argument type mismatch (argument 2)

เมื่อได้เขียนโปรแกรมไม่ว่าจะภาษาไหน อย่างน้อยก็ควรลองอ่าน Error หรือข้อความที่ได้จากการ Execute/Compile บ้าง แม้ว่าตัวเองจะไม่รู้ภาษาสักเท่าไหร่ก็ตาม อย่างในหัวข้อเราก็ต้องทำความรู้จักกับศัพท์แต่ละตัว อย่าง argument ศัพท์เฉพาะจาก Error นี้ มันคืออะไร ?

เวลาเราเรียกใช้ฟังก์ชั่นเช่น SetPlayerMoney(playerid, 5000);

ตัวหนังสือสี แดง นี่แหละครับคือ argument ซึ่งแต่ละตัวจะถูกคั่นด้วย “,” นั้นหมายถึงฟังก์ชั่นนั้นต้องมีจำนวน parameter ที่รอรับไม่น้อยกว่า argument ที่ส่งไป มันถูกเรียกต่างออกไปเพียงเพราะมันอยู่คู่กับฟังก์ชั่นที่ประกาศไว้ และมีชื่อเรียกว่า parameter ดังเช่น

public SetPlayerMoney(playerid, money) { }

พอเข้าใจดังนี้แล้ว เรามาลองอ่าน Error กันดูบ้าง argument type mismatch (..) ประมาณว่า ประเภทอาร์กิวเมนต์ไม่ตรงกัน แล้วอะไรคืออาร์กิวเมนต์เรารู้แล้วใช่ไหม? ก็คือค่าที่ส่งไปในฟังก์ชั่น อ้าวแล้วทีนี้ประเภทอาร์กิวเมนต์มันคืออะไร? ประเภทในที่นี้เป็นไปอย่างอื่นไม่ได้เลยก็คือประเภทตัวแปรจำพวก int, string, boolean เราประกาศฟังก์ชั่น SetPlayerMoney ให้ parameter ชื่อ money รับค่าที่เป็นเลขจำนวนเต็มเท่านั้น แต่ถ้าเราเรียกใช้ลักษณะนี้

SetPlayerMoney(playerid, “5000”);

มันจะจึงเกิด Error ดังหัวข้อเรื่องของเรา แต่ถ้าเราต้องการส่งและรับค่าที่เป็น string หรือข้อความใดๆ ให้เติม Bracket [] เข้าไปเพื่อกำหนดประเภทของ argument ให้เป็น string เช่น 

Public SetPlayerMoney(playerid, money[]) { }

ประเภทตัวแปรต่างๆ

int จะใช้ money (เลขจำนวนเต็มเช่น -1, 20, 50)
boolean จะใช้ bool:money (ข้อมูลที่เป็นตรรกจริงเท็จเช่น true, false, 0, 1)
string จะใช้ money[] (ข้อมูลที่เป็นข้อความหรืออาเรย์เช่น “hello”, “world”)
float จะใช้ float:money (เลขที่มีทศนิยมเช่น 5.45, 1.05)

Furniture System

อัปเดตระบบเฟอร์นิเจอร์
– เมื่อใช้ฟีเจอร์ก๊อปปี้ของระบบเฟอร์นิเจอร์ พื้นผิวทั้งหมดจะถูกก๊อปปี้ไปด้วย

ป.ล: ระบบในหลาย ๆ อย่างจะถูกย้ายไปลงใน ls-rp เร็ว ๆ นี้ !