একটি ভাল ওপেন সোর্স গেমটি কী থেকে শিখতে হবে? [বন্ধ]


15

আমি একটি ওপেন সোর্স গেমের সোর্স কোডটি ডাউনলোড করতে চাই, তাই আমি গেম আর্কিটেকচারের সাথে পরিচিত হতে পারি। সুবহুল এবং সহজেই বোধগম্য এমন সোর্স কোড সহ এমন কোনও গেম সম্পর্কে কি কেউ জানেন?

সম্পাদনা: কিছু চিন্তাভাবনার পরে, আমি এমন একটি গেম তৈরি করতে চাই যা ডেস্কটপে বা 2 ডি গ্রাফিক্স সহ একটি অ্যান্ড্রিয়ড ফোনে খেলা যায়।


7
বেশিরভাগ গেমস যা ওপেন সোর্স হয় সেগুলি হ'ল বড়, পুরানো প্রকল্প যা সর্বদা সহজেই বোধগম্য হয় না, বাণিজ্যিক প্রকল্পগুলি যেগুলি বিভিন্ন কারণে উন্মুক্ত ছিল, বা অসমাপ্ত গেমগুলি যা সত্যিকার অর্থে খেলতে পারা যায় না। এছাড়াও, ব্যবহৃত খেল এবং ভাষার ধরণ সম্পর্কে কিছুটা আর্কিটেকচার। আপনি কোন ধরণের খেলা থেকে শিখতে চান এবং কোন ভাষাগুলি আপনি জানেন? (টিউটোরিয়াল সত্যই একটি ভালো বিকল্প এখানে হতে পারে)
thedaian

@ থেডিয়ান আমি জাভা, সি ++, সি, জাভাস্ক্রিপ্ট এবং পাইথন জানি
জাম্পনেট

2
সম্ভাব্য অনুরূপ: gamedev.stackexchange.com/questions/1497/...
Tetrad

আমি ডেডিয়ানদের সাথে একমত, কমপক্ষে এটি আমার পক্ষে আরও ভাল কাজ করেছে। প্রচুর পরিমাণে খুব ভাল নিবন্ধ এবং বই এবং টিউটোরিয়াল রয়েছে। সঠিকগুলি বাছাই করতে আপনাকে সময় নিতে হবে তবে এটি পরে আপনার সময় সাশ্রয় করে কারণ তারা ইতিমধ্যে জানবে যে তারা কেন তাদের কোড করে এবং উত্সগুলির গুণমান (যা প্রায়শই গন্ধ পায়) সনাক্ত করতে সক্ষম হয়। আপনি যদি বহনযোগ্যতা চান তবে আমি সি / সি ++ এর জন্য যাব তবে সেই প্ল্যাটফর্মগুলির জন্য আপনি জাভা দিয়ে ভাল করতে পারেন।
পাবলো আরিয়েল

1
সম্প্রদায় উইকি?
জারি কম্প্পা

উত্তর:


2

আপনি কোন ধরণের গেমের জন্য জিজ্ঞাসা করছেন তা আমি নিশ্চিত নই তবে ওপেনটিটিডি নামের একটি ওপেনসোর্স গেমটি সি ++ তে লেখা আছে। আমি মনে করি আপনি এটি একটি ভাল নমুনা হিসাবে ব্যবহার করতে পারেন।

এই গেমটি অনন্য করে তোলে এমন কিছু বৈশিষ্ট্য:

  • এটি একটি কৌশল খেলা।
  • এটির ইন্টারনেট এবং স্থানীয় নেটওয়ার্কের উপর মাল্টিপ্লেয়ার সমর্থন রয়েছে।
  • এটি কনফিগারেশন ফাইলের মাধ্যমে অন্যান্য ভাষায় অনুবাদ সমর্থন করে (যা কাঁচা পাঠ্য ফাইল থেকে উত্পন্ন হয়)
  • এটি আমার জানা প্রায় প্রতিটি প্ল্যাটফর্মে সংকলিত।
  • এর প্রকল্প এখনও বেঁচে আছে!
  • এটি বিল্ট-ইন এআই সমর্থন করেছে।
  • গ্রাফিকাল এবং বাদ্যযন্ত্র ডেটা প্যাচগুলির মাধ্যমে সম্পূর্ণ কাস্টমাইজযোগ্য।
  • এটি কাস্টম এআই বিকাশ করতে স্ক্রিপ্টিং ভাষাগুলি সমর্থন করে। সুতরাং আপনি এই গেমের জন্য লিখিত অন্যান্য এআই পড়তে পারেন।
  • এটির কোডটি পড়া এবং বুঝতে সহজেই এটি অপেক্ষাকৃত বড় প্রকল্প।
  • এটি এসডিএল ভিত্তিক, এবং সেদিক থেকে তারা স্ক্র্যাচ থেকে সমস্ত কিছু বিকাশ করেছে।

