← Toate ghidurile
Ghid 2

Construiește primul tău tycoon

Un dropper face cuburi, un conveyor le duce, un collector le transformă în cash, iar un buton cumpără un al doilea dropper.

Gratuit60 de minute · Începător · Roblox Studio
1
Pasul 1 / 9

Pregătește locul

  1. Deschide Roblox Studio, apasă New Experience și alege șablonul Baseplate.
  2. În Explorer treci cu mouse-ul peste Workspace, apasă + și adaugă un Folder. Numește-l Tycoon.
  3. Tot ce construiești în acest ghid merge în acel folder. Așa Explorer rămâne ordonat.

Mai multe detalii

  • Șablonul Baseplate se află în lista de șabloane de pe ecranul de start.
  • Când faci clic pe +, se deschide o listă. Scrie cuvântul Folder ca să îl găsești repede, apoi fă clic pe el.
  • Ca să redenumești folderul, fă clic o dată pe el, apasă F2, scrie Tycoon și apasă Enter.
  • Pe un Mac, folosește tasta Cmd de fiecare dată când ghidul spune Ctrl.
Sfat. Redenumește fiecare piesă imediat după ce o creezi. Scripturile găsesc piesele după nume, așa că o piesă care se numește încă Part nu va funcționa.
Acest pas nu merge la mine

Verifică mai întâi aceste trei lucruri

  • Numele fiecărei piese și al fiecărui script este exact ca în ghid, cu aceleași litere mari.
  • Scriptul se află în obiectul potrivit. Uită-te la eticheta de deasupra casetei cu cod.
  • Deschide fereastra Output din meniul Window. Textul roșu îți arată scriptul și linia cu problema.

Tot nu merge? Scrie-ne →

2
Pasul 2 / 9

Dă cash fiecărui jucător

  1. Treci cu mouse-ul peste ServerScriptService, apasă + și adaugă un Script. Numește-l Leaderstats.
  2. Șterge linia care era deja acolo și lipește acest cod.
  3. Apasă Play. Numele tău apare în lista de jucători, cu Cash 0 lângă el.
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)

Ce face fiecare parte

  • PlayerAdded pornește o dată pentru fiecare jucător care intră.
  • Un folder numit leaderstats este special. Roblox arată valorile din el în lista de jucători.
  • Un IntValue ține un număr întreg. Aici ține cash-ul jucătorului.

Mai multe detalii

  • ServerScriptService se află în lista din Explorer. Scripturile din el rulează pe server, unde jucătorii nu le pot schimba.
  • Scriptul se deschide într-o filă nouă. Fă clic în cod, apasă Ctrl+A și apoi Ctrl+V ca să înlocuiești tot.
  • Întoarce-te în lumea ta făcând clic pe fila cu numele locului tău.
  • Lista jucătorilor este în colțul din dreapta sus al jocului. Apasă F5 ca să pornești și Shift+F5 ca să oprești.
Acest pas nu merge la mine

Verifică mai întâi aceste trei lucruri

  • Numele fiecărei piese și al fiecărui script este exact ca în ghid, cu aceleași litere mari.
  • Scriptul se află în obiectul potrivit. Uită-te la eticheta de deasupra casetei cu cod.
  • Deschide fereastra Output din meniul Window. Textul roșu îți arată scriptul și linia cu problema.

Tot nu merge? Scrie-ne →

3
Pasul 3 / 9

Construiește dropper-ul

  1. Adaugă un Part în folderul Tycoon. Setează Size la 4, 1, 4, bifează Anchored și numește-l Dropper.
  2. Ridică-l la aproximativ 10 studs deasupra podelei cu unealta Move (Ctrl+2).
  3. Adaugă un Script la Dropper și lipește acest cod.
  4. Apasă Play. Un cub galben cade la fiecare 2 secunde.
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

Ce face fiecare parte

  • Instance.new creează o piesă nouă din cod.
  • Position pune cubul la 2 studs sub dropper.
  • Debris șterge fiecare cub după 20 de secunde, așa că cuburile vechi nu se adună.

Mai multe detalii

  • Ca să pui piesa în folder, trage numele ei din Explorer peste numele Tycoon.
  • Cu unealta Move, trage săgeata verde în sus. Câmpul Position din Properties arată înălțimea ca numărul din mijloc.
  • Cubul apare la 2 studs sub dropper și apoi cade. Dacă dropper-ul este prea jos, cuburile se strâng grămadă sub el.
  • Primul cub vine la 2 secunde după ce începe jocul.
Greșeală frecventă. Nu apar cuburi: verifică dacă scriptul este în Dropper și dacă Dropper este Anchored.
Acest pas nu merge la mine

Verifică mai întâi aceste trei lucruri

  • Numele fiecărei piese și al fiecărui script este exact ca în ghid, cu aceleași litere mari.
  • Scriptul se află în obiectul potrivit. Uită-te la eticheta de deasupra casetei cu cod.
  • Deschide fereastra Output din meniul Window. Textul roșu îți arată scriptul și linia cu problema.

Tot nu merge? Scrie-ne →

4
Pasul 4 / 9

