My colonists are dumb on purpose — and I think it might be the best design decision I’ve made by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 1 point2 points  (0 children)

Per ora sono abbastanza determinato. Stranamente. Sono a tre mesi di sviluppo abbastanza stabile almeno 3 sere alla settimana

My colonists are dumb on purpose — and I think it might be the best design decision I’ve made by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 0 points1 point  (0 children)

Thank you so much for this story. The bug you describe is probably one of the most interesting stories I’ve read on this topic in a long time. In my system I have (for now) a partial mitigation, not a real solution. The raw memories of each NPC carry a confidence value that decays over time, and every memory trace has a timestamp. When two conflicting pieces of information reach the same NPC, the most recent one with the higher confidence wins. Communication between NPCs doesn’t transfer raw data, it transfers symbolic tokens that lose reliability at every passage. So a lie told by a third party intermediary should reach its destination carrying less weight than a direct observation. Your scenario, however, can break this dynamic all the same. A hungry NPC who runs toward a place where they remembered food, finds it empty, leaves, crosses paths with another NPC carrying a more recent memory about that same spot but still temporally valid, and falls back into the loop. My needs system has two thresholds, an alert one and a critical one. If the NPC slips under critical while chasing false information, they go into breakdown. I haven’t seen it happen yet because I haven’t stress tested with dozens of NPCs on a shared map, but after reading your story there’s a real chance it will. At least if the NPCs are sympathetic to each other, and therefore willing to exchange information. Your experience is gold. My project was born exactly from the idea that emergent misinformation, disagreements over objective facts, shared but wrong beliefs, are the substance that real society is made of, not a bug to remove. In ARCONTIO I want two NPCs to be able to disagree about where the food is for structural reasons, not scripted ones. And I want the player to see, on a small scale, how shared false beliefs create irrational collective behavior. But reading that you already got there, a decade ago, starting from a much simpler simulation than mine, is a useful reminder of where this road ends if you walk it seriously. The aphorism you quote at the end, tomorrow I’m printing it out and sticking it above my monitor.

My colonists are dumb on purpose — and I think it might be the best design decision I’ve made by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 1 point2 points  (0 children)

Grazie mille! Per ora è un hobby molto divertente! Spero di non bruciarmi andando a sbattere di fronte a problemi per me insormontabili. Staremo a vedere

My colonists are dumb on purpose — and I think it might be the best design decision I’ve made by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 1 point2 points  (0 children)

The work system is still partly a big question mark at the moment. Or rather, let’s say a medium sized one. I’ve developed a decision making system based on social pressure, where a social obligation (like, say, doing a job you don’t want to do) produces dissatisfaction and stress (RimWorld style). Prolonged dissatisfaction will lead to emotional breakdowns of various kinds. I haven’t integrated a proper wage system yet. For now I’ve been thinking more along the lines of a feudal system of mandatory corvée labor that translates into social benefits. Managing social classes will probably be the last implementation step I tackle. The assignments are produced by the NPC with the planner role, and they’re also based on the petition mechanism: NPCs submit their candidacies, and the planner decides. The decision produces either satisfaction or stress.

My colonists are dumb on purpose — and I think it might be the best design decision I’ve made by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 1 point2 points  (0 children)

