HEAVILY OUTDATED.
Commission Status: CLOSED | Long Term slots: 0 | Short Term slots: 0
Hey! I’m Virtual, also known as VirtualButFake. I’m a 17 year old programmer from the Netherlands. I’m a ROBLOX Developer with over 7 years of programming experience. I have contributed to several large-sized projects and have worked with large groups like @Toad_II 's [SCPF] :Special Containment Procedures Foundation and well-known names like @unix_system and @joritochip. I’m nearing 7 years of experience in Lua & I’m capable of programming in several other languages such as C# & JS, primarily for Discord bots. I started simple programming at the age of 7 (Scratch, LEGO Mindstorms) and moved on to more advanced programming when I was 7, mainly using platforms like ROBLOX.
I’m a full stack programmer, meaning I’m both capable of doing front end (that what the player sees), both for UI & anything else you may require, and back-end (algorithms in the background). I’m also capable of designing UI, primarily using programs like Adobe Illustrator.
Commissions in the SCP genre (putting this in 1 as it's a bunch that weren't anything special) (Programmer & UI Designer)
SECURE•CONTAIN•PROTECT - Roblox
Chaos Insurgency - Roblox
[SCP:F] Secure Containment Facilities | [REDACTED] - Roblox
These commissions were extremely long ago, and with that my skill was far worse than it is now. These commissions were however great for getting used to working in teams and learning to code alongside other scripters, practically forcing me to organize my code. It was a great learning experience which still benefits me to this day.
Commission for Kecai (Programmer & UI Designer)
Old commission. I was hired to program their cafe but shortly into the project it was cancelled, only to be revived later on (i was gone already). I personally feel as if my skill wasn’t sufficient back then for this project, as I still failed to do some basic things like code organization and was nowhere near where I am right now with my UI skill.
Commission for SynthKnots (group is now led by another person) (Programmer & UI Designer)
Just like the SCP genre commissions, this commission was long ago. However, it was also a great learning experience since this enhanced my front-end programming & UI skill significantly. The UI style of their games pulled me out of my comfort zone and forced me to be extremely creative with my UI. I also learnt to work alongside other developers even better and even got to work with some big names on the platform.
Commission for Toad_II (UI Designer, Programmer & Project Lead)
Foundation Roleplay - Roblox
Octa Studios - Roblox
This was my first “real”, so-to-speak, job. I worked with an enormous development team and got an immense amount of feedback on everything I did. I truly believe this commission was extremely beneficial to me simply due to the fact that other skilled programmers gave feedback on my code and helped me make my code more organized & efficient.
I also led 2 projects but was forced to resign shortly after due to personal issues.
This is only some of my experience (the ones I can remember from the top of my head)
Scripting
weather thing is pretty cool; runs off of like a 50 line module & then just uses configs to do the actual weather, example config would be:
--[[
Rainy weather
]]
local events = require(script.Parent.Events)
return {
CloudCover = .8,
CloudDensity = .8,
CloudColor = Color3.fromRGB(120,120,120),
EventInterval = 10,
EventChance = 50, -- summary: will get a random number between 1 & 100 every EventInterval seconds & if it's below EventChance it'll start a random event
StartScript = events.Init,
EndScript = events.End,
RandomEvents = { --
--events.RandomEvent,
}
}
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local TweenService = game:GetService("TweenService")
local atmosphere = script.Atmosphere
local LightingAtmosphere = game.Lighting.Atmosphere
local atmosphereProperties = {
Density = atmosphere.Density,
Offset = atmosphere.Offset,
Color = atmosphere.Color,
Decay = atmosphere.Decay,
Glare = atmosphere.Glare,
Haze = atmosphere.Haze
}
module.Init = function()
ReplicatedStorage.Environment.Rain.Enabled.Value = true
ReplicatedStorage.Environment.Rain.Intensity.Value = .5
TweenService:Create(atmosphere,TweenInfo.new(10,Enum.EasingStyle.Sine,Enum.EasingDirection.InOut),atmosphereProperties):Play()
end
module.End = function()
ReplicatedStorage.Environment.Rain.Enabled.Value = false
ReplicatedStorage.Environment.Rain.Intensity.Value = 0
--TweenService:Create(atmosphere,TweenInfo.new(10,Enum.EasingStyle.Sine,Enum.EasingDirection.InOut),startProperties):Play()
end
return module
scripting style example:
local player = {}
local players = {}
player.__index = player
local RunService = game:GetService("RunService")
local typeValues = {
["string"] = "StringValue",
["number"] = "NumberValue",
["boolean"] = "BoolValue"
}
module.new = function(plrInstance)
if players[plrInstance.Name] then
return players[plrInstance.Name]
end
local plr = {}
setmetatable(plr,player)
local folder = Instance.new("Folder")
folder.Name = plrInstance.Name
folder.Parent = game:GetService("ReplicatedStorage").PlayerData
plr.Folder = folder
players[plrInstance.Name] = plr
return plr,folder
end
module.getPlayer = function(plrInstance)
if players[plrInstance.Name] then
return players[plrInstance.Name]
end
end
function player:New(name,value)
if typeof(value) ~= "table" then
if typeValues[typeof(value)] then
local valueObject = Instance.new(typeValues[typeof(value)])
valueObject.Name = name
valueObject.Value = value
valueObject.Parent = self.Folder
else
error(("Failed to find associated value type with %s"):format(typeof(value)))
end
else
assert(value.Type == nil or value.Properties == nil,"Missing required dictionary entry Type or Properties")
local succ,err = pcall(function()
local Inst = Instance.new(value.Type)
Inst.Name = name
for index,value in pairs(value.Properties) do
Inst[index] = value
end
end)
end
end
function player:Set(name,value)
if self.Folder:FindFirstChild(name) then
local found = self.Folder:FindFirstChild(name)
if found:IsA("ValueBase") then
found.Value = value
elseif not found:IsA("ValueBase") and typeof(value) == "table" then
for index,value in pairs(value) do
local success,err = pcall(function()
found[index] = value
end)
if success == false then
warn(("Error occured when setting property %s of %s: %s"):format(index,found.Name,err))
end
end
end
return true
else
error(("Failed to find data value %s"):format(name))
end
end
function player:Get(name)
if self.Folder:FindFirstChild(name) then
local found = self.Folder:FindFirstChild(name)
return found:IsA("ValueBase") and found.Value or found
else
error(("Failed to find data value %s"):format(name))
end
end
return module
(also have something else really complex but would prefer to not show on devforum, feel free to inquire in dms)
Weekdays: (up to) 4 hours a day.
Weekend: 4-8 hours a day
My timezone is CE(S)T.
I require a down payment of 30% before I start to work on your commission.
I accept both EUR (USD converted to EUR works too) and ROBUX. The price heavily depends on the size and complexity of your project.
Q: Oh, I don’t have ROBUX! Can I pay in percentage?
A: In most cases; no. In some rare cases, I’d allow it if it meets one of the requirements below:
- Large community already built; 20k+ group members or 5k+ active discord members.
- Large game already built; 2M+ visits and an active playerbase.
- Large backup payment for if the project flops.
Thank you for looking at my portfolio! You may contact me in one of the following ways:
Discord → Virtual #0021
DevForum → Direct Messages
ROBLOX → VirtualButFake (direct messages)