Porting Apollo Infractions Computer (#1033)

Ports Apollo's infraction's system, creating a permanent criminal record for every character. Every minor or medium infraction accrued over the course of a round is added to the character's permanent security record which is available at vanilla records councils. Antagonists are automatically exempt from this process, and players can exercise control over what charges they consider canon or not.

Brigging a person is now dependent on the criminal sentencing computer, which reads a person's ID and applies a brig timer automatically for the charges selected. Personnel without ID's will have to be brigged manually.
This commit is contained in:
LordFowl
2016-12-22 18:00:04 -05:00
committed by skull132
parent c7e56daaa6
commit 51bd200d7c
41 changed files with 2056 additions and 156 deletions

View File

@@ -498,3 +498,25 @@ CREATE TABLE `ss13_stats_ie` (
`DateUpdated` datetime DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`ckey`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `ss13_character_incidents` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`char_id` INT(11) NOT NULL,
`UID` VARCHAR(32) NOT NULL COLLATE 'utf8_bin',
`datetime` VARCHAR(50) NOT NULL COLLATE 'utf8_bin',
`notes` TEXT NOT NULL COLLATE 'utf8_bin',
`charges` TEXT NOT NULL COLLATE 'utf8_bin',
`evidence` TEXT NOT NULL COLLATE 'utf8_bin',
`arbiters` TEXT NOT NULL COLLATE 'utf8_bin',
`brig_sentence` INT(11) NOT NULL DEFAULT '0',
`fine` INT(11) NOT NULL DEFAULT '0',
`felony` INT(11) NOT NULL DEFAULT '0',
`created_by` VARCHAR(50) NULL DEFAULT NULL COLLATE 'utf8_bin',
`deleted_by` VARCHAR(50) NULL DEFAULT NULL COLLATE 'utf8_bin',
`game_id` VARCHAR(50) NOT NULL COLLATE 'utf8_bin',
`created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`deleted_at` DATETIME NULL DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE INDEX `UID_char_id` (`char_id`, `UID`)
COLLATE='utf8_bin' ENGINE=InnoDB;