GlobalDataStore

แสดงที่เลิกใช้งานแล้ว

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

ไม่สามารถสร้าง
ไม่ซ้ำ

A GlobalDataStore เปิดเผยระเบียบาลในการบันทึกและโหลดข้อมูลสำหรับ DataStoreService

ดู ห้องเก็บข้อมูล สำหรับคู่มือที่ละเอียดเกี่ยวกับโครงสร้างข้อมูล การจัดการ การแก้ไขข้อผิดพลาด ฯลฯ

ร้านค้าข้อมูลไม่สนับสนุนการจัดเวอร์ชันและเมทาดันข้อมูล ดังนั้น DataStoreKeyInfo จึงเป็น nil สำหรับกุญแจใน OrderedDataStore หากคุณต้องการการจัดเวอ

สรุป

วิธีการ

  • ผลตอบแทน

    กลับค่าของกุญแจในคลังข้อมูลที่กำหนดและ DataStoreKeyInfo ริงค์

  • IncrementAsync(key : string,delta : number,userIds : Array,options : DataStoreIncrementOptions):Variant
    ผลตอบแทน

    เพิ่มมูลค่าของกุญแจโดยจำนวนเงินที่กำหนด (ทั้งสองต้องเป็นตัวเลข)

  • ผลตอบแทน

    ลบรหัสที่ระบุโดยให้รักษารุ่นที่เข้าถึงได้

  • SetAsync(key : string,value : Variant,userIds : Array,options : DataStoreSetOptions):Variant
    ผลตอบแทน

    ตั้งค่าค่าเก็บข้อมูลสำหรับกุญแจที่กำหนด

  • UpdateAsync(key : string,transformFunction : function):Tuple
    ผลตอบแทน

    คีย์

คุณสมบัติ

วิธีการ

GetAsync

ผลตอบแทน

ฟังก์ชันนี้จะส่งค่าล่าสุดของกุญแจที่ให้และตัวอย่าง DataStoreKeyInfo ของมัน หากกุญแจไม่มีอยู่หรือหากเวอร์ชันล่าสุดถูกกำกับว่าเป็นของเก่า ทั้งสองค่าจะกลับมาเป็น nil

กุญแจจะถูกเก็บไว้ในท้องถิ่นเป็นเวลา 4 วินาทีหลังจากการอ่านครั้งแรก การโทร GlobalDataStore:GetAsync() ภายใน 4 วินาทีนี้จะส่งค่าจากคาเช็น การเ

เพื่อรับเวอร์ชันที่แน่นอนเช่นเวอร์ชันก่อนหน้านี้ให้ใช้ DataStore:GetVersionAsync()

พารามิเตอร์

key: string

ชื่อคีย์สำหรับข้อมูลที่ต้องการ หาก DataStoreOptions.AllScopes ถูกตั้งค่าเป็น true เมื่อเข้าถึงร้านค้าข้อมูลผ่าน DataStoreService:GetDataStore() คีย์นี้จะต้องรวมอยู่กับสเก็บเกียวเดิมเ

ค่าเริ่มต้น: "nil"

ส่งค่ากลับ

มีค่าของรายการในสโตร์ข้อมูลด้วยกุญแจที่ให้และ DataStoreKeyInfo รุ่นที่รวมเลขเวอร์ชันที่สร้างขึ้นและเวลาที่สร้างขึ้นรุ่นและฟังก์ชันที่จะดึง UserIds และเมท

IncrementAsync

Variant
ผลตอบแทน

ฟังก์ชันนี้เพิ่มมูลค่าของตัวอักษรโดยจำนวนเงินที่กำหนดไว้ (ทั้งสองต้องเป็นตัวเลข)

OrderedDataStore ไม่รองรับการเวอร์ชัน ดังนั้นการโทรใช้วิธีนี้ใน OrderedDataStore กุญแจจะเขียนค่าปัจจุบันด้วยค่าเพิ่มขึ้นและทำให้เวอร์ชันก่อนหน้านี้ไม่สามารถใช้งานได้

พารามิเตอร์

key: string

ชื่อคีย์สำหรับข้อมูลที่ควรได้รับการปรับปรุง หาก DataStoreOptions.AllScopes ถูกตั้งค่าเป็นจริงเมื่อเข้าถึงร้านค้าข้อมูลผ่าน DataStoreService:GetDataStore() คีย์นี้จะต้องรวมอยู่กับ

delta: number

จำนวนเงินที่จะเพิ่มมูลค่าปัจจุบัน

ค่าเริ่มต้น: 1
userIds: Array

(อpcional) ตารางของ UserIds คีย์

