CCodelab Station
ผลิตภัณฑ์

โค้ด GMod gamemode ที่คุณเขียนและทดสอบบน PC ของคุณเอง

01

GMod gamemode คือโฟลเดอร์ที่มีไฟล์ข้อมูลและโฟลเดอร์ย่อย gamemode/ ซึ่งมี init.lua, cl_init.lua และ shared.lua โดย Codelab Station อ่านโฟลเดอร์นั้นและแก้ไขไฟล์ Lua ที่คุณระบุ พร้อม diff ก่อนที่คุณจะยอมรับในโหมด Ask first มันอยู่นอกเกม ทุกการกระทำแสดงเป็นการ์ดพร้อมผลลัพธ์จริง

01

อ่านก่อนเขียน

list_dir, glob, read_file และ grep ทำแผนผังแอดออนก่อน การแก้ไขจึงเริ่มจากสิ่งที่โฟลเดอร์ของคุณมีอยู่จริง

02

การแก้ไขที่คุณตรวจได้

edit_file แสดง diff และ write_file สร้างไฟล์ใหม่ ขณะที่ Ask first หยุดก่อนการเปลี่ยนแปลงทุกครั้ง

03

จัดระเบียบหลายแอดออน

การรวมหลายแอดออนไว้ในโฟลเดอร์เดียวเป็นงานของ list_dir, grep, move_file และ diff ที่คุณตรวจ

เอเจนต์ทำอะไรได้บ้าง

การรันหนึ่งครั้ง ทีละการ์ด

ทุกการกระทำแสดงในแชตเป็นการ์ดพร้อมผลลัพธ์จริง และการรันนี้สร้างโฟลเดอร์ entity ลังในแอดออนที่คุณเขียนเอง แล้วตรวจสอบมัน ยอมรับหรือปฏิเสธทีละการ์ด

สองงานที่มอบให้ได้

สร้างแอดออน entity ของ GMod จากแผน

เริ่มในโหมด Plan only และอธิบาย scripted entity เช่น ลังที่ผู้เล่นสปอว์นได้ เอเจนต์อ่านแอดออนด้วย list_dir และแสดงรายการไฟล์ที่จะเขียนใต้ lua/entities/ Plan only ไม่เขียนอะไรเลย สลับไปที่ Ask first แล้ว write_file จะสร้าง shared.lua, init.lua และ cl_init.lua ทีละการ์ด หากโมเดลของลังไม่แสดง อาจเป็นเพราะเกมหาโมเดลของแอดออนไม่พบ glob จึงแสดงรายการโฟลเดอร์ models และคุณเทียบพาธกับพาธโมเดลใน Lua ของคุณ ขั้นตอนวางแผนก่อนแบบเดียวกันนี้เหมาะกับไอเดียที่ใหญ่กว่า เช่น ม็อดที่สปอว์นศัตรูทั่วแมป ตรวจ diff ทุกอัน แล้วโหลด gm_construct เพื่อทดสอบ

เริ่ม gamemode GMod ขนาดเล็กบน Sandbox

gamemode คือโฟลเดอร์ใน garrysmod/gamemodes ที่มีไฟล์ข้อความข้อมูลและโฟลเดอร์ย่อย gamemode/ ซึ่งมี init.lua, cl_init.lua และ shared.lua ให้เอเจนต์สร้างโครงสร้างนั้นและเพิ่ม DeriveGamemode("sandbox") เพื่อให้กติกาของคุณสร้างบน Sandbox มันใช้ make_dir และ write_file สำหรับไฟล์ และใช้ Shell สำหรับสคริปต์เปิดเซิร์ฟเวอร์ของคุณ โดยระบุ gamemode และแมปเป็นพารามิเตอร์เริ่มต้น ข้อผิดพลาด Lua แสดงในคอนโซลของเกม และ ocr อ่านข้อผิดพลาดจากภาพหน้าจอได้ เปิด Ask first ไว้เสมอ อ่าน diff ทุกอัน แล้วทดสอบบน gm_flatgrass

สิ่งที่ Codelab Station ไม่ทำ

Codelab Station ไม่ใช่ปลั๊กอินของเกมและไม่แตะต้องไคลเอนต์ของเกม เซิร์ฟเวอร์อื่นอยู่นอกขอบเขต ผู้เล่นและบัญชีที่คุณไม่ได้เป็นเจ้าของก็อยู่นอกขอบเขตเช่นกัน และมันรับรองไม่ได้ว่าโค้ดถูกต้อง คุณจึงต้องทดสอบทุกการเปลี่ยนแปลงและอ่าน diff ทุกอันด้วยตัวเอง

Codelab Station สำหรับ Windows

ลองกับสำเนาของแอดออนหนึ่งตัว

ดาวน์โหลด Codelab Station ↗