Ну по сути можно устроить отличную компрессию на белте, но только при условии что фабрики рассчитаны точно под ресурсы. Так если не успевать собирать излишки то он тупо забьется и станет обычным конвейером) По сути фабрики с рецептами уже решают проблемы фильтрации, нужно быть только аккуратнее с печами (хотя бы не плавить металлическую пластину в балку), но в остальном выглядит как решаемое. На молле после дронов быстро становится неинтересно из-за ящиков снабжения (хотя сейчас их засунули в самый конец исследования, может быть интересно)
Нет ничего нераспутываемого в факторио) Мне попадались люди которые специально перемешивали конвейер, строя логические цепи которые равномерно замешивали все компоненты и при этом скорость производства почти не страдала) Это выглядит супер-ужасно, по одной стороне ленты едет все - от руды до твердотопливных двигателей, но флиртующие манипуляторы быстро могут это упорядочить.
Оки, про сеттинги подумал так как они были частью в v1 (причем довольно классной), решил упомянуть. Технически да, это отдельная библиотека. По поводу примеров с ConfigDict - перечитал, увидел, Ваша правда, извиняйте :) По рут моделям хотелось бы больше примеров для разных моментов (не только как валидация целостности модели, но и самостоятельного типа), в голову приходят сразу два примера: - Описание схемы ответа от какого-то сервиса, который возвращает список с некими элементами. Встречал обходные пути для такого определения
class ServiceResponse(BaseModel):
data: list[Element]
что в целом нормально, но приходится делать .data чтобы проиграть логику, вместо этого можно было бы просто сделать простой тип-список.
- Самостоятельный тип с дополнительной валидацией/сайд эффектом (то же можно сделать и филд валидаторами, но отдельный тип придает некую целостность) Пример тут - тип для имени топика кафки (мы допускаем что все топики будут иметь префикс как имя окружения)
import os from typing import Annotated
from pydantic import AfterValidator
all = ("TopicName",)
def _apply_env_prefix(value: str) -> str:
return f"{os.environ['ENV_NAME']}.{value}"
TopicName = Annotated[str, AfterValidator(_apply_env_prefix)]
Не топлю что это "единственный верный" способ создавать подобные вещи, просто аргумента ради :)
Спасибо за статью, Docker SDK мощная штука, хотелось бы упомянуть что для тестовых сценариев отлично подойдёт https://testcontainers.com/, существует много портов и минимальный эффорт по работе с контейнера (есть нюансы со сложными сетапами)
Мне почему то попадались одни UML или им подобные сервисы, где какие-то вещи упрощаются или наоборот собираются в юзкейсы специально максимизируя детали. А альтернатива то какая ?)
Может быть полезным https://llm.datasette.io/en/stable/
Большое количество моделей, простой способ установки, хранения ключей и пользование прямо из консоли с запуском модели на каждый чих или поднятьия для множества промтов... И это лишь часть интересной тулы
Спасибо за статью, прошу прощения за вопрос от чайника, но звучит он примерно так. Если игрок на руках имеет предметы и в игре присутствует свободный рынок, как мне спрогнозировать конечную цену? Понимаю что может влиять миллион и один фактор, начиная от цены на ингредиенты и заканчивая шансом выпадения из конкретного моба. Но зная диапазон возможных характеристик, куда копнуть ? Стоит ли искать "оценку" важности каждой характеристики или проще делать через поиски средней цены схожей вещи ?
Читы это не только механизм "быстрой" победы, но и возможность дебага/профилирования приложения(игры). Мне иногда просто интересно пропустить часть гринда и пройти весь сторилайн, иногда поковырять как устроен файл сохранения и какие штуки вшиты в движок. Также читами могут быть всякие переключатели погоды, окраски скинов или сами скины. Как иначе, если внутри игры не реализовано условное "зеркало", позволяющее сменить лицо персонажа после создания? Сделать респек?
Безусловно это может сломать игру и она будет сильно отходить от задуманного дизайна. А может и стать лучше, не попробуешь не узнаешь точно :)
Здравствуйте, спасибо за статью и классные примеры.
Хотел бы заметить что MiB это мебибайты, которые более "честные" в расчетах тех же дисков, так как 1KiB равен 1024 байтам, но обычный 1KB это 1000 байт.
В качестве UI я бы рекомендовал использовать redpanda, kafdrop выглядит куцо, на большом количестве сообщений кушает ресурсы и внешний вид на любителя.
Поделюсь своим проектом по обзору и/или редактированию файлов сохранений для игорей, вида визуальные новеллы или ролёвки(особенно популярно в Азии). Поддерживает кучку фреймворков (простые юнити, рпг-мейккеры или особо популярный RenPy)
Крутая статья, на днях столкнулся с похожей проблем, очень круто посмотреть как с этим справляются другие :)
По теме, может не совсем подойти, но мне понравился функционал (не реклама) у locationIQ. Плюс наткнулся на очень обширную обертку вокруг большого количества сервисов geocoder.readthedocs.io/providers/LocationIQ.html, быть может будет полезна.
Ну по сути можно устроить отличную компрессию на белте, но только при условии что фабрики рассчитаны точно под ресурсы. Так если не успевать собирать излишки то он тупо забьется и станет обычным конвейером) По сути фабрики с рецептами уже решают проблемы фильтрации, нужно быть только аккуратнее с печами (хотя бы не плавить металлическую пластину в балку), но в остальном выглядит как решаемое. На молле после дронов быстро становится неинтересно из-за ящиков снабжения (хотя сейчас их засунули в самый конец исследования, может быть интересно)
Нет ничего нераспутываемого в факторио) Мне попадались люди которые специально перемешивали конвейер, строя логические цепи которые равномерно замешивали все компоненты и при этом скорость производства почти не страдала) Это выглядит супер-ужасно, по одной стороне ленты едет все - от руды до твердотопливных двигателей, но флиртующие манипуляторы быстро могут это упорядочить.
Оки, про сеттинги подумал так как они были частью в v1 (причем довольно классной), решил упомянуть. Технически да, это отдельная библиотека.
По поводу примеров с
ConfigDict
- перечитал, увидел, Ваша правда, извиняйте :)По рут моделям хотелось бы больше примеров для разных моментов (не только как валидация целостности модели, но и самостоятельного типа), в голову приходят сразу два примера:
- Описание схемы ответа от какого-то сервиса, который возвращает список с некими элементами. Встречал обходные пути для такого определения
что в целом нормально, но приходится делать
.data
чтобы проиграть логику, вместо этого можно было бы просто сделать простой тип-список.- Самостоятельный тип с дополнительной валидацией/сайд эффектом (то же можно сделать и филд валидаторами, но отдельный тип придает некую целостность)
Пример тут - тип для имени топика кафки (мы допускаем что все топики будут иметь префикс как имя окружения)
Не топлю что это "единственный верный" способ создавать подобные вещи, просто аргумента ради :)
Здравствуйте, спасибо за статью, зацепился за несколько вещей.
в моделях больше не используется, на смену пришел
model_config
Не заметил примеров рут моделей (что может быть супер полезно при создании собственных валидаторов или типов
Ну и ждал примеров с сеттинг классами, пожалуй один из самых удобных способов работать с .env/variables на уровне приложений.
Не заметил сравнения, если забиндить append и использовать в цикле, будет ли большая разница с обычными append'ami ?
Я про конструкции вида
Спасибо за статью, Docker SDK мощная штука, хотелось бы упомянуть что для тестовых сценариев отлично подойдёт https://testcontainers.com/, существует много портов и минимальный эффорт по работе с контейнера (есть нюансы со сложными сетапами)
Мне почему то попадались одни UML или им подобные сервисы, где какие-то вещи упрощаются или наоборот собираются в юзкейсы специально максимизируя детали. А альтернатива то какая ?)
Может быть полезным https://llm.datasette.io/en/stable/
Большое количество моделей, простой способ установки, хранения ключей и пользование прямо из консоли с запуском модели на каждый чих или поднятьия для множества промтов... И это лишь часть интересной тулы
Спасибо за статью, прошу прощения за вопрос от чайника, но звучит он примерно так. Если игрок на руках имеет предметы и в игре присутствует свободный рынок, как мне спрогнозировать конечную цену? Понимаю что может влиять миллион и один фактор, начиная от цены на ингредиенты и заканчивая шансом выпадения из конкретного моба. Но зная диапазон возможных характеристик, куда копнуть ? Стоит ли искать "оценку" важности каждой характеристики или проще делать через поиски средней цены схожей вещи ?
Читы это не только механизм "быстрой" победы, но и возможность дебага/профилирования приложения(игры). Мне иногда просто интересно пропустить часть гринда и пройти весь сторилайн, иногда поковырять как устроен файл сохранения и какие штуки вшиты в движок. Также читами могут быть всякие переключатели погоды, окраски скинов или сами скины. Как иначе, если внутри игры не реализовано условное "зеркало", позволяющее сменить лицо персонажа после создания? Сделать респек?
Безусловно это может сломать игру и она будет сильно отходить от задуманного дизайна. А может и стать лучше, не попробуешь не узнаешь точно :)
Здравствуйте, спасибо за статью и классные примеры.
Хотел бы заметить что MiB это мебибайты, которые более "честные" в расчетах тех же дисков, так как 1KiB равен 1024 байтам, но обычный 1KB это 1000 байт.
В качестве UI я бы рекомендовал использовать redpanda, kafdrop выглядит куцо, на большом количестве сообщений кушает ресурсы и внешний вид на любителя.
Поделюсь своим проектом по обзору и/или редактированию файлов сохранений для игорей, вида визуальные новеллы или ролёвки(особенно популярно в Азии). Поддерживает кучку фреймворков (простые юнити, рпг-мейккеры или особо популярный RenPy)
Ссылка
По теме, может не совсем подойти, но мне понравился функционал (не реклама) у locationIQ. Плюс наткнулся на очень обширную обертку вокруг большого количества сервисов geocoder.readthedocs.io/providers/LocationIQ.html, быть может будет полезна.