PythonKaBoOoM - клон Battle City

Продолжая осваивать python+pygame, написал клон игры Battle City, более известной в наших краях как «Танчики».



Основные отличия от Battle City:
— несколько видов танков с разными боевыми характеристиками
— мины
— kabooom (соберите это слово из бонусов и активируйте неподалёку от скопления врагов)
— режим PvP

Написано на Python 2.x с помощью PyGame 1.9.1.

Управление:
F5 — сменить музыкальный трек
F7 — звук
F8 — музыка
F11 — полноэкранный режим
F12 — снимок экрана

Игрок 1:
? — вверх
? — вниз
? — влево
? — вправо
NUM 0 — выстрел
ENTER — мина
BACKSPACE — kabooom

Игрок 2:
W — вверх
S — вниз
A — влево
D — вправо
SPACE — огонь
TAB — мина
` — kabooom

Редактор:
CTRL+ПКМ — заливка
CTRL+S — сохранить
CTRL+L — открыть
ESC — выход

Скриншоты:


Ссылки:
kabooom 0.5 source
kabooom 0.5 linux
kabooom 0.5 windows

Просьба по возможности запускать игру через терминал для того, чтобы при вылете можно было запостить сюда сообщение об ошибке.
  • +14
  • Vladar
  • 09 мая 2011, 02:35

Комментарии (13)

Прикольная вещица. Только советую сделать передвижения исключительно по квадратам, как в танчиках. Просто на скоростном танке уж очень бывает сложно попасть в проемы между стенами )))
Круто :) Писал когда то тоже такое. Тыц
Спасибо!)
Добавим в ритуал «пятничного дуракаваляния»)
На python 2.5 не запускается:

Traceback (most recent call last):
File «kabooom.py», line 73, in main()
File «kabooom.py», line 49, in main
from game.state_highscores import StateHighscores
File "/home/rodegast/Prog/GAME/kabooom_0.5_src/game/state_highscores.py", line 154
with open(HS_FILENAME, 'rb') as file:
^
SyntaxError: invalid syntax
with добавили в версии 2.6.
Чтобы запустить на версии 2.5, нужно добавить строку
from __future__ import with_statement 
Кстати. Если менять управление для одного игрока, то клавиши для второго не меняются. К примеру, если в дефолте поменять у первого игрока «Огонь» на пробел, то в режиме двух игроков при нажатии пробела стреляют оба игрока сразу )
А почему выстрелы не поглощают друг друга, как в оригинале?
Это бы могло внести изрядный дисбаланс при том, что скорострельность и скорости снарядов у разных моделей танков различны.
Зато это не как в оригинале, непривычно :) И сложно на первый взгляд.
Спасибо, понравилось. Музыка классная тоже очень понравилась. Только мне кажется не стоит так сильно дёргать пункты меню когда на них наводишь.
Поддерживаю. А еще немного непрягают надписи со смешанным регистром, мне кажется достаточно и того, что шрифт там нестандартный.
Не понял на какой лицензии распространяется.
Кстати, для корректной работы с внутренними папками игры я бы посоветовал добавить код:
os.chdir(os.path.dirname(sys.argv[0]))

Соответственно, после импортов os & sys (или их частей).
А так игра понравилась, имея опыт в pygame, я бы помог автору, если последний не был бы против.
А музыку хорошо бы ужать (имхо), ибо весит много, или же просто сделать Lite-версию.
Спасибо за игру.
Лицензия MIT, так что никаких ограничений.
В ближайшее время выпускать новую версию не планирую, работаю над другим проектом.
Благодарю за отзывы.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.