ค่าเริ่มต้น: "{}"

(อpcional) DataStoreIncrementOptions อินสแตนซ์ที่ผสานค่าตัวแปรหลายอันเป็นเมทาดาต้าและสามารถขยายให้ได้ในอนาคต

ค่าเริ่มต้น: "nil"

ส่งค่ากลับ

Variant

มูลค่าที่ปรับปรุงของรายการในสโตร์ข้อมูลด้วยกุญแจที่ให้

RemoveAsync

ผลตอบแทน

ฟังก์ชันนี้จะทำหน้าที่เป็นตัวแทนของกุญแจที่กำหนดเป็น "รอง" โดยการสร้างรุ่น "tombstone" คีย์ก่อนที่จะทำเช่นนี้ มันจะส่งคืนรุ่นล่าสุดก่อนที่จะเรียกลบ

หลังจากที่กุญแจถูกลบออกโดยการใช้งานนี้, GlobalDataStore:GetAsync() จะเรียกร้องสำหรับกุญแจนั้นจะกลับมาเป็น nil อันเก่า เวอร์ชันเก่าของกุญแ

OrderedDataStore ไม่รองรับการเวอร์ชัน ดังนั้นการโทร RemoveAsync() ที่ปุ่ม OrderedDataStore จะลบออกถาวร

วัตถุที่ลบออกจะถูกลบออกถาวรหลังจาก 30 วัน

หากค่านั้นถูกลบออกโดย GlobalDataStore:RemoveAsync() หรือ DataStore:RemoveVersionAsync() ฟังก์ชันจะกลับมาเป็น nil สำหรับค่า และ 1> Class.DataStoreKeyInfo1> สำหรับค่าตามลำดั

พารามิเตอร์

key: string

ชื่อสําคัญที่จะถูกลบออก หาก DataStoreOptions.AllScopes ถูกตั้งค่าให้เป็นจริงเมื่อเข้าถึงสโตร์ข้อมูลผ่าน DataStoreService:GetDataStore() คํานี้จะต้องรวมอยู่กับสเกลล์เดิมเมื่อใดก็ต


ส่งค่ากลับ

มีค่าของสโตร์ข้อมูลก่อนลบและ DataStoreKeyInfo รุ่นที่รวมเลขเวอร์ชัน วันที่และเวลาที่สร้างขึ้น และฟังก์ชันในการดึง UserIds และเมทริดัม

SetAsync

Variant
ผลตอบแทน

ฟังก์ชันนี้ตั้งค่าค่าล่าสุด, UserIds คีย์

ค่าในสโตร์ข้อมูลมีรุ่น, หมายถึง GlobalDataStore:SetAsync() จะสร้างรุ่นใหม่ทุกครั้งที่มันถูกเรียก การเข้าถึงรุ่นก่อนหน้านี้สามารถดำเนินการผ่าน Class

OrderedDataStore ไม่รองรับการจัดเวอร์ชัน ดังนั้นการโทรใช้วิธีนี้ใน OrderedDataStore กุญแจจะเขียนเขียวค่าปัจจุบันและทำให้เวอร์ชันก่อนหน้านี้ไม่สามารถใช้งานได้

คำอธิบายของเมทาดาต้องอัปเดตด้วยค่า แม้ว่าจะไม่มีการเปลี่ยนแปลงใด ๆ ในค่าปัจจุบันก็ตาม หากไม่ได้อัปเดตค่าปัจจุบันจะสูญหาย

สตริงใด ๆ ที่เก็บไว้ในห้องเก็บข้อมูลต้องเป็นข้อมูลที่ถูกต้อง UTF-8 ใน UTF-8 จะใช้มูลค่ามากกว่า 127 สำหรับการเข้ารหัสรหัสขนาดเ

การตั้งค่า vs. อัปเดต

GlobalDataStore:SetAsync() เหมาะสำหรับการปรับปรุงอย่างรวดเร็วของกุญแจที่เฉพาะเจาะไป และจะนับเฉพาะขีดจำกัดการเ

พารามิเตอร์

key: string

ชื่อคีย์สำหรับข้อมูลที่ควรตั้งค่า หาก DataStoreOptions.AllScopes ถูกตั้งค่าเป็น true เมื่อเข้าถึงร้านค้าข้อมูลผ่าน DataStoreService:GetDataStore() คีย์นี้จะต้องรวมอยู่กับสเก็บเกียวเด

value: Variant

มูลค่าที่กุญแจรหัสจะตั้งค่า

userIds: Array

