Заметки безработного Апанасика
2K subscribers
418 photos
27 videos
334 links
Мысли Апанасика (@Suvitruf) про IT, геймдев, игры и около отого.

Разрабытываю сервис для разработчиков игр для оперирования LiveOps: https://balancy.co

Про геймдев отдельно можно почитать на канале @gamedev_suffering.

Ничего не рекламирую.
Download Telegram
Решил реанимировать один свой старый проект и добить диз. док. Проект отложил в долгий ящик из-за войны и из-за концептуальных моментов, которые не могу решить.

Сейчас загрузил в Openai chat вводные и попросил AI'шку подсказать некоторые ГД моменты. Весьма впечатлён.

1. Штуковина не только неплохо заполняет пробелы в моих идеях, но и отлично накидывает концепты по запросам вида: "как игра X, но про Y" и т. д. Можно нагенерить кучу идей, а потом выбирать и смешивать.
2. На базовом уровне без проблем придумывает корлуп игры, экономику и эндгейм. Это просто нечто.

Тот, кто сможет это впилить в пайплайн производства гиперказуалок, сорвёт банк.

Позакидывал ей контекста про свою игру и спросил в итоге "какое начало может быть у такой игры". И она выдала мне почти точь-в-точь часть вариантов из моего диз. дока и ещё несколько своих докинула 🤯

Натолкнула на некоторые идеи про добавление необязательных онлайн фич, которые доп. глубину позволят привнести и сделать генерируемый контент более таргетированным.

Есть у неё проблемки, конечно:
1. Базы старые
2. На некоторые темы она в принципе не может рассуждать
3. Есть запретные темы
4. Контекст она держит, конечно, но по ходу беседы может давать предложения без понимания специфики предмета разговора.

По поводу контекста же, с другой стороны...уже не раз наблюдал, как именно вот это непонимание к неожиданным результатам приводит.

Мы ограничены контекстом и думаем в рамках определённых границ. А AI'шка из-за отсутствия оных выдавать совсем безумные идеи может.

В общем, в ближайшие годы нейронки могут изменить многие сферы. Сам жду новшеств и крутых тулз для геймдева.

#нейронки #AI #gamedev
Вышла вчера статья про вкатку в геймдев. Она же на Хабре.

Метрики на DTF:
- 30к+ просмотров (довольно неплохо для статьи про геймдев)
- 800+ комментов
- 1500+ лайков
- 1750 рублей донатов
- Много положительных комментов
- Немало отрицательных и доёбок до "экспертности". В принципе, понимаемо, но немного обидно 😅

На Хабре тоже неплохо.

Эту статью изначально писал для Хабра для их ИТ-гида. До этого у меня не было опыта взаимодействия полноценного с редакцией или контент-студией какой-либо площадки. Делюсь опытом:
- 7к рублей за 10-15к знаков. Я не могу припомнить игровых изданий, где такие суммы бы платили. Я и так бы статью написал, а так бонус денежный, неплохо.
- Не торопили, не наезжали. Спокойно ждали, пока допишу.
- В самом начале помогли немного с планом/структурой.
- Помогли перед публикацией с редактурой и структурой.
- Разрешают репостить на другие сайты. Главное оставить превью пикчу с упоминанием Хабра.
- Был лишь один спорный момент: пришлось переписать один абзац, чтоб партнёры не наехали.

В целом очень приятный и положительный опыт взаимодействия. Даже на знал, что такое бывает.

#блогинг #gamedev
Потыкал немного A Plague Tale: Innocence. Визуально красивое, конечно. Но основной игровой цикл скучноват: Трава -> Сковородки -> Бег -> Крысы -> и так по кругу.

А вот нарративные моментики интересны. В этом брат с сестрой про пузырьки от рыбок и лягушек говорят, но сама сцена (отпечаток кровавый + сами пузыри) и другая сцена рядом совсем иную картину рисуют.

Если бы Амиция в диалоге дала нам (как игроку) понять, что она всё поняла, а с братом разговор затеяла про рыбок, чтоб он не расстраивался, то вообще шикарно бы было.

#апанасик_играет #gamedev
Тим Кейн рассказал про то, как они оптимизировали Arcanum по части используемой памяти за счёт использования прототипов.
- Каждый объект имеет ссылку на прародителя, в котором хранились базовые поля (ХП, урон и т.д).
- У объекта есть битовые поля, указывающие, переопределялось ли поле.
- Если объекту, например, ножу нужно задать иное значение урона, то выставляется бит в 1 и добавляется поле.

Большая часть игровых объектов не меняет большую часть полей (для многих меняется лишь позиция в мире), что сильно экономит использование RAM и уменьшает размер сейвов.

Кейн отдельно отметил, что буквально все объекты имеют поле для здоровья: «Лучше иметь его для всех объектов, но не использовать, чем не иметь, а потом на поздних этапах разработки добавлять».

Ну и да, было много жалоб от мододелов из-за такой замудрённой структуры 😅

#кейн #Arcanum #gamedev
5 баксов в месяц выходит в среднем с монетизации Твиттера. Только половину подписки покрывает.

Если у вас чуток побольше подписчиков (у меня ~5к) или если нонстоп набрасываете (но оно вам надо?), то без проблем можно отбить стоимость премиума.

Из минусов — вывести можно только на Страйп.

#twitter
У Кейна хорошее видео вышло про скейлинг противников. Он сам не любит, когда враги усиливаются пропорционально мощи игрока. Но...

