← Alle gidsen
Gids 2

Bouw je eerste tycoon

Een dropper laat blokjes vallen, een lopende band brengt ze weg, een collector maakt er cash van en een knop koopt een tweede dropper.

Gratis60 minuten · Beginner · Roblox Studio
1
Stap 1 / 9

Maak de plek klaar

  1. Open Roblox Studio, klik op New Experience en kies de Baseplate-template.
  2. Ga in Explorer met de muis over Workspace, klik op + en voeg een Folder toe. Noem hem Tycoon.
  3. Alles wat je in deze gids bouwt, gaat in die map. Zo blijft Explorer netjes.

Meer uitleg

  • De template Baseplate staat in de lijst met templates op het startscherm.
  • Als je op + klikt, opent er een lijst. Typ het woord Folder om hem snel te vinden en klik erop.
  • Om de map een andere naam te geven klik je er één keer op, druk je op F2, typ je Tycoon en druk je op Enter.
  • Gebruik op een Mac de toets Cmd, elke keer als deze gids Ctrl zegt.
Tip. Geef elke part meteen een andere naam nadat je hem hebt gemaakt. Scripts zoeken parts op naam, dus een part die nog Part heet, werkt niet.
Deze stap lukt mij niet

Controleer eerst deze drie dingen

  • De naam van elke part en elk script is precies zoals in de gids, met dezelfde hoofdletters.
  • Het script zit in het juiste object. Kijk naar het label boven het codevak.
  • Open het venster Output via het menu Window. Rode tekst laat het script en de regel met het probleem zien.

Nog steeds vast? Schrijf ons →

2
Stap 2 / 9

Geef elke speler cash

  1. Ga met de muis over ServerScriptService, klik op + en voeg een Script toe. Noem het Leaderstats.
  2. Verwijder de regel die er al staat en plak deze code.
  3. Druk op Play. Je naam staat in de spelerslijst met Cash 0 ernaast.
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)

Wat elk deel doet

  • PlayerAdded draait één keer voor elke speler die binnenkomt.
  • Een map met de naam leaderstats is speciaal. Roblox toont de waarden erin in de spelerslijst.
  • Een IntValue bevat een geheel getal. Hier bevat hij de cash van de speler.

Meer uitleg

  • ServerScriptService staat in de lijst van Explorer. Scripts daarin draaien op de server, waar spelers ze niet kunnen aanpassen.
  • Het script opent in een nieuw tabblad. Klik in de code, druk op Ctrl+A en dan op Ctrl+V om alles te vervangen.
  • Ga terug naar je wereld door op het tabblad met de naam van je plek te klikken.
  • De spelerslijst staat rechtsboven in de game. Druk op F5 om te starten en op Shift+F5 om te stoppen.
Deze stap lukt mij niet

Controleer eerst deze drie dingen

  • De naam van elke part en elk script is precies zoals in de gids, met dezelfde hoofdletters.
  • Het script zit in het juiste object. Kijk naar het label boven het codevak.
  • Open het venster Output via het menu Window. Rode tekst laat het script en de regel met het probleem zien.

Nog steeds vast? Schrijf ons →

3
Stap 3 / 9

Bouw de dropper

  1. Voeg een Part toe in de map Tycoon. Zet Size op 4, 1, 4, zet Anchored aan en noem hem Dropper.
  2. Til hem ongeveer 10 studs boven de vloer met het gereedschap Move (Ctrl+2).
  3. Voeg een Script toe aan Dropper en plak deze code.
  4. Druk op Play. Elke 2 seconden valt er een geel blokje.
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

Wat elk deel doet

  • Instance.new maakt met code een nieuwe part.
  • Position zet het blokje 2 studs onder de dropper.
  • Debris haalt elk blokje na 20 seconden weg, zodat oude blokjes zich niet opstapelen.

Meer uitleg

  • Om de part in de map te zetten sleep je de naam in Explorer naar de naam Tycoon.
  • Sleep met het gereedschap Move de groene pijl omhoog. Het veld Position in Properties toont de hoogte als het middelste getal.
  • Het blokje verschijnt 2 studs onder de dropper en valt dan. Staat de dropper te laag, dan stapelen de blokjes zich eronder op.
  • Het eerste blokje komt 2 seconden nadat de game begint.
Veelgemaakte fout. Er komen geen blokjes: controleer of het script in Dropper zit en of Dropper op Anchored staat.
Deze stap lukt mij niet

Controleer eerst deze drie dingen

  • De naam van elke part en elk script is precies zoals in de gids, met dezelfde hoofdletters.
  • Het script zit in het juiste object. Kijk naar het label boven het codevak.
  • Open het venster Output via het menu Window. Rode tekst laat het script en de regel met het probleem zien.

Nog steeds vast? Schrijf ons →

4
Stap 4 / 9

