دسکتاپ

بازی مار - پروژه پایتون با Tkinter

بازی مار کلاسیک با پایتون - گرید ۲۰x۲۰، افزایش سرعت با امتیاز، ذخیره رکورد، قابلیت توقف/ادامه و رابط کاربری جذاب

2026/02/20
6,599
683
241
بازی مار - پروژه پایتون با Tkinter
120,000 تومان
🔄 نسخه
1.0.0
📦 حجم
0 مگابایت
⭐ امتیاز
4.1/5
📊 موجودی
10000
ویژگی‌های محصول
دانلود آنی
بلافاصله پس از پرداخت
تضمین کیفیت
تست شده و سالم
پشتیبانی ۲۴/۷
همیشه در دسترس
آپدیت رایگان
به‌روزرسانی‌های آینده
اطلاعات فنی
وضعیت فعال
موجودی 10000 عدد
ویژه خیر
تخفیف خیر
فایل موجود

توضیحات محصول

🐍 بازی مار - پروژه کلاسیک پایتون

📊 ویژگی‌های کلیدی پروژه:
• 🐍 مار با قابلیت حرکت در ۴ جهت (بالا، پایین، چپ، راست)
• 🍎 غذای تصادفی با انیمیشن چشمک‌زن
• 📊 گرید ۲۰x۲۰ با خطوط شبکه
• 🏆 سیستم امتیازدهی (هر غذا +۱۰ امتیاز)
• ⚡ افزایش سرعت به ازای هر ۵۰ امتیاز
• 💾 ذخیره خودکار رکورد در فایل
• ⏸️ قابلیت توقف/ادامه بازی با Space یا دکمه
• 🚫 تشخیص برخورد با دیوار (آزاد - تله‌پورت)
• 💀 تشخیص برخورد با خود
• 🎮 نمایش امتیاز و رکورد در پنل بالا
• 📈 نمایش سطح سرعت فعلی
• 🔄 قابلیت شروع مجدد بازی
• 🎨 طراحی چشم‌ها برای سر مار
• 🌙 تم تیره حرفه‌ای

🔧 مشخصات فنی پروژه:
• زبان برنامه‌نویسی: Python 3.8+
• کتابخانه‌های استفاده شده: tkinter, random, time
• حجم فایل: ۲۴ کیلوبایت
• تعداد خطوط کد: ۳۰۰+ خط کد تمیز و کامنت‌گذاری شده
• ساختار: برنامه‌نویسی شی‌گرا (OOP) با کلاس SnakeGame
• معماری ماژولار با توابع مجزا
• مدیریت خطاهای پیشرفته

🎮 قوانین بازی:

🐍 مار:
• طول اولیه: ۳ خانه
• موقعیت اولیه: (۱۰,۱۰), (۹,۱۰), (۸,۱۰)
• جهت اولیه: راست

🍎 غذا:
• ظاهر شدن در مکان تصادفی
• هرگز روی بدن مار ظاهر نمی‌شود
• چشمک‌زن با دو رنگ قرمز

📊 امتیاز:
• هر غذا: +۱۰ امتیاز
• نمایش در پنل بالا با رنگ فیروزه‌ای

⚡ سرعت:
• سرعت اولیه: ۱۵۰ میلی‌ثانیه
• افزایش سرعت به ازای هر ۵۰ امتیاز
• نمایش سطح سرعت (۱ تا ...)

🏆 رکورد:
• ذخیره خودکار در فایل snake_highscore.txt
• نمایش در پنل بالا با رنگ نارنجی

💻 نحوه اجرا:

# روش اول: اجرای مستقیم
python snake_game.py

# روش دوم: اجرا در محیط مجازی (توصیه شده)
python -m venv venv
source venv/bin/activate # در لینوکس/مک
venv\Scripts\activate # در ویندوز
python snake_game.py

📁 ساختار پروژه:

snake-game/
├── snake_game.py # فایل اصلی پروژه
├── snake_highscore.txt # فایل ذخیره رکورد (ایجاد خودکار)
├── README.md


🎨 طراحی بصری:

