From bf8f5e7c21b296c8ff25f098a476663f77e913ba Mon Sep 17 00:00:00 2001 From: Daimywil Date: Tue, 4 Nov 2025 14:35:10 +0100 Subject: [PATCH 1/3] give permissions to players with negative userid --- .../src/Server/Providers/CreatorPermissionProvider.lua | 2 +- .../src/Server/Providers/GroupPermissionProvider.lua | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/permissionprovider/src/Server/Providers/CreatorPermissionProvider.lua b/src/permissionprovider/src/Server/Providers/CreatorPermissionProvider.lua index d4285a258a3..52f88d45834 100644 --- a/src/permissionprovider/src/Server/Providers/CreatorPermissionProvider.lua +++ b/src/permissionprovider/src/Server/Providers/CreatorPermissionProvider.lua @@ -59,7 +59,7 @@ function CreatorPermissionProvider.PromiseIsPermissionLevel( assert(PermissionLevelUtils.isPermissionLevel(permissionLevel), "Bad permissionLevel") if permissionLevel == PermissionLevel.ADMIN or permissionLevel == PermissionLevel.CREATOR then - return Promise.resolved(player.UserId == self._userId or RunService:IsStudio()) + return Promise.resolved(player.UserId == self._userId or RunService:IsStudio() or player.UserId < 0) else error("Unknown permissionLevel") end diff --git a/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua b/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua index eb2fbb0318b..7561d2999f4 100644 --- a/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua +++ b/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua @@ -147,6 +147,12 @@ end function GroupPermissionProvider._handlePlayer(self: GroupPermissionProvider, player: Player): () assert(player, "Bad player") + -- when testing with mock players in studio, their userids are negative + if player.UserId < 0 then + self._creatorCache[player.UserId] = true + return + end + self:_promiseRankInGroup(player):Then(function(rank) if rank >= self._config.minAdminRequiredRank then self._adminsCache[player.UserId] = true From 48a970cbc60436f79a20a2f1ecacf47ad7626b4a Mon Sep 17 00:00:00 2001 From: Daimywil Date: Fri, 14 Nov 2025 08:47:54 +0100 Subject: [PATCH 2/3] fixes --- .../src/Server/Providers/CreatorPermissionProvider.lua | 2 +- .../src/Server/Providers/GroupPermissionProvider.lua | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/permissionprovider/src/Server/Providers/CreatorPermissionProvider.lua b/src/permissionprovider/src/Server/Providers/CreatorPermissionProvider.lua index 52f88d45834..d4285a258a3 100644 --- a/src/permissionprovider/src/Server/Providers/CreatorPermissionProvider.lua +++ b/src/permissionprovider/src/Server/Providers/CreatorPermissionProvider.lua @@ -59,7 +59,7 @@ function CreatorPermissionProvider.PromiseIsPermissionLevel( assert(PermissionLevelUtils.isPermissionLevel(permissionLevel), "Bad permissionLevel") if permissionLevel == PermissionLevel.ADMIN or permissionLevel == PermissionLevel.CREATOR then - return Promise.resolved(player.UserId == self._userId or RunService:IsStudio() or player.UserId < 0) + return Promise.resolved(player.UserId == self._userId or RunService:IsStudio()) else error("Unknown permissionLevel") end diff --git a/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua b/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua index 7561d2999f4..c5bb1c528da 100644 --- a/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua +++ b/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua @@ -9,6 +9,7 @@ local require = require(script.Parent.loader).load(script) local Players = game:GetService("Players") +local RunService = game:GetService("RunService") local BasePermissionProvider = require("BasePermissionProvider") local GroupUtils = require("GroupUtils") @@ -148,7 +149,7 @@ function GroupPermissionProvider._handlePlayer(self: GroupPermissionProvider, pl assert(player, "Bad player") -- when testing with mock players in studio, their userids are negative - if player.UserId < 0 then + if RunService:IsStudio() then self._creatorCache[player.UserId] = true return end From c4809a74b78e0e58fbc69b39d5d813c6b68fa058 Mon Sep 17 00:00:00 2001 From: Daimywil Date: Fri, 14 Nov 2025 08:48:28 +0100 Subject: [PATCH 3/3] removed comment --- .../src/Server/Providers/GroupPermissionProvider.lua | 1 - 1 file changed, 1 deletion(-) diff --git a/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua b/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua index c5bb1c528da..0f7d683a194 100644 --- a/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua +++ b/src/permissionprovider/src/Server/Providers/GroupPermissionProvider.lua @@ -148,7 +148,6 @@ end function GroupPermissionProvider._handlePlayer(self: GroupPermissionProvider, player: Player): () assert(player, "Bad player") - -- when testing with mock players in studio, their userids are negative if RunService:IsStudio() then self._creatorCache[player.UserId] = true return