- В Arcanum были моменты, которые можно с натяжкой назвать скейлингом. Наёмники Руки Молоха появляются после определённого этапа квеста. Геймдизайнеры предполагают, что к этому моменту игрок относительно мощный. Это своего рода скейлинг.
- А в The Outer Worlds было полноценной изменение уровня противников. Но с нюансами.
1. Уровень противника лежит в определённом диапазоне [a;b]. Допустим уровень игрока N. Если N < a, то уровень противника будет a. Если a < N < b, то N. А если N > b, то b. Т. е. есть кап с обеих сторон.
2. Игра запоминает уровень противника при первой встрече. Если при встрече игра определила уровень противника как X, то если вы прокачаетесь и вернётесь, то уровень будет всё ещё X. Это поощряет исследование. Имеет смысл посетить локи, чтоб зафиксировать уровень противников, чтоб потом после прокачки вернуться.

А ещё прям совсем не любит систему автоскейла противников в Fallout 3. К примеру, рейдеры усиливаются в зависимости от твоего уровня. И на поздних этапах гуляют с дорогой бронёй и пушками. С точки зрения нарратива это нелогично, т. к. им проще это всё продать, чем рисковать жизнью и нападать на игрока 😅

#gamedev
Трудовые будни с Unity. В WebGL билде UnityWebRequest посылал порой закарапченный json. Почему? Фиг его знает. Я оборачивал вызов UploadHandlerRaw в using, чтобы у меня не было ошибок к редакторе об утечках памяти (нет, ручной Dispose не помогал).

Но если UploadHandlerRaw создавать ручками и ручками диспоузить, то в WebGL всё норм. Правда, в редакторе ругается на лики. В итоге пришлось в if/else заворачивать и чекать платформу в рантайме 🙈

// for WebGL have to create and clean it manually, 'cause otherwise data will be corrupted
if (Application.platform == RuntimePlatform.WebGLPlayer)
{
uh = new UploadHandlerRaw(body);
request.uploadHandler?.Dispose();
request.uploadHandler = uh;
[...]
}
else
{
// looks like Unity internally creates handler,
// so we need to clear this shit to prevent memory leaks 🤦‍♂️
// https://forum.unity.com/threads/a-native-collection-has-not-been-disposed-resulting-in-a-memory-leak.1136068/
using (var uh2 = new UploadHandlerRaw(body))
{
request.uploadHandler?.Dispose();
request.uploadHandler = uh2;
[...]
}
}


Обсуждение на форуме.

#unity #gamedev
Джош Сойер рассказал про документацию при работе над Fallout: New Vegas. Сейчас у Obsidian всё в Confluence, но раньше использовали вордовские доки и SharePoint.

Интересно читать такую ретроспективу. Мне особенно интересно, т. к. после универа я как раз работал над написание системы документооборота поверх Шерпоинта. Подобный ужас с точки зрения как юзера, так и разработчика редко встретишь, но Microsoft смогли создать монстра.

На то время там был древний ASP.NET, куча странной и стрёмной логики с Workflow и прочими компонентами системы. Документации по сложным кейсам не было, спросить что-то не у кого. Немалая часть кода работала не ясно даже почему. Но, по крайней мере, на той работе я научился гуглить и доходить хоть и до кривых решений, но самостоятельно.

#ретроспектива #Fallout #документация #gamedev
Кстати, интересный моментик с Balatro состоит в том, что игра на движке LÖVE, код на Lua.

Вы буквально можете открыть exe'шник 7zip'ом и менять код игры как вам захочется.

#Balatro #LÖVE #игры #gamedev
Посмотрел видео DF про No Rest for the Wicked (от разработчиков Ori), и...кхе...

Из интересного несколько моментов:
1. Свет весь риалтаймовый, как и тени, понятное дело. Есть занятные твики в этом плане по части отсветки от персонажа.

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

3.Самое, кмк, прикольное — Unity (да, игра на нём) чисто как рендер. Физический 3d-движок свой, ну и вся симуляция тоже, соответственно.
Плюсы: отзывчивость управления, т. к. инпуты обрабатывает отдельный движок.
Минусы: даже если GPU тянет отрисовку, то симуляция в некоторых районах жутко просаживает CPU.

Из забавного:
- Линнеман назвал Стимдек "low-end platform". Кек.
- Опять дрочь на HDR.

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

Поэтому я б подождал выхода из раннего доступа.

#gamedev
Была уже новость в начале года, что разрабы EVE online хотят выложить технологию в опенсорс, но я как-то проморгал момент, что это «игра-базаданных».

Я так понимаю, они не просто там данные хранят, но и обмазываются логикой? Процедурки и вот это вот всё, и оно норм вывозит на их числе юзеров? 🤔
- MS SQL для таких вещей вообще выглядит странненько.
- Как оно это всё вывозит.

Вообще, конечно, интересно будет посмотреть на эту их магическую Carbon Development Platform. Главное, чтоб не случилось такого, что после того, как выложат в опенсорс, оно так и померло, т. к. порог вхождения слишком велик, что никто кроме самой команды CCP не сможет работать с платформой 😅

Но в целом у них за всю истории было много всяких интересных моментов/решений. Тот же Quasar. Ребята мощь просто 💪

У меня ещё был разбор одного их доклада.

#EVE #IT #gamedev
Интересно наблюдать за тем, как небольшие разрабы пытаются отжать кусок пирога издателей, как только заработают больше, чем им нужно для разработки.

Вот и разработчик Vampire Survivor подался в издатели. Планируют помогать с QA, поддержкой, релизами и советами.
- Никаких Vampire Survivor-like игр
- Нет всему, что связано с AI и Web3
- Никаких f2p

И каждый раз двойственные ощущения, когда кто-то с одной успешной игрой пытается в совсем иную область идти. При этом, имея экспертизу в жанре, они не хотят игры в этом жанре издавать, что тоже странненько.

#gamedev