السمات والإشارات

*This content is translated using AI (Beta) and may contain errors. To view this page in English, click here.

السمات الموجودة

تستخدم إعدادات مطابقة اللاعبين الافتراضية من Roblox إشارات تعتمد على سمات موجودة مثل موقع اللاعب، وفئة العمر، والكمون.

لاستخدام بيانات لمطابقة اللاعبين التي لا تتضمنها Roblox تلقائيًا في تكوينها الافتراضي، تحتاج إلى إنشاء سمات مخصصة وإشارات مخصصة.

السمةالنوعالوصف
كمون اللاعب المقدررقميالكمون المقدر للاعب في الخادم.
لديه أصدقاءكتليما إذا كان الخادم يحتوي على صديق أو لاعب آخر بنفس عنوان IP للاعب الذي ينضم.
هل تم تفعيل دردشة الصوتكتليما إذا كان اللاعب قد قام بتفعيل دردشة الصوت.
عمر اللاعبرقميعمر اللاعب.
نوع جهاز اللاعبكتلينوع جهاز اللاعب. يمكن أن يكون جهاز محمول، كمبيوتر، جهاز لوحي، وحدة تحكم، أو جهاز واقع افتراضي.
لغة اللاعبكتليلغة اللاعب.
تاريخ لعب اللاعبرقميرقم اللوغاريتم (الأساس 10) للدقائق التي لعبها اللاعب في كون معين خلال الـ 28 يومًا الماضية.
شغل الخادمرقميعدد اللاعبين في الخادم.
مجموعة دردشة نصية اللاعبكتليمجموعة دردشة نصية اللاعب حيث يمكنهم الدردشة النصية معًا.

الإشارات الموجودة

فيما يلي الإشارات المعرفة من قبل Roblox المستمدة من سمات Roblox:

الإشارةالوصف
العمرالفارق بين متوسط عمر اللاعبين في الخادم وعمر اللاعب الذي ينضم، مع فارق أقصى ذي صلة قدره 25.
نوع الجهازالنسبة المئوية للاعبين في الخادم بنفس نوع الجهاز مثل اللاعب الذي ينضم.
الأصدقاءعدد الأشخاص في الخادم الذين هم أصدقاء مع اللاعب الذي ينضم أو الذين يشاركون عنوان IP مع اللاعب الذي ينضم. 1 إذا كان هناك لاعب مفضل، و0 بخلاف ذلك.
الكمونالكمون المقدر للاعب لخادم، مع قيمة قصوى ذات صلة قدرها 250.
اللغةالنسبة المئوية للاعبين في الخادم الذين يتحدثون نفس اللغة مثل اللاعب الذي ينضم
شغلالنسبة المئوية للاعبين في الخادم مقارنة بسعة الخادم.
تاريخ اللعبالفارق بين متوسط تاريخ اللعب في الخادم وتاريخ اللعب للاعب الذي ينضم، مع فارق أقصى ذي صلة قدره 4.6.
دردشة الصوتالنسبة المئوية للاعبين في الخادم الذين لديهم دردشة صوتية مفعلة.
دردشة نصيةالنسبة المئوية للاعبين في الخادم الذين يمكنهم الدردشة النصية مع اللاعب الذي ينضم معًا.

العمر

إشارة رقمية تقارن بين أعمار اللاعبين في الخادم وعمر اللاعب الذي ينضم. هذه الإشارة لديها حد أقصى ذا صلة قدره 25. درجة الإشارة مرتبطة بشكل عكسي بفارق العمر، مما يعني أن الفوارق العمرية الأقل لها درجات أعلى.

ageDifferenceSignalScore=1min(25,ageDifference)/25\text{ageDifferenceSignalScore} = 1 - \min(25, \text{ageDifference}) / 25

حيث

ageDifference=avgServerAgejoiningPlayerAge\text{ageDifference} = |\text{avgServerAge} - \text{joiningPlayerAge}|

نوع الجهاز

إشارة كتلية تقيس نسبة اللاعبين في الخادم الذين لديهم نفس نوع الجهاز مثل اللاعب الذي ينضم. تشمل أنواع الأجهزة: كمبيوتر، جهاز محمول، جهاز لوحي، وحدة تحكم، وجهاز واقع افتراضي.

deviceTypeSignalScore=# players with same device as joining player/# players on the server\text{deviceTypeSignalScore} = \text{\# players with same device as joining player} / \text{\# players on the server}

الأصدقاء

