← সব গাইড
গাইড 2

তোমার প্রথম tycoon বানাও

একটা dropper কিউব বানায়, একটা conveyor সেগুলো বয়ে নিয়ে যায়, একটা collector সেগুলোকে ক্যাশে বদলে দেয়, আর একটা বোতাম দিয়ে দ্বিতীয় dropper কেনা যায়।

বিনামূল্যে60 মিনিট · শুরুর স্তর · Roblox Studio
1
ধাপ 1 / 9

place টা তৈরি করো

  1. Roblox Studio খোলো, New Experience এ ক্লিক করো আর Baseplate টেমপ্লেটটা বেছে নাও।
  2. Explorer এ Workspace এর উপর মাউস রাখো, + এ ক্লিক করে একটা Folder যোগ করো। নাম দাও Tycoon।
  3. এই গাইডে তুমি যা যা বানাবে সব ওই ফোল্ডারে যাবে। এতে Explorer গোছানো থাকে।

আরও বিস্তারিত

  • Baseplate টেমপ্লেটটা শুরুর স্ক্রিনের টেমপ্লেটের তালিকায় আছে।
  • + এ ক্লিক করলে একটা তালিকা খোলে। তাড়াতাড়ি পেতে Folder শব্দটা লেখো, তারপর ওটায় ক্লিক করো।
  • folder-এর নাম বদলাতে ওটায় একবার ক্লিক করো, F2 চাপো, Tycoon লেখো আর Enter চাপো।
  • Mac-এ এই গাইডে যেখানেই Ctrl লেখা আছে, সেখানে প্রতিবার Cmd কী ব্যবহার করো।
টিপ. প্রতিটা part বানিয়েই সঙ্গে সঙ্গে নাম বদলে দাও। স্ক্রিপ্ট part খুঁজে পায় নাম দিয়ে, তাই যে part এর নাম এখনো Part সেটা কাজ করবে না।
এই ধাপটা আমার জন্য কাজ করছে না

আগে এই তিনটা জিনিস দেখে নাও

  • প্রতিটা part আর স্ক্রিপ্টের নাম ঠিক গাইডের মতো, একই বড় হাতের আর ছোট হাতের অক্ষরসহ।
  • স্ক্রিপ্টটা ঠিক অবজেক্টের ভেতরে আছে। কোডের বাক্সের উপরের লেবেলটা দেখো।
  • Window মেনু থেকে Output উইন্ডো খোলো। লাল লেখা দেখায় কোন স্ক্রিপ্টে আর কোন লাইনে সমস্যা।

তবুও আটকে আছ? আমাদের লেখো →

2
ধাপ 2 / 9

প্রতিটা প্লেয়ারকে ক্যাশ দাও

  1. ServerScriptService এর উপর মাউস রাখো, + এ ক্লিক করে একটা Script যোগ করো। নাম দাও Leaderstats।
  2. ওখানে আগে থেকে যে লাইনটা আছে সেটা মুছে ফেলো আর এই কোডটা পেস্ট করো।
  3. Play চাপো। প্লেয়ারের তালিকায় তোমার নামের পাশে Cash 0 দেখা যাবে।
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)

প্রতিটা অংশ কী করে

  • যে প্লেয়ারই গেমে ঢোকে, তার জন্য PlayerAdded একবার করে চলে।
  • leaderstats নামের ফোল্ডারটা বিশেষ। Roblox এর ভেতরের মানগুলো প্লেয়ারের তালিকায় দেখায়।
  • IntValue একটা পূর্ণসংখ্যা ধরে রাখে। এখানে সেটা প্লেয়ারের ক্যাশ ধরে রাখছে।

আরও বিস্তারিত

  • ServerScriptService Explorer-এর তালিকায় আছে। এর ভেতরের স্ক্রিপ্টগুলো সার্ভারে চলে, যেখানে খেলোয়াড়রা সেগুলো বদলাতে পারে না।
  • স্ক্রিপ্টটা একটা নতুন ট্যাবে খোলে। কোডের ভেতরে ক্লিক করো, Ctrl+A আর তারপর Ctrl+V চেপে সবকিছু বদলে দাও।
  • তোমার place-এর নামের ট্যাবে ক্লিক করে নিজের জগতে ফিরে যাও।
  • খেলোয়াড়ের তালিকা গেমের উপরের ডান কোণে থাকে। চালু করতে F5 আর থামাতে Shift+F5 চাপো।
এই ধাপটা আমার জন্য কাজ করছে না

