← Alla guider
Guide 2

Bygg din första tycoon

En dropper släpper kuber, ett löpande band bär dem, en collector gör dem till pengar och en knapp köper en andra dropper.

Gratis60 minuter · Nybörjare · Roblox Studio
1
Steg 1 / 9

Gör i ordning platsen

  1. Öppna Roblox Studio, klicka på New Experience och välj mallen Baseplate.
  2. Håll musen över Workspace i Explorer, klicka på + och lägg till en Folder. Döp den till Tycoon.
  3. Allt du bygger i den här guiden ska ligga i den mappen. Då blir Explorer snygg och ordnad.

Mer detaljer

  • Mallen Baseplate finns i listan med mallar på startsidan.
  • När du klickar på + öppnas en lista. Skriv ordet Folder för att hitta den snabbt och klicka sedan på den.
  • För att byta namn på mappen klickar du på den en gång, trycker på F2, skriver Tycoon och trycker på Enter.
  • På en Mac använder du tangenten Cmd varje gång den här guiden säger Ctrl.
Tips. Döp om varje del direkt när du har skapat den. Skripten hittar delar via namn, så en del som fortfarande heter Part fungerar inte.
Det här steget fungerar inte för mig

Kontrollera de här tre sakerna först

  • Namnet på varje del och varje skript är exakt som i guiden, med samma stora bokstäver.
  • Skriptet ligger i rätt objekt. Titta på etiketten ovanför kodrutan.
  • Öppna fönstret Output från menyn Window. Röd text visar skriptet och raden med felet.

Sitter du fortfarande fast? Skriv till oss →

2
Steg 2 / 9

Ge varje spelare pengar

  1. Håll musen över ServerScriptService, klicka på + och lägg till ett Script. Döp det till Leaderstats.
  2. Ta bort raden som redan finns där och klistra in den här koden.
  3. Tryck på Play. Ditt namn syns i spelarlistan med Cash 0 bredvid.
ServerScriptService > Leaderstats
local Players = game:GetService("Players")

Players.PlayerAdded:Connect(function(player)
	local stats = Instance.new("Folder")
	stats.Name = "leaderstats"
	stats.Parent = player

	local cash = Instance.new("IntValue")
	cash.Name = "Cash"
	cash.Value = 0
	cash.Parent = stats
end)

Vad varje del gör

  • PlayerAdded körs en gång för varje spelare som går med i spelet.
  • En mapp som heter leaderstats är särskild. Roblox visar värdena i den i spelarlistan.
  • Ett IntValue innehåller ett heltal. Här innehåller det spelarens pengar.

Mer detaljer

  • ServerScriptService finns i listan i Explorer. Skript i den körs på servern, där spelarna inte kan ändra dem.
  • Skriptet öppnas i en ny flik. Klicka inne i koden, tryck på Ctrl+A och sedan på Ctrl+V för att byta ut allt.
  • Gå tillbaka till din värld genom att klicka på fliken med namnet på din plats.
  • Spelarlistan finns i det övre högra hörnet av spelet. Tryck på F5 för att starta och på Shift+F5 för att stoppa.
Det här steget fungerar inte för mig

Kontrollera de här tre sakerna först

  • Namnet på varje del och varje skript är exakt som i guiden, med samma stora bokstäver.
  • Skriptet ligger i rätt objekt. Titta på etiketten ovanför kodrutan.
  • Öppna fönstret Output från menyn Window. Röd text visar skriptet och raden med felet.

Sitter du fortfarande fast? Skriv till oss →

3
Steg 3 / 9

Bygg droppern

  1. Lägg till en Part i mappen Tycoon. Ställ in Size på 4, 1, 4, slå på Anchored och döp den till Dropper.
  2. Lyft den ungefär 10 studs över golvet med verktyget Move (Ctrl+2).
  3. Lägg till ett Script i Dropper och klistra in den här koden.
  4. Tryck på Play. En gul kub faller var 2:a sekund.
Dropper > Script
local Debris = game:GetService("Debris")
local dropper = script.Parent

