MCA: Crime

Quick rating

Community listing page, reviews here may not be monitored by the author.

MCA: Crime

No reviews yet

MCA: Crime is a mod for Minecraft 1.20.1 (Forge) which adds criminal elements and systems to the MCA: Reborn mod.

Mod Loaders
Minecraft

About

Description

MCA: Crime

Give the villages of MCA Reborn a law of their own.

Credit to TheWiggleDuck for the awesome Curseforge project icon!

MCA: Crime is an add-on for Minecraft Comes Alive: Reborn that adds crime, witnesses, guards, arrests, jail, fines, kidnapping, ransom, mugging, and persistent legal consequences to village life.

MCA Reborn already tracks how individual villagers feel about you. MCA: Crime adds another layer: what the village and its authorities know about what you have done, and what they are prepared to do about it.

Steal or hurt someone in front of witnesses and word can reach the guards. Commit the same crime where nobody sees it and the village may never know. Cases remain attached to the actual people, witnesses, and communities involved rather than simply increasing a global "wanted level."

The goal is to make crime feel like part of the village rather than a detached RPG mechanic.

Features

Crime, Karma, and Heat

MCA: Crime separates your long-term behavior from immediate attention from the law.

  • Karma represents your longer-term moral standing and places you into Lawful, Neutral, or Outlaw bands.
  • Heat represents current law-enforcement attention. Build enough Heat and you become Wanted.
  • Heat gradually decreases while you are online, allowing players to genuinely lie low.
  • Crimes can affect Karma even when nobody sees them, while Heat normally requires the crime to become known.
  • Being Wanted, escaping custody, holding a captive, or optionally being a known Outlaw can make you a lawful target for guards.

This means being a bad person and being actively hunted are related concepts, but not the same thing.

Witnesses and Reporting

Crimes are not automatically known by every villager in the world.

Villagers and guards can observe crimes based on factors such as distance and line of sight. Witness information is recorded with the case, including who actually saw what happened.

The reporting system goes further than simply counting nearby villagers. Witnesses can remember an offender and attempt to seek help or report what happened to the authorities. Reports belong to the relevant jurisdiction, so guards in an unrelated village do not magically know about something that happened somewhere else.

Victims and villagers can react differently depending on the situation, including:

  • Fleeing
  • Seeking help
  • Reporting crimes
  • Hiding
  • Resisting
  • Complying
  • Recovering after an encounter
  • Reacting differently based on personality and history

Villagers also have contextual, data-driven dialogue for crime-related encounters.

Criminal Actions

Crime actions are available through MCA's normal villager interaction interface.

Depending on the installed version and configuration, the Crime menu can also be opened by interacting with a villager while holding a recognized weapon or through a configurable keybind.

Unavailable actions remain visible when possible and explain why they cannot currently be performed.

Mugging

Threaten an MCA villager and demand their valuables.

Mugging is a timed interaction rather than instant free loot. Moving too far away, losing sight of the victim, or being interrupted can stop the attempt.

Villagers have finite purses, so mugging does not generate infinite emeralds. Per-victim cooldowns and offender or village limits also prevent repeatedly farming an entire settlement.

By default, mugging requires a weapon.

If you kill someone shortly after robbing them, the crime can be upgraded to murder during a robbery, one of the most serious built-in offences. Killing the victim does not provide another robbery payout.

Restraints and Kidnapping

Villagers and eligible players can be restrained and taken captive.

Three restraint levels are provided:

  • Rope, which is quick to apply but relatively easy to escape
  • Cuffs, which are stronger and harder to escape
  • Locked Cuffs, which provide the strongest restraint and generally require outside help or another proper means of release

Capturing someone takes time and can be interrupted by movement, damage, range, or loss of line of sight.

Targets must actually be eligible for capture, and guards cannot simply be kidnapped through the normal easy capture path.

Custody is persistent and designed to recover safely if the captor disconnects, dies, disappears, or otherwise becomes invalid.

Other players can also rescue captives instead of waiting for the captor or captive to resolve the situation themselves.

Ransom

A kidnapper can demand payment for a captive.

When possible, the mod determines who should pay based on the captive's relationships, using priorities such as:

  1. Spouse
  2. Parent
  3. Adult child
  4. Sibling
  5. Close relative
  6. Village authority as a configurable fallback

Player relatives must actually be online and reachable.

Ransoms have cooldowns and expiration rules, and demands become invalid if the captive dies, escapes, is rescued, or enters lawful custody.

Village ransom payments come from a finite persisted treasury rather than creating emeralds from nothing.

Apologies and Restorative Actions

Not every interaction with the crime system is hostile.

