🛠️Installation
Database
CREATE TABLE IF NOT EXISTS `m_motels` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL,
`zone` varchar(100) NOT NULL,
`location` varchar(100) DEFAULT NULL,
`address` varchar(200) DEFAULT NULL,
`description` text DEFAULT NULL,
`image` varchar(255) DEFAULT NULL,
`management_coords` varchar(100) NOT NULL COMMENT 'vec3 as string',
`interior_template` varchar(50) NOT NULL,
`doors` LONGTEXT NOT NULL COMMENT 'JSON: [{door_id, name, coords, price}]',
`owner_citizenid` varchar(50) DEFAULT NULL,
`owner_name` varchar(100) DEFAULT NULL,
`balance` int(11) NOT NULL DEFAULT 0,
`blip_enabled` tinyint(1) NOT NULL DEFAULT 1,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`created_by` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `owner_citizenid` (`owner_citizenid`),
KEY `zone` (`zone`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE IF NOT EXISTS `m_motel_rentals` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`citizenid` varchar(50) NOT NULL,
`motel_id` int(11) NOT NULL,
`door_id` int(11) NOT NULL,
`days` int(11) NOT NULL,
`total_paid` int(11) NOT NULL,
`upgrade_level` int(11) NOT NULL DEFAULT 0,
`room_bucket` int(11) NOT NULL DEFAULT 0,
`roommates` LONGTEXT DEFAULT NULL COMMENT 'JSON: [{citizenid, granted_by, granted_at}]',
`minibar_stock` LONGTEXT DEFAULT NULL COMMENT 'JSON: [{item, label, quantity, price}]',
`auto_renew` tinyint(1) NOT NULL DEFAULT 0 COMMENT 'Auto renew rental when expires',
`auto_renew_days` int(11) NOT NULL DEFAULT 1 COMMENT 'Days to renew automatically',
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`expires_at` timestamp NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `unique_room` (`motel_id`, `door_id`),
KEY `citizenid` (`citizenid`),
KEY `motel_id` (`motel_id`),
KEY `expires_at` (`expires_at`),
CONSTRAINT `fk_rental_motel` FOREIGN KEY (`motel_id`) REFERENCES `m_motels` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE IF NOT EXISTS `m_motel_stats` (
`citizenid` varchar(50) NOT NULL,
`total_rentals` int(11) NOT NULL DEFAULT 0,
`total_spent` int(11) NOT NULL DEFAULT 0,
`last_rental` timestamp NULL DEFAULT NULL,
PRIMARY KEY (`citizenid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;Last updated