Клонировать репозиторий
git clone https://github.com/notrurs/zombie_shooter_026.git
Установить зависимости
pip install -r requirements.txt
Запускать игру командой
python main.py
ВНИМАНИЕ! Для корректного запуска игры, нужно, чтобы в переменной PYTHONPATH был путь до папки zombie_shooter_025!
Управление на клавиши WASD, ЛКМ - стрелять.
Почти каждый параметр игры можно настроить под себя, воспользовавшись конфигурационным файлом
config.py, который находится в пакете shooter.
В игру встроен простой редактор карт, который можно найти по пути shooter/resources/levels.
Каждый уровень игры представляет собой обычный .txt файл, где специальными символами обозначены
игровые объекты. На данный момент используются следующие обозначения:
-- камень, сквозь который нельзя пройтиP- игрок, может быть только один (технически, можно добавить второго, но тогда игрок будет управлять сразу двумя)Z- зомби, может быть сколько угодно
Абсолютно под каждым игровым объектом создаётся кусок земли.
При желании, можно отредактировать уже созданный уровень level.txt, либо добавить новый следующим образом:
- Создаём новый txt-файл в папке
levels - В
config.pyпрописываем путь к новому уровню, например:
LEVEL_2 = _LEVELS_DIR / 'level2.txt'
- В
main.pyимпортируем созданный уровень по аналогии сLEVEL_1, например:
from config import LEVEL_2
- В
main.pyв классеGameLogic, в параметрах вызываемого родительского конструктора меняемLEVEL_1на свой импортированный уровень, например:
Было:
super().__init__(..., LEVEL_1)
Стало:
super().__init__(..., LEVEL_2)
- Готово! Теперь можно запускать игру
Каждый может поучаствовать в совершенствовании игры и создать:
- Новые объекты окружения: земля, другие камни, деревья, лужицы и т.д.
- Нового врага
- Ещё один уровень
- Можно объединить три пункта выше и создать уровень с новым контентом!
Пожалуйста, не изменяйте уже написанный код и уже добавленные объекты!
-
Иногда персонаж может пройти сквозь препятствие, если он одновременно коснётся двумя сторонами другие препятствия
-
В некоторых случаях зомби может пройти сквозь препятствие, если он одновременно коснётся двумя сторонами другие препятствия, однако, это происходит довольно редко.
-
Если в редакторе карт расположить препятствия рядом с "живыми" (игрок, зомби и т.д.) игровыми персонажами, они в них могут застрять, поэтому лучше так не делать
- Добавить меню с упрощенным выбором уровней
- Добавить музыку и прочие звуковые эффекты
- Добавить новый контент (уровни и прочие игровые объекты)