ফ্ল্যাশ ব্রাউজার ভিডিও গেমগুলির জন্য একটি জনপ্রিয় বিন্যাস, যেমন নিউগ্রাউন্ডস এবং কংগ্রেগেটের মতো সাইট। যদিও ফ্ল্যাশ ফরম্যাট মোবাইল অ্যাপলিকেশনে কম ব্যবহার করা হয়, তবুও এখনও অনেক মানের গেম আছে যেগুলো ফ্ল্যাশ ব্যবহার করে তৈরি করা হয়। ফ্ল্যাশ অ্যাকশনস্ক্রিপ্ট ব্যবহার করে, একটি ভাষা যা শিখতে সহজ এবং স্ক্রিনে বস্তুর উপর নিয়ন্ত্রণ প্রদান করে। একটি প্রাথমিক ফ্ল্যাশ গেম কিভাবে তৈরি করতে হয় তা জানতে নিচের ধাপটি দেখুন।
ধাপ
3 এর প্রথম অংশ: শুরু করা
ধাপ 1. গেম ডিজাইন করুন।
আপনি কোডিং শুরু করার আগে, আপনার গেম সম্পর্কে মোটামুটি ধারণা তৈরি করুন। ফ্ল্যাশ সহজ গেমগুলির জন্য সবচেয়ে উপযুক্ত, তাই খুব কম গেমপ্লে মেকানিক্স আছে এমন গেম তৈরিতে মনোযোগ দিন। প্রোটোটাইপ শুরু করার আগে ধারা এবং গেম মেকানিক্স সংজ্ঞায়িত করুন। সাধারণ ফ্ল্যাশ গেমগুলির মধ্যে রয়েছে:
- অবিরাম রানার: গেমটি স্বয়ংক্রিয়ভাবে অক্ষরগুলিকে সরায়। খেলোয়াড়দের বাধা অতিক্রম করতে হবে বা খেলার সাথে যোগাযোগ করতে হবে। খেলোয়াড়দের সাধারণত একটি বা দুটি নিয়ন্ত্রণের বিকল্প থাকে।
- যোদ্ধারা: গেমটি সাধারণত সাইড-স্ক্রোলিং হয়। অগ্রসর হওয়ার জন্য খেলোয়াড়দের অবশ্যই শত্রুকে পরাজিত করতে হবে। শত্রুকে পরাস্ত করতে খেলোয়াড়ের চরিত্রের বেশ কয়েকটি পদক্ষেপ রয়েছে।
- ধাঁধা: খেলোয়াড়দের প্রতিটি স্তরকে হারাতে ধাঁধা সমাধান করতে হবে। বেজেওয়েল্ডের মতো তিন ধরনের জিনিস একসাথে আনার স্টাইল থেকে শুরু করে অ্যাডভেঞ্চার গেমের মতো জটিল ধাঁধা।
- আরপিজি: গেমটি চরিত্রের বিকাশ এবং অগ্রগতির উপর দৃষ্টি নিবদ্ধ করে। খেলোয়াড়রা বিভিন্ন পরিস্থিতির পাশাপাশি বিভিন্ন ধরণের শত্রুদের মধ্য দিয়ে যায়। যুদ্ধ মেকানিক্স ব্যাপকভাবে পরিবর্তিত হয়, কিন্তু এই ধরনের অনেকগুলি পালা-ভিত্তিক। আরপিজিগুলি সাধারণ অ্যাকশন গেমগুলির তুলনায় কোডে উল্লেখযোগ্যভাবে বেশি কঠিন।
ধাপ 2. ফ্ল্যাশ এর সুবিধা কি তা বুঝুন।
ফ্ল্যাশ 2 ডি গেমের জন্য সবচেয়ে উপযুক্ত। 3D গেম তৈরির জন্য ফ্ল্যাশ তৈরি করা যায়, কিন্তু এটি খুবই জটিল এবং আরো জ্ঞানের প্রয়োজন। প্রায় প্রতিটি সফল ফ্ল্যাশ গেমের একটি 2D ফরম্যাট থাকে।
ফ্ল্যাশ গেমগুলি দ্রুত সেশনের জন্য সবচেয়ে উপযুক্ত। এর কারণ হল বেশিরভাগ খেলোয়াড়রা যখন খালি সময় থাকে, যেমন বিরতি, তখন খেলার সময় সাধারণত 15 মিনিট বেশি থাকে।
পদক্ষেপ 3. অ্যাকশনস্ক্রিপ্ট 3 (এএস 3) ভাষার সাথে নিজেকে পরিচিত করুন।
ফ্ল্যাশ গেমগুলি AS3 তে প্রোগ্রাম করা হয়েছে এবং গেম তৈরিতে সফল হওয়ার জন্য তারা কীভাবে কাজ করে সে সম্পর্কে আপনার কিছু প্রাথমিক ধারণা থাকতে হবে। আপনি AS3 এ কোডের প্রাথমিক ধারণা দিয়ে সহজ গেম তৈরি করতে পারেন।
অ্যামাজন এবং অন্যান্য স্টোরগুলিতে ইন্টারনেটে বিভিন্ন ধরণের টিউটোরিয়াল এবং ঘটনা সহ অনেক অ্যাকশনস্ক্রিপ্ট বই পাওয়া যায়।
ধাপ 4. ফ্ল্যাশ পেশাদার ডাউনলোড করুন।
এই প্রোগ্রামটি একটু দামী, কিন্তু দ্রুত ফ্ল্যাশ প্রোগ্রাম তৈরির জন্য এটি খুব ভাল। ওপেন সোর্স সহ অন্যান্য বেশ কয়েকটি প্রোগ্রামের বিকল্প রয়েছে, তবে সেগুলি সাধারণত কম সামঞ্জস্যপূর্ণ বা একই কাজ সম্পন্ন করতে বেশি সময় নেয়।
ফ্ল্যাশ প্রফেশনালই একমাত্র প্রোগ্রাম যা আপনাকে গেম তৈরি করা শুরু করতে হবে।
3 এর 2 অংশ: মৌলিক গেম লেখা
ধাপ 1. AS3 কোডের মৌলিক বিল্ডিং ব্লকগুলি বুঝুন।
বেস গেমটির বিভিন্ন কোড স্ট্রাকচার রয়েছে। AS3 কোডের তিনটি প্রধান অংশ রয়েছে:
-
ভেরিয়েবলস - এটি কীভাবে ডেটা সংরক্ষণ করা হয় সে সম্পর্কে। ডেটা সংখ্যা, শব্দ (স্ট্রিং), বস্তু এবং আরও অনেক কিছু হতে পারে। ভেরিয়েবলগুলি var কোড দ্বারা সংজ্ঞায়িত করা হয় এবং অবশ্যই একটি শব্দ নিয়ে গঠিত।
var playerHealth: সংখ্যা = 100; // "var" নির্দেশ করে যে আপনি একটি পরিবর্তনশীল সংজ্ঞায়িত করছেন। // "playerHealth" পরিবর্তনশীল নাম। // "সংখ্যা" হল ডাটা টাইপ। // "100" হল ভেরিয়েবলের জন্য নির্ধারিত মান। // সমস্ত অ্যাকশনস্ক্রিপ্ট লাইন ";" দিয়ে শেষ হয়
-
ইভেন্ট হ্যান্ডলার - ইভেন্ট হ্যান্ডলার কিছু ঘটে যাওয়া জিনিসের সন্ধান করে, তারপর বাকি প্রোগ্রামকে অবহিত করে। প্লেয়ার ইনপুট এবং বারবার কোডের জন্য এটি গুরুত্বপূর্ণ। ইভেন্ট হ্যান্ডলার সাধারণত ফাংশন কল।
addEventListener (MouseEvent. CLICK, swingSword); // "addEventListener ()" একটি ইভেন্ট হ্যান্ডলার সংজ্ঞায়িত করে। // "মাউস ইভেন্ট" হল ইনপুটের শ্রেনী যা শোনা হচ্ছে। // "। CLICK" হল মাউস ইভেন্ট বিভাগে একটি নির্দিষ্ট ইভেন্ট। // "swingSword" হল ফাংশন যাকে বলা হয় যখন ঘটনা ঘটে।
-
ফাংশন - কোডের একটি অংশ যা একটি কীওয়ার্ডের জন্য নির্ধারিত হয় এবং পরে বলা যেতে পারে। ফাংশনগুলি বেশিরভাগ গেম প্রোগ্রামিং পরিচালনা করে এবং একটি জটিল গেমের শত শত ফাংশন থাকতে পারে। ফাংশন যে কোন ক্রমে হতে পারে কারণ তারা শুধুমাত্র তখনই কাজ করে যখন তাদের বলা হয়।
ফাংশন swingSword (e: MouseEvent): অকার্যকর; {// আপনার কোড এখানে} // "ফাংশন" হল কীওয়ার্ড যা প্রতিটি ফাংশনের শুরুতে প্রদর্শিত হয়। // "swingSword" ফাংশনের নাম। // "e: MouseEvent" একটি যোগ করা প্যারামিটার, যা ইঙ্গিত করে যে // ইভেন্ট শ্রোতা থেকে ফাংশনটি ডাকা হয়েছিল। // ": অকার্যকর" হল ফাংশন দ্বারা প্রদত্ত মান। // যদি কোন মান ফিরে না আসে, ব্যবহার করুন: অকার্যকর।
পদক্ষেপ 2. একটি বস্তু তৈরি করুন।
অ্যাকশনস্ক্রিপ্ট ফ্ল্যাশে বস্তুগুলিকে প্রভাবিত করতে ব্যবহৃত হয়। একটি গেম তৈরি করার জন্য আপনাকে অবশ্যই খেলোয়াড়দের সাথে ইন্টারঅ্যাক্ট করার জন্য বস্তু তৈরি করতে হবে। আপনি যে গাইডটি পড়ছেন তার উপর নির্ভর করে বস্তুগুলিকে স্প্রাইট, অভিনেতা বা চলচ্চিত্র হিসাবে উল্লেখ করা যেতে পারে। এই সহজ গেমটির জন্য, আপনি একটি আয়তক্ষেত্র তৈরি করবেন।
- ফ্ল্যাশ পেশাদার খুলুন। একটি নতুন অ্যাকশনস্ক্রিপ্ট 3 প্রকল্প তৈরি করুন।
- টুলস প্যানেল থেকে আয়তক্ষেত্র অঙ্কন টুলটিতে ক্লিক করুন। ফ্ল্যাশ পেশাদার কনফিগারেশনের উপর নির্ভর করে এই প্যানেলটি ভিন্ন অবস্থানে থাকতে পারে। দৃশ্যের জানালায় একটি আয়তক্ষেত্র আঁকুন।
- সিলেকশন টুল ব্যবহার করে আয়তক্ষেত্র নির্বাচন করুন।
ধাপ 3. বস্তুর বৈশিষ্ট্যগুলি সেট করুন।
সদ্য নির্বাচিত আয়তক্ষেত্রটি নির্বাচন করুন, সংশোধন মেনুতে যান এবং "প্রতীক রূপান্তর করুন" নির্বাচন করুন। আপনি শর্টকাট হিসাবে F8 টিপতে পারেন। "কনভার্ট টু সিম্বল" উইন্ডোতে, বস্তুটিকে সহজেই চেনা যায় এমন নাম দিন, উদাহরণস্বরূপ "শত্রু"।
- প্রোপার্টি উইন্ডোটি সনাক্ত করুন। উইন্ডোর শীর্ষে, মাউসের উপর মাউস ঘুরানোর সময় "ইনস্ট্যান্স নাম" লেবেলযুক্ত একটি ফাঁকা পাঠ্য ক্ষেত্র থাকবে। এটিকে একই নাম দিন যখন আপনি এটিকে প্রতীক ("শত্রু") বানিয়েছিলেন। এটি AS3 কোডের মাধ্যমে মিথস্ক্রিয়া করার জন্য একটি অনন্য নাম তৈরি করে।
- প্রতিটি "ইভেন্ট" একটি পৃথক বস্তু যা কোড দ্বারা প্রভাবিত হতে পারে। আপনি লাইব্রেরি ট্যাবে ক্লিক করে এবং দৃশ্যের মধ্যে টেনে এনে একাধিকবার তৈরি হওয়া ইভেন্টগুলি অনুলিপি করতে পারেন। প্রতিবার একটি ইভেন্ট যোগ করা হলে, তার নাম পরিবর্তন করে বোঝায় যে বস্তুটি আলাদা ("শত্রু", "শত্রু 1", "শত্রু 2", ইত্যাদি)।
- যখন আপনি কোডে কোন বস্তুর উল্লেখ করেন, তখন ইভেন্টের নাম ব্যবহার করুন, এই ক্ষেত্রে "শত্রু"।
ধাপ 4. একটি ইভেন্টের বৈশিষ্ট্য পরিবর্তন করতে শিখুন।
ইভেন্টটি তৈরি হয়ে গেলে, আপনি AS3 এর মাধ্যমে এর বৈশিষ্ট্যগুলি সেট করতে পারেন। এটি আপনাকে বস্তুর চারপাশে স্থানান্তর করতে, তাদের আকার পরিবর্তন করতে এবং আরও অনেক কিছু করতে দেয়। আপনি ঘটনা টাইপ করে একটি সম্পত্তি কাস্টমাইজ করতে পারেন, তার পরে একটি পিরিয়ড "।"
- শত্রু x = 150; এটি X অক্ষে শত্রু বস্তুর অবস্থানকে প্রভাবিত করে।
- শত্রু। y = 150; এটি Y অক্ষে শত্রু বস্তুর অবস্থানকে প্রভাবিত করে। Y অক্ষটি দৃশ্যের উপর থেকে গণনা করা হয়।
- শত্রু। আবর্তন = 45; শত্রু বস্তু 45 ° ঘড়ির কাঁটার দিকে ঘোরায়।
- শত্রু। scaleX = 3; শত্রু বস্তুর প্রস্থকে 3 এর একাধিক দ্বারা প্রসারিত করে। (-) চিহ্ন বস্তুটিকে উল্টে দেবে।
- শত্রু।স্কেলওয়াই = 0.5; বস্তুর উচ্চতা তার বর্তমান উচ্চতার অর্ধেক পরিবর্তন করে।
ধাপ 5. ট্রেস () কমান্ডটি লক্ষ্য করুন।
এই কমান্ডটি নির্দিষ্ট বস্তুর বর্তমান মান ফিরিয়ে দেবে, এবং সবকিছু ঠিক মত কাজ করছে কিনা তা নির্ধারণের জন্য দরকারী। আপনি সম্ভবত আপনার চূড়ান্ত কোডটিতে ট্রেস কমান্ডটি অন্তর্ভুক্ত করবেন না, তবে এটি ব্যর্থ কোডের উত্স সনাক্ত করার জন্য কার্যকর হতে পারে।
পদক্ষেপ 6. উপরের তথ্য ব্যবহার করে বেস গেম তৈরি করুন।
আপনি এখন মূল ফাংশন একটি মৌলিক বোঝার আছে। আপনি এমন একটি গেম তৈরি করতে পারেন যেখানে প্রতিবার শত্রুকে ক্লিক করলে সাইজ কমে যাবে, যতক্ষণ না শত্রু ধ্বংস হয়
var শত্রু এইচপি: সংখ্যা = 100; // গেমের শুরুতে শত্রুর এইচপি (স্বাস্থ্য) 100 এ সেট করে। var প্লেয়ার আক্রমণ: সংখ্যা = 10; // ক্লিক করার সময় প্লেয়ারের আক্রমণ শক্তি পরিমাণ নির্ধারণ করে। শত্রু.এডএভেন্টলিস্টেনার // এই ফাংশনটি সরাসরি শত্রু বস্তুর সাথে যুক্ত করে, // এই ফাংশনটি তখনই ঘটে যখন বস্তুটি নিজেই // ক্লিক করা হয়, এবং যখন এটি স্ক্রিনের কোথাও ক্লিক করে না। setEnemyLocation (); // শত্রুকে // পর্দায় রাখার জন্য নিচের ফাংশনটি কল করে। খেলা শুরু হলে এটি ঘটে। ফাংশন setEnemyLocation (): অকার্যকর {শত্রু x = 200; // পর্দার বাম দিক থেকে শত্রুকে 200 পিক্সেল সরান শত্রু। y = 150; // শত্রুকে 150 পিক্সেল স্ক্রিনের উপর থেকে নিচে নামান শত্রু। আবর্তন = 45; // শত্রুর 45 ডিগ্রী ঘড়ির কাঁটার দিকে ঘোরান ("শত্রুর x মান হল", শত্রু x। // ত্রুটির উৎস খুঁজে বের করতে শত্রুর বর্তমান অবস্থান প্রদর্শন করে ফাংশন AttackEnemy (e: MouseEvent): void // শত্রুর উপর ক্লিক করলে একটি আক্রমণ ফাংশন তৈরি করে { // HP মান থেকে আক্রমণের মান বিয়োগ করে, // নতুন HP মান তৈরি করে। শত্রু। scaleX = শত্রু এইচপি / 100; // নতুন এইচপি মানের উপর ভিত্তি করে প্রস্থ পরিবর্তন করুন। // মান 100 দ্বারা বিভক্ত এবং তারপর একটি দশমিক রূপান্তরিত। শত্রু।স্কেলে = শত্রু এইচপি / 100; // নতুন এইচপি ভ্যালু ট্রেসের উপর ভিত্তি করে উচ্চতা পরিবর্তন করুন ("শত্রু আছে", শত্রু এইচপি, "এইচপি অবশিষ্ট"); // দেখায় শত্রু কতটা এইচপি রেখে গেছে}
ধাপ 7. এটি চেষ্টা করুন।
একবার আপনি কোডেড হয়ে গেলে, আপনি এই নতুন গেমটি পরীক্ষা করতে পারেন। কন্ট্রোল মেনুতে ক্লিক করুন এবং টেস্ট মুভি নির্বাচন করুন। গেমটি শুরু হয়, এবং আপনি একটি শত্রু বস্তুর আকার পরিবর্তন করতে ক্লিক করতে পারেন। ট্রেস আউটপুট আউটপুট উইন্ডোতে প্রদর্শিত হবে।
3 এর 3 ম অংশ: উন্নত প্রযুক্তি শেখা
পদক্ষেপ 1. প্যাকেজগুলি কীভাবে কাজ করে তা শিখুন।
অ্যাকশনস্ক্রিপ্ট জাভা ভিত্তিক এবং খুব অনুরূপ প্যাকেজ সিস্টেম ব্যবহার করে। প্যাকেজগুলির সাহায্যে আপনি ভেরিয়েবল, ধ্রুবক, ফাংশন এবং অন্যান্য তথ্য পৃথক ফাইলগুলিতে সংরক্ষণ করতে পারেন এবং তারপরে এই ফাইলগুলি প্রোগ্রামে আমদানি করতে পারেন। এটি বিশেষভাবে দরকারী যদি আপনি এমন প্যাকেজগুলি ব্যবহার করতে চান যা অন্য লোকেরা তৈরি করেছে যা গেমগুলি তৈরি করা সহজ করে তোলে।
জাভাতে প্যাকেজগুলি কীভাবে কাজ করে সে সম্পর্কে আরও তথ্যের জন্য উইকিহোতে একটি গাইড সন্ধান করুন।
পদক্ষেপ 2. প্রকল্প ফোল্ডার তৈরি করুন।
আপনি যদি এমন একটি গেম তৈরি করেন যাতে ছবি এবং সাউন্ড ক্লিপ থাকে, তাহলে গেমটিতে একটি ফোল্ডার স্ট্রাকচার তৈরি করুন। আপনি বিভিন্ন ধরণের উপাদান সংরক্ষণ করা সহজ হবে, পাশাপাশি কল করার জন্য বিভিন্ন প্যাকেজ সংরক্ষণ করবেন।
- আপনার প্রকল্পের জন্য একটি বেস ফোল্ডার তৈরি করুন। বেস ফোল্ডারে, সমস্ত শিল্প সম্পদের জন্য একটি "img" ফোল্ডার, সমস্ত শব্দ সম্পদের জন্য একটি "snd" ফোল্ডার এবং সমস্ত গেম এবং কোড প্যাকেজের জন্য একটি "src" ফোল্ডার তৈরি করুন।
- কনস্ট্যান্টস ফাইল সংরক্ষণের জন্য "src" ফোল্ডারে একটি "গেমস" ফোল্ডার তৈরি করুন।
- এই বিশেষ কাঠামোর প্রয়োজন নেই, তবে এটি বিশেষভাবে বড় প্রকল্পগুলির জন্য সমস্ত উপকরণের কাজ সংগঠিত করা সহজ করে তুলবে। উপরে বর্ণিত সহজ গেমের জন্য, আপনাকে কোন ডিরেক্টরি তৈরি করতে হবে না।
ধাপ 3. গেমটিতে শব্দ যুক্ত করুন।
শব্দ বা সঙ্গীত ছাড়া গেম দ্রুত খেলোয়াড়দের বিরক্ত করবে। আপনি লেয়ার টুল ব্যবহার করে বস্তুতে শব্দ যুক্ত করতে পারেন।
ধাপ 4. কনস্ট্যান্ট ফাইল তৈরি করুন।
যদি আপনার গেমের অনেক মান থাকে যা পুরো গেম জুড়ে একই থাকবে, আপনি একটি কনস্ট্যান্ট ফাইল তৈরি করতে পারেন যাতে সেগুলি এক জায়গায় সংগ্রহ করা যায় যাতে সেগুলি সহজেই তলব করা যায়। ধ্রুবকগুলি মাধ্যাকর্ষণ, প্লেয়ারের গতি এবং অন্যান্য মানগুলির মতো মান অন্তর্ভুক্ত করতে পারে যা বারবার বলা দরকার।
-
যদি আপনি একটি কনস্ট্যান্টস ফাইল তৈরি করেন, এটি প্রকল্পের একটি ফোল্ডারে রাখুন এবং তারপর এটি একটি প্যাকেজ হিসাবে আমদানি করুন। ধরে নিন যে আপনি একটি Constants.as ফাইল তৈরি করুন এবং এটি গেমস ফোল্ডারে রাখুন। এটি আমদানি করতে, নিম্নলিখিত কোডটি ব্যবহার করুন:
প্যাকেজ {আমদানি খেলা।*; }
ধাপ 5. অন্যদের খেলা দেখুন।
যদিও অনেক ডেভেলপার তাদের গেম কোড প্রকাশ করবে না, সেখানে বিভিন্ন ধরণের টিউটোরিয়াল প্রকল্প এবং অন্যান্য ওপেন সোর্স প্রকল্প রয়েছে যা আপনাকে কোড দেখতে এবং গেম অবজেক্টের সাথে ইন্টারঅ্যাক্ট করার অনুমতি দেবে। এটি বিভিন্ন ধরণের উন্নত কৌশল শেখার একটি দুর্দান্ত উপায় যা আপনার গেমকে আলাদা করে তুলতে সাহায্য করতে পারে।