Git Product home page Git Product logo

zombie_shooter_026's Introduction

Zombie Shooter

Перед началом

Установка

Клонировать репозиторий

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, либо добавить новый следующим образом:

  1. Создаём новый txt-файл в папке levels
  2. В config.py прописываем путь к новому уровню, например:
LEVEL_2 = _LEVELS_DIR / 'level2.txt'
  1. В main.py импортируем созданный уровень по аналогии с LEVEL_1, например:
from config import LEVEL_2
  1. В main.py в классе GameLogic, в параметрах вызываемого родительского конструктора меняем LEVEL_1 на свой импортированный уровень, например:
Было:
super().__init__(..., LEVEL_1)

Стало:
super().__init__(..., LEVEL_2)
  1. Готово! Теперь можно запускать игру

Помощь в разработке

Каждый может поучаствовать в совершенствовании игры и создать:

  • Новые объекты окружения: земля, другие камни, деревья, лужицы и т.д.
  • Нового врага
  • Ещё один уровень
  • Можно объединить три пункта выше и создать уровень с новым контентом!

Пожалуйста, не изменяйте уже написанный код и уже добавленные объекты!

Известные проблемы

  1. Иногда персонаж может пройти сквозь препятствие, если он одновременно коснётся двумя сторонами другие препятствия

  2. В некоторых случаях зомби может пройти сквозь препятствие, если он одновременно коснётся двумя сторонами другие препятствия, однако, это происходит довольно редко.

  3. Если в редакторе карт расположить препятствия рядом с "живыми" (игрок, зомби и т.д.) игровыми персонажами, они в них могут застрять, поэтому лучше так не делать

Планы на разработку

  1. Добавить меню с упрощенным выбором уровней
  2. Добавить музыку и прочие звуковые эффекты
  3. Добавить новый контент (уровни и прочие игровые объекты)

zombie_shooter_026's People

Contributors

notrurs avatar zheka1101 avatar andreyzhulanov avatar codershkoder avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.