← Miongozo yote
Mwongozo 5

Tengeneza mchezo wako wa kwanza wa kuiba na kulinda

Kila mchezaji anapata base. Chukua gem kutoka katikati, ikimbize nyumbani upate alama, na umgonge yeyote anayeibeba.

BureDakika 70 · Anayeanza, mwongozo wa mwisho · Roblox Studio
1
Hatua 1 / 8

Andaa place

  1. Fungua Roblox Studio, bonyeza New Experience kisha chagua kiolezo cha Baseplate.
  2. Gem itakuwa katikati ya ramani. Base nne zitasimama kuizunguka, kila moja ikiwa takriban studs 60 kutoka katikati.
  3. Mchezo huu unahitaji angalau wachezaji wawili, kwa hiyo mwishoni utaujaribu na wachezaji wawili wa majaribio.

Maelezo zaidi

  • Kiolezo cha Baseplate kiko kwenye orodha ya violezo kwenye skrini ya kuanzia.
  • Sehemu ya Position kwenye Properties inaonyesha mahali Part ilipo. Position 60, 0.5, 0 iko studs 60 kutoka katikati ya ramani.
  • Sogeza SpawnLocation, jukwaa wanakotokea wachezaji, karibu na katikati, ili kila mchezaji aanzie umbali ule ule kutoka kwenye vito.
  • Kwenye Mac, tumia kitufe cha Cmd kila mara mwongozo huu unaposema Ctrl.
Hatua hii haifanyi kazi kwangu

Angalia mambo haya matatu kwanza

  • Jina la kila Part na script liko sawa kabisa na lilivyo kwenye mwongozo, pamoja na herufi kubwa.
  • Script iko ndani ya kitu sahihi. Angalia lebo iliyo juu ya kisanduku cha msimbo.
  • Fungua dirisha la Output kutoka menyu ya Window. Maandishi mekundu yanaonyesha script na mstari wenye tatizo.

Bado umekwama? Tuandikie →

2
Hatua 2 / 8

Tengeneza base

  1. Ndani ya Explorer elekeza kipanya juu ya Workspace, bonyeza + kisha ongeza Folder. Ipe jina Bases.
  2. Ongeza Part. Weka Size kuwa 16, 1, 16, washa Anchored kisha ipake rangi ya kijivu. Iburute ndani ya Bases kisha ipe jina Base1.
  3. Inakili mara tatu kwa Ctrl+D. Zipe nakala majina Base2, Base3 na Base4 kisha usogeze moja kila upande wa ramani.

Maelezo zaidi

  • Ili kuweka Part ndani ya folda, buruta jina lake kwenye Explorer hadi juu ya jina Bases.
  • Nakala zilizotengenezwa kwa Ctrl+D tayari ziko ndani ya folda ya Bases. Badilisha jina la kila moja kwa F2.
  • Majina lazima yawe Base1, Base2, Base3 na Base4 kabisa, bila nafasi kabla ya namba.
  • Seva yenye wachezaji zaidi ya wanne ina wachezaji wengi kuliko base. Baadaye unaweza kuweka ukubwa wa seva kuwa 4 kwenye mipangilio ya mchezo ndani ya Creator Hub.
Kidokezo. Weka base zote nne umbali ule ule kutoka katikati. Hapo mchezo unakuwa wa haki kwa kila mtu.
Hatua hii haifanyi kazi kwangu

Angalia mambo haya matatu kwanza

  • Jina la kila Part na script liko sawa kabisa na lilivyo kwenye mwongozo, pamoja na herufi kubwa.
  • Script iko ndani ya kitu sahihi. Angalia lebo iliyo juu ya kisanduku cha msimbo.
  • Fungua dirisha la Output kutoka menyu ya Window. Maandishi mekundu yanaonyesha script na mstari wenye tatizo.

Bado umekwama? Tuandikie →

3
Hatua 3 / 8

Tengeneza gem

  1. Ongeza Part katikati ya ramani, takriban studs 4 juu ya sakafu. Weka Size kuwa 2, 2, 2, chagua rangi angavu na uweke Material kuwa Neon. Ipe jina Gem.
  2. Washa Anchored na Massless, kisha zima CanCollide.
  3. Elekeza kipanya juu ya Gem, bonyeza + kisha ongeza ProximityPrompt. Weka ActionText kuwa Take na HoldDuration kuwa 1.

Kila sehemu hufanya nini

  • ProximityPrompt inaonyesha kitufe mchezaji anaposimama karibu. Kukishikilia kwa sekunde 1 kunakiwasha.
  • Massless ikiwa imewashwa na CanCollide ikiwa imezimwa vinazuia gem isimpunguzie kasi wala kumsukuma mchezaji anayeibeba.