Players can apologize and perform restorative actions that help repair damaged relationships. These systems are deliberately bounded so they cannot be exploited as easy positive-heart farms or used to erase legal cases for free.

Releasing or rescuing captives can also improve relationships with the affected villager and their family.

Guards and Arrests

Guards can respond to known offenders instead of simply attacking on sight.

When appropriate, a nearby guard can confront a suspect and present options such as:

  • Surrender
  • Pay an eligible fine
  • Review the charges
  • Refuse

Refusing or ignoring a lawful confrontation can lead to force.

Surrendering begins an actual arrest process. The player can be restrained, physically escorted by the guard, and taken to jail instead of simply being teleported away immediately.

During an escort, the restrained player is prevented from performing actions that would not make sense while in custody.

The arrest system tracks a persistent lifecycle so reconnecting, dying, changing dimensions, or a guard temporarily disappearing cannot easily bypass the process.

If normal pathfinding cannot safely finish an arrest, recovery behavior prevents a broken path from becoming a way to avoid the sentence.

Guard Population

Servers can optionally allow MCA: Crime to help maintain a configurable guard population within villages.

The target is based on a configurable percentage of the village population, while existing guards are counted before new ones are considered.

This feature is optional and is designed to coexist with MCA Reborn's own guard-spawning behavior rather than blindly creating duplicate guards.

Jail

Serious crimes can result in actual jail sentences.

Sentences use online time, so logging out does not serve the sentence for you.

Jail state persists through:

  • Logout
  • Death
  • Dimension changes
  • Server restarts

Servers can assign permanent jail areas manually.

When no jail has been assigned, MCA: Crime can optionally create a small temporary holding cell near the arrest. Temporary cells are built conservatively, cleaned up afterward, and do not overwrite structures or valuable block entities.

Containment behavior is configurable. Depending on server settings, a prisoner may be physically confined, returned to the jail area, or able to attempt a real jailbreak.

Escaping jail does not erase the underlying crime. Instead, it can create a jailbreak case and mark the player as an escaped prisoner.

The HUD provides a live sentence countdown so prisoners can see how much time remains.

Fines and Case Resolution

Crimes are stored as actual cases rather than disappearing when Heat decreases.

A case can contain information such as:

  • Offender
  • Victim
  • Village or jurisdiction
  • Witnesses and observations
  • Crime type
  • Karma and Heat consequences
  • Time of the offence
  • Current legal status
  • How the case was ultimately resolved

Cases can be resolved through outcomes such as fines, serving a sentence, pardons, or other explicit legal transitions.

Paying a fine resolves eligible cases beginning with the oldest. Emeralds are actually removed from the player rather than functioning as an abstract number.

Serious offences can be configured so that they cannot simply be paid away.

Players can view their own case history through the in-game dossier rather than having to guess why the guards are after them.

Dynamic Villager Reactions

Crime affects people, not only statistics.

Victims, witnesses, relatives, and other involved villagers can lose hearts toward the offender.

Villager reactions take MCA personalities and previous encounters into account. Different villagers may flee, resist, comply, seek a guard, or otherwise react differently to the same situation.

Villagers can choose sensible destinations while escaping danger, such as:

  • A nearby guard
  • A public building
  • Their home
  • An ally
  • Safe open ground

Crime-related dialogue is data-driven and contextual, with support for conditions such as personality, relationship, role, repeat encounters, economic state, player standing, and time of day.

Player Interface

MCA: Crime includes a full player-facing interface for understanding what is happening.

Depending on the situation, you can see:

  • Karma and standing
  • Current Heat
  • Wanted status
  • Active jail sentence
  • Custody information
  • Escape progress
  • Current criminal cases
  • Guard confrontations
  • Action requirements and legality
  • Timed interaction progress

The HUD includes configurable indicators for Heat, Wanted status, custody, sentences, and action channels.

Client-side presentation options can be changed through the mod's settings screen without giving clients control over server rules.

Weapon Detection

MCA: Crime can recognize when a player is threatening a villager with a weapon.

Built-in recognition covers common weapon types such as:

  • Swords
  • Axes
  • Tridents
  • Bows
  • Crossbows
  • Supported or automatically detected modded firearms

Pack authors can extend or override weapon recognition through configuration and item tags.

The whitelist and blacklist accept individual item IDs or tags, allowing compatibility with large modpacks without requiring every weapon to be hardcoded into MCA: Crime.

Datapacks can use:

mcacrime:weapons
mcacrime:weapons_blacklist

The blacklist takes priority.

Weapon-triggered interaction can also be disabled entirely.

MCA: Reputation Integration

MCA: Reputation is optional.

MCA: Crime works without it and maintains the village standing information it needs internally.

When a compatible MCA: Reputation version is installed, the two mods coordinate their systems so the same assault or murder is not counted twice.