Adaugă conveyor-ul

  1. Adaugă un Part, setează Size la 6, 1, 30, bifează Anchored și numește-l Conveyor.
  2. Pune-l pe podea așa încât un capăt să fie chiar sub dropper.
  3. Adaugă un Script la Conveyor și lipește acest cod.
  4. Apasă Play. Cuburile aterizează pe conveyor și alunecă de-a lungul lui.
Conveyor > Script
local conveyor = script.Parent

conveyor.AssemblyLinearVelocity = conveyor.CFrame.LookVector * 8

Ce face fiecare parte

  • AssemblyLinearVelocity îi spune lui Roblox cât de repede trebuie să se miște lucrurile de deasupra piesei.
  • LookVector este direcția în care se uită fața piesei. Numărul 8 este viteza în studs pe secundă.

Mai multe detalii

  • Fiecare piesă are o față. Banda rulantă împinge cuburile spre fața ei.
  • Latura lungă a benzii, cea de 30 de studs, trebuie să arate în direcția opusă dropper-ului, spre locul unde va sta collector-ul.
  • Banda în sine nu se mișcă. Doar lucrurile de pe ea alunecă.
  • Dacă cuburile cad pe lateral, fă banda mai lată sau mută dropper-ul în mijlocul ei.
Greșeală frecventă. Cuburile alunecă în direcția greșită: rotește conveyor-ul cu 180 de grade cu unealta Rotate (Ctrl+4).
Acest pas nu merge la mine

Verifică mai întâi aceste trei lucruri

  • Numele fiecărei piese și al fiecărui script este exact ca în ghid, cu aceleași litere mari.
  • Scriptul se află în obiectul potrivit. Uită-te la eticheta de deasupra casetei cu cod.
  • Deschide fereastra Output din meniul Window. Textul roșu îți arată scriptul și linia cu problema.

Tot nu merge? Scrie-ne →

5
Pasul 5 / 9

Adună cuburile

  1. Adaugă un Part la capătul îndepărtat al conveyor-ului. Setează Size la 6, 4, 1, bifează Anchored, fă-l verde și numește-l Collector.
  2. Pune-l în picioare ca un perete, ca cuburile să se lovească de el.
  3. Adaugă un Script la Collector și lipește acest cod.
  4. Apasă Play. Fiecare cub care ajunge la collector adaugă 5 la 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)

Ce face fiecare parte

  • Scriptul ignoră tot ce nu se numește Cube. Picioarele tale nu contează.
  • Destroy scoate cubul din joc.
  • Bucla dă 5 cash fiecărui jucător din server. Un tycoon cu un singur proprietar pentru fiecare teren este o lecție avansată.

Mai multe detalii

  • Size 6, 4, 1 stă deja în picioare: 6 lățime, 4 înălțime și 1 grosime. Pune-l peste capătul benzii, ca pe o poartă închisă.
  • Marginea lui de jos trebuie să atingă banda, ca niciun cub să nu se strecoare pe dedesubt.
  • Ca să-l faci verde, fă clic pe câmpul Color din Properties.
  • Ca să testezi: apasă F5 și uită-te la lista jucătorilor. Cash crește cu 5 de fiecare dată când un cub ajunge la perete.
Acest pas nu merge la mine

Verifică mai întâi aceste trei lucruri

  • Numele fiecărei piese și al fiecărui script este exact ca în ghid, cu aceleași litere mari.
  • Scriptul se află în obiectul potrivit. Uită-te la eticheta de deasupra casetei cu cod.
  • Deschide fereastra Output din meniul Window. Textul roșu îți arată scriptul și linia cu problema.

Tot nu merge? Scrie-ne →

6
Pasul 6 / 9

Pregătește al doilea dropper

  1. Selectează Dropper și apasă Ctrl+D. Numește copia Dropper2 și mut-o lângă primul, tot deasupra conveyor-ului.
  2. Trage Dropper2 din Workspace în ServerStorage.
  3. Dispare din lume. Obiectele din ServerStorage așteaptă acolo până când un script le mută înapoi.

Mai multe detalii

  • Copia stă exact deasupra originalului. Trage-o într-o parte cu unealta Move ca să le vezi pe amândouă.
  • Redenumește copia cu F2. Numele trebuie să fie Dropper2, cu D mare și fără spațiu.
  • ServerStorage se află în lista din Explorer. Trage numele Dropper2 peste el.
  • Scriptul din copie a venit odată cu ea. Nu trebuie să îl adaugi din nou.
Sfat. Scripturile din ServerStorage nu rulează. De aceea al doilea dropper stă liniștit până când îl cumpără cineva.
Acest pas nu merge la mine

Verifică mai întâi aceste trei lucruri

  • Numele fiecărei piese și al fiecărui script este exact ca în ghid, cu aceleași litere mari.
  • Scriptul se află în obiectul potrivit. Uită-te la eticheta de deasupra casetei cu cod.
  • Deschide fereastra Output din meniul Window. Textul roșu îți arată scriptul și linia cu problema.

Tot nu merge? Scrie-ne →

7
Pasul 7 / 9