Voeg de lopende band toe

  1. Voeg een Part toe, zet Size op 6, 1, 30, zet Anchored aan en noem hem Conveyor.
  2. Leg hem op de vloer zodat één uiteinde precies onder de dropper ligt.
  3. Voeg een Script toe aan Conveyor en plak deze code.
  4. Druk op Play. De blokjes landen op de lopende band en schuiven mee.
Conveyor > Script
local conveyor = script.Parent

conveyor.AssemblyLinearVelocity = conveyor.CFrame.LookVector * 8

Wat elk deel doet

  • AssemblyLinearVelocity zegt tegen Roblox hoe snel dingen op de part moeten bewegen.
  • LookVector is de richting waarin de voorkant van de part kijkt. Het getal 8 is de snelheid in studs per seconde.

Meer uitleg

  • Elke part heeft een voorkant. De lopende band duwt blokjes naar zijn voorkant.
  • De lange kant van de lopende band, de 30 studs, moet van de dropper af wijzen, naar de plek waar de verzamelaar komt te staan.
  • De lopende band zelf beweegt niet. Alleen de dingen erop schuiven.
  • Vallen er blokjes opzij, maak de lopende band dan breder of zet de dropper in het midden ervan.
Veelgemaakte fout. De blokjes schuiven de verkeerde kant op: draai de lopende band 180 graden met het gereedschap Rotate (Ctrl+4).
Deze stap lukt mij niet

Controleer eerst deze drie dingen

  • De naam van elke part en elk script is precies zoals in de gids, met dezelfde hoofdletters.
  • Het script zit in het juiste object. Kijk naar het label boven het codevak.
  • Open het venster Output via het menu Window. Rode tekst laat het script en de regel met het probleem zien.

Nog steeds vast? Schrijf ons →

5
Stap 5 / 9

Vang de blokjes op

  1. Voeg een Part toe aan het verre eind van de lopende band. Zet Size op 6, 4, 1, zet Anchored aan, maak hem groen en noem hem Collector.
  2. Zet hem rechtop als een muur, zodat de blokjes ertegenaan lopen.
  3. Voeg een Script toe aan Collector en plak deze code.
  4. Druk op Play. Elk blokje dat bij de collector komt, telt 5 op bij 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)

Wat elk deel doet

  • Het script negeert alles wat niet Cube heet. Je voeten tellen dus niet mee.
  • Destroy haalt het blokje uit de game.
  • De lus geeft 5 cash aan elke speler op de server. Een tycoon met één eigenaar per stuk grond is een les voor gevorderden.

Meer uitleg

  • Size 6, 4, 1 staat al rechtop: 6 breed, 4 hoog en 1 dik. Zet hem dwars over het einde van de lopende band, als een gesloten poort.
  • De onderkant moet de lopende band raken, zodat geen blokje eronderdoor kan glippen.
  • Om hem groen te maken klik je in Properties op het veld Color.
  • Testen: druk op F5 en kijk naar de spelerslijst. Cash gaat met 5 omhoog elke keer dat een blokje de muur bereikt.
Deze stap lukt mij niet

Controleer eerst deze drie dingen

  • De naam van elke part en elk script is precies zoals in de gids, met dezelfde hoofdletters.
  • Het script zit in het juiste object. Kijk naar het label boven het codevak.
  • Open het venster Output via het menu Window. Rode tekst laat het script en de regel met het probleem zien.

Nog steeds vast? Schrijf ons →

6
Stap 6 / 9

Maak de tweede dropper klaar

  1. Selecteer Dropper en druk op Ctrl+D. Noem de kopie Dropper2 en zet hem naast de eerste, nog steeds boven de lopende band.
  2. Sleep Dropper2 van Workspace naar ServerStorage.
  3. Hij verdwijnt uit de wereld. Objecten in ServerStorage wachten daar tot een script ze terugzet.

Meer uitleg

  • De kopie zit precies bovenop het origineel. Sleep hem met het gereedschap Move opzij, zodat je ze allebei ziet.
  • Geef de kopie met F2 een nieuwe naam. De naam moet Dropper2 zijn, met een hoofdletter D en zonder spatie.
  • ServerStorage staat in de lijst van Explorer. Sleep de naam Dropper2 erheen.
  • Het script in de kopie is meegekomen. Je hoeft het niet opnieuw toe te voegen.
Tip. Scripts in ServerStorage draaien niet. Daarom blijft de tweede dropper stil tot iemand hem koopt.
Deze stap lukt mij niet

Controleer eerst deze drie dingen

  • De naam van elke part en elk script is precies zoals in de gids, met dezelfde hoofdletters.
  • Het script zit in het juiste object. Kijk naar het label boven het codevak.
  • Open het venster Output via het menu Window. Rode tekst laat het script en de regel met het probleem zien.

Nog steeds vast? Schrijf ons →

7
Stap 7 / 9

