คำเชิญผู้เล่น

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

การเล่นเกมคุณสามารถใช้วิธีการเชิญเชิญโปรมพระภายในประสบการณ์ของคุณเพื่อเร่งให้ผู้เล่นเชิญเพื่อนของพวกเขาและเพิ่มประสบการณ์การเล่น

กำลังติดตาม:

  • ผู้เชิญอินโดดีน — เรียกผู้เล่นให้เชิญเพื่อนหลายคนจากรายการเลือก หรือเชิญเพื่อนคนหนึ่ง
  • ข้อมูลปล่อยของการเปิดตัว — รวมถึงข้อมูลปล่อยของการเปิดตัวที่เป็นไปได้ ข้อมูลปล่อยของการเปิดตัว ที่สามารถอ่านผ่าน Player:GetJoinData() เมื่อเพื่อนที่เ
  • ข้อความขอเชิญผู้เล่น และข้อความแจ้งเตือนผู้เล่น ผจญภัยและข้อความแจ้งเตือนของผู้เล่น สามารถปรับแต่งได้ตามความต้องการของผู

คุณยังสามารถติดตามและรางวัลผู้เชิญและผู้เข้าร่วมโดยใช้ ระบบเชิญเพื่อนรางวัล

เรียกเพื่อเชิญเพื่อนหลายคน
เรียกเพื่อเชิญเพื่อนที่เฉพาะเจาะจง

การตั้งค่าตัวเลือกการเชิญ

ตามปกติ, คำเชิญสำหรับผู้เล่นจะแสดงเมนูเพื่อนของพวกเขาด้วย เชิญ ปุ่ม. เพื่อปรับปรุงข้อความเชิญ, เป้าหมายเพื่อนเฉพาะ, หรือรวมข้อมูลเชิญในการเปิดตัว,

สมบัติชนิดคำอธิบาย
PromptMessageสตริงข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข้อความข
InviteUserจํานวนRoblox UserId ของเพื่อนที่กำหนดเพื่อเชิญ; ถ้าไม่ได้ให้ไว้ ผู้เล่นจะถูกขอให้เลือกจากรายชื่อเพื่อน
InviteMessageIdสตริงรหัสสินค้าที่เป็นไปยังประเภท การแจ้งเตือน พิมพ์รหัสนี้ใช้เพื่อเก็บ/ตั้งค่าสตริงที่กำหนดเองสำหรับการแจ้งเตือนการเชิญที่เพื่อนได้รับ ดู การตั้งค่าตั้งค่าการแจ้งเ
LaunchDataสตริงใช้เพื่อตั้งค่าตัวอักษรใน Player:GetJoinData() การแจ้งเตือนสูงสุด 200 ตัวอักษร ดู รวมทั้งข้อมูลการปล่อยของเกม สำหรับตัวอย่างการใช้งาน
LocalScript - เชิญเพื่อนหลายคน