ตารางของ UserIds แนะนำมากสำหรับการช่วยเหลือในการติดตาม/การลบโดยไม่ต้องใช้ความยินยอมของผู้ใช้

ค่าเริ่มต้น: "{}"

(ไม่บังคับ) DataStoreSetOptions คีย์

ค่าเริ่มต้น: "nil"

ส่งค่ากลับ

Variant

รหัสเวอร์ชันของเวอร์ชันที่เพิ่งสร้าง สามารถใช้เพื่อดึงข้อมูลกุญแจโดยใช้ GetVersionAsync() หรือลบออกโดยใช้ RemoveVersionAsync()

UpdateAsync

ผลตอบแทน

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

หากการอัปเดตสำเร็จ, เวอร์ชั่นใหม่ของค่าจะถูกสร้างขึ้นและเวอร์ชั่นเก่าจะยังคงเปิดใช้งานผ่าน DataStore:ListVersionsAsync() และ DataStore:GetVersionAsync()

OrderedDataStore ไม่รองรับการจัดเวอร์ชัน ดังนั้นการเรียกใช้ฟังก์ชันนี้ใน OrderedDataStore คีย์จะเขียนค่าปัจจุบันและทำให้เวอร์ชันก่อนหน้านี้ไม่สามารถใช้งานได้

ในกรณีที่เซิร์ฟเวอร์เกมอื่นอัปเดตกุญแจในช่วงเวลาสั้น ๆ ระหว่างการดึงข้อมูลปัจจุบันของกุญแจและการตั้งค่าค่าของกุ

สตริงใด ๆ ที่เก็บไว้ในห้องเก็บข้อมูลข้อมูลจะต้องเป็นข้อมูลที่ถูกต้อง UTF-8 ใน UTF-8 จะใช้มากกว่า 127 เป็นข้อมูลเฉพาะสำหรับการเ

การตั้งค่า vs. อัปเดต

GlobalDataStore:SetAsync() เหมาะสำหรับการปรับปรุงอย่างรวดเร็วของกุญแจที่เฉพาะเจาะไป และจะนับเฉพาะขีดจำกัดการเ

หน้าโค้งของคุณ

คุณสมบัติตัวเรียกรับสองอาร์กุณหมูล:

  • อัปเดต
  • DataStoreKeyInfo รุ่นที่มีข้อมูลเวอร์ชันล่าสุด (สามารถละเลยได้หากไม่ใช้เมทาดาต้า)

ในทางกลับกัน หน้าเรียกคืนจะกลับมาให้สามค่า:

  • คีย์
  • Class.Player.UserId|UserIds หลายรายการสำหรับการรวมกับคีย์ DataStoreKeyInfo:GetUserIds() ควรจะได้รับกลับมา ยกเว้นกรณีที่มีการเปลี่ยนแปลง ID ปัจจุบัน ในกรณีนั้นทุกรายการจะถูกล้าง
  • ตาราง Lua ที่มีข้อมูลเมทาดาต้าเพื่อเชื่อมโยงกับกุญแจ DataStoreKeyInfo:GetMetadata() ควรจะส่งคืน ยกเว้นว่าข้อมูลเมทาดาต้าปัจจุบันจะไม่ถูกเปลี่ยนแปลง ในกรณีอื่น ๆ จะทำให้ข้อมูลเมทาดาต้าทั้งหมดถูกล

หากคืนค่ากลับมาเป็น nil แทนที่นั้น คีย์

คุณสมบัติตัวเรียกไม่สามารถผลิตได้ดังนั้นจึงอย่ารวมเรียกในรูปแบบ Library.task.wait() เช่นกัน

พารามิเตอร์

key: string

ชื่อคีย์สำหรับข้อมูลที่ควรได้รับการปรับปรุง หาก DataStoreOptions.AllScopes ถูกตั้งค่าเป็นจริงเมื่อเข้าถึงร้านค้าข้อมูลผ่าน DataStoreService:GetDataStore() คีย์นี้จะต้องรวมอยู่กับ

transformFunction: function

ฟังก์ชันการเปลี่ยนแปลงที่ใช้ค่าปัจจุบันและ DataStoreKeyInfo เป็นตัวประกอบและส่งค่าใหม่พร้อมกับตัวเลือก UserIds และเมทริกซ์


ส่งค่ากลับ

มูลค่าที่ปรับปรุงของรายการในสโตร์ข้อมูลด้วยกุญแจที่ให้และ DataStoreKeyInfo รุ่นที่รวมถึงหมายเลขเวอร์ชัน วันที่และเวลาที่เวอร์ชันถูกสร้าง และฟังก์ชันที่จะดึง

อีเวนต์