[OPEN] Scr1pterScropters Scripting Portfolio

Currently, I am open to commissions. [0/3]

About Me

I am an experienced programmer & animator and I’ve been scripting as well as animating for 3 years working on numerous projects and have also made several successful games.
I have experience in Lua, C++, HTML and CSS.

I specialize In effect design for all kinds of attacks and special effects, but I can make almost anything.

Game showcase

Open for game showcase

An unsuccessful FPS game with many useful assets and hours of scripting:
Robot Rampage - Roblox

A silly physics game that I made recently, gained attention
push people simulator [THEME PARK] - Roblox

A story game I made in the past
Picnic[STORY] - Roblox

Another physics game
lasso people simulator [release!] - Roblox

Script showcase

Open for code showcase

An unsuccessful FPS game with many useful assets and hours of scripting:
Robot Rampage - Roblox

A silly physics game that I made recently
push people simulator [THEME PARK] - Roblox

A ultra instinct mode to showcase the use of animations and VFX use.

source code for the ultra instinct

–local
local plr = game.Players.LocalPlayer
local plrgui = game.Players.LocalPlayer.PlayerGui
local mouse = plr:GetMouse()
local equipdb = false
local equipped = false
local tpcool = false
local ultrapunchcool = false
local flashtepcool = false
local ds = false
local ballcool = false
local boolpunch = false
local punch = plr.Character:WaitForChild(“Humanoid”):LoadAnimation(script:WaitForChild(“punch”))
local punch1 = plr.Character:WaitForChild(“Humanoid”):LoadAnimation(script:WaitForChild(“punch1”))
local throw = plr.Character:WaitForChild(“Humanoid”):LoadAnimation(script:WaitForChild(“ball throw”))

mouse.KeyDown:Connect(function(key)
if equipdb == true then return end
if ds == true then return end
if key == “z” then
equipdb = true
if equipped == false then
equipped = true
script.Events:FireServer(“Activate”)
plrgui.Movelist.Frame.Visible = true
else
equipped = false
script.Events:FireServer(“Deactivate”)
plrgui.Movelist.Frame.Visible = false
end
wait(5)
equipdb = false
end
end)

mouse.KeyDown:Connect(function(key)
if equipped == false then return end
if key == “1” then
if tpcool == true then return end
if ds == true then return end
tpcool = true
script.Events:FireServer(“Teleport”)
wait(.4)
tpcool = false
elseif key == “2” then
if ultrapunchcool == true then return end
if ds == true then return end
ds = true
ultrapunchcool = true
if boolpunch == false then
punch:Play()
boolpunch = true
else
punch1:Play()
boolpunch = false
end
wait(.05)
script.Events:FireServer(“UltraPunch”)
wait(.05)
ds = false
wait(.05)
ultrapunchcool = false
elseif key == “3” then
if flashtepcool == true then return end
if ds == true then return end
ds = true
flashtepcool = true
script.Events:FireServer(“Flashstep”)
wait(1.3)
ds = false
wait(5)
flashtepcool = false
elseif key == “4” then
if ds == true then return end
if ballcool == true then return end
ballcool = true
ds = true
throw:Play()
script.Events:FireServer(“ball”,mouse.Hit + Vector3.new(0,9,0))
wait(1.2)
ds = false
wait(.5)
ballcool = false
end
end)
–serverside
local ts = game:GetService(“TweenService”)

function findNearestTorso(plr)
local dist = 700
local target = nil
local besttargetdist = 10000
for i,v in pairs(workspace:GetChildren()) do
local humanoid = v:FindFirstChild(“Humanoid”) or v:FindFirstChild(“POGGERNOID”)
local head = v:FindFirstChild(“Head”)
if humanoid and (humanoid.Health > 0) and head and v.Name ~= plr.Name then
if (head.Position - plr.Character.Head.Position).magnitude < dist then
local dist = (head.Position - plr.Character.Head.Position).magnitude
if besttargetdist > dist then
besttargetdist = dist
target = head
end
end
end
end
return target
end