local SocialService = game:GetService("SocialService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
-- สร้างตัวเชิญด้วยข้อความเชิญที่กำหนดเอง
local inviteOptions = Instance.new("ExperienceInviteOptions")
inviteOptions.PromptMessage = "Ask your friends to join the adventure!"

การตั้งค่าตัวเลือกการแจ้งเตือน

ตามปกติ, การเชิญเหตุผลที่เพื่อนรับจะมี DisplayName ของผู้ส่ง, ชื่อผู้ใช้, และชื่อประสบการณ์ เพื่อปรับแต่งข้อความ, คุณสามาร

  1. คล้ายกับ เหรียญตรา ต้นแบบข้อความจะแนบมากับประสบการณ์ เฉพาะ โปรดค้นหาภาพเรื่องราวของประสบการณ์นั้นและคลิกที่นั่น

  2. ในคอลัมน์ด้านซ้าย, ภายใต้ การมีส่วนร่วม, คลิก การแจ้งเตือน

  3. ในภาพเขตกลางคลิกปุ่ม สร้างตัวอักษรแจ้งเตือน

  4. กรอกชื่อตัวตรวจสอบ (เฉพาะตัวคุณเท่านั้น) และข้อความแจ้งเตือนที่กําหนดเอง (เฉพาะตัวคุณเท่านั้น) โปรดทราบว่าคุณต้องรวม playerName ในฐานข้อมู

    ตัวอย่างสตริงการแจ้งเตือน:

    • displayName ต้องการให้คุณเข้าร่วมการผจญภัยของพวกเขาใน experienceName!
    • displayName เพิ่งเคลียร์ด่านที่หกของ experienceName คุณสามารถไหม?
  5. เมื่อพร้อมให้คลิกปุ่ม สร้าง Notification String

  6. ในหน้าการแจ้งเตือน คลิกปุ่ม สำหรับการแจ้งเตือนและเลือก คัดลอกรหัสสินทรัพย์

  7. ในวัตถุ ExperienceInviteOptions สำหรับการเชิญ ใส่ ID สินทรัพย์เป็นค่าของสมบัติค่า InviteMessageId โปรประกาศ

    LocalScript - เชิญเพื่อนหลายคน

    local SocialService = game:GetService("SocialService")
    local Players = game:GetService("Players")
    local player = Players.LocalPlayer
    -- สร้างตัวเชิญด้วย ID ผู้ใช้ของเพื่อน
    local inviteOptions = Instance.new("ExperienceInviteOptions")
    inviteOptions.InviteMessageId = "ef0e0790-e2e8-4441-9a32-93f3a5783bf1"

เรียกร้องการเชิญ

เพื่อเรียกร้องการเชิญ คุณต้องกำหนดก่อนว่าผู้เล่นสามารถส่งเชิญได้หรือไม่ เนื่องจากความสามารถอาจแตกต่างกันไปขึ้นอยู่กับแพลตฟอร์มหรือผู้เล่น

  1. โทร SocialService:CanSendGameInviteAsync() โดยรอบใน a pcall() เนื่องจากเป็นการโทรเครือข่ายที่อาจจะล้มเหลวบางครั้ง
  2. หากความสามารถเชิญได้ยืนยันแล้วให้โทร SocialService:PromptGameInvite() ด้วยตัวเลือก เชิญ เป็นตัวแปรที่สอง

เมื่อเรียกร้องได้ผู้เล่นจะเห็นการเรียกร้องบนหน้าจอเพื่อเชิญเพื่อนหลายคนหรือเพื่อนที่กำหนดใน ไอเท็มเชิญเพื่อน

LocalScript - เชิญเพื่อนหลายคน

local SocialService = game:GetService("SocialService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
-- ระบบเพื่อตรวจสอบว่าผู้เล่นสามารถส่งเชิญได้
local function canSendGameInvite(sendingPlayer)
local success, canSend = pcall(function()
return SocialService:CanSendGameInviteAsync(sendingPlayer)
end)
return success and canSend
end
local canInvite = canSendGameInvite(player)
if canInvite then
SocialService:PromptGameInvite(player)
end

รวมถึงข้อมูลปล่อย

เพื่อปรับปรุงการร่วมมือในประสบการณ์หรือจะส่งเชิญผู้เล่นให้เป็นระเบียบเรียน คุณสามารถรวม ข้อมูลปลายทาง ในการเชิญ มีประโยชน์สำหรับสถานการณ์เช่นการเส้นทางเพื่อนเชิญไปยัง

  1. เมื่อ เรียกเชิญการเชิญ ให้รวม ExperienceInviteOptions วัตถุด้วยข้อมูลที่เกี่ยวข้องที่จะใช้เมื่

    LocalScript - เชิญเพื่อนหลายคน

    local HttpService = game:GetService("HttpService")
    local SocialService = game:GetService("SocialService")
    local Players = game:GetService("Players")
    local player = Players.LocalPlayer
    local data = {
    senderUserID = player.UserId,
    spawnLocation = {12, 48, 205.5}
    }
    local launchData = HttpService:JSONEncode(data)
    -- สร้างตัวเชิญด้วยข้อมูลการปล่อย
    local inviteOptions = Instance.new("ExperienceInviteOptions")
    inviteOptions.LaunchData = launchData
    -- ระบบเพื่อตรวจสอบว่าผู้เล่นสามารถส่งเชิญได้
    local function canSendGameInvite(sendingPlayer)
    local success, canSend = pcall(function()
    return SocialService:CanSendGameInviteAsync(sendingPlayer)
    end)
    return success and canSend
    end
    local canInvite = canSendGameInvite(player)
    if canInvite then
    SocialService:PromptGameInvite(player, inviteOptions)
    end
  2. สำหรับเพื่อนที่เข้าร่วมผ่านการแจ้งเตือน, ตรวจสอบข้อมูลเปิดตัวในด้านเซิร์ฟเวอร์ผ่าน Player:GetJoinData() หากคุณเข้ารหัสข้อมูลหลายชิ้นใน JSON สำหรับคำเชิญ, จำไว้ว่าต้อ

    สคริปต์ - การใช้ข้อมูลปล่อยให้

    local HttpService = game:GetService("HttpService")
    local Players = game:GetService("Players")
    local ATTEMPT_LIMIT = 10
    local RETRY_DELAY = 1
    local function onPlayerAdded(player)
    local launchData
    for _ = 1, ATTEMPT_LIMIT do
    task.wait(RETRY_DELAY)
    local joinData = player:GetJoinData()
    if joinData.LaunchData ~= "" then
    launchData = joinData.LaunchData
    break
    end
    end
    if launchData then
    local data = HttpService:JSONDecode(launchData)
    print(data.senderUserID)
    print(data.spawnLocation)
    else
    warn("No launch data received!")
    end
    end
    Players.PlayerAdded:Connect(onPlayerAdded)
  3. หากมีข้อมูลปล่อย คุณสามารถใช้มันสำหรับวิธีการออกแบบที่หลากหลายรวมถึง:

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