Maelezo zaidi

  • Anchored, Massless na CanCollide ni visanduku vya kuteua kwenye Properties.
  • Ukibonyeza +, andika ProximityPrompt kuipata. Ibonyeze, kisha ubadilishe ActionText na HoldDuration kwenye Properties.
  • Kwenye mchezo, kitufe kidogo chenye herufi E na neno Take kinatokea unaposimama karibu na gem.
  • Kwenye simu, wachezaji wanashikilia kidole kwenye kitufe hicho.
Hatua hii haifanyi kazi kwangu

Angalia mambo haya matatu kwanza

  • Jina la kila Part na script liko sawa kabisa na lilivyo kwenye mwongozo, pamoja na herufi kubwa.
  • Script iko ndani ya kitu sahihi. Angalia lebo iliyo juu ya kisanduku cha msimbo.
  • Fungua dirisha la Output kutoka menyu ya Window. Maandishi mekundu yanaonyesha script na mstari wenye tatizo.

Bado umekwama? Tuandikie →

4
Hatua 4 / 8

Mpe kila mchezaji base na alama

  1. Elekeza kipanya juu ya ServerScriptService, bonyeza + kisha ongeza Script. Ipe jina Game.
  2. Futa mstari ulio tayari hapo kisha ubandike msimbo huu. Ni sehemu ya kwanza kati ya tatu.
  3. Bonyeza Play. Base moja inageuka kijani. Hiyo ni yako.
ServerScriptService > Game (1 / 3)
local Players = game:GetService("Players")

local bases = workspace:WaitForChild("Bases")
local gem = workspace:WaitForChild("Gem")
local home = gem.CFrame
local carrier = nil

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

	local score = Instance.new("IntValue")
	score.Name = "Score"
	score.Parent = stats

	for _, base in ipairs(bases:GetChildren()) do
		if base:GetAttribute("Owner") == nil then
			base:SetAttribute("Owner", player.UserId)
			base.Color = Color3.fromRGB(60, 220, 120)
			break
		end
	end
end)

Players.PlayerRemoving:Connect(function(player)
	for _, base in ipairs(bases:GetChildren()) do
		if base:GetAttribute("Owner") == player.UserId then
			base:SetAttribute("Owner", nil)
			base.Color = Color3.fromRGB(160, 160, 160)
		end
	end
end)

Kila sehemu hufanya nini

  • Mistari ya kwanza inapata base na gem kisha inakumbuka gem ilipoanzia.
  • SetAttribute inaandika UserId ya mmiliki kwenye base ya kwanza iliyo wazi.
  • PlayerRemoving inaiachia base huru tena mmiliki wake anapoondoka.

Maelezo zaidi

  • Script inafunguka kwenye kichupo kipya. Bonyeza ndani ya msimbo, bonyeza Ctrl+A kisha Ctrl+V kubadilisha kila kitu.
  • Ni base ipi inayogeuka kijani inategemea mpangilio wa base kwenye folda. Tembea ili kupata yako.
  • Orodha ya wachezaji kwenye kona ya juu kulia inaonyesha Score 0.
  • Bado hakuna kinachotokea ukitembea hadi kwenye gem na kushikilia E. Hilo linakuja kwenye hatua inayofuata.
Hatua hii haifanyi kazi kwangu

Angalia mambo haya matatu kwanza

  • Jina la kila Part na script liko sawa kabisa na lilivyo kwenye mwongozo, pamoja na herufi kubwa.
  • Script iko ndani ya kitu sahihi. Angalia lebo iliyo juu ya kisanduku cha msimbo.
  • Fungua dirisha la Output kutoka menyu ya Window. Maandishi mekundu yanaonyesha script na mstari wenye tatizo.

Bado umekwama? Tuandikie →

5
Hatua 5 / 8

Waruhusu wachezaji wachukue gem

  1. Fungua script ya Game tena.
  2. Bandika msimbo huu chini ya msimbo wa hatua iliyopita.
  3. Bonyeza Play, tembea hadi kwenye gem kisha ushikilie E. Gem inaruka juu ya kichwa chako na kukufuata.
ServerScriptService > Game (2 / 3)
local function resetGem()
	carrier = nil

	local weld = gem:FindFirstChild("CarryWeld")
	if weld then
		weld:Destroy()
	end

	gem.Anchored = true
	gem.CFrame = home
	gem.ProximityPrompt.Enabled = true