function magdamage(mag,dmg,plr)
for i,v in pairs(workspace:GetChildren()) do
local humanoid = nil
if v:FindFirstChild(“Humanoid”) then
humanoid = v:FindFirstChild(“Humanoid”)
else
humanoid = v:FindFirstChild(“POGGERNOID”)
end
local head = v:FindFirstChild(“Head”)
if head and humanoid and v.Name ~= plr.Name then
local mag = (v.HumanoidRootPart.Position - mag.Position).magnitude
if mag < 35 then
local BV = Instance.new(“BodyVelocity”,v.HumanoidRootPart)
BV.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
BV.Velocity = Vector3.new(0,50,0)
game.Debris:AddItem(BV,.4)
humanoid:TakeDamage(dmg)
end
end
end
end

function sh(plr)
local shk = game.ReplicatedStorage.effects.Shockwave:Clone()
shk.Parent = workspace
shk.CFrame = plr.Character.HumanoidRootPart.CFrame
shk.Position = shk.Position + Vector3.new(0,-2,0)
ts:Create(shk,TweenInfo.new(2,0,0),{Transparency = 1,Size = Vector3.new(14.13, 4.63, 14.52)},Enum.EasingStyle.Quint,Enum.EasingDirection.In):Play()
game.Debris:AddItem(shk,3)
end