while true do
	task.wait(2)

	local cube = Instance.new("Part")
	cube.Name = "Cube"
	cube.Size = Vector3.new(1.5, 1.5, 1.5)
	cube.Color = Color3.fromRGB(255, 200, 60)
	cube.Position = dropper.Position - Vector3.new(0, 2, 0)
	cube.Parent = workspace

	Debris:AddItem(cube, 20)
end

Vad varje del gör

  • Instance.new skapar en ny del med kod.
  • Position placerar kuben 2 studs under droppern.
  • Debris tar bort varje kub efter 20 sekunder, så gamla kuber hopar sig aldrig.

Mer detaljer

  • För att lägga delen i mappen drar du dess namn i Explorer till namnet Tycoon.
  • Med verktyget Move drar du den gröna pilen uppåt. Fältet Position i Properties visar höjden som det mittersta talet.
  • Kuben dyker upp 2 studs under droppern och faller sedan. Om droppern är för låg hopar sig kuberna under den.
  • Den första kuben kommer 2 sekunder efter att spelet har startat.
Vanligt misstag. Inga kuber dyker upp: kontrollera att skriptet ligger inuti Dropper och att Dropper är Anchored.
Det här steget fungerar inte för mig

Kontrollera de här tre sakerna först

  • Namnet på varje del och varje skript är exakt som i guiden, med samma stora bokstäver.
  • Skriptet ligger i rätt objekt. Titta på etiketten ovanför kodrutan.
  • Öppna fönstret Output från menyn Window. Röd text visar skriptet och raden med felet.

Sitter du fortfarande fast? Skriv till oss →

4
Steg 4 / 9

Lägg till det löpande bandet

  1. Lägg till en Part, ställ in Size på 6, 1, 30, slå på Anchored och döp den till Conveyor.
  2. Placera den på golvet så att ena änden ligger precis under droppern.
  3. Lägg till ett Script i Conveyor och klistra in den här koden.
  4. Tryck på Play. Kuberna landar på bandet och glider fram.
Conveyor > Script
local conveyor = script.Parent

conveyor.AssemblyLinearVelocity = conveyor.CFrame.LookVector * 8

Vad varje del gör

  • AssemblyLinearVelocity talar om för Roblox hur snabbt saker ovanpå delen ska röra sig.
  • LookVector är riktningen som framsidan av delen pekar åt. Talet 8 är farten i studs per sekund.

Mer detaljer

  • Varje del har en framsida. Det löpande bandet skjuter kuberna mot sin framsida.
  • Bandets långa sida, de 30 studs, måste peka bort från droppern, mot platsen där collectorn ska stå.
  • Själva bandet rör sig inte. Bara sakerna som ligger på det glider.
  • Om kuber faller av sidan gör du bandet bredare eller flyttar droppern till mitten av det.
Vanligt misstag. Kuberna glider åt fel håll: vrid bandet 180 grader med verktyget Rotate (Ctrl+4).
Det här steget fungerar inte för mig

Kontrollera de här tre sakerna först

  • Namnet på varje del och varje skript är exakt som i guiden, med samma stora bokstäver.
  • Skriptet ligger i rätt objekt. Titta på etiketten ovanför kodrutan.
  • Öppna fönstret Output från menyn Window. Röd text visar skriptet och raden med felet.

Sitter du fortfarande fast? Skriv till oss →

5
Steg 5 / 9

Samla in kuberna

  1. Lägg till en Part i andra änden av bandet. Ställ in Size på 6, 4, 1, slå på Anchored, gör den grön och döp den till Collector.
  2. Ställ den upp som en vägg, så att kuberna kör in i den.
  3. Lägg till ett Script i Collector och klistra in den här koden.
  4. Tryck på Play. Varje kub som når collectorn lägger till 5 på Cash.
Collector > Script
local Players = game:GetService("Players")
local collector = script.Parent

collector.Touched:Connect(function(hit)
	if hit.Name ~= "Cube" then return end
	hit:Destroy()

	for _, player in ipairs(Players:GetPlayers()) do
		local stats = player:FindFirstChild("leaderstats")
		if stats then
			stats.Cash.Value += 5
		end
	end
end)