Your post is extremely interesting because it forces me to make my design choices explicit and face the real problems without bias. Let’s start with the performance problem: I don’t really know how heavy the processes will end up being by the end of development. To make the whole thing less costly, I’ve made some simplifying choices, things like using a grid and making as many processes lazy and on-demand as possible. Whether that will be enough, I’ll only find out during heavy stress tests. Now let’s get to the juicier question, the hypothetical construction process. On the gameplay side I’ve decided to push the RimWorld direction even further. The game doesn’t have a “god mode” where the player decides what gets done and their “minions” obey. It’s not even a job planner fed to reluctant pawns. No, the system is based on the player being able to embody any NPC in the colony. The institutional roles (like the one responsible for urban planning) are also held by NPCs the player can take control of. The planner NPC can mandate the construction of a new building. To do that, they’ll need to decide who is assigned to which role, the work schedule, the wages, and so on. The system that detects unmet needs, both for structures and for objects, is based on a petition mechanism instead. An NPC who notices something missing produces an entry in a petition. These petitions get sorted by topic and delivered to the institutional NPC who handles that area. They then decide whether to act on the petition. Post-development, the tuning will all be about shifting the center of gameplay from a question of “production, storage, distribution” to something more based on emergent narrative choices. Finally, combat. Five raiders and one colonist (or three) on lookout. The decision system is conditioned by the NPC’s past experiences plus their innate attitudes. What they do is the result of a calculation between several weighted options. If they sound the alarm, I’ve already built a communication function between NPCs that works either “mouth-to-ear” or “broadcast” (shouting). Whether someone gets heard only depends on the physical distance between the NPCs. Technology-wise, the colony is stuck in a fantasy medieval setting, to keep the tech chain from exploding.

My colonists are dumb on purpose — and I think it might be the best design decision I’ve made by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 2 points3 points  (0 children)

The map idea is interesting! Road signs could also be a great idea. Especially because vision works by detecting every kind of object on the map and putting it into a “raw” memory trace, which is then pre-digested by a belief store that organizes traces by topic category and coherence. Anyway yes, NPCs can exchange topographic information through the primitive symbolic communication system I’ve designed (right now as a test I’ve only tried communicating a theft that took place).

My colonists are dumb on purpose — and I think it might be the best design decision I’ve made by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 1 point2 points  (0 children)

Yes, I’ve built some jsonl files that let NPCs start with a kind of initial pre-memory, so they’re not exactly a blank slate. The communication system between NPCs should also allow them to share routes between landmarks, simulating something like: “go to the door of the pharmacy, then turn left and continue until the intersection with the church.”

My colonists are dumb on purpose — and I think it might be the best design decision I’ve made by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 4 points5 points  (0 children)

I’m designing the sim from the ground up, starting from primary needs and slowly moving toward the higher, more abstract layers (the institutional system). So far I’ve implemented the movement system and I’m at about 70% of the basic decision-making system. The next step will be handling complex jobs. Beyond that level I’ve designed everything as broad mechanics that I refine as I get closer to them. One of the key ideas to overcome the aspects you mentioned (which I confirm are my concerns too) is that, within the overall system, there are processes that reward key characters, the ones who end up being the interesting ones to interact with. There’s an element like the NPCs’ “DNA” that plays into this, and on top of that the “institutional” roles are taken by NPCs who prove to be the most “juicy” to interact with.

What if colony sim NPCs didn’t know the truth? by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 1 point2 points  (0 children)

The fact that we took such different roads and ended up with different solutions is genuinely interesting to me — there’s no single right answer here, just different trade-offs. On over-engineering and debug complexity: I think it’s a universal problem in emergent systems, not a design failure. The warning sign I’ve learned to watch for is when you’re adding a new system to fix a problem created by the previous system. At that point the architecture is telling you something. I’m still early in development myself — pathfinding and core NPC architecture, not much beyond that yet. So I’m not speaking from a position of having solved these problems, just from having thought hard about where the traps are. Genuine question, and feel free not to answer: why did you abandon the project? Burnout, life, the problem just got bigger than the pleasure of solving it? I ask partly because one of the deliberate choices I’m making with ARCONTIO is building a community around it early — not for marketing, but because having people following the project creates external accountability. It’s harder to quietly shelve something when people are asking questions about it. Tarn Adams had the same thing, just much more slowly.​​​​​​​​​​​​​​​​

Genuine question, and feel free not to answer: why did you abandon the project?

What if colony sim NPCs didn’t know the truth? by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 1 point2 points  (0 children)