script.Parent.OnServerEvent:Connect(function(plr,command,mousepos)
pcall (function()
if command == “Activate” then
for i,v in pairs(plr.Character:GetChildren()) do
if v:IsA(“Part”) or v:IsA(“MeshPart”) then
local aura1 = script.Parent.Parent.aura:Clone()
local aura2 = script.Parent.Parent.aura2:Clone()
local aura3 = script.Parent.Parent.aura3:Clone()
local aura4 = script.Parent.Parent.small:Clone()
aura1.Parent = v
aura2.Parent = v
aura3.Parent = v
aura4.Parent = v
end
end
plr.Character.Humanoid.MaxHealth = 500
plr.Character.Humanoid.Health = 500
local theme = script.UltraTheme:Clone()
theme.Parent = plr.Character.Head
theme:Play()
elseif command == “Deactivate” then
plr.Character.Head.UltraTheme:Destroy()
for i,v in pairs(plr.Character:GetChildren()) do
if v:IsA(“Part”) or v:IsA(“MeshPart”) then
v.aura.Enabled = false
v.aura2.Enabled = false
v.aura3.Enabled = false
v.small.Enabled = false
end
end
wait(.7)
for i,v in pairs(plr.Character:GetChildren()) do
if v:IsA(“Part”) or v:IsA(“MeshPart”) then
v.aura:Destroy()
v.aura2:Destroy()
v.aura3:Destroy()
v.small:Destroy()
end
end
plr.Character.Humanoid.MaxHealth = 100
plr.Character.Humanoid.Health = 100
elseif command == “Teleport” then
local head = findNearestTorso(plr)
local tele = script.Teleport:Clone()
tele.Parent = plr.Character.Head
tele:Play()
game.Debris:AddItem(tele,.5)
local effect = game.ReplicatedStorage.effects.m1:Clone()
effect.Parent = workspace
effect.Position = plr.Character.HumanoidRootPart.Position - Vector3.new(0,1.5,0)
ts:Create(effect,TweenInfo.new(.7,0,0),{Transparency = 1,Size = Vector3.new(22.943, 4.97, 21.912),Orientation = Vector3.new(-1.09, 149.99, 1.02),Position = effect.Position + Vector3.new(0,.5,0)}):Play()
plr.Character.HumanoidRootPart.CFrame = head.Parent.HumanoidRootPart.CFrame + head.Parent.HumanoidRootPart.CFrame.lookVector * -2
plr.Character.HumanoidRootPart.Orientation = head.Orientation
game.Debris:AddItem(effect,1)
wait(0.01)
local effect = game.ReplicatedStorage.effects.m1:Clone()
effect.Parent = workspace
effect.Position = plr.Character.HumanoidRootPart.Position - Vector3.new(0,1.5,0)
ts:Create(effect,TweenInfo.new(.7,0,0),{Transparency = 1,Size = Vector3.new(22.943, 4.97, 21.912),Orientation = Vector3.new(-1.09, 149.99, 1.02),Position = effect.Position + Vector3.new(0,.5,0)}):Play()
game.Debris:AddItem(effect,1)
elseif command == “UltraPunch” then
local head = findNearestTorso(plr)
local mag = nil
if head then
mag = (plr.Character.HumanoidRootPart.Position - head.Position).magnitude
end
local tele = script.heavyhit:Clone()
tele.Parent = plr.Character.Head
tele:Play()
game.Debris:AddItem(tele,.7)
local effect = game.ReplicatedStorage.effects.m1:Clone()
local effect2 = game.ReplicatedStorage.effects.m2:Clone()
effect.Parent = workspace
effect2.Parent = workspace
effect.Position = plr.Character.HumanoidRootPart.Position - Vector3.new(0,1.5,0)
effect2.Position = plr.Character.HumanoidRootPart.Position
ts:Create(effect2,TweenInfo.new(0.5,0,0),{Transparency = 1,Size = Vector3.new(18.567, 11.82, 19.958),Orientation = Vector3.new(0.7, 120, 1.32),Position = effect2.Position + Vector3.new(0,2,0)}):Play()
ts:Create(effect,TweenInfo.new(0.5,0,0),{Transparency = 1,Size = Vector3.new(22.943, 4.97, 21.912),Orientation = Vector3.new(-1.09, 149.99, 1.02),Position = effect.Position + Vector3.new(0,.5,0)}):Play()
if mag < 6 then
local hum =nil
if head.Parent:FindFirstChild(“Humanoid”) then
hum = head.Parent.Humanoid
else
hum = head.Parent.POGGERNOID
end
local BV = Instance.new(“BodyVelocity”,head.Parent.HumanoidRootPart)
BV.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
BV.Velocity = plr.Character.HumanoidRootPart.CFrame.lookVector* 90
game.Debris:AddItem(BV,.4)
hum:TakeDamage(40)
end
game.Debris:AddItem(effect,2)
game.Debris:AddItem(effect2,2)
elseif command == “ball” then
local sphere = game.ReplicatedStorage.effects.Fireball:Clone()
sphere.Parent = workspace
sphere.CFrame = plr.Character.HumanoidRootPart.CFrame + Vector3.new(0,15,0)
ts:Create(sphere,TweenInfo.new(1.2,0,0),{Transparency = .1,Size = Vector3.new(20,20,20)},Enum.EasingStyle.Quint,Enum.EasingDirection.In):Play()
plr.Character.Humanoid.WalkSpeed = 0
wait(1.2)
plr.Character.Humanoid.WalkSpeed = 16
local rat = ts:Create(sphere,TweenInfo.new(.4,0,0),{Transparency = 1, CFrame = mousepos + mousepos.lookVector},Enum.EasingStyle.Quint,Enum.EasingDirection.In)
rat:Play()
wait(.4)
local sphere2 = game.ReplicatedStorage.effects.Fireball:Clone()
sphere2.Parent = workspace
sphere2.CFrame = sphere.CFrame + Vector3.new(0,-3,0)
local ring = game.ReplicatedStorage.effects.Ring:Clone()
ring.Parent = workspace
ring.Position = sphere2.Position
local rat = ts:Create(ring,TweenInfo.new(1.2,0,0),{Transparency = 1, Size = Vector3.new(160.15, 1.821, 163.34)},Enum.EasingStyle.Quint,Enum.EasingDirection.In)
rat:Play()
game.Debris:AddItem(ring,1.2)
local ring = game.ReplicatedStorage.effects.SHCKS:Clone()
ring.Parent = workspace
ring.Position = sphere2.Position + Vector3.new(0,6,0)
local rat = ts:Create(ring,TweenInfo.new(.8,0,0),{Transparency = 1, Size = Vector3.new(97.896, 46.506, 125.626)},Enum.EasingStyle.Quint,Enum.EasingDirection.In)
rat:Play()
game.Debris:AddItem(ring,.8)
sphere2.Transparency = .2
game.Debris:AddItem(sphere2,2)
ts:Create(sphere2,TweenInfo.new(2,0,0),{Transparency = 1,Size = Vector3.new(100,100,100)},Enum.EasingStyle.Quint,Enum.EasingDirection.Out):Play()
local sound = script.bomb:Clone()
sound.Parent = sphere2
sound:Play()
game.Debris:AddItem(sound,1)
local head = findNearestTorso(plr)
magdamage(sphere2,75,plr)
wait(.3)
sphere:Destroy()
elseif command == “Flashstep” then
for i,v in pairs(plr.Character:GetChildren()) do
if v:IsA(“Part”) or v:IsA(“MeshPart”) then
v.aura.Enabled = false
v.aura2.Enabled = false
v.aura3.Enabled = false
v.small.Enabled = false
v.Transparency = 1
end
if v:IsA(“Accessory”) then
v.Handle.Transparency = 1
end
end
plr.Character.Humanoid.WalkSpeed = 60
plr.Character.Head.face.Transparency = 1
local tele = script.Teleport:Clone()
tele.Parent = plr.Character.Head
tele:Play()
game.Debris:AddItem(tele,.5)
for i = 1,4 do
local effect = game.ReplicatedStorage.effects.m1:Clone()
effect.Parent = workspace
effect.Position = plr.Character.HumanoidRootPart.Position - Vector3.new(0,1.5,0)
ts:Create(effect,TweenInfo.new(.7,0,0),{Transparency = 1,Size = Vector3.new(22.943, 4.97, 21.912),Orientation = Vector3.new(-1.09, 149.99, 1.02),Position = effect.Position + Vector3.new(0,.5,0)}):Play()
game.Debris:AddItem(effect,1)
wait(0.32)
end
plr.Character.Humanoid.WalkSpeed = 16
plr.Character.Head.face.Transparency = 0
local tele = script.Teleport:Clone()
tele.Parent = plr.Character.Head
tele:Play()
game.Debris:AddItem(tele,.5)
for i,v in pairs(plr.Character:GetChildren()) do
if v:IsA(“Part”) or v:IsA(“MeshPart”) then
v.aura.Enabled = true
v.aura2.Enabled = true
v.aura3.Enabled = true
v.small.Enabled = true
v.Transparency = 0
if v.Name == “HumanoidRootPart” then v.Transparency = 1 end
end
if v:IsA(“Accessory”) then
v.Handle.Transparency = 0
end
end
end
end)
end)