اللاعب المفضل هو لاعب إما صديق لللاعب الذي ينضم أو يشارك نفس عنوان IP مع اللاعب الذي ينضم. إشارة الأصدقاء هي إشارة كتلية لها درجة 1 عندما يوجد لاعب مفضل في الخادم ودرجة 0 عندما لا توجد لاعبين مفضلين في الخادم.

friendsSignalScore=hasFriends ? 1:0\text{friendsSignalScore} = \text{hasFriends} \ {?} \ 1 : 0

يمكن أيضًا اعتبار إشارة الأصدقاء إشارة رقمية لها قيمة قصوى ذات صلة قدرها 1.

friendsSignalScore=min(# preferred players in server,1)/1\text{friendsSignalScore} = \min(\text{\# preferred players in server}, 1) / 1

اللغة

إشارة كتلية تقيس نسبة اللاعبين في الخادم الذين لديهم نفس إعداد اللغة مثل اللاعب الذي ينضم.

languageSignalScore=# players with same language setting as joining player/# players on the server\text{languageSignalScore} = \text{\# players with same language setting as joining player} / \text{\# players on the server}

الكمون

إشارة رقمية تقيس الوقت المقدر للاتصال باللعبة بالمللي ثانية للاعب الذي ينضم إذا كان سيلعب في خادم. هذه الإشارة لها قيمة قصوى ذات صلة قدرها 250 مللي ثانية. درجة الإشارة مرتبطة عكسيًا بالكمون، مما يعني أن قيم الكمون الأقل لها درجات أعلى.

latencySignalScore=1min(250,estimatedPingMs)/250\text{latencySignalScore} = 1 - \min(250, \text{estimatedPingMs}) / 250

الشغل

إشارة رقمية تقيس نسبة اللاعبين في الخادم بالنسبة لسعة الخادم.

occupancySignalScore=# players in server/serverCapacity\text{occupancySignalScore} = \text{\# players in server} / \text{serverCapacity}

تاريخ اللعب

تبلغ قيمة سمة تاريخ اللعب العدد اللوغاريتمي (الأساس 10) للدقائق التي لعبها اللاعب في كون معين خلال الـ 28 يومًا الماضية. تقارن هذه الإشارة الرقمية بين متوسط قيمة تاريخ اللعب اللوغاريتمي للاعبين في الخادم وبين قيمة تاريخ اللعب للاعب الذي ينضم. لهذه الإشارة حد أقصى ذي صلة قدره 4.6. درجة الإشارة مرتبطة عكسيًا بفارق تاريخ اللعب، مما يعني أن الفروق الأقل في تاريخ اللعب لديها درجات أعلى.

playHistorySignalScore=1min(4.6,playHistoryDifference/4.6)\text{playHistorySignalScore} = 1 - \min(4.6, \text{playHistoryDifference} / 4.6)، حيث

playHistoryDifference=avgServerPlayHistoryjoiningPlayerPlayHistory\text{playHistoryDifference} = |\text{avgServerPlayHistory} - \text{joiningPlayerPlayHistory}|

دردشة الصوت

يمكن أن يكون لدى اللاعب دردشة صوتية مفعلة أو معطلة. إشارة دردشة الصوت هي إشارة كتلية تقيس نسبة اللاعبين الذين لديهم نفس إعداد دردشة الصوت مثل اللاعب الذي ينضم إلى عدد اللاعبين في الخادم.

إذا كانت اللعبة قد أعطت تعطيلًا لدردشة الصوت، فإن وزن إشارة دردشة الصوت يكون 0.

voiceChatSignalScore=# players with same voice chat setting as joining player/# players on the server\text{voiceChatSignalScore} = \text{\# players with same voice chat setting as joining player} / \text{\# players on the server}

دردشة نصية

إشارة كتلية تقيس نسبة اللاعبين في الخادم الذين يمكنهم الدردشة النصية مع اللاعب الذي ينضم معًا بشكل مشترك.

textChatSignalScore=# players can text with the joining player in common /# players on the server\text{textChatSignalScore} = \text{\# players can text with the joining player in common } / \text{\# players on the server}

السمات المخصصة

تمنح السمات المخصصة إشارات مخصصة الوصول إلى بيانات اللاعب والخادم. لمزيد من المعلومات حول إنشاء سماتك المخصصة، راجع إنشاء سمة مخصصة. لمزيد من المعلومات حول سمات Roblox الموجودة، راجع السمات الموجودة.

السمةالخصائص
لاعبمستمر

بيانات اللاعب المخصصة التي تستمر في مخازن البيانات، مثل مستوى اللاعب أو نقاطه داخل اللعبة

يتم إدارتها باستخدام واجهات برمجة التطبيقات DataStore
خادمغير مستمر وتبقى فقط طالما أن الخادم نشط

بيانات خاصة بالخادم مثل مستوى الخادم أو وضع اللعبة

يتم إدارتها باستخدام واجهة برمجة التطبيقات MatchmakingService
مثال على سمة اللاعب

local DataStoreService = game:GetService("DataStoreService")
local eloStore = DataStoreService:GetDataStore("PlayerElo")
function onMatchEnded(players: {Player}, winners: {Player}, losers: {Player})
for _, player in players do
local updatedElo = CalculateUpdatedElo(player, winners, losers)
local success, errorMessage = pcall(function()
eloStore:SetAsync(player.UserId, updatedElo)
end)
end
end
مثال على سمة الخادم

local MatchmakingService = game:GetService("MatchmakingService")
local RunService = game:GetService("RunService")
if RunService:IsStudio() then
-- إعداد السمات والأشكال الأولية للاختبار
MatchmakingService:InitializeServerAttributesForStudio({
Level = "متقدم",
Elo = 123.456,
TrainingMode = true
})
end
-- استرجاع سمة مستوى
local currentLevel, errorMessage = MatchmakingService:GetServerAttribute("Level")
if errorMessage then
warn(errorMessage)
else
print("المستوى الحالي: " .. currentLevel)
end
-- تحديث قيمة سمة المستوى إلى متقدم
local success, errorMessage = MatchmakingService:SetServerAttribute("Level", "متقدم")
if not success then
warn("فشل في تحديث سمة الخادم [المستوى] إلى [متقدم] بسبب الخطأ: " .. errorMessage)
else
print("تم تعيين [المستوى] بنجاح إلى [متقدم]")
end

الإشارات المخصصة

تُنشأ الإشارات المخصصة وتُعرف بواسطةك ويمكن أن تكون رقمية أو كتلية:

  • الإشارات الرقمية هي أرقام. تقارن الفارق بين سمة اللاعب الذي ينضم والقيمة المجمعة للخادم، مع تقليل الدرجات أو زيادتها مع زيادة الفروق. على سبيل المثال، كلما اقترب مستوى مهارة لاعب من متوسط مستوى المهارة للخادم، كانت درجة الإشارة الرقمية أعلى. يتم ضرب هذه الدرجة بعد ذلك في وزن الإشارة.
  • الإشارات الكتلية هي سلاسل أو قيم بولينية. تستند إلى مدى شيوع سمة اللاعب الذي ينضم عند مقارنتها مع اللاعبين الآخرين في الخادم. على سبيل المثال، إذا كانت نسبة كبيرة من اللاعبين داخل خادم ما لديهم نفس اللغة المفضلة مثل اللاعب الذي ينضم، فإن الدرجة تزداد. يتم أيضًا ضرب هذه الدرجة في وزن الإشارة.

لمزيد من المعلومات حول إنشاء إشاراتك المخصصة، راجع إنشاء إشارة مخصصة. لمزيد من المعلومات حول الإشارات الموجودة في Roblox، راجع الإشارات الموجودة.

الإشارات الرقمية للاعب

اللاعب الذي ينضم

يقلل الفارق بين سمة اللاعب المتوسطة للخادم وسمة اللاعب الذي ينضم. الفوارق التي تزيد عن 1000 تعيد درجة إشارة مقدارها 0.

صيغة صيغة اللاعب الذي ينضم للإشارة الرقمية

local diff = math.abs(server_{aggregation_function}_{attribute_name} - joining_player_{attribute_name})
local score = 1 - math.min(diff / max_relevant_difference, 1)
return score
مثال على اللاعب الذي ينضم للإشارة الرقمية

local server_average_Elo = 2000
local joining_player_Elo = 1000
local max_relevant_difference = 1500
local diff = math.abs(server_average_Elo - joining_player_Elo)
local score = 1 - math.min(diff / max_relevant_difference, 1)
return score
قيمة ثابتة

يقلل الفارق بين سمة اللاعب المتوسطة للخادم وقيمة ثابتة من 500. الفوارق التي تزيد عن 1000 تعيد درجة إشارة مقدارها 0.

صيغة صيغة القيمة الثابتة للإشارة الرقمية

local diff = math.abs(server_sum_{attribute_name} + joining_player_{attribute_name} - constant_value)
local score = 1 - math.min(diff / max_relevant_difference, 1)
return score
مثال على قيمة ثابتة للإشارة الرقمية

local server_sum_PowerLevel = 4500
local joining_player_PowerLevel = 9901
local max_relevant_difference = 1500
local constant_value = 5000
local diff = math.abs(server_sum_PowerLevel + joining_player_PowerLevel - constant_value)
local score = 1 - math.min(diff / max_relevant_difference, 1)

الإشارات الكتلية للاعب

التركيز

يحقق أقصى نسبة من اللاعبين في الخادم الذين لديهم نفس السمة مثل سمة اللاعب الذي ينضم.

صيغة التركيز للإشارة الكتلية للاعب

local score = num_players_same_{attribute_name} / occupancy
return score
مثال على التركيز للإشارة الكتلية للاعب

local num_players_same_Guild = 15
local occupancy = 19
local score = num_players_same_Guild / occupancy
return score
التنويع

يحقق أقصى نسبة من اللاعبين في الخادم الذين لديهم سمة مختلفة عن سمة اللاعب الذي ينضم.

صيغة التنويع للإشارة الكتلية للاعب

local score = num_players_same_{attribute_name} / occupancy
return 1 - score
مثال على التنويع للإشارة الكتلية للاعب

local num_players_same_RpgClass = 15
local occupancy = 19
local score = num_players_same_RpgClass / occupancy
return score

الإشارات الرقمية للخادم

اللاعب الذي ينضم

يقلل الفارق بين سمة الخادم وسمة اللاعب الذي ينضم. الفوارق التي تزيد عن 1000 تعيد درجة إشارة مقدارها 0.

صيغة صيغة اللاعب الذي ينضم للإشارة الرقمية للخادم

local diff = math.abs(server_{attribute_name} - joining_player_{attribute_name})
local score = 1 - math.min(diff / max_relevant_difference, 1)
return score
مثال على اللاعب الذي ينضم للإشارة الرقمية للخادم

local server_Level = 4500
local joining_player_Level = 9000
local max_relevant_difference = 1500
local diff = math.abs(server_Level - joining_player_Level)
local score = 1 - math.min(diff / max_relevant_difference, 1)
قيمة ثابتة

يقلل الفارق بين قيمة سمة الخادم وقيمة ثابتة. الفوارق التي تزيد عن هذه القيمة الثابتة تعيد درجة إشارة مقدارها 0.

صيغة صيغة القيمة الثابتة للإشارة الرقمية للخادم

local diff = math.abs(server_{attribute_name} - constant_value)
local score = math.min(diff / max_relevant_difference, 1)
return score
مثال على قيمة ثابتة للإشارة الرقمية للخادم

local server_GameTime = 500
local max_relevant_difference = 1000
local constant_value = 1000
local diff = math.abs(server_GameTime - constant_value)
local score = math.min(diff / max_relevant_difference, 1)

الإشارات الكتلية للخادم

مقارنة بلاعب الذي ينضم

تكون الدرجة 1 عندما تكون قيمة سمة الخادم (على سبيل المثال، وضع اللعبة) متساوية مع سمة اللاعب (على سبيل المثال، وضع اللعبة المفضل). بخلاف ذلك، تكون درجة الإشارة 0.

صيغة صيغة اللاعب الذي ينضم للإشارة الكتلية للخادم

if server_{attribute_name} == joining_player_{attribute_name} then
return 1
else
return 0
end
مثال على اللاعب الذي ينضم للإشارة الكتلية للخادم

local server_GameMode = "نجاة"
local joining_player_GameMode = "نجاة"
if server_GameMode == joining_player_GameMode then
return 1
else
return 0
end
مقارنة بقيمة ثابتة

تكون الدرجة 1 عندما تكون قيمة سمة الخادم متساوية مع قيمة ثابتة تساوي true. بخلاف ذلك، تكون درجة الإشارة 0.

صيغة صيغة القيمة الثابتة للإشارة الكتلية للخادم

if server_{attribute_name} == constant_value then
return 1
else
return 0
end
مثال على قيمة ثابتة للإشارة الكتلية للخادم

local server_GameNotStarted = true
if server_GameNotStarted == true then
return 1
else
return 0
end
©2026 شركة Roblox Corporation. تُعد منصّة Roblox، وشعار Roblox وشعار "توسيع حدود المخيلة"، من ضمن علاماتنا التجارية المسجّلة وغير المسجّلة في الولايات المتحدة وبلدان أخرى.