j++gramсамое сложное было — понять и придумать логику самих улучшений спустя пару сессий общения с ллмками и совсем немного ресерча пришел к тому, что лучшей идеей (надеюсь) будет так называемая (или не так называемая, я хуй знает честно) метафора предварительно…
забыл упомянуть: данная методика (предварительная генерация всего списка улучшений на подарок) позволяет очень легко исполнить две интересные вещи:
— давать определенным номерам определенную модель/фон/символ; — в базе данных редактировать результаты улучшений у любых подарков (даже уже улучшенных)
то есть фактически я могу на Sakura Flower сделать #1 гарантированно Flowey (0.1%) на Black, а потом после улучшения поменять Flowey на какую-нибудь нищую модель чисто по приколу
будем ли мы так делать после релиза на реальных улучшениях? ¯\_(ツ)_/¯ (не планируем)
j++gramчто-то я отвлёкся... хотел вроде реакции поделать... случайно сделал вот это...
самое сложное было — понять и придумать логику самих улучшений
спустя пару сессий общения с ллмками и совсем немного ресерча пришел к тому, что лучшей идеей (надеюсь) будет так называемая (или не так называемая, я хуй знает честно) метафора предварительно перетасованной колоды
короче, улучшения генерируются НЕ на лету, когда пользователь нажимает на upgrade; они до этого сгенерированы и сохранены в базе данных
при этом учитывается редкость модели, фона и символа (в данном случае символ j++gram с 100% редкостью так что он не учитывается) — в первых ~30% улучшений даже для 0.01% модели гарантируется выпадение как минимум одного подарка с такой редкой моделью; при этом также используется так называемое "стратифицированное размещение" для того, чтобы редкие модели не группировались где-то в конце списка улучшений
если бы этой всей ебалы не было, и был бы чистейший рандом, то высок вероятность, что рано или поздно ни одной 0.1% модели бы на всём списке улучшений не выпало бы, или все крутые модели выпадали бы в самом конце, а в самом начале вообще не выпадали бы
по какой-то причине мне в разы больше нравятся скриншоты с мобильных устройств, они выглядят более реалистичными что ли...
всё ещё ОЧЕНЬ много работы, правда: - клиент почему-то ОЧЕНЬ сильно спамит help.getConfig() постоянно, не переставая, забивая тем самым и себя, и сервер - в рандомный момент нахуй выкидывает из всех аккаунтов ¯\_(ツ)_/¯ - updates distribution как-то ломается, не понимаю как именно и почему (отправляю сообщение с аккаунта А на аккаунт B -> захожу на аккаунт B -> сообщения нет -> захожу в диалог с А -> сообщение появляется); вероятно из-за первого пункта (спама help.getConfig()) оно жостко лагает - этот fuckass клиент решил что ему всё дозволено и нагло использует давным-давно неиспользуемые и deprecated типы и функции, из-за чего появилось очень много ошибок на части сервера, которые тоже придёцца фиксить. эх
работы много, но вроде и кайфово вот так тыкаться, понимать что оно работает!!!! и что оно когда нибудь (🙏🙏🙏🙏🙏) дойдёт до ваших рук 🥺
то чувство когда пытаешься запустить жппграм на андроиде а там со дна позвонили говорят "эээ брат ответь мы тебе из 2019 звоним ты че не отвечаеш" своими устаревшими технологиями и тебе приходится прогибаться ✅😂true stori