Voeg een koopknop toe

  1. Voeg een Part toe op de vloer bij de lopende band. Zet Size op 4, 1, 4, zet Anchored aan, maak hem felblauw en noem hem BuyDropper.
  2. Voeg een Script toe aan BuyDropper en plak deze code.
  3. Om de knop een label te geven, ga je met de muis over BuyDropper, klik je op + en voeg je een BillboardGui toe. Zet de Size op {0, 200}, {0, 50} en de StudsOffset op 0, 3, 0.
  4. Voeg een TextLabel toe in de BillboardGui. Zet de Size op {1, 0}, {1, 0}, zet TextScaled aan en typ deze tekst: 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)

Wat elk deel doet

  • PRICE is de prijs. Verander het getal om de knop goedkoper of duurder te maken.
  • Het script controleert of een echte speler de knop aanraakte en of die speler genoeg cash heeft.
  • Als je Dropper2 naar workspace verplaatst, gaat hij aan. Zijn script begint meteen te draaien.

Meer uitleg

  • Spelers kopen door op de knop te lopen. Zet hem dus op de vloer, waar hij makkelijk te bereiken is.
  • Bij Size en StudsOffset klik je in Properties op het veld, typ je de getallen precies zoals getoond, met de haakjes en komma's, en druk je op Enter.
  • Text is een eigenschap van het TextLabel. Klik op het veld Text, typ de woorden en druk op Enter.
  • Het label zweeft boven de knop. Zie je het niet, verhoog dan het middelste getal van StudsOffset.
Deze stap lukt mij niet

Controleer eerst deze drie dingen

  • De naam van elke part en elk script is precies zoals in de gids, met dezelfde hoofdletters.
  • Het script zit in het juiste object. Kijk naar het label boven het codevak.
  • Open het venster Output via het menu Window. Rode tekst laat het script en de regel met het probleem zien.

Nog steeds vast? Schrijf ons →

8
Stap 8 / 9

Test de hele cirkel

  1. Druk op F5. Kijk hoe de blokjes vallen, over de lopende band gaan en cash worden.
  2. Wacht tot je 50 cash hebt en ga dan op de blauwe knop staan.
  3. De tweede dropper verschijnt, de knop verdwijnt en je cash groeit twee keer zo snel.
  4. Druk op Shift+F5 om te stoppen. Gaat er iets mis, open dan het venster Output via het menu Window en lees de rode tekst.

Meer uitleg

  • Er zijn 10 blokjes voor nodig, dus minstens 20 seconden, om 50 cash te halen.
  • Na de aankoop gaat Cash met 50 omlaag. Dat klopt. Je hebt de dropper betaald.
  • De knop wordt na de aankoop vernietigd, zodat hij niet twee keer gekocht kan worden.
  • Verschijnt de tweede dropper op de verkeerde plek, stop dan de game, sleep Dropper2 uit ServerStorage terug naar Workspace, verplaats hem en sleep hem weer naar ServerStorage.
Veelgemaakte fout. Cash verandert nooit: de vallende parts moeten Cube heten, precies zoals in het script van de dropper.
Deze stap lukt mij niet

Controleer eerst deze drie dingen

  • De naam van elke part en elk script is precies zoals in de gids, met dezelfde hoofdletters.
  • Het script zit in het juiste object. Kijk naar het label boven het codevak.
  • Open het venster Output via het menu Window. Rode tekst laat het script en de regel met het probleem zien.

Nog steeds vast? Schrijf ons →

9
Stap 9 / 9

Publiceer je game

  1. Kies File → Publish to Roblox. Geef de game een naam en een korte beschrijving.
  2. Open je game op de website Creator Hub en vul de vragenlijst Maturity in.
  3. Zet de game op Public en stuur de link naar een vriend of vriendin.

Meer uitleg

  • De eerste keer dat je publiceert, vraagt Studio om een naam en een beschrijving. Klik op Create.
  • Creator Hub is de website create.roblox.com. Log in met hetzelfde account en klik in de lijst op je game.
  • Roblox vraagt misschien om meer voordat een game openbaar mag zijn, bijvoorbeeld een leeftijdscontrole van het account. De pagina vertelt wat er ontbreekt.
  • Ben je jonger dan 18? Doe deze stap dan samen met een ouder.
Tip. Voortgang wordt nog niet opgeslagen. Als een speler weggaat, is de cash weg. Gegevens opslaan is een les voor gevorderden.
Deze stap lukt mij niet

Controleer eerst deze drie dingen

  • De naam van elke part en elk script is precies zoals in de gids, met dezelfde hoofdletters.
  • Het script zit in het juiste object. Kijk naar het label boven het codevak.
  • Open het venster Output via het menu Window. Rode tekst laat het script en de regel met het probleem zien.

Nog steeds vast? Schrijf ons →

Pas het nu zelf aan

  • Laat elk blokje 10 cash waard zijn in plaats van 5.
  • Voeg een derde dropper toe die 200 cash kost.
  • Maak de tweede dropper sneller dan de eerste. Welk getal verander je?