--Edit--

ঠিক আজ আমি শুরু থেকেই তাদের কোড পড়া শুরু করেছি। তারা কী লিখেছেন তা বোঝার জন্য আপনাকে একটি শালীন সি এবং সি ++ প্রোগ্রামার হতে হবে (যদিও তাদের কোডটি ভালভাবে মন্তব্য করা হয়েছে)! আমি বোঝাতে চাইছি যে আপনি উভয় ভাষারই মাস্টার হতে হবে যেহেতু তারা উভয় থেকেই কাঠামো ব্যবহার করছে! সুতরাং আপনি যদি আপনার প্রোগ্রামিং দক্ষতা সম্পর্কে যথেষ্ট আত্মবিশ্বাসী না হন তবে সেই কোডের কাছেও যাবেন না! এটিই আমি দেখতে পেয়েছি যে সবচেয়ে দীর্ঘতম কোড! (এবং আমি নিজেই একটি নোংরা কোডার কিন্তু তারা অন্য কিছু!)

আমার মনে হয় এখন আমি আপনাকে সুপারটাক্স কোড চেক করার পরামর্শ দিতে পারি । এটি একটি প্লাটফর্মার গেম (ঠিক সুপার মারিওর মতো) এবং এখনও পর্যন্ত তাদের কোডটি সত্যই পরিষ্কার বলে মনে হচ্ছে (আমি মাইলফলক 1.3 পরীক্ষা করেছি)। এই কোডটিতে তাদের কিছু মন্তব্য আছে তবে কেবল এমন জায়গাগুলির জন্য যা আপনি বিভ্রান্ত হতে পারেন।


ওপেনটিটিডি একটি দুর্দান্ত খেলা হলেও আমি মনে করি এটি একটি ভাল শেখার প্রকল্প নয়। এর বেশিরভাগটি বিধান থেকে বিপরীত ইঞ্জিনিয়ার হয়েছিল এবং এখনও কোডের কিছু অংশ রয়েছে যা এটি প্রতিফলিত করে। এছাড়াও, এটি কেবল একটি বিশাল প্রকল্প এবং এটি সম্ভবত "গেমের আর্কিটেকচার শিখুন" প্রকল্পের জন্য খুব বেশি।
thedaian

@ থেইডিয়ান আপনি এটি বলতে পারেন তবে এখনই এবং তার পরেও আমাকে নতুন কিছু করার দরকার আছে আমি কেবল তাদের কোডে যা লিখেছি তা পড়েছি। এখন পর্যন্ত আমি মনে করি এটি সর্বাধিক পঠনযোগ্য ওপেনসোর্স গেমটি এখানে পড়ার মতো!
Ali1S232

এছাড়াও আমি নিশ্চিত নই যে আপনি তাদের কোডটি শেষবার কখন পরীক্ষা করেছিলেন তবে তারা এটি 1.0.0 সংস্করণ থেকে পরিষ্কার করেছেন
Ali1S232

2

আমি মনে করি আপনার পছন্দসই একটি খেলা বেছে নেওয়া এবং এর মতো কোনও ওপেন সোর্স গেমগুলি পরীক্ষা করা সম্ভবত একটি ভাল পদ্ধতির। ওপেন সোর্স খেলা ক্লোনস তালিকা সম্ভবত শেষ ধাপে, অনেক সাহায্য করবে।


1

ভূমিকম্প 3 এর মতো মূল ভিত্তি রয়েছে বা আপনি কিছুটা সহজ কিছু চাইলে (এবং 2 ডি তে) ইন্ডি গেম গিশের দিকে তাকান । তারা উভয়ই ওপেনজিএল ব্যবহার করে এবং ক্রস প্ল্যাটফর্মও।

যদিও গিশ অগোছালো দিকে কিছুটা হলেও।


1

