Repository navigation
Factions and Reputation
Loadout faction defines identity. relations is a numeric object, replacing the removed aligned and opposed arrays:
{
"faction":"settlers",
"relations": {
"settlers":50,
"trader":100,
"raiders":-100,
"monster":-100
}
}This is a loadout object, not a complete root file. Relations are directional: A liking B does not mean B likes A. Social actions that require mutual alliance check both directions. Sharing a faction or entity type does not automatically create an alliance; explicitly configure it.
For another TACZ NPC, an exact target loadout ID wins over its faction ID. Explicit 0 overrides a broad hostile/ally faction value. If neither exists, the value is 0.
tacznpc_factions.json groups non-NPC entity types:
{
"settlers": ["minecraft:villager","minecraft:wandering_trader"],
"raiders":["minecraft:pillager","minecraft:vindicator"]
}Configured entity groups take precedence over vanilla mob categories such as monster. If several configured groups match, the lowest configured relation wins. Player relationships do not use relations.players; that field is rejected.
File: tacznpc_reputation.json.
{
"hostileAt":-50,
"alliedAt":50,
"tradeMinimum":-49,
"defaultFactionReputation":0,
"factionDefaults": {
"settlers":10
}
}Effective reputation = player–faction reputation + player–individual-NPC reputation. It is used for reputation checks. Personal reputation is keyed by the NPC's UUID, so friendship with one NPC need not make its faction friendly.
| Field | Built-in | Validation |
|---|---|---|
| hostileAt | -50 | Must be negative |
| alliedAt | 50 | Must be positive |
| tradeMinimum | -49 | Must exceed hostileAt |
| defaultFactionReputation | 0 | Initial value for unspecified factions |
| factionDefaults | {} | Initial score by faction |
Stored scores support -1,000,000,000 to +1,000,000,000 per component, not merely -100 to 100. New faction defaults apply where no explicit score is stored; they do not overwrite saved scores.
| Tier | Effective score |
|---|---|
| villainized | ≤ -100 |
| hostile | -99 to -50 |
| hated | -49 to -25 |
| neutral | -24 to 24 |
| friendly | 25 to 49 |
| allied | 50 to 99 |
| idolized | ≥ 100 |
These tier boundaries are fixed. Changing hostileAt/alliedAt changes behavioral gates, not the fixed greeting/price tier names.
Player hits cause -5 personal reputation. A hit is tolerated if the pre-hit effective reputation is allied or higher; the next hit is checked against the new score. For example, 50 → 45 is tolerated, while the next hit starts from 45. Killing an NPC costs 5 reputation with its faction. These penalty amounts are currently fixed.
Use reputation commands for inspection and administration. Use greetings and prices to customize reactions.
Configuration reference for the customized TACZ NPCs Alive build, baseline 2.2.1-hiki.c2me.1. Home · Troubleshooting
- TACZ NPCs Alive : Configuration Wiki
- Getting started
- Configuration map and inheritance
- Configuration recipes
- Behavior and perception
- Offline loot by biome
- Resting, campfires and social space
- Combat: reaction, accuracy and firing patterns
- Administrator commands
- Recruitment and companion orders
- Dialogue profiles and selection rules
- Factions, relations and player reputation
- Friendly-fire prevention and damage protection
- Greetings and contextual replies
- Inventory, interests and item replacement
- Levels, health and accuracy progression
- Loadouts and equipment
- Offline activity and the time wallet
- Autonomous NPC quests
- Player supply requests
- Spawning and structure replacement
- Trading, prices and currency denominations
- Experimental offline travel
- Troubleshooting and migration
- Weapon-specific percentage modifiers