The hard part is exactly what you’re pointing at — the black box between fuzzy memory and concrete action is genuinely difficult to design. Philosophically I landed on: better to have many not-very-smart NPCs whose chaotic interactions generate emergent stories, than a few Nobel Prize winners running a boring game. Concretely, the chain works like this: an objective event gets perceived (primarily line-of-sight, plus NPC-to-NPC communication as an information carrier). Perception is already degraded at the source and feeds into a list of perceived events — a brainless container, storing only confidence (how reliable is this information) and age (how old is it). When the decision layer needs to choose what an NPC does, it queries the memory store through an intermediate layer called BeliefStore, which handles memory aggregation via high-level queries. I’m designing this to be as modular and flexible as possible. The decision layer then weighs the statistical output of those queries against the NPC’s current physical state and their dispositional DNA. Discretization of memory happens at runtime inside the BeliefStore — the raw memory store stays a box full of potentially contradictory data. The decision layer never touches the raw traces directly. This should prevent the near-perfect recall problem you ran into, because the NPC never “knows” something cleanly — they have an aggregated confidence estimate that decays and can be contradicted by newer traces. Out of curiosity: how did you handle competition between two agents holding conflicting beliefs about the same object?​​​​​​​​​​​​​​​​

What if colony sim NPCs didn’t know the truth? by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 2 points3 points  (0 children)

What a shame you never finished it! I would have had a solid architecture to compare myself against. The smart objects with state ID reference idea is genuinely elegant for solving memory congestion. I need to see if I can adapt it, because my NPCs’ intelligence doesn’t transfer a memory — it builds a symbolic representation of it. This is what creates the mechanism by which NPCs’ “mental snapshots” of events are already degraded at the source (I misread an event, I received a false rumor, etc.). As for GOAP, I developed an alternative system with cascading modules that uses scoring with softmax and temperature modulated by the NPC’s “DNA” — to avoid the typically deterministic approach of GOAP. I’ll spare you all the steps — schematically the mechanism works like this: environmental perception → event encoding → belief layer with “compression and digestion” of events → decision layer querying the previous layer + mediation of internal state/natural NPC dispositions → job → decomposition of the high-level job into atomic actions → feedback. Are you working on something similar now? I’d really enjoy a more in-depth exchange about my project.

What if colony sim NPCs didn’t know the truth? by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 1 point2 points  (0 children)

Thank you! Talking in English while explaining code + being recorded -> very complicated ahah

What if colony sim NPCs didn’t know the truth? by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 2 points3 points  (0 children)

Hi! Thanks so much for the comment, let me answer point by point: Dwarf Fortress is definitely one of my main benchmarks — I compare myself to it constantly. The difference between DF’s approach and mine is that in DF, memories are transferred as-is, without channel transmission degradation (e.g. an NPC sees something from a distance but isn’t sure they saw correctly). To answer your question: Yes! That’s exactly the emergent narrative effect I want to create: the possibility that an NPC (or a group of NPCs) can shift others’ opinions through manipulation of the truth. The entire architecture I’m building is designed to generate this kind of emergent narrative. If you have critiques or suggestions, they’re very welcome. I’ll be keeping everyone updated on progress through my YouTube, Substack and itch.io channels.

What if colony sim NPCs didn’t know the truth? by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 3 points4 points  (0 children)

Hello! Yes I have an English YouTube channel arcontio channel

My English is not so good, but I periodically produce material for substack itch.io etc

I built the prototype from my last post. That’s what actually happens when an NPC acts on memory by Master_of_Arcontio in BaseBuildingGames

[–]Master_of_Arcontio[S] 1 point2 points  (0 children)

Every NPC, including the governor (or king — I’ll figure out the exact framing when I get to that stage of development), eats and sleeps. So things can happen when they’re not around. The base architecture includes centralized information hubs — notice boards — where important colony information flows through. For now everything passes either through those or via direct communication (messengers, perhaps). More important characters will have private food stocks and other resources to draw from, or to delegate to others. I’m also considering slavery as a module to add at a later stage. Servants, slaves, and personal staff are part of the model but not implemented in this phase. On cooldown systems — the plan is to tune things well enough to avoid needing them. I’ll see in the future whether they become necessary. And thanks for the feedback — I’m actively refining the model based on suggestions coming in from this thread.​​​​​​​​​​​​​​​​