دسکتاپ

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

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

2026/02/20
6,601
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
برای ارسال نظر وارد شوید.
IronMan
IronMan 1405/06/23 20:16

این پروژه با توابع پیشرفته و با این قیمت این کیفیت و با پایتون ۳.۸ اجرا می‌شه ولی روی نسخه‌های جدید مشکل داره امیدوارم نسخه بعدی بهتر بشه.

هومن
هومن 1405/06/22 18:16

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

EarthShaker
EarthShaker 1405/06/15 03:41

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

Atossa
Atossa 1405/06/06 15:56

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

زینب رحیمی
زینب رحیمی 1405/06/03 21:28

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

شقایق
شقایق 1405/05/30 21:37

این پروژه پایتون نقطه قوت خوبی داره و با Tkinter ساخته شده با احتیاط بخرین.

Shapour
Shapour 1405/05/29 21:55

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

احمد صادقی
احمد صادقی 1405/05/29 18:20

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

Fara
Fara 1405/05/25 18:33

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

رضا رضایی
رضا رضایی 1405/05/18 04:44

برای پروژه درسی، این پروژه اجراش روونه و با تغییرات کم شخصی شد من که راضی‌ام.

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

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

بازی Space Invaders - پروژه پایتون با Tkinter
بازی Space Invaders - پروژه پایتون با Tk...

👾 بازی Space Invaders - پروژه کلاسیک پایتون 📊 ویژگی‌های...

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

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

رایگان دریافت
مبدل واحد حرفه‌ای - پروژه پایتون با Tkinter
رایگان
مبدل واحد حرفه‌ای - پروژه پایتون با Tkin...

🔄 مبدل واحد حرفه‌ای - پروژه جامع پایتون 📊 ویژگی‌های کلی...

رایگان دریافت
بازی Flappy Bird پیشرفته - پروژه پایتون با Tkinter
بازی Flappy Bird پیشرفته - پروژه پایتون...

🐦 بازی Flappy Bird پیشرفته - پروژه جذاب پایتون 📊 ویژگی‌...

120,000 سبد