আগে এই তিনটা জিনিস দেখে নাও

  • প্রতিটা part আর স্ক্রিপ্টের নাম ঠিক গাইডের মতো, একই বড় হাতের আর ছোট হাতের অক্ষরসহ।
  • স্ক্রিপ্টটা ঠিক অবজেক্টের ভেতরে আছে। কোডের বাক্সের উপরের লেবেলটা দেখো।
  • Window মেনু থেকে Output উইন্ডো খোলো। লাল লেখা দেখায় কোন স্ক্রিপ্টে আর কোন লাইনে সমস্যা।

তবুও আটকে আছ? আমাদের লেখো →

3
ধাপ 3 / 9

dropper বানাও

  1. Tycoon ফোল্ডারে একটা Part যোগ করো। Size করো 4, 1, 4, Anchored চালু করো আর নাম দাও Dropper।
  2. Move টুল (Ctrl+2) দিয়ে সেটা মেঝে থেকে প্রায় 10 studs উপরে তোলো।
  3. Dropper এ একটা Script যোগ করো আর এই কোডটা পেস্ট করো।
  4. Play চাপো। প্রতি 2 সেকেন্ডে একটা হলুদ কিউব পড়বে।
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

প্রতিটা অংশ কী করে

  • Instance.new কোড থেকে একটা নতুন part বানায়।
  • Position কিউবটাকে dropper এর 2 studs নিচে বসায়।
  • Debris প্রতিটা কিউবকে 20 সেকেন্ড পরে সরিয়ে দেয়, তাই পুরোনো কিউব জমে থাকে না।

আরও বিস্তারিত

  • part-টা folder-এ ঢোকাতে Explorer-এ তার নাম টেনে Tycoon নামের উপর ছেড়ে দাও।
  • Move টুল দিয়ে সবুজ তীরটা উপরের দিকে টানো। Properties-এর Position ঘরে মাঝের সংখ্যাটা উচ্চতা দেখায়।
  • কিউবটা dropper-এর 2 studs নিচে দেখা যায় আর তারপর পড়ে। dropper খুব নিচে থাকলে কিউবগুলো তার নিচে জমে যায়।
  • প্রথম কিউবটা গেম শুরুর 2 সেকেন্ড পরে আসে।
সাধারণ ভুল. কোনো কিউব আসছে না: দেখো স্ক্রিপ্টটা Dropper এর ভেতরে আছে কি না আর Dropper Anchored কি না।
এই ধাপটা আমার জন্য কাজ করছে না

আগে এই তিনটা জিনিস দেখে নাও

  • প্রতিটা part আর স্ক্রিপ্টের নাম ঠিক গাইডের মতো, একই বড় হাতের আর ছোট হাতের অক্ষরসহ।
  • স্ক্রিপ্টটা ঠিক অবজেক্টের ভেতরে আছে। কোডের বাক্সের উপরের লেবেলটা দেখো।
  • Window মেনু থেকে Output উইন্ডো খোলো। লাল লেখা দেখায় কোন স্ক্রিপ্টে আর কোন লাইনে সমস্যা।

তবুও আটকে আছ? আমাদের লেখো →

4
ধাপ 4 / 9

conveyor যোগ করো

  1. একটা Part যোগ করো, Size করো 6, 1, 30, Anchored চালু করো আর নাম দাও Conveyor।
  2. সেটা মেঝেতে এমনভাবে বসাও যেন এক প্রান্ত ঠিক dropper এর নিচে থাকে।
  3. Conveyor এ একটা Script যোগ করো আর এই কোডটা পেস্ট করো।
  4. Play চাপো। কিউবগুলো conveyor এ পড়বে আর সেটার উপর দিয়ে গড়িয়ে যাবে।
Conveyor > Script
local conveyor = script.Parent

conveyor.AssemblyLinearVelocity = conveyor.CFrame.LookVector * 8

প্রতিটা অংশ কী করে

  • AssemblyLinearVelocity Roblox কে বলে part এর উপরের জিনিসগুলো কত দ্রুত চলবে।
  • LookVector হলো part এর সামনের দিক যেদিকে মুখ করে আছে। 8 সংখ্যাটা হলো প্রতি সেকেন্ডে studs এ গতি।

আরও বিস্তারিত

  • প্রতিটা part-এর একটা সামনের দিক আছে। conveyor কিউবগুলোকে তার সামনের দিকে ঠেলে।
  • conveyor-এর লম্বা দিকটা, মানে 30 studs-এরটা, dropper থেকে দূরে সেই জায়গার দিকে থাকতে হবে যেখানে collector দাঁড়াবে।
  • conveyor নিজে নড়ে না। শুধু তার উপরের জিনিসগুলো পিছলে যায়।
  • কিউব পাশ দিয়ে পড়ে গেলে conveyor-টা চওড়া করো বা dropper-টা তার মাঝখানে সরাও।