Crime cases can become public Reputation incidents, allowing villagers to gossip about known crimes and the consequences of those actions.

Restorative outcomes such as:

  • Paying a fine
  • Serving a sentence
  • Rescuing a captive

can also become meaningful public events.

Cross-mod events are persisted and retried so a temporary integration failure does not silently erase important legal history.

MCA: Reputation 0.2.0+ can coexist with MCA: Crime. The full current integration bridge requires MCA: Reputation 0.3.0 or newer, with older versions safely falling back to MCA: Crime's internal standing system.

Designed for Modpacks

MCA: Crime is built with pack authors and multiplayer servers in mind.

Most major systems are configurable, including:

  • Karma thresholds
  • Heat values and decay
  • Wanted thresholds
  • Witness behavior
  • Reporting
  • Guard response
  • Guard population
  • Fines
  • Jail behavior
  • Temporary jail generation
  • Surrender
  • Capture requirements
  • Restraint strength
  • Escape difficulty
  • Ransom values and cooldowns
  • Mugging economy
  • Villager purses
  • Daily robbery limits
  • Relationship penalties and restoration
  • Weapon recognition
  • HUD and presentation
  • Optional integrations

Server gameplay rules are kept authoritative on the server.

Client configuration is limited to presentation and interface preferences.

Datapack Support

Crime definitions are data-driven.

Pack authors can modify the built-in crimes or add their own through:

data/<namespace>/mcacrime/crimes/*.json

Crime definitions can control their legal effects without requiring a custom build of the mod.

MCA: Reputation incident definitions can also be supplied through:

data/<namespace>/mcareputation/incidents/*.json

Use:

/crime reload

to reload crime definitions and:

/crime validate

to check configurations and datapack content for problems.

Built-In Crimes

The default datapack includes offences covering:

  • Theft
  • Harming a villager
  • Assaulting a guard
  • Kidnapping
  • Jailbreak
  • Killing a villager
  • Murder during a robbery

Pack authors can rebalance these or provide additional crime definitions.

Commands

Everything is organized beneath /crime.

Common player commands include:

/crime karma
/crime status
/crime payfine
/crime surrender
/crime mug
/crime ransom
/crime payransom
/crime escape
/crime releasecaptive

Administrative and diagnostic commands provide access to player ledgers, jail assignment, Karma and Heat management, integration diagnostics, guard diagnostics, arrest state, weapon classification, datapack validation, and recovery tools.

The normal gameplay interface is intended to handle ordinary play. Commands remain available as accessibility, administration, and debugging tools.

Performance and Safety

MCA: Crime is designed around persistent state and event-driven behavior rather than repeatedly scanning every village every tick.

Among its design goals are:

  • No global per-tick village scans
  • Server-authoritative gameplay
  • Persistent crime and custody records
  • Replay and duplication protection
  • Finite economies for robbery and ransom
  • Recovery paths for invalid custody or jail states
  • No generative AI
  • No telemetry
  • No external gameplay network services

Disabling a gameplay subsystem does not silently delete existing crime records.

Requirements

   
Minecraft 1.20.1
Mod Loader Forge 47.x
Java Java 17
Required Minecraft Comes Alive: Reborn 7.6.x or 7.7.x
Optional MCA: Reputation

MCA Reborn compatibility range:

[7.6,8)

MCA: Crime uses a compatibility layer for MCA Reborn rather than depending on one specific internal package layout, allowing the same jar to support the 7.6 and 7.7 lines.

Install MCA: Crime on both the client and server.

Architectury does not need to be installed specifically for MCA: Crime. Install whatever dependencies are required by the MCA Reborn version you are using.

Configuration

Configuration files are generated under:

config/mcacrime-common.toml
config/mcacrime-client.toml

mcacrime-common.toml contains server gameplay rules.

mcacrime-client.toml contains client-side presentation options.

Full documentation is available on GitHub:

For Mod Developers

MCA: Crime exposes a read-only, server-authoritative Java API and Forge events covering major legal state changes such as:

  • Crimes
  • Witnessing and reporting
  • Karma
  • Heat
  • Wanted state
  • Jail
  • Release
  • Custody
  • Fines
  • Case resolution

Gameplay mutation remains controlled by MCA: Crime so integrations cannot accidentally bypass its validation, case lifecycle, economy, or duplication protections.

Existing Worlds

MCA: Crime persists crime, custody, jail, and related state in the world save.

When upgrading an existing world, make a backup first, especially when moving between versions that introduce a save-data schema migration. Save migrations are forward-oriented and may not be reversible simply by reinstalling an older version.

License

MCA: Crime is licensed under GPL-3.0-only.