Vad varje del gör

  • Skriptet struntar i allt som inte heter Cube. Dina fötter räknas inte.
  • Destroy tar bort kuben från spelet.
  • Loopen ger 5 pengar till alla spelare på servern. En tycoon med en ägare per tomt är en avancerad lektion.

Mer detaljer

  • Size 6, 4, 1 står redan upprätt: 6 brett, 4 högt och 1 tjockt. Lägg den tvärs över bandets ände som en grind som är stängd.
  • Dess nedre kant ska röra vid bandet, så att ingen kub kan glida under den.
  • För att göra den grön klickar du på fältet Color i Properties.
  • För att testa: tryck på F5 och titta på spelarlistan. Cash ökar med 5 varje gång en kub når väggen.
Det här steget fungerar inte för mig

Kontrollera de här tre sakerna först

  • Namnet på varje del och varje skript är exakt som i guiden, med samma stora bokstäver.
  • Skriptet ligger i rätt objekt. Titta på etiketten ovanför kodrutan.
  • Öppna fönstret Output från menyn Window. Röd text visar skriptet och raden med felet.

Sitter du fortfarande fast? Skriv till oss →

6
Steg 6 / 9

Gör i ordning den andra droppern

  1. Markera Dropper och tryck på Ctrl+D. Döp kopian till Dropper2 och flytta den bredvid den första, fortfarande ovanför bandet.
  2. Dra Dropper2 från Workspace till ServerStorage.
  3. Den försvinner från världen. Objekt i ServerStorage väntar där tills ett skript flyttar tillbaka dem.

Mer detaljer

  • Kopian ligger precis ovanpå originalet. Dra den åt sidan med verktyget Move så att du ser båda.
  • Byt namn på kopian med F2. Namnet måste vara Dropper2, med stort D och inget mellanslag.
  • ServerStorage finns i listan i Explorer. Dra namnet Dropper2 till den.
  • Skriptet i kopian följde med. Du behöver inte lägga till det igen.
Tips. Skript i ServerStorage körs inte. Därför är den andra droppern tyst tills någon köper den.
Det här steget fungerar inte för mig

Kontrollera de här tre sakerna först

  • Namnet på varje del och varje skript är exakt som i guiden, med samma stora bokstäver.
  • Skriptet ligger i rätt objekt. Titta på etiketten ovanför kodrutan.
  • Öppna fönstret Output från menyn Window. Röd text visar skriptet och raden med felet.

Sitter du fortfarande fast? Skriv till oss →

7
Steg 7 / 9

Lägg till en köpknapp

  1. Lägg till en Part på golvet nära bandet. Ställ in Size på 4, 1, 4, slå på Anchored, gör den klarblå och döp den till BuyDropper.
  2. Lägg till ett Script i BuyDropper och klistra in den här koden.
  3. För att sätta text på knappen håller du musen över BuyDropper, klickar på + och lägger till en BillboardGui. Ställ in dess Size på {0, 200}, {0, 50} och dess StudsOffset på 0, 3, 0.
  4. Lägg till en TextLabel i BillboardGui. Ställ in dess Size på {1, 0}, {1, 0}, slå på TextScaled och skriv den här texten: Second dropper - 50
BuyDropper > Script
local Players = game:GetService("Players")
local ServerStorage = game:GetService("ServerStorage")

local button = script.Parent
local PRICE = 50
local bought = false

button.Touched:Connect(function(hit)
	if bought then return end

	local player = Players:GetPlayerFromCharacter(hit.Parent)
	local stats = player and player:FindFirstChild("leaderstats")
	if not stats or stats.Cash.Value < PRICE then return end

	bought = true
	stats.Cash.Value -= PRICE
	ServerStorage.Dropper2.Parent = workspace
	button:Destroy()
end)

Vad varje del gör

  • PRICE är kostnaden. Ändra talet om du vill göra knappen billigare eller dyrare.
  • Skriptet kontrollerar att en riktig spelare rörde vid knappen och att spelaren har tillräckligt med pengar.
  • När Dropper2 flyttas till workspace slås den på. Dess skript börjar köras direkt.

