Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Как сделать Dota-like игру (Семён Корзунов)

E51d363aa46f4d059d54a15e0bcd8e6f?s=47 Tech Talks @NSU
September 23, 2013

Как сделать Dota-like игру (Семён Корзунов)

Семён Корзунов (Nival, Москва) рассказывает об архитектуре Dota-like игр на примере Prime World.

http://techtalks.nsu.ru

E51d363aa46f4d059d54a15e0bcd8e6f?s=128

Tech Talks @NSU

September 23, 2013
Tweet

Transcript

  1. Как сделать Dota-like игру Семён Корзунов ex-Nival, senior software developer

  2. Кто я? • Выпускник АФТИ ФФ НГУ 2007 года •

    Работал в SoftLab-NSK (Дальнобойщики 3) • Последние 4 года – старший разработчик в Nival (Москва)
  3. Кто играл в Dota?

  4. А кто играл в LoL?

  5. А в Prime World?

  6. Игровая механика • 3 дороги • 10 игроков • Герои

    развиваются во время игровой сессии
  7. О чем будем говорить • Как связать 10 игроков (тонкие

    или толстые клиенты) • Игровая модель • С чего начать разработку прототипа
  8. Тонкий или толстый клиент? • Чем различаются подходы? • Толстый

    клиент экономит «серверные деньги» • Смешанный подход: «почти» peer-to-peer
  9. Игровая модель • У всех 10 игроков игровая модель одинакова

    • Игровая модель легко передается по сети в случае реконнекта • Все 10 игроков видят игровую модель по- разному • Разделение клиента на игровую модель и ее клиентскую обработку
  10. С чего начать разработку игровой модели?

  11. Карта

  12. Карта • Художественный рельеф • Карта проходимости • Карта высот

    • Fog of war
  13. Юнит • Размер • Высота • Обзор • Положение и

    поворот • Игровые характеристики
  14. Динамика игры • Понятие “step” • Как игроки влияют на

    мир • Синхронизация степов между клиентами • Как реализовать динамику мира
  15. Понятие state machine и behavior для юнитов • Каждый юнит

    – это state machine • Юниты обладают стеком поведений • Чем отличается герои от друг • Как можно это реализовать?
  16. Pathfinding • Что это такое • Pathfinding A-star • Варианты

    подешевле
  17. Понятие collision • Возникает при конфликте путей • Как его

    обрабатывать? • Понятие «запереть»
  18. Как заполнить игровую модель • Необходимость заполнять игровые данные •

    Понятие редактора игровых данных • Как «оживить» юнитов • Насколько дизайнер игр может определять мир
  19. Запускаем прототип • Игровая модель – Карта – Игроки –

    Динамика и жители карты • Поведение юнитов • Pathfinding и коллизии • Создание карты и ее наполнение игровыми данными • Запуск в тестовом режиме и с участием сервера
  20. Что я пропустил? • Рендер и 3d сцена • Звуки

    и музыка • Юзер Интефейс (UI) • Как входить в игру (Lobby) • Реализация игровой механики • Реализация сетевого уровня
  21. Спасибо за внимание! Семён Корзунов ex-Nival, senior software developer