3 ডি পাইপলাইন, পদার্থবিজ্ঞান, এআই ইত্যাদি সম্পর্কে আপনি কী ধরণের গেম আর্কিটেকচার সম্পর্কে জানতে আগ্রহী তা সম্পর্কে আমি প্রথমে আপনাকে মনোনিবেশ করার পরামর্শ দিচ্ছি।

গেম প্রোগ্রামিংয়ের একটি ভাল উদাহরণের জন্য জেনারিক অনুরোধের সাথে, আমি মনে করি যে স্পেস হানাদার আক্রমণকারীদের শক্তিশালী করা শক্ত, কারণ এতে ক্লিন কোড এবং ওপেন জিআল গেম প্লে এবং ইন্টারফেস রয়েছে যাতে জিনিসগুলি মোটামুটি সহজ রাখা যায়।

চিয়ার্স


স্পেস হানাদাররা কি কেবল গ্লোব উইন্ডো? আমার পিসিতে বর্তমানে উইন্ডোজ ইনস্টল করা নেই। আমার কাছে এটি অ্যাক্সেস নেই এমন নয়, কেবল এটি সুবিধাজনক নয়।
জাম্পনেট

1

যদিও কোডটি পড়ার ক্ষেত্রে দরকারী হতে পারে তবে আপনি যদি ডোমেনে শিক্ষানবিশ হন তবে আপনি কিছুই শিখবেন না। বিশেষত যদি আপনি Q3A বা ওপেনটিটিডি এর মতো বড় প্রকল্পগুলির কোডটি দেখেন। এগুলি একটি সম্পূর্ণ দল তৈরি করেছিল, প্রতিটি ব্যক্তির সাথে বিভিন্ন কোডিং অনুশীলন রয়েছে, কীভাবে জিনিসগুলি তৈরি করবেন সে সম্পর্কে বিভিন্ন ধারণা। আপনি কেবলমাত্র বড় ছবি পাবেন, ছোট বিবরণ নয় যা সমস্ত কিছু একসাথে স্থির করে দেয়।

বিকাশ, ব্যর্থ, আপনি ভাল বলে মনে হচ্ছে এমন কিছু না পাওয়া পর্যন্ত আবার চেষ্টা করুন, আবার ব্যর্থ হোন, ধুয়ে ফেলুন এবং আপনার ভাল কিছু না পাওয়া পর্যন্ত পুনরাবৃত্তি করুন। বিভিন্ন বিকাশকারী কীভাবে স্টাফ বাস্তবায়ন করবেন সে সম্পর্কে বিভিন্ন ধারণা। এটি কারম্যাক / যে কোনও বিখ্যাত বিকাশকারী একটি ভাল গেম তৈরি করেছে তার অর্থ এই নয় যে কাটা রুটি থেকে এটি সেরা জিনিস, এবং এটির একটি আলাদা বাস্তবায়ন আরও পরিষ্কার এবং দ্রুত হতে পারে।


1

আমি মনে করি আপনি করতে পারেন এমন একটি গুরুত্বপূর্ণ কাজ হ'ল আপনি যে খেলাটি উপভোগ করেন তা চয়ন করুন। এটি আপনাকে এতে আগ্রহী রাখতে সহায়তা করবে এবং কোডটি কীভাবে খেলোয়াড়দের দৃষ্টিকোণে নিজেকে অনুবাদ করে তা আপনাকে আরও পরিচিত করে তুলবে।

একবার আপনি যে গেমটি বেছে নিয়েছেন, তা যত বড়ই হোক না কেন, কোডের প্রতিটি লাইন কীভাবে কাজ করে তা খতিয়ে দেখার দরকার নেই। এর একটি টুকরা বাছাই করুন এবং এটি দেখুন। উদাহরণস্বরূপ, প্লেয়ারের ডেটা কীভাবে সংরক্ষণ করা হয় বা মেনু আইটেমটি কীভাবে আঁকানো হয় তা বোঝার চেষ্টা করুন etc.

পরবর্তী কাজটি আপনি করতে পারেন যা আমার পূর্ববর্তী বিটের সাথে কিছু পরিবর্তন করার চেষ্টা করা হচ্ছে। বিশাল কিছু নয় (প্রথমে), কেবল খেলায় সাধারণ এবং লক্ষণীয়। এমনকি মেনুর একটি বোতামে পাঠ্যের মতো সাধারণ কিছু বা মেনু আইটেম যুক্ত করা বা ক্ষতির গণনা পরিবর্তন করা। হতে পারে আপনি ভেবেছেন যে তাদের কিছু অন্যভাবে করা উচিত ছিল, এটি নিজেই পরিবর্তন করার চেষ্টা করুন।