Mer detaljer

  • Spelarna köper genom att gå upp på knappen, så lägg den på golvet där den är lätt att nå.
  • För Size och StudsOffset klickar du på fältet i Properties, skriver talen exakt som de står, med parenteser och kommatecken, och trycker på Enter.
  • Text är en egenskap hos TextLabel. Klicka på fältet Text, skriv orden och tryck på Enter.
  • Etiketten svävar ovanför knappen. Om du inte ser den höjer du det mittersta talet i StudsOffset.
Det här steget fungerar inte för mig

Kontrollera de här tre sakerna först

  • Namnet på varje del och varje skript är exakt som i guiden, med samma stora bokstäver.
  • Skriptet ligger i rätt objekt. Titta på etiketten ovanför kodrutan.
  • Öppna fönstret Output från menyn Window. Röd text visar skriptet och raden med felet.

Sitter du fortfarande fast? Skriv till oss →

8
Steg 8 / 9

Testa hela kedjan

  1. Tryck på F5. Titta på hur kuberna faller, åker på bandet och blir till pengar.
  2. Vänta tills du har 50 pengar och kliv sedan på den blå knappen.
  3. Den andra droppern dyker upp, knappen försvinner och dina pengar växer dubbelt så snabbt.
  4. Tryck på Shift+F5 för att stoppa. Om något går fel öppnar du fönstret Output från menyn Window och läser den röda texten.

Mer detaljer

  • Det krävs 10 kuber, alltså minst 20 sekunder, för att nå 50 cash.
  • När du har köpt minskar Cash med 50. Det är rätt. Du betalade för droppern.
  • Knappen förstörs efter köpet, så den kan inte köpas två gånger.
  • Om den andra droppern dyker upp på fel ställe stoppar du spelet, drar Dropper2 från ServerStorage tillbaka till Workspace, flyttar den och drar in den i ServerStorage igen.
Vanligt misstag. Cash ändras aldrig: delarna som faller måste heta Cube, precis som i dropperskriptet.
Det här steget fungerar inte för mig

Kontrollera de här tre sakerna först

  • Namnet på varje del och varje skript är exakt som i guiden, med samma stora bokstäver.
  • Skriptet ligger i rätt objekt. Titta på etiketten ovanför kodrutan.
  • Öppna fönstret Output från menyn Window. Röd text visar skriptet och raden med felet.

Sitter du fortfarande fast? Skriv till oss →

9
Steg 9 / 9

Publicera det

  1. Välj File → Publish to Roblox. Ge spelet ett namn och en kort beskrivning.
  2. Öppna ditt spel på webbplatsen Creator Hub och fyll i frågeformuläret Maturity.
  3. Sätt spelet till Public och skicka länken till en kompis.

Mer detaljer

  • Första gången du publicerar frågar Studio efter ett namn och en beskrivning. Klicka på Create.
  • Creator Hub är webbplatsen create.roblox.com. Logga in med samma konto och klicka på ditt spel i listan.
  • Roblox kan be om mer innan ett spel kan bli offentligt, till exempel en ålderskontroll av kontot. Sidan berättar vad som saknas.
  • Om du är under 18 år gör du det här steget tillsammans med en förälder.
Tips. Framstegen sparas inte än. När en spelare lämnar spelet är pengarna borta. Att spara data är en avancerad lektion.
Det här steget fungerar inte för mig

Kontrollera de här tre sakerna först

  • Namnet på varje del och varje skript är exakt som i guiden, med samma stora bokstäver.
  • Skriptet ligger i rätt objekt. Titta på etiketten ovanför kodrutan.
  • Öppna fönstret Output från menyn Window. Röd text visar skriptet och raden med felet.

Sitter du fortfarande fast? Skriv till oss →

Nu ändrar du själv

  • Gör varje kub värd 10 pengar i stället för 5.
  • Lägg till en tredje dropper som kostar 200 pengar.
  • Gör den andra droppern snabbare än den första. Vilket tal ändrar du?