end

gem.ProximityPrompt.Triggered:Connect(function(player)
	local character = player.Character
	local root = character and character:FindFirstChild("HumanoidRootPart")
	if carrier or not root then return end

	carrier = player
	gem.ProximityPrompt.Enabled = false
	gem.Anchored = false
	gem.CFrame = root.CFrame * CFrame.new(0, 4, 0)

	local weld = Instance.new("WeldConstraint")
	weld.Name = "CarryWeld"
	weld.Part0 = root
	weld.Part1 = gem
	weld.Parent = gem
end)

Kila sehemu hufanya nini

  • carrier inakumbuka nani ameshika gem. Hakuna mwingine anayeweza kuichukua inapokuwa imebebwa.
  • WeldConstraint inaibandika gem kwa mchezaji, kwa hiyo inasogea pamoja naye.
  • resetGem inaondoa weld na kuirudisha gem katikati.

Maelezo zaidi

  • Ili kufungua script tena, bonyeza mara mbili Game kwenye Explorer.
  • Bonyeza baada ya herufi ya mwisho kabisa ya msimbo kisha ubonyeze Enter mara mbili. Halafu bonyeza Ctrl+V. Usibonyeze Ctrl+A safari hii, la sivyo utabadilisha sehemu ya kwanza.
  • Gem inaelea studs 4 juu ya kichwa chako unapoibeba.
  • Kujaribu: chukua gem, kisha uhakikishe kwamba kitufe cha Take kimetoweka kwa muda wote unaoibeba.
Hatua hii haifanyi kazi kwangu

Angalia mambo haya matatu kwanza

  • Jina la kila Part na script liko sawa kabisa na lilivyo kwenye mwongozo, pamoja na herufi kubwa.
  • Script iko ndani ya kitu sahihi. Angalia lebo iliyo juu ya kisanduku cha msimbo.
  • Fungua dirisha la Output kutoka menyu ya Window. Maandishi mekundu yanaonyesha script na mstari wenye tatizo.

Bado umekwama? Tuandikie →

6
Hatua 6 / 8

Ongeza alama na kugonga

  1. Bandika sehemu hii ya mwisho kabisa mwishoni mwa script ya Game.
  2. Bonyeza Play, chukua gem kisha ukimbilie kwenye base yako ya kijani. Score inaongezeka kwa 1 na gem inarudi katikati.
ServerScriptService > Game (3 / 3)
for _, base in ipairs(bases:GetChildren()) do
	base.Touched:Connect(function(hit)
		local player = Players:GetPlayerFromCharacter(hit.Parent)
		if player and player == carrier and base:GetAttribute("Owner") == player.UserId then
			player.leaderstats.Score.Value += 1
			resetGem()
		end
	end)
end

while true do
	task.wait(0.2)

	if carrier then
		local weld = gem:FindFirstChild("CarryWeld")
		local root = weld and weld.Part0
		local character = root and root.Parent
		local humanoid = character and character:FindFirstChildOfClass("Humanoid")

		if not humanoid or humanoid.Health <= 0 or root.Position.Y < -20 then
			resetGem()
		else
			for _, other in ipairs(Players:GetPlayers()) do
				local otherRoot = other ~= carrier and other.Character and other.Character:FindFirstChild("HumanoidRootPart")
				if otherRoot and (otherRoot.Position - root.Position).Magnitude < 5 then
					resetGem()
					break
				end
			end
		end
	end
end

Kila sehemu hufanya nini

  • Kila base inakagua mambo matatu: mchezaji ameigusa, mchezaji huyo amebeba gem, na base ni yake.
  • Mzunguko ulio chini unafanya kazi mara 5 kwa sekunde. Mchezaji mwingine akisogea karibu zaidi ya studs 5 na aliyebeba, gem inarudi.
  • Mzunguko pia unarudisha gem mbebaji akiondoka kwenye mchezo au akianguka nje ya ramani.

Maelezo zaidi

  • Tena bonyeza baada ya herufi ya mwisho kabisa ya script, bonyeza Enter mara mbili kisha ubandike.
  • Script iliyokamilika ina sehemu tatu kwa mpangilio huu: base na alama, kuchukua gem, kupata alama na kuwagusa wengine.
  • Base ya kijivu isiyo ya mtu yeyote haitoi alama. Ni base yako ya kijani tu inayohesabiwa.
  • Peke yako huwezi kujaribu kugusa wengine. Utafanya hivyo ukiwa na wachezaji wawili kwenye hatua inayofuata.
