ImBadStitch Roblox Scripter/Starter web Developer Portfolio! [CLOSED!]

Portfolio no longer up to date (its all from 2020-2021), check my twitter and talent hub page insead!

NewPortfolio

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 :slight_smile:

I am currently 16 years old!

Iโ€™m learning JavaScript, HTML :slight_smile:

showcaseimage

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

badat
I am bad with roblox physics in general, currently I am not able to create vehicle / really advanced gun systems.

availa
I can script every day for more than an hour, I am open every day of the week!

payment
Prices are negotiable, I accept % if I like the idea, I also accept robux / gift cards.
I accept paypal too!

contact
You can contact me here on the Developer Forum or via Discord at: Stitch#1499

Thanks for reading! :slight_smile:

if u got a project dm me!, Im looking for game projects with Payment in % :slight_smile:

9 Likes

Very nice portfolio! I worked with @ImBadStitch and he is a very nice developer.

1 Like

He is very talented! He finished my commission in less than 2 days! Heโ€™s awesome!!

1 Like

Hey so I looked through your portfolio and its pretty nice! But I would say to maybe have a video or image of the example and not just give out the source code for it but besides that nice portfolio my guy! :+1:

1 Like

The portfolio got alot of videos!