TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #892 · 29.10

Frostpunk — весьма самобытная игра-стратегия с интересной стилистикой. Изначально это видеоигра, но по ней не так давно вышла настолка, которую будут локализовать и официально привезут в Россию. Сейчас уже идёт предзаказ у издательства Фабрика Игр. Чтобы понять, хочу ли я настолку, решил наконец попробовать компьютерную версию, которая давно лежала в листе ожидания. По сюжету климат на Земле превратился в вечную сверхсуровую зиму, цивилизация уничтожена, и только жалкие остатки человечества пытаются выжить. Они нашли огромный угольный генератор (о том, как он появился, рассказывает дополнение к игре) и потихоньку строят город вокруг него. Основные ресурсы это уголь, дерево, сталь и пища, которые нужно добывать разными способами, попутно выстраивая как экономику, так и социальные взаимоотношения. Симуляция в игре прорабатывает действия и состояние каждого отдельного человека. Отправил кого-то работать на плохо отапливаемый завод — у него растёт шанс заболеть, после чего он работать не сможет какое-то время, и эффективность завода снижается. В итоге, заботиться об отоплении нужно не просто так, потому что игра командует, а с вполне конкретной практичной целью. Температура в мире постоянно снижается. Начинаешь ты при -20, а заканчиваешь активные действия уже около -80. У населения есть уровень надежды и уровень недовольства: в мою первую игровую сессию я проиграл как раз из-за его превышения. Нужно правильно выстраивать цепочку законов и других управляющих воздействий, определять направление развития исследований, решать конфликты. Вообще, считаю стратегии такого плана очень полезным опытом, потому что они, хоть и с сильным упрощением, показывают работу процессов на уровень выше, чем индивидуальные потребности человека. Вот ты, как управляющий, видишь, что уголь заканчивается, и, если срочно не добыть его больше, то кухня замёрзнет, тогда не будет еды, все умрут. Отправляешь людей на суточные смены, они возмущаются и называют тебя тираном, но ты то понимаешь, что иначе им же станет хуже. Посылаешь на работу детей и калек — выживание требует, ничего не поделаешь. Чтобы возмущение не росло, строишь дозорные вышки и обучаешь побольше стражи. Кто-то умер — не отвлекаемся от работы, завтра минус семьдесят, если лазареты с больными не обогреть, то умрёт ещё больше. Город в виде концентрических колец вокруг источника тепла — не только очень красивое решение, но и прекрасный образец хорошего UX для стратегии. У тебя все точки контроля под рукой, не нужно постоянно мотать камеру через всю карту. Ну и в целом игра очень логичная, это и плюс и минус. Минус, потому что после двух сессий ты уже будешь хорошо знать, что делать, так что реиграбельность страдает. Ещё заметно, что разработчикам не хватило денег на более дорогие анимации, катсцены, и вообще полировку мелочей. Но первая часть очень популярна, уже анонсирована вторая, авторы заработали, так что ждём всего больше и лучше! А настолку, наверное, возьму. #games

Hashtags

Резултати

Намерени 3 подобни публикации

Търсене: #ifdef

当前筛选 #ifdef清除筛选
Welcome to the Black Parade

@TheB1ackParade · Post #506 · 05.03.2024 г., 03:58

莫名其妙忙起来了,随便记点免得忘了: 1. tproxy / bpf_sk_assign 对 established tcp 的性能影响是负的,因为设置上 skb->sk 会让 ip_rcv_core 里的 tcp_early_demux 检测失败,从而必须进路由系统。所以正确使用方法是只对 tcp syn 使用 tproxy/sk_assign。 2. 能不能优化 bpf_sk_assign,让它对 listening socket 的 assign 也能像 tcp_early_demux 一样?不能,因为 listening tcp socket 的 sk->sk_rx_dst 是 null,只有 established sk 才有这个 dst。 3. tcpdump ip6 and tcp 生成的 cbpf 是“错的”。它没考虑 ip6 extension。但是 tcpdump (libpcap) 有个对 v6 特别的过滤器: ip6 protochain 6 , 就迭代了 ip6 extension,四次,但是对大部分场景也够用。 4. 晦涩的逻辑。icmp6_host_handle 这个函数名看起来没啥,但是要是我告诉你它实际语义是:只需要在 ( ingress 方向) 或者 (防火墙启动时候的双向) 执行它,如果在 ingress 方向执行的时候不要反弹 icmp6,如果要反弹 icmp6 的话不要反弹 NS for node IP,但是也不要直接返回给内核栈而是继续执行剩余的 nodeport lb。我看着这个原本简单的函数从两个参数变成现在的五个,里外的 #ifdef 嵌套层层恐惧,真是美好的软件。

Hashtags

KernelSU Next

@ksunext · Post #815 · 20.07.2025 г., 20:11

kernel: guard syscall hook types - for kernel syscall hooks we need to pass additional guards for ksun (#ifdef CONFIG_KSU -> #if defined(CONFIG_KSU) && !defined(CONFIG_KSU_KPROBES_HOOK)) or else it will fail to build because of undefined symbol - reference https://github.com/KernelSU-Next/kernel_patches/blob/main/syscall_hook/min_scope_syscall_hooks_v1.4.patch https://github.com/KernelSU-Next/KernelSU-Next/commit/45ad73e9dd86a0ff04a02e73a8fc2dbc3160ee6c

Hashtags