I found the issue.
Ok, so what I was doing was I was going through the keys and sending a request to build a gui for each one to a certain player in this script:
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local addGui = ReplicatedStorage.FireAddGUI
local DataStoreService = game:GetService("DataStoreService")
local rankedStore = DataStoreService:GetDataStore("RankedStore")
Players.PlayerAdded:Connect(function(plr)
if plr:GetRankInGroup(11635716) >= 254 then
local success, pages = pcall(function()
return rankedStore:ListKeysAsync()
end)
if success then
local passed = {}
while task.wait(0.1) do
for i, v in pairs(pages:GetCurrentPage()) do
table.insert(passed,v)
end
if pages.IsFinished == true then
break
end
pages:AdvanceToNextPageAsync()
end
for i, name in pairs(passed) do
addGui:FireClient(plr,name.KeyName)
print("ui request sent for "..name.KeyName)
end
end
end
end)
Now, since usually when I work with remote events, I’m firing it from the client, not the server. When you fire it from the client, the server receives the client it was fired from and any other arguments you send through.
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local fireAddGui = ReplicatedStorage.FireAddGUI
local Players = game:GetService("Players")
local localPlayer = Players.LocalPlayer
local playerGui = localPlayer:WaitForChild("PlayerGui")
local resultsScreen = playerGui:WaitForChild("ResultsScreen")
local resultsFrame = resultsScreen.ScrollingFrame
local playerEx = resultsFrame.PlayerExample
local xValue = playerEx.Position.X.Offset
local yValue = playerEx.Position.Y.Offset
fireAddGui.OnClientEvent:Connect(function(plr,name)
local player = playerEx:Clone()
player.Parent = resultsFrame
player.Visible = true
player.Position = UDim2.new(0, tonumber(xValue), 0, tonumber(yValue) + 60)
player.Text = tostring(name)
print("ui added")
playerEx = player
xValue = player.Position.X.Offset
yValue = player.Position.Y.Offset
end)
So if this script were a server side script and the first one was client side, plr would be me, the player it was sent from and name would be the keyname. Since this one is client and the first one is server, plr is irrelevant, because when a remote event is fired from the server, the client receives only the arguments passed through. I was mixing those up, so I simply got rid of the plr parameter, and the issue was fixed! 
P.S.
This response is mostly for people who look at this topic later.