সাধারণ ভুল. কিউবগুলো উল্টো দিকে গড়াচ্ছে: Rotate টুল (Ctrl+4) দিয়ে conveyor টা 180 ডিগ্রি ঘুরিয়ে দাও।
এই ধাপটা আমার জন্য কাজ করছে না

আগে এই তিনটা জিনিস দেখে নাও

  • প্রতিটা part আর স্ক্রিপ্টের নাম ঠিক গাইডের মতো, একই বড় হাতের আর ছোট হাতের অক্ষরসহ।
  • স্ক্রিপ্টটা ঠিক অবজেক্টের ভেতরে আছে। কোডের বাক্সের উপরের লেবেলটা দেখো।
  • Window মেনু থেকে Output উইন্ডো খোলো। লাল লেখা দেখায় কোন স্ক্রিপ্টে আর কোন লাইনে সমস্যা।

তবুও আটকে আছ? আমাদের লেখো →

5
ধাপ 5 / 9

কিউবগুলো জমা করো

  1. conveyor এর একদম শেষ প্রান্তে একটা Part যোগ করো। Size করো 6, 4, 1, Anchored চালু করো, সেটা সবুজ করো আর নাম দাও Collector।
  2. সেটাকে দেয়ালের মতো খাড়া করে বসাও, যাতে কিউবগুলো গিয়ে এতে ধাক্কা খায়।
  3. Collector এ একটা Script যোগ করো আর এই কোডটা পেস্ট করো।
  4. Play চাপো। collector এ যে কিউবই পৌঁছায়, Cash এ 5 করে যোগ হয়।
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)

প্রতিটা অংশ কী করে

  • যার নাম Cube নয়, স্ক্রিপ্ট তাকে পাত্তা দেয় না। তোমার পা গোনা হয় না।
  • Destroy কিউবটাকে গেম থেকে সরিয়ে দেয়।
  • লুপটা সার্ভারের প্রতিটা প্লেয়ারকে 5 ক্যাশ দেয়। প্রতি প্লটে একজন মালিকওয়ালা tycoon একটা অ্যাডভান্সড পাঠ।

আরও বিস্তারিত

  • Size 6, 4, 1 এমনিতেই খাড়া দাঁড়ায়: 6 চওড়া, 4 উঁচু আর 1 পুরু। conveyor-এর শেষ মাথায় আড়াআড়ি বসাও, বন্ধ ফটকের মতো।
  • এর নিচের কিনারা conveyor ছুঁয়ে থাকা উচিত, যাতে কোনো কিউব নিচ দিয়ে গলে যেতে না পারে।
  • সবুজ করতে Properties-এর Color ঘরে ক্লিক করো।
  • টেস্ট করতে F5 চাপো আর খেলোয়াড়ের তালিকা দেখো। প্রতিবার একটা কিউব দেয়ালে পৌঁছালে Cash 5 করে বাড়ে।
এই ধাপটা আমার জন্য কাজ করছে না

আগে এই তিনটা জিনিস দেখে নাও

  • প্রতিটা part আর স্ক্রিপ্টের নাম ঠিক গাইডের মতো, একই বড় হাতের আর ছোট হাতের অক্ষরসহ।
  • স্ক্রিপ্টটা ঠিক অবজেক্টের ভেতরে আছে। কোডের বাক্সের উপরের লেবেলটা দেখো।
  • Window মেনু থেকে Output উইন্ডো খোলো। লাল লেখা দেখায় কোন স্ক্রিপ্টে আর কোন লাইনে সমস্যা।

তবুও আটকে আছ? আমাদের লেখো →

6
ধাপ 6 / 9

দ্বিতীয় dropper তৈরি করো

  1. Dropper বেছে Ctrl+D চাপো। কপিটার নাম দাও Dropper2 আর সেটা প্রথমটার পাশে সরাও, তবে conveyor এর উপরেই থাকবে।
  2. Dropper2 কে Workspace থেকে টেনে ServerStorage এ নিয়ে যাও।
  3. এটা জগৎ থেকে অদৃশ্য হয়ে যাবে। ServerStorage এর অবজেক্ট ওখানেই অপেক্ষা করে, যতক্ষণ না কোনো স্ক্রিপ্ট সেগুলো ফিরিয়ে আনে।