Explosion! A pet project of mine, took a while to make but was worth it.

source code for the explosion (server side only)

local ts = game:GetService(“TweenService”)
local ef = game.ReplicatedStorage.effects

function magdamage(mag,dmg,plr)
for i,v in pairs(workspace:GetChildren()) do
local humanoid = nil
if v:FindFirstChild(“Humanoid”) then
humanoid = v:FindFirstChild(“Humanoid”)
else
humanoid = v:FindFirstChild(“POGGERNOID”)
end
local head = v:FindFirstChild(“Head”)
if head and humanoid and v.Name ~= plr.Name then
local mag = (v.HumanoidRootPart.Position - mag).magnitude
if mag < 60 then
local BV = Instance.new(“BodyVelocity”,v.HumanoidRootPart)
BV.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
BV.Velocity = Vector3.new(0,50,0)
game.Debris:AddItem(BV,.4)
humanoid:TakeDamage(dmg)
end
end
end
end

function makerocks(pos)
spawn (function()
for i = 1,200 do
local crock = ef.rocksmall:Clone()
crock.Size = Vector3.new(math.random(1,3),math.random(1,3),math.random(1,3))
crock.Parent = workspace
crock.Position = pos + Vector3.new(math.random(-25,25),-3.5,math.random(-25,25))
game.Debris:AddItem(crock,1)
ts:Create(crock,TweenInfo.new(0.8,0,0),{Transparency = 1, Position = crock.Position + Vector3.new(0,9,0),Orientation = crock.Orientation + Vector3.new(90,0,160)}):Play()
wait(0.01)
end
end)
end

