
Keyboard By noobdOlan

Reviewed by MatttsPaid revieweron How review works
Does it work?
No reports yetNo reports yet. Tried it? Be the first to say.
Doesn't work on Delta, Arceus X, Codex, Vega X or Solara. The uploader marked it.
Description
š® Roblox Mobile Virtual Keyboard GUI | QWERTY + WASD + SPACE š± A mobile-friendly virtual keyboard GUI for Roblox, designed to make keyboard controls easier to access on touchscreen devices. ⨠Features - š¤ Keyboard buttons: Q, E, R, T, Y, U, I, O, P, F, G, H, J, K, L, Z, X, C, V, B, N, M. - š¹ļø Movement controls: W, A, S, D. - ā¬ļø SPACE button for jumping. - šØ Semi-transparent buttons with rounded corners. - š Adjustable UI scale and screen positioning. - š Automatically recreates the GUI when the character respawns. - š± Designed with mobile players in mind. š Compatibility - Roblox mobile executors: compatibility may vary. - Some games or executors may block virtual keyboard input. - Uses Roblox's "VirtualInputManager" to simulate keyboard events. š Credits Original script author: NoobdOlan / Not specified. Please give proper credit to the original author if you know who created the script. ā ļø Disclaimer: This script is provided for educational and testing purposes. Functionality depends on the executor, Roblox environment, and game permissions. š Like and favorite if you find this script useful!
local Players = game:GetService("Players")
local VirtualInputManager = game:GetService("VirtualInputManager")
local CollectionService = game:GetService("CollectionService")
local player = Players.LocalPlayer
local scale = 0.6
local offsetX = -50
local offsetY = 50
local function createGUI()
if player:FindFirstChild("PlayerGui") and player.PlayerGui:FindFirstChild("main") then
player.PlayerGui.main:Destroy()
end
local G2L = {}
G2L["ScreenGui_1"] = Instance.new("ScreenGui")
G2L["ScreenGui_1"].Name = "main"
G2L["ScreenGui_1"].Parent = player:WaitForChild("PlayerGui")
G2L["ScreenGui_1"].ZIndexBehavior = Enum.ZIndexBehavior.Sibling
CollectionService:AddTag(G2L["ScreenGui_1"], "main")
local function createButton(name, key, posX, posY, sizeX, sizeY)
local b = Instance.new("TextButton", G2L["ScreenGui_1"])
b.Name = name
b.BorderSizePixel = 0
b.TextSize = 96 * scale
b.BackgroundColor3 = Color3.fromRGB(125,125,125)
b.FontFace = Font.new("rbxasset://fonts/families/RomanAntique.json")
b.BackgroundTransparency = 0.5
b.Size = UDim2.new(0, sizeX * scale, 0, sizeY * scale)
b.Text = key
b.Position = UDim2.new(0, posX * scale - offsetX, 0, posY * scale + offsetY)
local c = Instance.new("UICorner", b)
c.CornerRadius = UDim.new(91919120, 0)
b.MouseButton1Click:Connect(function()
VirtualInputManager:SendKeyEvent(true, Enum.KeyCode[key], false, game)
task.wait(0.05)
VirtualInputManager:SendKeyEvent(false, Enum.KeyCode[key], false, game)
end)
end







