Skip to content

Latest commit

 

History

History
46 lines (33 loc) · 5.49 KB

README.ru.md

File metadata and controls

46 lines (33 loc) · 5.49 KB

Read this README in English >

NFK-WEB

Need For Kill - Quake 3 in 2d - WebGL game

Что такое NFK?

В начале 200х некто 3d[Power] сделал игру "Need For Kill" по мотивам Quake 3. Игра написана под Windows DirectX на Delphi. В игре пристусвует мультиплеер, в интернете и на сегодняшний день сущствуют выделенные сервера для игры (к ним можно подключиться прямо из меню игры). В игре присутсвуют несколько режимов заимтствованных из Quake 3 и других игр: duel, teamplay, captu the flag, domintaion и прочие. Осовной фичей является продвинутая прогеймерская физика и отличный игровой баланс! В середине 200x по игре проводились LAN чемпионаты России с призовым фондом. Время от времени проходят online турниры.

Посмотрите этот короткий ролик, чтобы составить представление об игре: http://www.youtube.com/watch?v=FgvgVttl0zE

Больше видео можно найти на этих двух каналах: http://www.youtube.com/user/nfk2d и http://www.youtube.com/user/needforkilldemo

Скачать оригинальную игру Need For Kill можно с официального сайта: http://needforkill.ru/load/need_for_kill_0_77/22-1-0-494

К сожалению, исходные коды последней версии игры были утеряны автором после того, как он потерял интерес к разработке. Сохранились лишь бекапы одной из промежуточных версий. На основе этих "промежуточных" исходников ряд энтузиастов продолжают развивать последнюю версию игры, внося правки непосредсвенно на ассемблере. Но этот процесс очень трудоёмок и время от времени возникает идея переписать всё заново.

Что такое NFK-WEB?

NFK-WEB - это проект нацеленный на перенос оригинальной игры под веб-платформу, но с сохранением физики и игрового баланса.

Демо: http://nfk.pqr.su/game/

Технические детали

  • Графика рендрится при помощи одной из самых популярных библиотек: Pixi.js (WebGL или canvas, если первый не доступен в браузере пользователя)
  • JavaScript код клиента написан на спецификации ECMAScript 2015 (ранее известного как ES6). Но поскольку не все фичи этой спецификации поддерживаются современными браузерами, код перед публикацией на сайт транслируется в поддерживаемый всеми ES5 с помощью библиотеки Babel
  • Сборка проекта с помощью системы webpack

План работ

  1. Переписать код отвечающий за коллизии (сейчас это выглядит как "спагетти" перенесённое из старых Delphi исходников)
  2. Написать подробный мануал для разработчиков, как настроить окружение и систему сборки (node, webpack, ...), возможно, записать скринкаст
  3. Реализовать первое оружие: Railgun!
  4. Написать мультиплеер и серверную часть, для начала с одним режимом игры: Railarena
  5. Запустить официальный сайт игры с регистрацией, статистикой игр, системой подбора подходящего по скилу игрока во время игры через сайт
  6. Добавить больше оружий и типов игры: (duel, ctf и teamplay)
  7. Разработать продвинутый редактор карт
  8. Текстуры, скины для моделей
  9. Визуальные эффекты
  10. Profit!!!

Присоединяйся!

Проект с открытым исходным кодом под лицензией MIT. Принимаем баг-репорты и пул-реквесты! В частности, ищем человека знающего толк в написании сетевого кода для мультиплеера (как клиентской, так и серверной части)

С нами можно связаться на irc канале: irc.wenet.ru:6667 #nfk (кодировка cp1251). Веб-портал для irc: http://needforkill.ru/index/web_chat/0-54

Или в чатике Gitter.im: Gitter