এইচটিএমএল 5 গেমটিতে মাল্টিপ্লেয়ার যুক্ত করা [বন্ধ]


15

আমি এমন একটি গেম তৈরি করতে আগ্রহী যেটি আমার কাছে বর্তমানে একটি কো-অপ-অভিজ্ঞতা রয়েছে তবে আমি এইচটিএমএল 5 এ কার্যকর করার সর্বোত্তম পদ্ধতি সম্পর্কে আগ্রহী।

সোজা সি সকেট ব্যবহার করার আগে আমি গেমস তৈরি করেছি এবং এসডিএলের নেট লাইব্রেরিও দিয়েছি।

ক্যানভাস ভিত্তিক পরিবেশে এটি করার জন্য আমার সেরা কয়েকটি বিকল্প কী কী?

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


সামগ্রিক গেমপ্লেটি 2.5 ডি প্ল্যাটফর্মার-ইশ টাইপের গেম হবে, সুতরাং উভয় ক্লায়েন্টকে প্লেয়ারের অবস্থান, শত্রু অবস্থান, প্রজেক্টিলস, পরিবেশগত ডেটা ইত্যাদির সাথে নিয়মিত আপডেট করতে হবে would


1
যখন ওয়েবসকেটগুলি ( en.wikedia.org/wiki/WebSockets ) চূড়ান্ত করা হয় (এবং প্রয়োগ করা ইত্যাদি) সম্ভবত এটি একটি ভাল উপায় হবে, ততক্ষণ পর্যন্ত আমি মনে করি AJAX (এক্স ছাড়া, কোনও এক্সএমএল প্রয়োজন নেই) সম্ভবত সবচেয়ে ভাল উপায় হতে পারে (এখনও আমি মনে করি না খুব ভাল উপায়)।
এলভা

দেখে মনে হচ্ছে যে ওয়েব সকেটের জন্য
সমর্থনটি

আপনি কি স্ট্যান্ড বা গেম তৈরি করতে চান? গেমটি করতে চাইলে; এইচটিএমএল 5 এর জন্য যান না।

@ স্টেফান: দুজনেই কেন নয়? শুধু কারণ এটি এখনও চূড়ান্ত হয়নি তার মানে এই নয় যে আমি এটি নিয়ে কাজ করতে পারি না!
the_e

উত্তর:


12

সকেট.আইও গ্রেফসিয়াল সিলেকশন সহ আরও কয়েকটি স্তর (ওয়েবসকেটস, ফ্ল্যাশ, ধূমকেতুর কৌশল সহ) এর উপরে নির্মিত একটি সিস্টেম সরবরাহ করে।

সার্ভারের পাশ দিয়ে চালানোর জন্য নোড.জেএস হ'ল একটি বিকল্প।


5

এই উত্তর দেখুন :

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


3

" ধূমকেতু " সম্ভবত একটি ছাতা শব্দ যা আপনি এখানে ব্যবহার করতে পারেন। যদিও ওয়েবসকেটগুলি আরও আকাঙ্ক্ষিত বিকল্প হবে (যখন তারা খুশি হয় যে এটি নিরাপদ)।


3

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

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

গেমটি প্রায় 2 মাস ধরে চলছে, পুনরায় চালু না করে এবং হাজার হাজার ম্যাচ খেলেছে।

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


2

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



2

বর্তমানে আমি এটি ব্যবহার করছি: http://code.google.com/p/phpwebsket/ আমার সকেট সার্ভার হিসাবে পরীক্ষা করতে। এটি আপনার ব্যবহৃত সি সকেটে কল করে। কিছু সেবা হতে পারে।


2

আমরা একটি মাল্টি প্লেয়ার প্ল্যাটফর্মে কাজ করে যা আপনি আকর্ষণীয় মনে করতে পারেন। আপনি আমাদের প্রকল্প দেখতে পারেন www.16cubes.com - পিয়ার টু পিয়ার যোগাযোগের জন্য আমরা একটি সাধারণ জাভাস্ক্রিপ্ট স্তর সরবরাহ করছি। এটি কিছুটা ধূমকেতুর নীতির উপর ভিত্তি করে তৈরি হয়েছে এবং এটি কিছুটা মানসম্পন্ন হওয়ার সাথে সাথে ওয়েবসকেটগুলি ব্যবহার করার বিষয়ে আমাদের পরিকল্পনা রয়েছে। অন্যদিকে, আমরা তাক থেকে কিছু বৈশিষ্ট্য সরবরাহ করছি .. যেমন স্বয়ংক্রিয় প্রতিপক্ষের ম্যাচিং, গেম চ্যাট, ফেসবুক বন্ধুদের এক-ক্লিক আমন্ত্রণ ইত্যাদি etc.

আমাদের কাছে একটি ডেমো টিক-ট্যাক-টো রয়েছে, আপনি যদি এটি দেখতে পান তবে আপনি সম্ভবত আরও ভাল ধারণা পেতে পারেন। এবং হ্যাঁ, আপনি বেনামেও খেলতে পারেন। আপনি যদি না চান তবে কোনও নিবন্ধকরণের প্রয়োজন নেই। আপনার বিরুদ্ধে কোড করার জন্য 10 টিরও কম জাভাস্ক্রিপ্ট এপিআই রয়েছে এবং এটি www.16cubes.com / ডকুমেন্টেশনউপলব্ধ

আমরা সক্রিয়ভাবে প্রতিক্রিয়া খুঁজছি, সুতরাং আসুন আমরা ভাল এবং খারাপ উভয়ই জানি


1

ক্লায়েন্ট / সার্ভারের পদ্ধতির মধ্যে node.js ব্যবহার করে রিয়েলটাইম মাল্টিপ্লেয়ার এইচটিএমএল 5 গেমস তৈরির জন্য বিশেষভাবে তৈরি এই ফ্রেমওয়ার্কটি একবার দেখুন। যেখানে সার্ভারটি গেম সিমুলেশন চালায় এবং খেলোয়াড়রা কেবল ইনপুটগুলি প্রেরণ করে।

ডেমো: http://vimeo.com/24149718

রেপো: https://github.com/onedayitwillmake/ রিয়েলটাইম মাল্টিপ্লেয়ার নোডজেস

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