📊 پنل اطلاعات (بالا):
• امتیاز (🎯) با رنگ فیروزه‌ای (#4ecdc4)
• رکورد (🏆) با رنگ نارنجی (#ff9f43)
• سرعت (⚡) با رنگ قرمز (#ff6b6b)
• پس‌زمینه تیره (#1a1a24)

🎮 صفحه بازی (وسط):
• گرید ۵۰۰x۵۰۰ پیکسل
• سلول‌های ۲۵x۲۵ پیکسل
• خطوط شبکه خاکستری (#3a3a45)
• پس‌زمینه تیره (#2a2a35)

🐍 مار:
• سر: رنگ فیروزه‌ای (#4ecdc4) با چشم‌های سفید
• بدن: رنگ فیروزه‌ای تیره‌تر (#45b7aa)
• چشم‌ها: دایره‌های سفید کوچک

🍎 غذا:
• رنگ قرمز چشمک‌زن (#ff6b6b / #ff8a8a)
• برق سفید روی غذا
• شکل دایره‌ای با هایلایت

🎮 پنل کنترل (پایین):
• دکمه "بازی جدید" (🔄) با رنگ فیروزه‌ای
• دکمه "توقف/ادامه" (⏸️) با رنگ نارنجی
• راهنمای استفاده از کلیدهای جهت‌دار

🎨 پالت رنگی:
• پس‌زمینه اصلی: #0a0a0f (مشکی)
• پنل اطلاعات: #1a1a24 (مشکی روشن)
• صفحه بازی: #2a2a35 (خاکستری تیره)
• خطوط شبکه: #3a3a45 (خاکستری)
• سر مار: #4ecdc4 (فیروزه‌ای)
• بدن مار: #45b7aa (فیروزه‌ای تیره)
• امتیاز: #4ecdc4 (فیروزه‌ای)
• رکورد: #ff9f43 (نارنجی)
• سرعت: #ff6b6b (قرمز)
• غذای فعال: #ff6b6b (قرمز)
• غذای چشمک: #ff8a8a (قرمز روشن)

⌨️ کنترل‌های بازی:

🔼 پیکان بالا: حرکت به بالا
🔽 پیکان پایین: حرکت به پایین
◀️ پیکان چپ: حرکت به چپ
▶️ پیکان راست: حرکت به راست
␣ Space: توقف/ادامه بازی

🚀 نحوه بازی:

۱. اجرای برنامه
۲. بازی به طور خودکار شروع می‌شود
۳. با کلیدهای جهت‌دار مار را حرکت دهید
۴. غذاهای قرمز را بخورید:
• هر غذا +۱۰ امتیاز
• طول مار افزایش می‌یابد
• سرعت افزایش می‌یابد (هر ۵۰ امتیاز)
۵. از برخورد با بدن خود جلوگیری کنید
۶. می‌توانید با Space بازی را متوقف کنید
۷. برای شروع مجدد، دکمه "بازی جدید" را بزنید

🔄 منطق بازی:

🎯 حرکت:
• ذخیره جهت بعدی در next_direction
• جلوگیری از حرکت برعکس
• به‌روزرسانی جهت در هر فریم

📏 برخورد با دیوار:
• سیستم تله‌پورت (آزاد)
• مار از یک طرف خارج و از طرف مقابل وارد می‌شود

💀 برخورد با خود:
• تشخیص با بررسی new_head in snake
• پایان بازی و نمایش Game Over

🍎 خوردن غذا:
• افزایش امتیاز
• افزایش سرعت در امتیازهای ۵۰، ۱۰۰، ...
• ایجاد غذای جدید در مکان تصادفی
• عدم حذف دم (افزایش طول)

📈 سیستم سرعت:
• سرعت اولیه: ۱۵۰ms
• کاهش ۱۰ms به ازای هر ۵۰ امتیاز
• حداقل سرعت: ۵۰ms
• نمایش سطح سرعت

🏆 ذخیره رکورد:
• خواندن از فایل در شروع بازی
• ذخیره خودکار در هر رکورد جدید
• نمایش در پنل بالا

⏸️ حالت توقف:
• توقف حرکت مار
• نمایش پیام "⏸️ مکث" روی صفحه
• ادامه با Space مجدد

🎯 پیام‌های بازی:

✅ شروع بازی:
• حرکت خودکار مار
• نمایش غذا

⏸️ حالت توقف:
• نمایش "⏸️ مکث" با رنگ نارنجی
• عدم حرکت مار

💀 پایان بازی:
• نمایش "🎮 بازی تمام شد!" با رنگ قرمز
• نمایش امتیاز نهایی با رنگ فیروزه‌ای
• غیرفعال شدن حرکت

🔄 شروع مجدد:
• ریست مار به موقعیت اولیه
• ریست امتیاز و سرعت
• ایجاد غذای جدید

⭐ نقاط قوت پروژه:
• کد کاملاً تمیز و کامنت‌گذاری شده
• رعایت اصول برنامه‌نویسی شی‌گرا (OOP)
• گرافیک جذاب با Canvas
• انیمیشن چشمک‌زن برای غذا
• سیستم افزایش سرعت پویا
• ذخیره و بازیابی رکورد
• کنترل‌های روان با صفحه کلید
• قابلیت توقف/ادامه بازی
• بدون وابستگی به کتابخانه‌های خارجی
• قابل اجرا روی ویندوز، لینوکس و مک
• حجم کم و عملکرد سریع
• طراحی مدرن با تم تیره

🎯 موارد استفاده:
• سرگرمی و بازی کلاسیک
• یادگیری برنامه‌نویسی بازی
• پروژه دانشجویی
• آموزش مفاهیم حلقه، لیست و random
• تمرین کار با Canvas در Tkinter
• آشنایی با منطق بازی‌های آرکید

📌 نکات فنی:
• استفاده از لیست برای ذخیره موقعیت مار
• تله‌پورت با عملگر modulo
• تشخیص برخورد با in
• ایجاد غذای تصادفی با while loop
• انیمیشن با after و تابع بازگشتی
• ذخیره فایل با open



با افتخار از درخت کد
محمدمهدی محمودی
treec.net | mohammadmahdimahmoudi.ir

امتیاز کاربران

187 نظر
4.1
از 5
میانگین امتیاز از 187 نظر
5
97
4
47
3
24
2
11
1
8
برای امتیاز دادن وارد شوید.

نظرات کاربران

134
برای ارسال نظر وارد شوید.
مبینا
مبینا 1404/07/05 20:29

مدتیه خریدمش، این پروژه نقطه قوت خوبی داره و ساختار کدش تمیزه پروژه متوسطیه.

کیانا
کیانا 1404/07/03 07:15

برای تمرین OOP پایتون، این پروژه فوق‌العاده‌ست و روی ویندوز و لینوکس اجرا می‌شه حتما بخرینش.

ستایش
ستایش 1404/07/02 08:13

به عنوان پروژه نمونه، این کد نقطه قوت خوبی داره و تو کلاس پایتون استفاده کردم جایگزین بهتری هم هست.

احمد
احمد 1404/06/28 15:41

برای تمرین OOP پایتون، این پروژه فوق‌العاده‌ست و کاملا حرفه‌ای نوشته شده فقط کافیه بخرینش.

محصولات مشابه

شاید این محصولات هم مورد علاقه شما باشند

بازی سنگ-کاغذ-قیچی - پروژه پایتون با Tkinter
رایگان
بازی سنگ-کاغذ-قیچی - پروژه پایتون با Tki...

🪨📄✂️ بازی سنگ-کاغذ-قیچی - پروژه سرگرم‌کننده پایتون 📊 و...

رایگان دریافت
بازی تتریس - پروژه پایتون با Tkinter
بازی تتریس - پروژه پایتون با Tkinter

🎮 بازی تتریس - پروژه کلاسیک پایتون 📊 ویژگی‌های کلیدی پر...

120,000 سبد
شطرنج حرفه‌ای - پروژه پایتون با Tkinter
شطرنج حرفه‌ای - پروژه پایتون با Tkinter

♔ بازی شطرنج حرفه‌ای - پروژه استراتژیک پایتون 📊 ویژگی‌ها...

120,000 سبد
بازی چهارتایی - پروژه پایتون با Tkinter
بازی چهارتایی - پروژه پایتون با Tkinter

🔴 بازی چهارتایی (Connect Four) - پروژه استراتژیک پایتون...

120,000 سبد