Portfolio no longer up to date (its all from 2020-2021), check my twitter and talent hub page insead!
Hi !, My name is Isaac and I am a scripter with about 1 year+ of experience and I like to scripting all kinds of things
I am currently 16 years old!
Iโm learning JavaScript, HTML
Videos
Scripts
IF YOU USE MY SCRIPTS SHOWN BELOW PLEASE GIVE ME CREDITS!
Here you can find some of my scripts so you can see my logic at the time of programming! (obviously I will not put all of them since there are many lol)
Task System Script
--ImBadStitch
game.ReplicatedStorage.MakeTask.OnServerEvent:Connect(function(Player)
local MakeTask = Player.MakingTask
local Task = {
--//Task 1 info
["Task1"] = {
Name = "Task1",
Reward = {Currency = "Credits", Amount = 100},
TaskDescription = "Get the black Coin",
Time = 20,
Check = MakeTask.Value,
CompletedCheck = "BlackCoin",},
--//Task 2 info
["Task2"] = {
Name = "Task2",
Reward = {Currency = "Credits", Amount = 100},
TaskDescription = "Get the blue Coin",
Time = 20,
Check = MakeTask.Value,
CompletedCheck = "BlueCoin",
}
}
--Get the Length of the Dictionary
local function GetLengthOfDictionary(Table)
local length = 0
for _ in pairs(Table) do
length += 1
end
return length
end
local TaskNumber= math.random(1,GetLengthOfDictionary(Task)) --//the size of the table goes in the second value
local TaskToDo = Task["Task"..TaskNumber]
--//Start the Task
MakeTask.Value = TaskToDo.Name
--//Set the UI
local UI = {
TaskInfo = Player.PlayerGui.TaskSystem.TaskToDo,
Timer = Player.PlayerGui.TaskSystem.Timer,
}
--//put the TaskInfo Text
UI.TaskInfo.Text = Task[TaskToDo.Name].TaskDescription
--//Start the Timer
local TimerValue = Task[TaskToDo.Name].Time
--//Set The UIs position
UI.TaskInfo:TweenPosition(UDim2.new(0.009, 0,0.915, 0), "Out", "Bounce")
UI.Timer.Visible = true
--//Winner Function
local function Winner(Currency, Amount)
local leaderstats = Player.leaderstats[Currency]
leaderstats.Value += Amount
print(Player.Name.." completed the "..TaskToDo.Name)
end
repeat
wait(1)
TimerValue -= 1
UI.Timer.Text = TimerValue
until TimerValue == 0 or MakeTask.Value == TaskToDo.CompletedCheck
if MakeTask.Value == TaskToDo.CompletedCheck then
Winner(TaskToDo.Reward.Currency, TaskToDo.Reward.Amount)
elseif TimerValue == 0 and MakeTask.Value ~= TaskToDo.CompletedCheck then
print("You have not completed the task")
end
end)
Equip Skin System
game.ReplicatedStorage.EquipSkin.OnServerEvent:Connect(function(Player, Skin)
if Skin == "PlayerCharacter" then
Player:LoadCharacter()
else
local CurrentCharacter = Player.Character
local SkinToAdd = game.ReplicatedFirst.skins[Skin]--this is the skin to add to the player
for i,v in pairs(CurrentCharacter:GetChildren()) do
if v:IsA("Accessory") or v:IsA("Clothing") then
v:Destroy()
end
end
for i,v in pairs(SkinToAdd:GetChildren()) do
if v:IsA("Accessory") or v:IsA("Clothing") then
v:Clone().Parent = CurrentCharacter
end
end
pcall(function()
CurrentCharacter.Head.face.Texture = SkinToAdd.Head.face.Texture
end)
--//lobby image
local VPF = Player.PlayerGui.FNLobby.Level.ViewportFrame
local Add = Player.PlayerGui.FNLobby.Level.Skins[Skin]
for i,v in pairs(VPF:GetChildren()) do
v:Destroy()
end
Add:Clone().Parent = VPF
end
end)
Buy Skin System
--ImBadStitch
game.ReplicatedStorage.BuySkin.OnServerEvent:Connect(function(Player,Skin)
print("get it")
local Info = require(game.ReplicatedFirst.SkinShop)
local SkinToBuy = Info[Skin]
local Inventory = Player:FindFirstChild("Inventory")
if Inventory then
for i,v in pairs(Info.Skins) do
local Check = Inventory:FindFirstChild(i)
if i == Skin then
print("e")
--//check if u dont have the skin on ur inventory
if Check then
--//Owned to the TextButton
local Button = Player.PlayerGui.SkinShop.Shop[i]
Button.TextButton.Text = "Owned"
print(Player.Name.." U already Have "..i)
else
game:GetService("MarketplaceService"):PromptProductPurchase(Player, Info.Skins[Skin])
--//check if the player buy the DevProduct
game:GetService("MarketplaceService").ProcessReceipt = function(Information)
if Information.ProductId == Info.Skins[Skin] then
--/Add The Skin to the inventory
local Add = Instance.new("StringValue")
Add.Name = i
Add.Parent = Inventory
--//Owned to the TextButton
local Button = Player.PlayerGui.SkinShop.Shop[i]
Button.TextButton.Text = "Owned"
--//Add the skin slot to the locker
local Locker = Player.PlayerGui.Locker.Locker.Frame
local Skin = game.ServerStorage.VPF[i]
print(i)
Skin:Clone().Parent = Locker
Skin.Name = i
end
end
end
end
end
end
end)
DataStore Script
--ImBadStitch
--//Services
local DataStoreService = game:GetService("DataStoreService")
local SaveValues = DataStoreService:GetDataStore("SaveValues")
local SaveValuesFolders = DataStoreService:GetDataStore("SaveValuesFolders")
--//load the data
game.Players.PlayerAdded:Connect(function(player)
--[[Add the Values]]--
local Values = {
["Value1"] = "Coins";
["Value2"] = "Dreams";
["Value3"] = "backpack";
["Value4"] = "Level";
["Value5"] = "XP"
}
local Folders = {
["Folder1"] = "TrailInventory";
["Folder2"] = "PetInventory";
["Folder3"] = "Inventory";
}
local Main = Instance.new("Folder")
Main.Name = "leaderstats"
Main.Parent = player
--//Add the Folders
for i,v in pairs(Folders) do
local Add = Instance.new("Folder")
Add.Name = v
Add.Parent = player
end
--//Add the values
for i,v in pairs(Values) do
if v ~= "backpack" and v ~= "XP" then
local Add = Instance.new("IntValue")
Add.Name = v
Add.Parent = Main
elseif v == "backpack" then
local Add = Instance.new("IntValue")
Add.Name = Values.Value3
Add.Parent = player
elseif v == "XP" then
local Add = Instance.new("IntValue")
Add.Name = Values.Value5
Add.Parent = player
end
end
--[[Load the Data]]--
--//load values
local LoadValues = SaveValues:GetAsync(player.UserId.."SaveValues")
local ValuesTable = {}
--//Load Folders
--//Load the inventorys
local LoadInventorys = SaveValuesFolders:GetAsync(player.UserId.."SaveValuesFolders")
local FoldersTable = {}
local success, error = pcall(function()
for i,v in pairs(LoadValues) do
table.insert(ValuesTable,v)
end
--Inventorys
for i,v in pairs(LoadInventorys) do
table.insert(FoldersTable,v)
end
end)
if success then
--/Values
player.leaderstats[Values.Value4].Value = ValuesTable[1]
player.leaderstats[Values.Value2].Value = ValuesTable[2]
player.leaderstats[Values.Value1].Value = ValuesTable[3]
player[Values.Value3].Value = ValuesTable[4]
player[Values.Value5].Value = ValuesTable[5]
--Inventory
--//Pets
local AddPets = player:FindFirstChild("PetInventory")
for i,v in pairs(FoldersTable[1]) do
local Add = Instance.new("StringValue")
Add.Name = v
Add.Parent = AddPets
end
--//Trails
local AddTrails = player:FindFirstChild("TrailInventory")
for i,v in pairs(FoldersTable[2]) do
local Add = Instance.new("StringValue")
Add.Name = v
Add.Parent = AddTrails
end
--//Normal
local AddNormal = player:FindFirstChild("Inventory")
for i,v in pairs(FoldersTable[3]) do
local Add = Instance.new("StringValue")
Add.Name = v
Add.Parent = AddNormal
end
else
print(player.Name.." is a new player or something went wrong when we loaded the data")
end
local PvP = Instance.new("BoolValue")
PvP.Name = "PvP"
PvP.Parent = player
end)
--//save the data
game.Players.PlayerRemoving:Connect(function(player)
local DataValues = player:FindFirstChild("leaderstats")
local TrailsInv = player:FindFirstChild("TrailInventory")
local PetsInv = player:FindFirstChild("PetInventory")
local NormalInv = player:FindFirstChild("Inventory")
local Backpack = player:FindFirstChild("backpack")
local XP = player:FindFirstChild("XP")
--//Save the Values
local Values = {}
local SaveInventory = {
Trails = {};
Pets = {};
Normal = {};
}
local success, error = pcall(function()
--Values
for i,v in pairs(DataValues:GetChildren()) do
table.insert(Values,v.Value)
end
--Backpack Value
table.insert(Values,Backpack.Value)
table.insert(Values,XP.Value)
--//Trails Inventory
for i,v in pairs(TrailsInv:GetChildren()) do
table.insert(SaveInventory.Trails,v.Name)
end
--//Pets Inventory
for i,v in pairs(PetsInv:GetChildren()) do
table.insert(SaveInventory.Pets,v.Name)
end
--//Normal Inventory
for i,v in pairs(NormalInv:GetChildren()) do
table.insert(SaveInventory.Normal,v.Name)
end
end)
if success then
print(player.Name.." Your Data Was Obtained Correctly")
else
print(error)
end
--//Data Store
local success, errorFolder = pcall(function()
--//Folders
SaveValuesFolders:SetAsync(player.UserId.."SaveValuesFolders", SaveInventory)
--//Values
SaveValues:SetAsync(player.UserId.."SaveValues", Values)
end)
if success then
print(player.Name.."Your data was saved correctly")
else
print(errorFolder)
end
end)
Web design
All the elements shown below are created with html, css
Web page created by me: https://iz-dev.000webhostapp.com/
Games / Collaborations/ Extra Show Case
I scripted a whole Egg Hunt event with more than 1k active players in game:
โจFashion Doll's๐ "NEW UPADTE" - Roblox
https://www.youtube.com/watch?v=rcUy6bMqP8M
I programmed the crystal system in this game as well as other little things: Zombie Tycoon - Roblox
I was the first place winner In a Spanish Solo GameJam with an educational game: Math.rblx! - Roblox
A simple system that translates numbers by parts to any language you want:
Frame detection module (spanish explain): https://devforum.roblox.com/t/detectar-colisiones-en-frames/1162713
I am bad with roblox physics in general, currently I am not able to create vehicle / really advanced gun systems.
I can script every day for more than an hour, I am open every day of the week!
Prices are negotiable, I accept % if I like the idea, I also accept robux / gift cards.
I accept paypal too!
You can contact me here on the Developer Forum or via Discord at: Stitch#1499
Thanks for reading!
if u got a project dm me!, Im looking for game projects with Payment in %