Warning: massive, detailed post belowI must say that the justice system in
Oblivion was a HUGE letdown: it was hardly any different from
Morrowind's at all, in spite of so many promises. The only real thing that came from it was the option to sneak out of jail. Oh, and that thanks to
RadiantAI, NPCs (think City Swimmer) would wind up constantly getting themselves killed. Fortunately the AI should be tame enough to prevent the latter issue, but it still remains how fleshed-out it is. I'd been so looking forward at first to the Counts of Cyrodiil to also actually hold court, such as trials for criminals.
To be honest, implementing such a system wouldn't be all that hard. Depending on the specifics, even
RadiantStory could play a role. The main hurdle, development-wise, is making sure there's flags in place to mark what NPC knows/believes what. Since
Oblivion overhauled NPCs to give them opinions on EVERY one of countless factions in the game, (and
Fallout 3 fleshed that out even better) adding in what they do and don't know shouldn't be much of a stretch.
This would allow for things like true perfect crimes: if you drag an undesired NPC into an alley and kill them without no one else hearing, it's kinda strange of the guards automatically know you're guilty of assault/murder. Sure, you can steal and go un-noticed, but somehow every NPC can telepathically alert the guards to their status as being attacked.
And speaking of theft, I'll admit it was surprisingly not as annoying as I thought it'd be that you couldn't sell stolen goods to most merchants... But still, it'd be better if one could try to pass it off. Perhaps it could be a skill check; one's mercantile/speechcraft ("of course this isn't stolen! My aunt left it to me when she died.") similar to the actual haggling check: don't do well and they decline to touch the object, and regard you a bit more suspiciously. Do REALLY bad and perhaps they gain a flag, "suspects you of theft of item: [Galbedir's Grand Soul Gem]" and then transfers this flag to the next guard they meet. That was a missing part of the original
RadiantAI: TRUE communication. It's not overly complicated: after all, games from the 1990s like
The Sims handled it fine. And just like NPCs could possibly give items to each other, they can give "knowledges" to each other.
That's the heart of the system I really, really have wanted to see since
Morrowind. The other side was comparatively minor, and also affected by
RadiantAI: resting. In
Daggerfall could could attempt to either "wait" (loiter) or "rest;" the latter, if in an illegal area, would invariably call the guards on you. In
Morrowind, you were simply forbidden from resting on the floor in such places; you had to find a bed. In
Oblivion, they took out resting on the floor altogether. I'd been hoping that "on the floor" resting could've been an option even in "illegal" places: it'd just run the risk of you being arrested if spotted.
This also goes for the "forcibly arresting you" part: if you were sleeping when caught, there'd logically be a high chance of the guards being careful to bind you up without waking you. Or, perhaps with high enough in some stats/skills, ("perception" were it S.P.E.C.I.A.L., though maybe WIL for TES) one would wake up in time, and have a chance to run/fight away. Hence, overall, a sample scenario might look like this, including the "behind-the-scenes" engine work:
- Leir wanders by Galbedir's enchantment shop, and while she isn't looking, filches her Grand Soul Gem, unable to resist the shiny 60,000 septim value. He leaves before she notices.
- Galbedir's AI, upon spotting the absnece of the soul gem and realizing it was stolen, (to account for "misplaced" items, it'd simply check all items in her "cell") would calculate all the people she'd seen since a while ago. Realizing that Leir was the most recent, she'd gain a "flag" in that "suspects [Leir] for [theft] of [Grand Soul Gem]" If there were other characters she'd also seen there, she'd also gain flags for them: depending on the algorithm, each "suspicion" flag would have a varying strength of 1-100, with 100 being "downright certain but without having seen it." Regardless of the suspicion flags, she'd also be flaged as knowing "[Galbedir's Soul Gem] was stolen."
- Given Galbedir's relative trust in lawfulness, (as she *IS* a merchant, after all) she might go to one of the guards sometime that day, to let them know her Soul Gem was stolen. This would copy her "suspicion" flag(s) and "knowing" flag to the guard. That guard, when reporting back at the end of their shift, would share what was reported to him. At this point, to simplify things, these flags would be moved from the PERSONAL space, and outright to the FACTION space: all of the faction "Balmora Town Guards" would gain knowledge of the theft, and suspicion on who did it.
- Given that the suspicion wouldn't be TERRIBLY high, the guards wouldn't flag any character for arrest. However, depending on how a faction feels towards certain factions/races, they might have a lower threshold: a particularly racist/xenophobic group would put an arrest warrant out easily in such cases, such as Indoril guards in Vivec for ANY non-dunmer, or Nibenay guards in Bravil for Khajiit or Argonians. But for Hlalu guards in Balmora, this merely just goes on the list of "suspects." Depending on the faction, they may share their knowledge/suspicions with other factions: word of the crime would spread.
- Later, Leir goes to Clagius Clanler, an outfitter who'll buy soul gems, and attempts to sell his ill-gotten goods. Not being too deft of tongue, he fails to convince Clagius that his stolen gem is anything but, causing Clagius to gain the flag "Suspects [Leir] for [theft] of [Grand Soul Gem]." Later, he, too, goes to the guards with his suspicions.
- The guards ALREADY suspect Leir of the theft, so the two suspicion values are merged. The exact math of it could vary, but it could be additive (resulting in very quick arrests) or multiplied. (resulting in slower suspicion gained) So let's say Galbedir was 40% certain Leir was the thief, while Clagius was only 20%: the new suspicion the guards have would go up to either 60% (additive) or 52%. (multiplied) If 50% was the threshold for an arrest warrant, then this triggers the "arrest a criminal" script. This would trigger a bunch of things:
- For one, if someone is heavily suspected to be a criminal, perhaps it grants +10% to suspicion in all other crimes where they're already a suspect.
- For two, this is where bounty/fine (which may or may not be the same) will actually be calculated. The price of the soul gem theft is calculated, so perhaps 6,010 gold: 10 gold as the base for a larceny, and 6,000 as 1/10th the value of the stolen object.
- If any other suspicions got boosted above 50%, then they'd be calculated as well. Then all of them would get a flag for the entire guard, as "[Leir] is WANTED [alive] for [theft] of [Grand Soul Gem]: bounty [6010 gold]."
- Next, now that the crimes and bounty are known, the guards get to work: Because it's a serious crime (6,010 gold bounty!) they produce "WANTED" posters, and start placing them at the town's designated poster locations. Any NPCs that see these posters will now know Leir is a wanted criminal, and for what, and for what bounty. And at this point, because the guard wants Leir, he has reached the "arrest on sight." Similarly, this "wanted" status may convey the next time the Balmora Guard communicate with other towns... But immediately, other towns would be unaware of the crime.
- In a last-ditch attempt to make quick cash, Leir visits, Dralasa Nithryon, a pawnbroker, and attempts to sell his stolen soul gem. Success isn't an option: Dralasa has seen the posters, and know Leir's a wanted criminal. Because she's law-abiding, she won't deal with him. Further, she knows he's wanted for theft of a soul gem, and seeing he had one such on him, she runs to call the guards. However, because she had to LEAVE to call them, this gives Leir time to escape: by the time the guards come back with her, he's long gone.
- Tired after a day of theft and unsuccessful attempts to pawn off his stolen goods, he decides to fetch a nap beneath a bridge. Unfortunately for him, sleeping in public is a crime (vagrancy) and a guard spots him. He got a rude awakening, already manacled, as the guard informed him he was under arrest for vagrancy, (the guard gained the flag "WITNESSED [Leir] is guilty of [vagrancy]") and also under arrest for the theft.
- Leir is hauled into jail; he wasn't given an option to pay the guard a fine. If it was a smaller offense, he might've had the chance to BRIBE the guard. But now, he awaits trial; or he can escape BEFORE trial.
- Back at the guards, the arrest and crime raise all suspicion levels even further: they're +30% more certain on all his crimes, including the theft. This also raises a new crime, "[Assault] of [Caius Cosades]" above the 50% mark, and he becomes wanted for that too.
- The next day, Leir is brought before the local count, on trial for his crimes: he's charged with vagrancy, theft of a soul gem, and assaulting Caius Cosades; the sentences, based on the bounties, respectively, for these, are 10 gold, 60 days in jail + 10 gold, and 10 days in jail + 40 gold, totaling 70 days + 60 gold. This could be more complex, but for simplicity's sake, this works like Daggerfall: He can pick a guilty plea (which cuts off half the sentence) or he can try to plead his innocence. He picks the latter, allowing him to either debate or lie; both rely on his Personality, speechcraft, and suspicion level, while other factors, like other suspects, and his skill/knowledge in relevant actions (mercantile, enchanting, etc.) could come into play as well.
- Leir fails to convince the count and his court of his innocence, and is sentenced in full. As everyone now fully believes he was the culprit in all of the crimes, all flags related to his crimes are wiped, including suspicion of other characters, and replaced with a "sentence/guilty" flag: He's "serving a [70-day] sentence for [theft], [vagrancy], and [assault]."
- Leir manages to escape from prison after only serving 5 days. The guards are all alerted to his jail-breaking, adding a NEW "wanted" (skipping "suspected of" flags entirely) flag: "Wanted for [jailbreaking]." Given the seriousness of the crime, the guards quickly try and alert other towns.
- As he was already serving a sentence, once caught, he's automatically found guilty and sentenced to the remainder of his old sentence, PLUS another 30 days for jailbreaking.
All in all, the above scenario had 15 steps, but doesn't involve a MASSIVE change in the AI system for the game. The main things would be:
- Implementation of crime-related "knowledge flags:"[list]
- "Suspicion" - Suspects an NPC/player of a crime. Includes a percentage value. (SUSPECTS [culprit] of [crime] of [object/victim])
- "Knows" - NPC is aware of a crime; mostly reserved for when they know a crime happened, but have no solid knowledge on who the criminal was. Used for when they witness evidence of a theft, murder, or other crime after-the-fact. Often found alongside "suspicion" flags for the exact same crime, for when they know the crime happened, but only have suspicions on who did it. (KNOWS that [crime] of [object/victim] occured)
- "Witnessed" - Replaces the "suspicion" and "knows" flag, (but only available to NPCs, not factions) as this demonstrates the NPC saw the crime with their own eyes; obviously would be used for anyone who's victimized of a violent crime like assault, or, in theory, murder, even though "dead men tell no tales." (WITNESSED [culprit] commit [crime] of [object/victim])
- "Wanted" - Replaces no other flags; used by factions alone and not NPCs to target specific characters for crimes. Reaction behavior would be based upon the faction/personality of the NPC: guards would logically arrest a wanted character, while civilians may flee, try to sound the alarm, or, if confident, attempt to collect the bounty themselves by subduing/killing the wanted character. ([culprit] is WANTED [alive/dead or alive/kill on sight] for [crime] of [target/victim])
- "Guilty" - Replaces all of the above flags; used by factions alone (typically "factions" for this being like "citizens of Balmora") and not NPCs. Denotes character has been found guilty of, and has been sentenced for, a crime. Flag is removed once sentence has been finished/paroled, and culprit is free to go. ([culprit] is serving sentence of [jail duration], GUILTY of [list of crimes and counts of each])
Note that for the programmers out there, the above does assume, a bit, that the thing is coded using object-oriented programming: otherwise the list of crimes and knowledge blocks could be a LITTLE tricky to work with; OOP gives us a lot more options with our data structures to make this all pretty easy and straightforward.
Similarly, this assumes (pretty safely) that
Skyrim will follow with the extreme reliance on overlapping "factions" to categorize (or perhaps "tag?") NPCs. Hence, a town guard in Balmora will be part of BOTH the "Balmora Town Guard" and "Citizens of Balmora" factions.