Kosa linalotokea mara nyingi. Kubandika sehemu hii katikati ya script. Mzunguko wa while haukomi, kwa hiyo msimbo wowote ulio chini yake haufanyi kazi kamwe.
Hatua hii haifanyi kazi kwangu

Angalia mambo haya matatu kwanza

  • Jina la kila Part na script liko sawa kabisa na lilivyo kwenye mwongozo, pamoja na herufi kubwa.
  • Script iko ndani ya kitu sahihi. Angalia lebo iliyo juu ya kisanduku cha msimbo.
  • Fungua dirisha la Output kutoka menyu ya Window. Maandishi mekundu yanaonyesha script na mstari wenye tatizo.

Bado umekwama? Tuandikie →

7
Hatua 7 / 8

Jaribu na wachezaji wawili

  1. Kando ya kitufe cha Play fungua menyu ndogo kisha uchague Server & Clients. Weka idadi ya wachezaji kuwa 2 kisha ubonyeze Play.
  2. Studio inafungua madirisha mawili ya mchezo. Kila moja ni mchezaji tofauti mwenye base tofauti.
  3. Chukua gem kwenye dirisha moja. Kwenye dirisha lingine mkimbilie mchezaji huyo. Gem inarudi katikati.
  4. Simamisha jaribio kwa kitufe chekundu cha Stop kwenye dirisha kuu la Studio, kisha urudishe menyu kuwa Test.

Maelezo zaidi

  • Menyu ndogo ni mshale ulio kando kabisa ya kitufe cha Play juu ya Studio.
  • Madirisha mawili ya mchezo yanafunguka juu ya mengine. Buruta moja pembeni ili uone yote mawili.
  • Bonyeza ndani ya dirisha kabla ya kutumia kibodi. Vitufe vinaenda kwenye dirisha ulilobonyeza mara ya mwisho.
  • Kujaribu kwa madirisha mawili kunahitaji kompyuta yenye kumbukumbu ya kutosha. Ikiwa ni polepole sana, funga programu nyingine kwanza.
Hatua hii haifanyi kazi kwangu

Angalia mambo haya matatu kwanza

  • Jina la kila Part na script liko sawa kabisa na lilivyo kwenye mwongozo, pamoja na herufi kubwa.
  • Script iko ndani ya kitu sahihi. Angalia lebo iliyo juu ya kisanduku cha msimbo.
  • Fungua dirisha la Output kutoka menyu ya Window. Maandishi mekundu yanaonyesha script na mstari wenye tatizo.

Bado umekwama? Tuandikie →

8
Hatua 8 / 8

Uchapishe

  1. Chagua File → Publish to Roblox. Ipe mchezo jina na maelezo mafupi.
  2. Kwenye tovuti ya Creator Hub fungua mchezo wako kisha ujaze dodoso la Maturity.
  3. Weka mchezo kuwa Public kisha mtumie rafiki kiungo.

Maelezo zaidi

  • Mara ya kwanza unapochapisha, Studio inakuuliza jina na maelezo. Bonyeza Create.
  • Creator Hub ni tovuti ya create.roblox.com. Ingia kwa akaunti ile ile kisha ubonyeze mchezo wako kwenye orodha.
  • Roblox inaweza kuomba zaidi kabla mchezo haujawa wa umma, kwa mfano uthibitisho wa umri kwenye akaunti. Ukurasa unakuambia kipi kinakosekana.
  • Ikiwa una umri chini ya miaka 18, fanya hatua hii pamoja na mzazi.
Kidokezo. Mchezo huu unapendeza tu na wachezaji wengine. Waalike marafiki wawili au watatu kwenye seva ile ile kwa mechi ya kwanza.
Hatua hii haifanyi kazi kwangu

Angalia mambo haya matatu kwanza

  • Jina la kila Part na script liko sawa kabisa na lilivyo kwenye mwongozo, pamoja na herufi kubwa.
  • Script iko ndani ya kitu sahihi. Angalia lebo iliyo juu ya kisanduku cha msimbo.
  • Fungua dirisha la Output kutoka menyu ya Window. Maandishi mekundu yanaonyesha script na mstari wenye tatizo.

Bado umekwama? Tuandikie →

Sasa ubadilishe mwenyewe

  • Maliza raundi mchezaji anapofika alama 5 kisha urudishe kila Score kuwa 0.
  • Ongeza gem ya pili yenye rangi tofauti.
  • Mfanye mbebaji awe polepole. Kidokezo: weka Humanoid.WalkSpeed kuwa 12 gem inapochukuliwa na uirudishe kuwa 16 ndani ya resetGem.