আরও বিস্তারিত

  • কপিটা ঠিক আসলটার উপরে বসে। Move টুল দিয়ে পাশে টেনে সরাও, যাতে দুটোই দেখা যায়।
  • কপির নাম F2 দিয়ে বদলাও। নামটা অবশ্যই Dropper2 হবে, বড় হাতের D দিয়ে আর ফাঁক ছাড়া।
  • ServerStorage Explorer-এর তালিকায় আছে। Dropper2 নামটা ওটার উপর টেনে আনো।
  • কপির ভেতরের স্ক্রিপ্টটাও সঙ্গে চলে এসেছে। আবার যোগ করার দরকার নেই।
টিপ. ServerStorage এর ভেতরের স্ক্রিপ্ট চলে না। সেজন্যই কেউ না কেনা পর্যন্ত দ্বিতীয় dropper চুপ করে থাকে।
এই ধাপটা আমার জন্য কাজ করছে না

আগে এই তিনটা জিনিস দেখে নাও

  • প্রতিটা part আর স্ক্রিপ্টের নাম ঠিক গাইডের মতো, একই বড় হাতের আর ছোট হাতের অক্ষরসহ।
  • স্ক্রিপ্টটা ঠিক অবজেক্টের ভেতরে আছে। কোডের বাক্সের উপরের লেবেলটা দেখো।
  • Window মেনু থেকে Output উইন্ডো খোলো। লাল লেখা দেখায় কোন স্ক্রিপ্টে আর কোন লাইনে সমস্যা।

তবুও আটকে আছ? আমাদের লেখো →

7
ধাপ 7 / 9

কেনার বোতাম যোগ করো

  1. conveyor এর কাছে মেঝেতে একটা Part যোগ করো। Size করো 4, 1, 4, Anchored চালু করো, সেটা উজ্জ্বল নীল করো আর নাম দাও BuyDropper।
  2. BuyDropper এ একটা Script যোগ করো আর এই কোডটা পেস্ট করো।
  3. বোতামে লেবেল দিতে BuyDropper এর উপর মাউস রাখো, + এ ক্লিক করে একটা BillboardGui যোগ করো। এর Size করো {0, 200}, {0, 50} আর StudsOffset করো 0, 3, 0।
  4. BillboardGui এর ভেতরে একটা TextLabel যোগ করো। এর Size করো {1, 0}, {1, 0}, TextScaled চালু করো আর এই লেখাটা টাইপ করো: 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)

প্রতিটা অংশ কী করে

  • PRICE হলো দাম। বোতামটা সস্তা বা দামি করতে সংখ্যাটা বদলাও।
  • স্ক্রিপ্ট দেখে নেয় বোতামটা সত্যিকারের একজন প্লেয়ার ছুঁয়েছে কি না আর তার যথেষ্ট ক্যাশ আছে কি না।
  • Dropper2 কে workspace এ সরালে সেটা চালু হয়ে যায়। এর স্ক্রিপ্ট সঙ্গে সঙ্গে চলতে শুরু করে।

আরও বিস্তারিত

  • খেলোয়াড়রা বোতামের উপর হেঁটে কেনে, তাই ওটা মেঝেতে এমন জায়গায় রাখো যেখানে সহজে পৌঁছানো যায়।
  • Size আর StudsOffset-এর জন্য Properties-এ ঘরটায় ক্লিক করো, সংখ্যাগুলো ঠিক যেমন দেখানো আছে তেমন লেখো, বন্ধনী আর কমাসহ, আর Enter চাপো।
  • Text হলো TextLabel-এর একটা property। Text ঘরে ক্লিক করো, কথাগুলো লেখো আর Enter চাপো।
  • লেবেলটা বোতামের উপরে ভাসে। দেখতে না পেলে StudsOffset-এর মাঝের সংখ্যাটা বাড়াও।
এই ধাপটা আমার জন্য কাজ করছে না

আগে এই তিনটা জিনিস দেখে নাও

  • প্রতিটা part আর স্ক্রিপ্টের নাম ঠিক গাইডের মতো, একই বড় হাতের আর ছোট হাতের অক্ষরসহ।
  • স্ক্রিপ্টটা ঠিক অবজেক্টের ভেতরে আছে। কোডের বাক্সের উপরের লেবেলটা দেখো।
  • Window মেনু থেকে Output উইন্ডো খোলো। লাল লেখা দেখায় কোন স্ক্রিপ্টে আর কোন লাইনে সমস্যা।

তবুও আটকে আছ? আমাদের লেখো →

8
ধাপ 8 / 9