Adaugă un buton de cumpărare

  1. Adaugă un Part pe podea, lângă conveyor. Setează Size la 4, 1, 4, bifează Anchored, fă-l albastru deschis și numește-l BuyDropper.
  2. Adaugă un Script la BuyDropper și lipește acest cod.
  3. Ca să pui o etichetă butonului, treci cu mouse-ul peste BuyDropper, apasă + și adaugă un BillboardGui. Setează Size la {0, 200}, {0, 50} și StudsOffset la 0, 3, 0.
  4. Adaugă un TextLabel în BillboardGui. Setează Size la {1, 0}, {1, 0}, bifează TextScaled și scrie acest text: 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)

Ce face fiecare parte

  • PRICE este costul. Schimbă numărul ca să faci butonul mai ieftin sau mai scump.
  • Scriptul verifică dacă un jucător adevărat a atins butonul și dacă jucătorul are destul cash.
  • Când muți Dropper2 în workspace, îl pornești. Scriptul lui începe să ruleze imediat.

Mai multe detalii

  • Jucătorii cumpără mergând pe buton, așa că pune-l pe podea, într-un loc ușor de atins.
  • Pentru Size și StudsOffset, fă clic pe câmp în Properties, scrie numerele exact cum sunt arătate, cu paranteze și virgule, și apasă Enter.
  • Text este o proprietate a obiectului TextLabel. Fă clic pe câmpul Text, scrie cuvintele și apasă Enter.
  • Eticheta plutește deasupra butonului. Dacă nu o vezi, mărește numărul din mijloc al lui StudsOffset.
Acest pas nu merge la mine

Verifică mai întâi aceste trei lucruri

  • Numele fiecărei piese și al fiecărui script este exact ca în ghid, cu aceleași litere mari.
  • Scriptul se află în obiectul potrivit. Uită-te la eticheta de deasupra casetei cu cod.
  • Deschide fereastra Output din meniul Window. Textul roșu îți arată scriptul și linia cu problema.

Tot nu merge? Scrie-ne →

8
Pasul 8 / 9

Testează toată bucla

  1. Apasă F5. Uită-te cum cad cuburile, merg pe conveyor și se transformă în cash.
  2. Așteaptă până ai 50 de cash, apoi calcă pe butonul albastru.
  3. Apare al doilea dropper, butonul dispare, iar cash-ul tău crește de două ori mai repede.
  4. Apasă Shift+F5 ca să oprești. Dacă ceva nu merge, deschide fereastra Output din meniul Window și citește textul roșu.

Mai multe detalii

  • Sunt necesare 10 cuburi, deci cel puțin 20 de secunde, ca să ajungi la 50 de cash.
  • După ce cumperi, Cash scade cu 50. Așa trebuie. Ai plătit pentru dropper.
  • Butonul este distrus după cumpărare, așa că nu poate fi cumpărat de două ori.
  • Dacă al doilea dropper apare în locul greșit, oprește jocul, trage Dropper2 din ServerStorage înapoi în Workspace, mută-l și trage-l din nou în ServerStorage.
Greșeală frecventă. Cash nu se schimbă: piesele care cad trebuie să se numească Cube, exact ca în scriptul dropper-ului.
Acest pas nu merge la mine

Verifică mai întâi aceste trei lucruri

  • Numele fiecărei piese și al fiecărui script este exact ca în ghid, cu aceleași litere mari.
  • Scriptul se află în obiectul potrivit. Uită-te la eticheta de deasupra casetei cu cod.
  • Deschide fereastra Output din meniul Window. Textul roșu îți arată scriptul și linia cu problema.

Tot nu merge? Scrie-ne →

9
Pasul 9 / 9

Publică-l

  1. Alege File → Publish to Roblox. Dă jocului un nume și o descriere scurtă.
  2. Pe site-ul Creator Hub deschide jocul tău și completează chestionarul Maturity.
  3. Setează jocul pe Public și trimite linkul unui prieten.

Mai multe detalii

  • Prima dată când publici, Studio îți cere un nume și o descriere. Fă clic pe Create.
  • Creator Hub este site-ul create.roblox.com. Conectează-te cu același cont și fă clic pe jocul tău din listă.
  • Roblox poate cere mai mult înainte ca un joc să devină public, de exemplu o verificare a vârstei pentru cont. Pagina îți spune ce lipsește.
  • Dacă ai sub 18 ani, fă acest pas împreună cu un părinte.
Sfat. Progresul nu se salvează încă. Când un jucător pleacă, cash-ul dispare. Salvarea datelor este o lecție avansată.
Acest pas nu merge la mine

Verifică mai întâi aceste trei lucruri

  • Numele fiecărei piese și al fiecărui script este exact ca în ghid, cu aceleași litere mari.
  • Scriptul se află în obiectul potrivit. Uită-te la eticheta de deasupra casetei cu cod.
  • Deschide fereastra Output din meniul Window. Textul roșu îți arată scriptul și linia cu problema.

Tot nu merge? Scrie-ne →

Acum schimbă tu codul

  • Fă ca fiecare cub să valoreze 10 cash în loc de 5.
  • Adaugă un al treilea dropper care costă 200 de cash.
  • Fă al doilea dropper mai rapid decât primul. Ce număr schimbi?