Привет, продолжаем делать неправильные инди игры :)
На этот раз девлог больше технический и возможно финализирующий некий этап разработки.
Интерфейсы
Начнем с малого, доработал интерфейсы в игре, выработал стандарты в окошках, подобрал более приемлемый шрифт, уменьшил кол-во цветов. Теперь окна более аккуратные и самое главное одинаковые в стилях и цветах)
Тоже самое касается интерфейсов внутри игры + доработал свет что бы он не светил на некоторые элементы что бы не засвечивать те же взрывы с пулями)
Т2
Несмотря что многое было сделано давно, полноценно Т2 добавлено в игру только сейчас:
- 6 корпусов
- 6 пух
- 6 модулей (по 2-3 специализации)
Отличие Т2 корпусов от Т1, наличие 2го слота под оружие. Т2 оружие продолжает дизайн Т1 оружия, может просто увеличивать точность для дробовика, а может добавить механику усиления лазерного луча на времени. Но в целом +контент.
Получать Т2 можно через улучшения чертежей в лабе.
Что бы менеджерить это дело сделал страничку где показаны все ресурсы, чертежи и лут конфиги игры. Для просмотра можно потыкать на страшном урл: http://46.188.82.21:18080/bp_editor (меня провайдер забанил на 443 поэтому сервер теперь живет тут D:).
В очередной раз доработал нет код (это можно делать вечно)
В старой версии были проблемы с детерминизмом, пришлось в целом переписать механик передвижения но получилась кажется неплохо. Так же сделал предсказание на поворот оружия и выстрел оружия по нажатию мышки а не приходу события от сервера.
Хотел еще добавить предсказание создания пули и ее движение но это мягко говоря не тривиально поэтому пока без пуль. Но я немного доработал физику и создание пуль происходит за время близкое к времени пинга. В общем игра при 150 мс все еще комфортна и стабильно, остальное магия :)
Инструменты
Как и многие начал осваивать клод и первое что я заставил его делать распарсить свою систему заданий и отреставрировать редактор заданий (хорошо что у нас нет закона о жестоком обращение с роботами).
Честно сказать результат впечатляет, написать с нуля каждый дурак может но вот что бы оно распарсило мою базу, поняло датадрайвен архитектуру, нашла нужный код на беке, на фронте и связала все это вместе - мое почтение. Юзабилити +120%
Вдохновленных результат я отрефачил редактор диалогов, редактор карт и связал их между собой, да простит меня IMS Creators :)
Оптимизация
Так как я обиженный на всех издателей неграмотный индюк (хе-хе), то от оптимизации серверов зависит сколько я буду тратить денег на сервера в случае запуска игры в продакшен. Все усугублено тем что в моем мире постоянно живет примерно 3к ботов, 1к из который == людям.
Я реализовал систему LOD для логики мира, которая уводит сектора без игрока в "спящий режиме", отключает коллизии, поиск путей и еще с десяток не важный модулей. При этом боты продолжают жить свою жизнь но по упрощенной модели.
Когда в сектор внезапно появляется игрок, он очень быстро за пару тиков восстанавливает свое состояние и притворяются что ничего не было :)
Раньше цена за мир ~8-12к/мес (я когда то писал 4к, но с тех времен много поменялось :D), теперь ~1-2к/мес за мир.
В целом это смешные деньги для ммо проекта, но стоит учесть что эта оптимизация работает в том случае если в игре будет низкий онлайн. А он будет низким и таким образом проект будет жить в спящем режиме годами :)
Мониторинг
Написал систему мониторинга серверов, не графана но для моих целей сойдет, уже не раз помогла для поиска очень отвратных багов.
Сюжет
Я полностью завершил первую главу сюжета в игре. По протоколу [ Shift + W + скипая диалоги ] - время прохождение ровно 2 часа. Для обычного игрока который будет отвлекаться на активности, аномальки, аванпосты, крафт и тд это число может вырасти до 6-8. Мало это или оч. мало я не знаю если честно но как будто сойдет :)
Задания спроектированы так что у игрока почти всегда есть союзники, во первых это круто и дает эффект присутствия а во вторых если у игрока лапки союзник за него квест пройдет :D. В основном задача игрока 1) выживать 2) вносить импакт (опционально). Для турбо хардкорщиком попозже сделаем отдельный сервис повторяемых данжей с настройками сложности.
00:00 - обучающий данж
00:08 - начало обучения, прогон по механикам игры
00:31 - начало сюжетки
00:34 - начало пиратской арки
00:37 - 1 миссия пиратов (микро данж)
00:44 - 2 миссия пиратов (средний данж)
01:01 - 3 миссия пиратов
01:07 - начало арки сектантов
01:10 - 1 миссия сектантов
01:15 - 2 миссия сектантов, достаточно большой данж с кучей мобов и 2мя картами
01:29 - 3 миссия сектантов, покататься в отрытом мире (как будто игрок и так мало катался :D)
01:37 - 4 миссия сектантов (микро сценарный данж)
01:43 - 5 миссия сектантов (микро сценарный данж)
01:50 - 6 миссия сектантов, достаточно большой данж с кучей мобов и 2мя картами
01:59 - босс файт трай 1
02:01 - босс файт трай 2
Да там есть небольшие баги, в основном на клиенте, но никакого криминала)
Саммари
Графика мне до сих пор не нравится, но я наконец могу сказать что у меня на руках early access билд игры. Механики, физон, миссии, контент, системы - все работает, нагрузку держим, а о проблемах узнаем раньше игроков.
Но запускать EA я конечно же не буду :D.
В команде я 1, работаю работу после работы, сапорт+контент+комьюнити я просто не вывезу физически и в таком режиме 0 онлайна это лучшее что может случится. Писал в Аструм но ожидаемо игнор, а других кто бы мог в сетевой проект в рф я не знаю.
Тем не менее, я разработал в саляну мморпг на собственном движке - ачивка моя, ну а теперь пришло время трогать траву.