হ্যাক ও স্ল্যাশ গেমের চরিত্রের চলাফেরার জন্য একটি ভাল কৌশল খুঁজছেন


51

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


আমার বর্তমান কৌশল:

এখানে চিত্র বর্ণনা লিখুন


টর্চলাইট স্ক্রিনশট:এখানে চিত্র বর্ণনা লিখুন

---হালনাগাদ---

আমি কীভাবে এই পরিস্থিতিগুলি মোকাবেলা করতে চাই তা জানতে চাই:

পরিস্থিতি 1, আমার পথে গতিশীল / স্থির বাধা আছে have

এখানে চিত্র বর্ণনা লিখুন

পরিস্থিতি ২, শত্রুদের খেলোয়াড়দের কাছে একই পথ রয়েছে (আমাদের সাথে লড়াই করার জন্য কাতারে উঠুন) এখানে চিত্র বর্ণনা লিখুন


10
চিত্র এবং স্ক্রিনশটগুলির জন্য +1 (এবং একটি ভাল প্রশ্ন)। সর্বদা দরকারী।
কমিউনিস্ট হাঁস

এটি একটি দুর্দান্ত প্রশ্ন (+1) যার জন্য আমি আশা করি যে এই চ্যালেঞ্জটি মোকাবেলা করার বিভিন্ন উপায় (এলোমেলোভাবে রুটগুলিতে পরিবর্তন, এআই ইত্যাদি) সম্পর্কে প্রচুর আলোচনা এবং পরামর্শ থাকবে।
র‌্যান্ডল্ফ রিচার্ডসন

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

আমি এখনও উত্তর খুঁজছি, কীভাবে আমি এনএভি জালগুলিতে বাধা (ডায়নামিক / স্ট্যাটিক) মোকাবেলা করতে পারি? , আমি পুনরায় ব্যবহার করতে পারি না
পিয়ট্রেইক

উত্তর:


24

স্টিয়ারিং আচরণে আবরণে একটি সঙ্গে একযোগে গৌণ ডাটা স্ট্রাকচার

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

যদি আপনি কোনও গ্রাফ রাখার ব্যাপারে অনড় থাকেন তবে নোড থেকে নোডের কোনও পথ অনুসরণ না করে আপনি কঠোরভাবে পথের প্রতিটি নোডের সিক আচরণ ব্যবহার করতে পারেন ।

আপনি যে অন্য পদ্ধতিতে নিয়োগ করতে পারেন তা হ'ল পাথ স্মুথিং তবে মনে রাখবেন যে এটি মোটামুটি কম্পিউটেশনাল ব্যয়বহুল।

আশা করি এইটি কাজ করবে.

সম্পাদনা করুন:

আপনার বাধা পরিহার বিষয় নিয়ে সাহায্য করার জন্য, কিছু সাজানোর ব্যবহার বাধা রহিতকরণ


উত্তরের জন্য Thx, আপনি কীভাবে জানেন যে আমি কীভাবে নেভিগেশন জাল তৈরি করতে পারি? নাকি এটি তৈরির অন্য কোনও উপায় আছে? আমার মানচিত্রটি মেঝেবিহীন টুকরা (কোয়াডস / ত্রিভুজ) দিয়ে তৈরি হয়েছে।
পিয়োট্রিক

1
আপনি সর্বদা নেভিগেশন জাল তৈরির জন্য পুনঃনির্ধারণ (কোড. google.com/p/recastnavication ) ব্যবহার করতে পারেন । আপনাকে কেবল এটি একটি "ত্রিভুজ স্যুপ" (বহুভুজের একটি গুচ্ছ) দেওয়া দরকার এবং এটি এটি আপনার জন্য তৈরি করবে।
রে দে

আমি কি কেবলই এই মুখোমুখি হয়েছি তবে লিঙ্কটি: আই- ব্লগনাট / আর্কাইভস / 1000152 এইচটিএমএল মারা গেছে। আসলে আমি www.ai-blog.net অ্যাক্সেস করতে পারি না
123iamking

3

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

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

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


2

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

বোড আচরণের উদাহরণ এখানে: http://www.red3d.com/cwr/boids/

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


তবে, সিঁড়ি দিয়ে উদাহরণস্বরূপ কী? শত্রুও আমাকে সেখানে আক্রমণ করতে পারে, এটিকে অন্য ন্যাভ জাল করে ফেলতে পারে?
পিয়োট্রিক

এটি নিজস্ব উত্তল আকৃতির হয়ে এটি ন্যাভ জালের অংশ হওয়া উচিত।
টেট্রাড

1
বিকল্পভাবে আপনি আপনার পয়েন্টটি পয়েন্টিংয়ের জন্য ব্যবহার করতে চালিয়ে যেতে পারেন এবং আপনি যখন "কাছাকাছি" পাবেন তখন পদার্থবিজ্ঞান ভিত্তিক স্টিয়ারিং আচরণগুলিতে ফিরে যেতে পারেন।
টেট্রাড

আমি কীভাবে নেভিগেশন মেসে গতিশীল বাধা মোকাবেলা করতে পারি?
পিয়োট্রেইক

1
পুনঃস্থাপন এটি পরিচালনা করার জন্য কীভাবে কাজ করছে সে সম্পর্কে এখানে একটি ব্লগ পোস্ট রয়েছে: ডাইজেস্টিংডাক.ব্লগস্পট.কম / ২০১৮ / ২০১৩ …
টেট্রাড

1

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


আরও দেখার পরে মনে হচ্ছে আমি যে উপস্থাপনা দিয়েছি তা কেবল আরআরটি কী করে তা বলে দেয় এবং একটি নতুন পদ্ধতির পরামর্শ দেয় যা এটি কিছু ক্ষেত্রে আরও ভাল কাজ করার দাবি করে এবং তিনি পরামর্শ দিয়েছিলেন যে আরটিএস গেমসের পথনির্দেশক আশা করি এটি আপনাকে সহায়তা করবে।
Ali1S232

0

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

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