Comments
if( rng( 2, 7 ) < abs( z ) || rng( 2, 7 ) < abs( z ) )

Это похоже на бросок кубика с реролом реализованный в лоб. Если rng — это генерация случайного числа в указанном диапазоне, то явно так и задумано.
Собственно, да. Да и вообще для любых нечистых функций такое выражение может иметь смысл.
Согласен. Хоть проблема была обозначена не та, но тем не менее анализатор выявил такой грубый подход. Что может быть полезно, ибо игра активно разрабатывается с периодической сменой разработчиков.
А так ли плох этот подход? Обязательно нужно городить что-то типа rollMultiple(2, 7, abs(z), 2)?
Разумеется, всё зависит от ситуации, а по представленному фрагменту я не могу решить, как лучше. Если там с десяток проверок if-ами, то я бы скорее пошёл по другому пути. Ну а если функция итак компактная, то решение
if( rng( 2, 7 ) < abs( z ) || rng( 2, 7 ) < abs( z ) )
мне бы понравилось больше.
По-хорошему, тут стоило добавить комментарий, что это так и задумано.
Интересно, что использовалась эта проверка в создании подуровней, поэтому действительно не совсем ясно, что здесь подразумевалось.

Darkest Dungeon считается за Roguelite? Для меня это новость…
А вообще, спасибо за разбор, весомый повод самому поработать над некоторыми задумками :)

Roguelike, roguelite, roguelike-like и т.п. это болезненная холиварная тема для всех причастных.
Кстати, холиварное восприятие быстро проходит после участия в 7drl.
В марте завершился очередной джем 7drl 2019, в котором я немного поучавствовал в качестве одного из судей. И среди таких игр появляются оригинальные, но популярными даже среди лучших почти никогда не становятся.

Я посмотрел описание 7drl, там написано, что это не о том, кто быстрее кодит. И у меня сложилось впечатление, что там нужно года полтора разрабатывать игрушку, а потом за неделю сделать для неё новый логотип и вот так можно победить.

Подобная стратегия в 7drl не имеет смысла по следующим причинам:
1) это не совсем соревнование, как в других джемах, например, на ич.ио. Да, Вы можете занять первое место, но наград никаких не будет;
2) популярность у этого события чрезвычайно низкая. Да, оно у многих на слуху, но реальных загрузок от этого события очень мало. Поэтому если хочется пиара таким способом, то лучше идти в другие джемы — больше закачек получите (хотя похоже многие так и делают, судя по результатам). Среднее количество оценок от жюри — 2-3 штуки (да-да, так мало);
3) оценивать вас будут другие участники, которые зарегистрировались в качестве жюри, поэтому их обмануть будет сложнее.

Разрабатывать короткий рогалик с минимальной графикой очень интересно, но очень больно (как до, так и после).
Ну Dwarf Fortress тоже записали в рогалики, хотя это справедливо только для (не основного) Adventure режима.
Ух, блин! Лютая и доставляющая игра. Чего там нового за последние 3-4 года завели? Пилят проект? Если где-то и появится первый AI, который себя осознает сам себя — то наверное в этой игре :)). Очень уж всё детально сделано.
Кстати, чисто из интереса: а как картинки с ASCII-единорогами делались? Это какая-то программа автоконвертации, или самодельный арт?
И с помощью онлайн конвертеров и с помощью Notepad++ (например, щупальца у неудачливого единорога :D). Там главное уловить принцип.

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


Спасибо PVS-Studio! Вы замечательные!

Only those users with full accounts are able to leave comments. Log in, please.