سؤال

أريد أن ألعب لعبة باكمان. هناك مشكلة في تحريك أشباح Pacman. كيف يمكنني تحريك الشبح. أستخدم طريقة عشوائية ولكنها تتحرك في نفس الاتجاه لأعلى أو لأسفل أو إلى اليسار أو اليمين. أريد نظرية فعلية وراء حركة باكمان

هل كانت مفيدة؟

المحلول

هذه الصفحة لديه تحليل مفصل للغاية لـ Pac-Man مع معلومات حول الذكاء الاصطناعي لكل شبح.

نصائح أخرى

قرأ شخص ما ملف Pacman وكتب علاجًا أكثر وجيزة يركز بشكل خاص على سلوك الأشباح في http://gameinternals.com/post/2072558330/underSing-Pac-Man-ghost-behavior

حركة الأشباح في Pacman ليست مجرد واحدة عشوائية. إنها منظمة العفو الدولية ، مع بعض نظرية الرسم البياني فيه. إذا كنت ترغب في (نوع) الأعداء الواقعيين في ألعابك ، فسيتعين عليك أن تتعلم قليلاً عن كل هذه الموضوعات.

لقد قمت بالفعل بتطبيق Pacman في Android. لتسهيل عملي ، بدأت باستخدام خوارزمية عشوائية. أي على كل احتمال حيث يمكن للشبح تغيير اتجاهه ، يتم اختيار أحد الاتجاهات المتاحة تلقائيًا. هذا ليس من الصعب تنفيذها. ولكن مع هذه الخوارزمية ، تتمتع Pacman بحياة سهلة ، لأن الأشباح لا تصطاد Pacman حقًا.

لذلك في النهج الثاني قرأت هذا المصدر: Pacmandossier

هناك يمكنك أن ترى أن كل شبح لديه سلوك مختلف. لم أكن حقًا تطبيق نسخة دقيقة من السلوك هناك ، لكن بدلاً من ذلك استخدمت تقريبًا. في كل تغيير في الاتجاه الممكن ، قمت بحساب "أفضل اتجاه" باستخدام أصغر مسافة مانهاتن بين positition of the Pacman والاتجاهات المحتملة التي يمتلكها الشبح. ثم أقوم بنمذجة "العدوانية" المتغيرة للأشباح المختلفة ، استخدمت احتمالًا لكل شبح اختيار "أفضل اتجاه" مقابل واحد عشوائي.

هذه ليست في الحقيقة الخوارزمية الأصلية ، لكنني أعتقد أنها تقريب جيد للغاية حيث يمكنك رؤيته بسهولة أثناء لعب الشبح أكثر أو أقل يحاول مطاردة Pacman.

بطبيعة الحال ، يمكنك توسيع هذه الخوارزميات ، على سبيل المثال باستخدام إمكانيات وسرعات مختلفة إذا تم اصطياد الأشباح بدلاً من مطاردة Pacman.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top