Pull to refresh
3
0.2
Send message

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

1 - Игрок это бессмертная неутолимая машина разрушения. Ограничивать действие игрока, говоря ему - "можно делать лишь 5 действий в день", очень сильно раздражает. Но если не ставить палки в колёса, то игроку вполне по силам истребить местную фауну и наблюдать как в соседней деревне начинается голод и разруха. Как это балансить по геймдизайнерски я не понимаю.

2 - Контент конечен. Чем лучше графон тем меньше разнообразия получится сделать. Согласитесь что быть в живом фентези мире где есть только одно разумное существо, довольно скучно. А делать системы процедурной генерации балванчиков довольно трудоёмко. В этом плане DF всех переплюнул а, у тебя есть буква и огромное текстовое описание - фантазируй)

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

Пинг в 2-4мс я и на 2.4ГГц получить могу, странное заявление согласен. (С битрейтом в 20КБс и на "нешумных" каналах)

Это не нужно ровно до того момента как кто-нибудь это не сделает. А авто-форматеры не решение проблемы, есть приличное количество кейсов когда форматер съедает код и делает его нечитаемым.

Да и в целом идея то здравая, тебе ide будет держать прекомпиленное древо, которое будет компилится в разы быстрее чем с 0 весь проект перемалывать. Грубо говоря, те же модули из С++ так работают, когда весь код попилен на модули он вместо 1 минуты собирается 1 секунду.

На моём проекте стейтменты пишутся по табам, а переносы по пробелам.

Срач вокруг табов ещё был связан с тем, что он был разный на разных системах и из-за этого где-то код превращался в символьное месиво. Уже много что унифицировали в целом, но и сейчас довольно интересные кейсы находятся, типа переноса строки unix/win из-за которых кроссплатформенные скрипты ломаются у некоторых, то ещё развлечение

Проблема в том, что компилятор считает тебя умным. И при этом даёт тебе абсолютно все инструменты как можно описать почти любое поведение. Мол ты даже можешь перегружать функции отдельно для rvalue. Но реальность такова, что С++ программист это не тот кто знает стандарты, а тот кто умеет буквы писать и бизнес задачи решать. В целом как и в любом другом языке.

Думать вредно! Но наличие статик рефлексии сильно упростит рефлексию динамическую. Мой фреймворк где можно делать удалённый вызов процедур, который сейчас работает с помощью отдельного кодогенератора, наконец-то можно будет упростить.

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

Я сейчас работаю и у меня есть коллеги с большим опытом. Мне кажется разница в том что я изучаю язык просто ради веселья, а не для того что бы решать какие-то реальные задачи. Мне крайне весело разбираться в системе типов С++ и то как там это всё работает. Решать всякие задачки которые ломают мозг, просто ради того чтоб их решить. И в итоге я использую те же концепты-замыкания постоянно, ибо для меня это очевидная фича языка которая позволяет работать с типами более гибко, а для моего коллеги это лишь способ решить проблему с перегрузкой какой-то шаблонной функции.

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

Это круто конечно, но у меня на работе есть те кто уже и по 30 лет этим всем занимается и они знают С++ хуже меня. Опыт не показатель квалификации.

С опытом растёт лишь понимание как писать так чтоб тебе платили больше, и только) Остальное идёт на откуп саморазвитию.

Отнюдь, осилить С++ можно, я потратил 2 года свободного времени чтоб разобраться в почти всех тонкостях языка. Но есть нюанс, я вот понимаю что при передаче классической строки в функцию с аргументом типа char*& оно может быть ub на старых стандартах и наоборот материализоваться на новых, но я всё ещё junior с ЗП меньше 80К

А мог бы писать говнокод все эти 2 года и дослужиться до мидла с окладом в +150КК

ЗЫ я про код вида Do("hello"), где Do это void()(char*&)

Либо обрамлять старый код как статические либы, либо писать свою систему сборки, третьего не дано

Меня только constexpr/consteval напрягает. Ибо если мы объявляем функцию, она "рекомендуемо" compile-time или "явно" compile-time, а переменная может быть только constexpr, а consteval низя. (хотя можно было бы наверное сделать как псевдоним)

В остальном же вполне понятно зачем другие вещи нужны. Зачем только к comptime ты добавил дженерики в минусы С++, ммм...

Только недавно сидел в группе одних ребят, пока они пилили движок для вокселей и делали гуй, я уже это сделал на С++ и успел прикрутить Lua, хотя я трачу на это раза в два меньше времени.

И таких случаев много, они создают нездоровый фон и стереотипы, понимаешь?

Чтоб гуй не был ужасным, нужно всего лишь...

(Использовать относительные координаты и использовать константы на основе системных компонентов)

Из фанеры компуктеры делать нельзя, по технике безопасности. А ноутбуки вроде можно...

на котором кстати с 80% вероятностью - linux (android) или 20% unix (ios)

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

Прозрачность системы не отменяет того что тебя пытаются надуть. Можно долго перечислять как много бэкдоров в линуксовом софте и как хитро конторы пропихивают свои стандарты чтоб грести щекили с коммерции.

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

Эта штука работает мудрёно. Когда я писал свои бинды на winapi это помогло мне избавиться от дубликатов. Наружу оно торчало как обычный symbol, а внутри код было как winapi::linkage::symbol и это работало.

ЗЫ, развлекался с модулями и смотрел как они работают

Эм, не знаю как в Линукс, но винда шлёт сообщения о любом изменении состояния кнопки и даже когда нажата, вроде бы, регулярно шлёт сообщения. Приду домой, дополню.

В целом это обычный дизайн, мне кажется удобным использовать клавиши на отпуск, ибо если ты что-то не то сделал у тебя есть шанс изменить что-то. Самое очевидное это когда мышкой на кнопку нажал и уводишь в сторону, чтоб кнопка не нажалась.

Если углубляться в проблему того какая логика зашита в клавиатурном вводе, то принципиально не важно как переключать язык. Все не типовые операции должны производиться через клавишу alt. И если вам удобно переключать капсом языки, это должно быть забито системно. Тоесть нужно убрать капслок впринципе, но увы, пока на это никто не решается, хотя клавишу контекстного меня, ака ПКМ, уже много где спрятали.

Information

Rating
2,376-th
Registered
Activity