game.ReplicatedStorage.expevent.OnServerEvent:Connect(function(plr,hitpos)
workspace.exp:Play()
for i = 1,10 do
game.Lighting.Brightness -= .2
wait(0.01)
end
local char = plr.Character
local hrp = char.HumanoidRootPart
hrp.Anchored = true
local staff = ef.Staff:Clone()
staff.Parent = char
local bcirc = ef.circleblack:Clone()
bcirc.Parent = workspace
bcirc.Position = hrp.Position - Vector3.new(0,2.8,0)
ts:Create(bcirc,TweenInfo.new(.6,0,0),{Transparency = 0}):Play()
for i,v in pairs(bcirc:GetChildren()) do
if v:IsA(“MeshPart”) then
v.Position = bcirc.Position - Vector3.new(0,0.1,0)
ts:Create(v,TweenInfo.new(.7,0,0),{Transparency = .4}):Play()
if v.Material == Enum.Material.Neon then
v.Position = bcirc.Position - Vector3.new(0,.2,0)
end
end
end
wait(1)
local light = Instance.new(“SurfaceLight”,hrp)
light.Brightness = 5
light.Color = Color3.new(1, 0.666667, 0)
game.Debris:AddItem(light,.5)
local circ1 = ef.circlemagic:Clone()
local circ2 = ef.circlemagic:Clone()
local circ3 = ef.circlemagic:Clone()
circ1.Parent = workspace
circ2.Parent = workspace
circ3.Parent = workspace
circ1.Position = bcirc.Position
circ2.Position = bcirc.Position
circ3.Position = bcirc.Position
ts:Create(circ1,TweenInfo.new(.9,0,0),{Position = circ1.Position + Vector3.new(0,11,0),Transparency = 0}):Play()
wait(.4)
ts:Create(circ2,TweenInfo.new(.55,0,0),{Position = circ2.Position + Vector3.new(0,7,0),Transparency = 0}):Play()
ts:Create(light,TweenInfo.new(0.5,0),{Brightness = 0}):Play()
wait(.4)
ts:Create(circ3,TweenInfo.new(.35,0,0),{Position = circ3.Position + Vector3.new(0,2.5,0),Transparency = 0}):Play()
wait(.9)
local st = ef.explosionswirl:Clone()
st.Parent = workspace
st.Position = hrp.Position
local ambience = ef.exambience:Clone()
ambience.Parent = workspace
ambience.Position = hrp.Position + Vector3.new(0,6,0)
ts:Create(st,TweenInfo.new(.4,0,0),{Transparency = 0.3,Size = Vector3.new(114.151, 90.761, 107.879)}):Play()
wait(.8)
for i,v in pairs(staff.Handle.Orb:GetChildren()) do
v.Enabled = true
end
spawn(function()
local ring1 = ef.explosionmark2:Clone()
ring1.Parent = workspace
ring1.Position = hitpos
ts:Create(ring1,TweenInfo.new(0.5,0,0),{Transparency = 0, Size = Vector3.new(110.029, 0.716, 110.028)}):Play()
wait(.8)
local ring2 = ef.explosionmark:Clone()
ring2.Parent = workspace
ring2.Position = ring1.Position + Vector3.new(0,85,0)
ts:Create(ring2,TweenInfo.new(0.4,0,0),{Transparency = 0}):Play()
wait(4.4)
ts:Create(ring1,TweenInfo.new(0.4,0,0),{Transparency = 1, Size = Vector3.new(64.546, 0.42, 64.546)}):Play()
ts:Create(ring2,TweenInfo.new(0.4,0,0),{Transparency = 1, Size = Vector3.new(149.434, 115.894, 149.435)}):Play()
game.Debris:AddItem(ring1,.6)
game.Debris:AddItem(ring2,.6)
wait(.4)
local dirteffect = ef.dirteffect:Clone()
dirteffect.Parent = workspace
dirteffect.Position = hitpos - Vector3.new(0,3,0)
ts:Create(dirteffect,TweenInfo.new(.3,0,0),{Transparency = 0,Size = Vector3.new(41.354, 170.003, 171.244),Position = dirteffect.Position + Vector3.new(0,5,0)},Enum.EasingDirection.In):Play()
wait(.1)
local ex1 = ef.exp1:Clone()
local ex2 = ef.exp2:Clone()
local ex3 = ef.exp3:Clone()
local ex4 = ef.exp4:Clone()
ex1.Parent = workspace
ex2.Parent = workspace
ex3.Parent = workspace
ex4.Parent = workspace
ex1.Position = ring2.Position + Vector3.new(0,10,0)
ex2.Position = ring2.Position + Vector3.new(0,10,0)
ex3.Position = ring2.Position + Vector3.new(0,7,0)
ex4.Position = ring2.Position + Vector3.new(0,10,0)
ts:Create(ex1,TweenInfo.new(2,0,0),{Transparency = 1,Size = Vector3.new(180.01, 159.68, 170.284),Position = ex1.Position - Vector3.new(0,20,0)},Enum.EasingDirection.In):Play()
ts:Create(ex2,TweenInfo.new(2,0,0),{Transparency = 1,Size = Vector3.new(222.841, 195.833, 204.751),Position = ex2.Position - Vector3.new(0,20,0)},Enum.EasingDirection.In):Play()
ts:Create(ex3,TweenInfo.new(2,0,0),{Transparency = 1,Size = Vector3.new(150.225, 159.012, 150.354),Position = ex3.Position - Vector3.new(0,20,0)},Enum.EasingDirection.In):Play()
ts:Create(ex4,TweenInfo.new(2,0,0),{Transparency = 1,Size = Vector3.new(195.218, 71.354, 189.094),Position = ex4.Position - Vector3.new(0,20,0)},Enum.EasingDirection.In):Play()
game.Debris:AddItem(ex1,2)
game.Debris:AddItem(ex2,2)
game.Debris:AddItem(ex3,2)
game.Debris:AddItem(ex4,2)
game.Debris:AddItem(ex4,8)
game.Debris:AddItem(dirteffect,9)
magdamage(hitpos,90,plr)
wait(8)
ts:Create(dirteffect,TweenInfo.new(.4,0,0),{Transparency = 1,Size = Vector3.new(28.915, 118.867, 119.735),Position = dirteffect.Position - Vector3.new(0,5,0)},Enum.EasingDirection.In):Play()
end)
makerocks(hrp.Position)
wait(5.5)
for i,v in pairs(staff.Handle.Orb:GetChildren()) do
v.Enabled = false
end
wait(.5)
for i,v in pairs(bcirc:GetChildren()) do
if v:IsA(“MeshPart”) then
ts:Create(v,TweenInfo.new(.5,0,0),{Transparency = 1}):Play()
end
end
ts:Create(bcirc,TweenInfo.new(.4,0,0),{Transparency = 1}):Play()
ts:Create(circ1,TweenInfo.new(.4,0,0),{Transparency = 1}):Play()
ts:Create(circ2,TweenInfo.new(.4,0,0),{Transparency = 1}):Play()
ts:Create(circ3,TweenInfo.new(.4,0,0),{Transparency = 1}):Play()
ts:Create(st,TweenInfo.new(0.4,0,0),{Transparency = 1}):Play()
wait(.4)
bcirc:Destroy()
circ1:Destroy()
circ2:Destroy()
circ3:Destroy()
st:Destroy()
hrp.Anchored = false
ambience.o.Enabled = false
ambience.t.Enabled = false
staff:Destroy()
wait(1)
ambience:Destroy()
for i = 1,10 do
game.Lighting.Brightness += .2
wait(0.01)
end
workspace.exp:Stop()
end)

Cutscene version:


Sword slashes:

Animation showcase

Open for animation showcase

These are some animations I have made for games of mine:

Availability

I am Available almost every single day! I should be able to contact you almost immediately through discord and if I am busy I will get back to you in at least 8 hours
I work for about 1-2hrs a day.

Contact

you can either contact me right here on the forum
or you can contact me on my discord at based#9944. -discord is preferred

Payment

Small projects cost 400-1000 :robux:
Medium projects cost 1000-3000 :robux:
Large projects cost 3000+ :robux:
You can also pay me with the Paypal equivalent.

Thank you for Reading! :canada:

6 Likes

Great work! I do recommend you try to improve your UIs a bit though, other than that it’s good.

3 Likes

Thanks! I really appreciate the feedback.

Hey! I sent a FR on Disc. Best#1340

1 Like

may I ask what for? :confused:

I think it is good, altough the way it is best is to make everything just in one bill so it can be payed, also it is awesome if you say what are the prices.

Now open again! Feel free to contact me through discord!