I have rendered the entire map into a bird's-eye view image, and have it as an ImageButton. Here's my weak attempt at the question:
local Players = game:GetService('Players')
local localPlayer = Players.LocalPlayer
local UserInputService = game:GetService('UserInputService')
local button = localPlayer.PlayerGui:WaitForChild('Gui').Map
button .MouseButton1Click:Connect(function()
local relativeMousePos = UserInputService:GetMouseLocation() - button.AbsolutePosition
local pos = Vector3.new(relativeMousePos.X, 200, relativeMousePos.Y)
print(pos)
localPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(pos)
end)
While it certainly does teleport, but neither does the scale or the position aligns with the actual map.
I have seen these posts:
DevForum: 2D positioning to 3D positioning
DevForum: How would I get the world position of a GUI properly?
DevForum: How to find the cursor position inside a gui object
However I cannot understand them well enough to combine and apply them to my situation.

5 comments
Perhaps I did not explain this clearly, but what I am trying to accomplish is have the player click on a minimap, a GUI. Which would then teleport them to the corresponding location in the workspace. Refer to my linked posts for what I am trying to do.
Oh I understand. I thought you're trying to click in a flat Baseplate and teleporting to the position of the mouse
Took me almost an hour to type the answer just to get corrected by the OP. XD
My fingers hurt :)\
Ahaha, my apologies for not making it clear