পুরো চক্রটা টেস্ট করো

  1. F5 চাপো। দেখো কিউবগুলো পড়ছে, conveyor এ চড়ছে আর ক্যাশ হয়ে যাচ্ছে।
  2. 50 ক্যাশ না হওয়া পর্যন্ত অপেক্ষা করো, তারপর নীল বোতামটার উপর পা রাখো।
  3. দ্বিতীয় dropper দেখা যাবে, বোতামটা অদৃশ্য হবে আর তোমার ক্যাশ দ্বিগুণ দ্রুত বাড়বে।
  4. থামাতে Shift+F5 চাপো। কিছু কাজ না করলে Window মেনু থেকে Output উইন্ডো খোলো আর লাল লেখাটা পড়ো।

আরও বিস্তারিত

  • 50 ক্যাশে পৌঁছাতে 10টা কিউব লাগে, মানে কমপক্ষে 20 সেকেন্ড।
  • কেনার পর Cash 50 কমে যায়। এটা ঠিকই আছে। তুমি dropper-টার দাম দিয়েছ।
  • কেনার পর বোতামটা মুছে যায়, তাই দুবার কেনা যায় না।
  • দ্বিতীয় dropper ভুল জায়গায় এলে গেম থামাও, Dropper2 ServerStorage থেকে আবার Workspace-এ টেনে আনো, সরাও, আর আবার ServerStorage-এ টেনে দাও।
সাধারণ ভুল. Cash বদলায়ই না: পড়ন্ত part গুলোর নাম অবশ্যই Cube হতে হবে, dropper স্ক্রিপ্টে যেমন আছে ঠিক তেমন।
এই ধাপটা আমার জন্য কাজ করছে না

আগে এই তিনটা জিনিস দেখে নাও

  • প্রতিটা part আর স্ক্রিপ্টের নাম ঠিক গাইডের মতো, একই বড় হাতের আর ছোট হাতের অক্ষরসহ।
  • স্ক্রিপ্টটা ঠিক অবজেক্টের ভেতরে আছে। কোডের বাক্সের উপরের লেবেলটা দেখো।
  • Window মেনু থেকে Output উইন্ডো খোলো। লাল লেখা দেখায় কোন স্ক্রিপ্টে আর কোন লাইনে সমস্যা।

তবুও আটকে আছ? আমাদের লেখো →

9
ধাপ 9 / 9

পাবলিশ করো

  1. File → Publish to Roblox বেছে নাও। গেমের একটা নাম আর ছোট বর্ণনা দাও।
  2. Creator Hub ওয়েবসাইটে তোমার গেমটা খোলো আর Maturity প্রশ্নমালা পূরণ করো।
  3. গেমটাকে Public করো আর লিংকটা একজন বন্ধুকে পাঠাও।

আরও বিস্তারিত

  • প্রথমবার পাবলিশ করার সময় Studio একটা নাম আর বর্ণনা চায়। Create-এ ক্লিক করো।
  • Creator Hub হলো create.roblox.com ওয়েবসাইট। একই অ্যাকাউন্ট দিয়ে সাইন ইন করো আর তালিকায় তোমার গেমে ক্লিক করো।
  • গেম সবার জন্য খোলার আগে Roblox আরও কিছু চাইতে পারে, যেমন অ্যাকাউন্টের বয়স যাচাই। পাতাটা বলে দেয় কী বাকি আছে।
  • তোমার বয়স 18-র কম হলে এই ধাপটা বাবা-মায়ের কারও সঙ্গে মিলে করো।
টিপ. অগ্রগতি এখনো সেভ হয় না। প্লেয়ার চলে গেলে ক্যাশ হারিয়ে যায়। ডেটা সেভ করা একটা অ্যাডভান্সড পাঠ।
এই ধাপটা আমার জন্য কাজ করছে না

আগে এই তিনটা জিনিস দেখে নাও

  • প্রতিটা part আর স্ক্রিপ্টের নাম ঠিক গাইডের মতো, একই বড় হাতের আর ছোট হাতের অক্ষরসহ।
  • স্ক্রিপ্টটা ঠিক অবজেক্টের ভেতরে আছে। কোডের বাক্সের উপরের লেবেলটা দেখো।
  • Window মেনু থেকে Output উইন্ডো খোলো। লাল লেখা দেখায় কোন স্ক্রিপ্টে আর কোন লাইনে সমস্যা।

তবুও আটকে আছ? আমাদের লেখো →

এবার নিজে বদলে দেখো

  • প্রতিটা কিউবের দাম 5 এর বদলে 10 ক্যাশ করো।
  • 200 ক্যাশ দামের একটা তৃতীয় dropper যোগ করো।
  • দ্বিতীয় dropper টা প্রথমটার চেয়ে দ্রুত করো। কোন সংখ্যাটা বদলাতে হবে?