যখন আমি প্রথম গেমস বিকাশ করতে আগ্রহী হয়েছিলাম, তখন আমি সত্যিই 2 ডি অনলাইন আরপিজিতে ছিলাম। সুতরাং আমি অনলাইনের জন্য উত্সটি পেয়েছি এবং আমি এটির উপর ভিত্তি করে তৈরি করা শুরু করি। আমার নিজস্ব বৈশিষ্ট্য যুক্ত করা এবং জিনিসগুলি টুইট করা, বাগ ঠিক করা ইত্যাদি That যা কয়েক বছর আগে ভিবি 6 এ ছিল এবং এখন আমি সি # এবং এক্সএনএ ব্যবহার করছি এবং আমার নিজের খেলাটি স্ক্র্যাচ থেকে লিখছি। যেহেতু আমি গেমগুলি উপভোগ করেছি, এটি আমাকে আরও ভাল করে এটিতে কাজ করার জন্য অনুপ্রাণিত করেছিল। কাকতালীয়ভাবে, আমি আজই আমার নন-গেমদেব সম্পর্কিত ডে জবটিতে প্রচুর প্রোগ্রামিং, ডিবাগিং এবং সমস্যা সমাধানের কৌশলগুলি শিখেছি।

গেমটিতে এমন একটি মডডার রয়েছে যা আপনি প্রশ্ন জিজ্ঞাসা করতে এবং সহায়তা এবং উদাহরণগুলি থেকে নিতে পারেন তবে এটি খুব সহায়ক। তবে তারপরে আবারও যদি তা না থাকে তবে আপনি ইতিমধ্যে এখানে আছেন এবং আমরা সাহায্য করতে প্রস্তুত।


1

স্ট্যান্ড আউট ওপেন সোর্স অ্যান্ড্রয়েড 2 ডি প্ল্যাটফর্ম গেমটি রেপ্লিকা আইল্যান্ড

উৎস গুগল কোড চালু থাকে ও উন্নয়ন লেখকের মধ্যে ক্রমানুসারে ছিল ডেভ ব্লগ

এখানে অ্যান্ড্রয়েডের জন্য 15 ওপেন সোর্স গেমগুলির একটি তালিকা রয়েছে যা দেখতেও কার্যকর হতে পারে।


শীতল, আমি তাদের চেক আউট করতে হবে।
জাম্পনেট


0

স্ক্রোলিং খেলা ডেভেলপমেন্ট কিট 2 আপনি আসলে 2D গেম তৈরি এবং কোড না লিখেই একটি GUI ব্যবহার করে সেগুলি খেলতে পারেন। তবে এটি আপনাকে প্রকল্পটি এমবেড করা কোডটি দেখতে এবং সম্পাদনা করার অনুমতি দেয় যা গেমের পিছনে কাঠামো / ইঞ্জিনকে উপস্থাপন করে। বেশিরভাগ কোডটি জিইউআইয়ের মাধ্যমে উন্মুক্ত করা হয়, যদিও এর একটি ছোট অংশই কোড তৈরি করা হয় যেখানে আপনি স্প্রিট রাখেন এবং কোন মানচিত্র তৈরি করেন তার উপর ভিত্তি করে generated তবে আপনি যদি প্রকল্পটি উত্পন্ন করেন এবং ভিজ্যুয়াল সি # এক্সপ্রেসে ফলাফল প্রাপ্ত ফাইলগুলি খোলেন তবে এই কোডটিও দৃশ্যমান। পুরো প্রোগ্রামটি (আইডিই) নিজেই ওপেন সোর্স। এটি ওপেনটিকে লাইব্রেরিতে তৈরি করা হয়েছে (এটি এটি সি # থেকে ওপেনএলএল ইন্টারফেসিংয়ের জন্য ব্যবহার করে) এটি ওপেন সোর্স।


আমি এটি একবার দেখে নেব, তবে আমি একজন প্রোগ্রামার, সুতরাং কোড লেখা কোনও বড় বিষয় নয়।
জাম্পনেট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.