Setup DB/Migration
Be sure to make a copy of the database.
Setup Database
Import workoutfits.sql
Database [QB]
CREATE TABLE IF NOT EXISTS `playerskins` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`citizenid` varchar(11) NOT NULL,
`model` varchar(255) NOT NULL,
`skin` text NOT NULL,
`active` tinyint(4) NOT NULL DEFAULT 1,
PRIMARY KEY (`id`),
KEY `citizenid` (`citizenid`),
KEY `active` (`active`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
CREATE TABLE IF NOT EXISTS `player_outfits` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`citizenid` varchar(11) DEFAULT NULL,
`outfitname` varchar(50) NOT NULL,
`model` varchar(50) DEFAULT NULL,
`skin` text DEFAULT NULL,
`components` text DEFAULT NULL,
`props` text DEFAULT NULL,
`outfitId` varchar(50) NOT NULL DEFAULT uuid(),
PRIMARY KEY (`id`),
KEY `citizenid` (`citizenid`),
KEY `outfitId` (`outfitId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
CREATE TABLE IF NOT EXISTS `workoutfits` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`outfitname` varchar(55) DEFAULT NULL,
`gender` int(11) DEFAULT NULL,
`job` varchar(55) DEFAULT NULL,
`grades` text DEFAULT NULL,
`skin` text DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC;
INSERT INTO `workoutfits` (`id`, `outfitname`, `gender`, `job`, `grades`, `skin`) VALUES
(9, 'Short Sleeve', 0, 'police', '["0","1","2","3","4"]', '{"components":{"vest":[0,0],"accessory":[0,0],"torso2":[55,0],"bag":[0,0],"pants":[24,0],"decals":[0,0],"shoes":[51,0],"t-shirt":[58,0],"mask":[0,0],"arms":[19,0]},"props":{"hat":[-1,-1],"glass":[-1,-1],"ear":[-1,-1],"bracelet":[-1,-1],"watch":[-1,-1]}}'),
(10, 'Trooper Tan', 0, 'police', '["0","1","2","3","4"]', '{"components":{"vest":[0,0],"accessory":[0,0],"torso2":[317,3],"bag":[0,0],"pants":[24,0],"decals":[0,0],"shoes":[51,0],"t-shirt":[58,0],"mask":[0,0],"arms":[20,0]},"props":{"hat":[58,0],"glass":[-1,-1],"ear":[-1,-1],"bracelet":[-1,-1],"watch":[-1,-1]}}'),
(11, 'Long Sleeve', 0, 'police', '["1","2","3","4"]', '{"components":{"vest":[0,0],"accessory":[0,0],"torso2":[317,8],"bag":[0,0],"pants":[24,0],"decals":[0,0],"shoes":[51,0],"t-shirt":[58,0],"mask":[0,0],"arms":[20,0]},"props":{"hat":[-1,0],"glass":[-1,-1],"ear":[-1,-1],"bracelet":[-1,-1],"watch":[-1,-1]}}'),
(12, 'Trooper Black', 0, 'police', '["2","3","4"]', '{"components":{"vest":[0,0],"accessory":[0,0],"torso2":[317,8],"bag":[0,0],"pants":[24,0],"decals":[0,0],"shoes":[51,0],"t-shirt":[58,0],"mask":[0,0],"arms":[20,0]},"props":{"hat":[58,2],"glass":[-1,-1],"ear":[-1,-1],"bracelet":[-1,-1],"watch":[-1,-1]}}'),
(13, 'SWAT', 0, 'police', '["3","4"]', '{"components":{"vest":[15,2],"decals":[0,0],"t-shirt":[15,0],"arms":[172,0],"mask":[52,0],"shoes":[24,0],"accessory":[133,0],"pants":[130,1],"bag":[0,0],"torso2":[336,3]},"props":{"ear":[-1,-1],"hat":[150,0],"watch":[-1,-1],"glass":[41,0],"bracelet":[-1,-1]}}'),
(14, 'Short Sleeve', 1, 'police', '["0","1","2","3","4"]', '{"components":{"vest":[34,0],"accessory":[0,0],"torso2":[48,0],"bag":[0,0],"pants":[133,0],"decals":[-1,0],"shoes":[52,0],"t-shirt":[35,0],"mask":[0,0],"arms":[31,0]},"props":{"hat":[-1,0],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(15, 'Trooper Tan', 1, 'police', '["0","1","2","3","4"]', '{"components":{"vest":[34,0],"accessory":[0,0],"torso2":[327,3],"bag":[0,0],"pants":[133,0],"decals":[-1,0],"shoes":[52,0],"t-shirt":[35,0],"mask":[0,0],"arms":[31,0]},"props":{"hat":[58,0],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(16, 'Long Sleeve', 1, 'police', '["1","2","3","4"]', '{"components":{"vest":[34,0],"accessory":[0,0],"torso2":[327,0],"bag":[0,0],"pants":[133,0],"decals":[-1,0],"shoes":[52,0],"t-shirt":[35,0],"mask":[0,0],"arms":[31,0]},"props":{"hat":[-1,0],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(17, 'Trooper Black', 1, 'police', '["2","3","4"]', '{"components":{"vest":[34,0],"accessory":[0,0],"torso2":[327,8],"bag":[0,0],"pants":[133,0],"decals":[-1,0],"shoes":[52,0],"t-shirt":[35,0],"mask":[0,0],"arms":[31,0]},"props":{"hat":[58,2],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(18, 'SWAT', 1, 'police', '["3","4"]', '{"components":{"vest":[17,2],"accessory":[102,0],"torso2":[327,8],"bag":[0,0],"pants":[135,1],"decals":[-1,0],"shoes":[52,0],"t-shirt":[0,0],"mask":[35,0],"arms":[213,0]},"props":{"hat":[149,0],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(19, 'T-Shirt', 1, 'ambulance', '["0","1","2","3","4"]', '{"components":{"accessory":[97,0],"mask":[121,0],"pants":[99,0],"shoes":[55,0],"arms":[109,0],"torso2":[258,0],"decals":[66,0],"vest":[0,0],"bag":[0,0],"t-shirt":[159,0]},"props":{"bracelet":[-1,0],"glass":[-1,0],"watch":[-1,0],"hat":[121,0],"ear":[-1,0]}}'),
(20, 'Polo', 1, 'ambulance', '["2","3","4"]', '{"components":{"accessory":[96,0],"mask":[121,0],"pants":[99,0],"shoes":[55,0],"arms":[105,0],"torso2":[257,0],"decals":[65,0],"vest":[0,0],"bag":[0,0],"t-shirt":[13,0]},"props":{"bracelet":[-1,0],"glass":[-1,0],"watch":[-1,0],"hat":[121,0],"ear":[-1,0]}}'),
(21, 'Doctor', 1, 'ambulance', '["3","4"]', '{"components":{"accessory":[96,0],"mask":[0,0],"pants":[34,0],"shoes":[29,0],"arms":[105,0],"torso2":[7,1],"decals":[-1,0],"vest":[0,0],"bag":[0,0],"t-shirt":[39,3]},"props":{"bracelet":[-1,0],"glass":[-1,0],"watch":[-1,0],"hat":[-1,0],"ear":[-1,0]}}'),
(22, 'T-Shirt', 0, 'ambulance', '["0","1","2","3","4"]', '{"components":{"accessory":[127,0],"mask":[121,0],"pants":[96,0],"shoes":[54,0],"arms":[85,0],"torso2":[250,0],"decals":[58,0],"vest":[0,0],"bag":[0,0],"t-shirt":[129,0]},"props":{"bracelet":[-1,-1],"glass":[-1,-1],"watch":[-1,-1],"hat":[122,0],"ear":[-1,-1]}}'),
(23, 'Polo', 0, 'ambulance', '["2","3","4"]', '{"components":{"accessory":[126,0],"mask":[121,0],"pants":[96,0],"shoes":[54,0],"arms":[90,0],"torso2":[249,0],"decals":[57,0],"vest":[0,0],"bag":[0,0],"t-shirt":[15,0]},"props":{"bracelet":[-1,-1],"glass":[-1,-1],"watch":[-1,-1],"hat":[122,0],"ear":[-1,-1]}}'),
(24, 'Doctor', 0, 'ambulance', '["3","4"]', '{"components":{"accessory":[126,0],"mask":[0,0],"pants":[28,0],"shoes":[10,0],"arms":[93,0],"torso2":[31,7],"decals":[-1,0],"vest":[0,0],"bag":[0,0],"t-shirt":[32,3]},"props":{"bracelet":[-1,-1],"glass":[-1,-1],"watch":[-1,-1],"hat":[-1,0],"ear":[-1,-1]}}');
Database [ESX]
CREATE TABLE IF NOT EXISTS `player_outfits` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`identifier` varchar(50) DEFAULT NULL,
`outfitname` varchar(50) NOT NULL,
`model` varchar(50) DEFAULT NULL,
`skin` text DEFAULT NULL,
`components` text DEFAULT NULL,
`props` text DEFAULT NULL,
`outfitId` varchar(50) NOT NULL DEFAULT uuid(),
PRIMARY KEY (`id`),
KEY `identifier` (`identifier`),
KEY `outfitId` (`outfitId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
CREATE TABLE IF NOT EXISTS `workoutfits` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`outfitname` varchar(55) DEFAULT NULL,
`gender` int(11) DEFAULT NULL,
`job` varchar(55) DEFAULT NULL,
`grades` text DEFAULT NULL,
`skin` text DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC;
INSERT INTO `workoutfits` (`id`, `outfitname`, `gender`, `job`, `grades`, `skin`) VALUES
(9, 'Short Sleeve', 0, 'police', '["0","1","2","3","4"]', '{"components":{"vest":[0,0],"accessory":[0,0],"torso2":[55,0],"bag":[0,0],"pants":[24,0],"decals":[0,0],"shoes":[51,0],"t-shirt":[58,0],"mask":[0,0],"arms":[19,0]},"props":{"hat":[-1,-1],"glass":[-1,-1],"ear":[-1,-1],"bracelet":[-1,-1],"watch":[-1,-1]}}'),
(10, 'Trooper Tan', 0, 'police', '["0","1","2","3","4"]', '{"components":{"vest":[0,0],"accessory":[0,0],"torso2":[317,3],"bag":[0,0],"pants":[24,0],"decals":[0,0],"shoes":[51,0],"t-shirt":[58,0],"mask":[0,0],"arms":[20,0]},"props":{"hat":[58,0],"glass":[-1,-1],"ear":[-1,-1],"bracelet":[-1,-1],"watch":[-1,-1]}}'),
(11, 'Long Sleeve', 0, 'police', '["1","2","3","4"]', '{"components":{"vest":[0,0],"accessory":[0,0],"torso2":[317,8],"bag":[0,0],"pants":[24,0],"decals":[0,0],"shoes":[51,0],"t-shirt":[58,0],"mask":[0,0],"arms":[20,0]},"props":{"hat":[-1,0],"glass":[-1,-1],"ear":[-1,-1],"bracelet":[-1,-1],"watch":[-1,-1]}}'),
(12, 'Trooper Black', 0, 'police', '["2","3","4"]', '{"components":{"vest":[0,0],"accessory":[0,0],"torso2":[317,8],"bag":[0,0],"pants":[24,0],"decals":[0,0],"shoes":[51,0],"t-shirt":[58,0],"mask":[0,0],"arms":[20,0]},"props":{"hat":[58,2],"glass":[-1,-1],"ear":[-1,-1],"bracelet":[-1,-1],"watch":[-1,-1]}}'),
(13, 'SWAT', 0, 'police', '["3","4"]', '{"components":{"vest":[15,2],"decals":[0,0],"t-shirt":[15,0],"arms":[172,0],"mask":[52,0],"shoes":[24,0],"accessory":[133,0],"pants":[130,1],"bag":[0,0],"torso2":[336,3]},"props":{"ear":[-1,-1],"hat":[150,0],"watch":[-1,-1],"glass":[41,0],"bracelet":[-1,-1]}}'),
(14, 'Short Sleeve', 1, 'police', '["0","1","2","3","4"]', '{"components":{"vest":[34,0],"accessory":[0,0],"torso2":[48,0],"bag":[0,0],"pants":[133,0],"decals":[-1,0],"shoes":[52,0],"t-shirt":[35,0],"mask":[0,0],"arms":[31,0]},"props":{"hat":[-1,0],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(15, 'Trooper Tan', 1, 'police', '["0","1","2","3","4"]', '{"components":{"vest":[34,0],"accessory":[0,0],"torso2":[327,3],"bag":[0,0],"pants":[133,0],"decals":[-1,0],"shoes":[52,0],"t-shirt":[35,0],"mask":[0,0],"arms":[31,0]},"props":{"hat":[58,0],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(16, 'Long Sleeve', 1, 'police', '["1","2","3","4"]', '{"components":{"vest":[34,0],"accessory":[0,0],"torso2":[327,0],"bag":[0,0],"pants":[133,0],"decals":[-1,0],"shoes":[52,0],"t-shirt":[35,0],"mask":[0,0],"arms":[31,0]},"props":{"hat":[-1,0],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(17, 'Trooper Black', 1, 'police', '["2","3","4"]', '{"components":{"vest":[34,0],"accessory":[0,0],"torso2":[327,8],"bag":[0,0],"pants":[133,0],"decals":[-1,0],"shoes":[52,0],"t-shirt":[35,0],"mask":[0,0],"arms":[31,0]},"props":{"hat":[58,2],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(18, 'SWAT', 1, 'police', '["3","4"]', '{"components":{"vest":[17,2],"accessory":[102,0],"torso2":[327,8],"bag":[0,0],"pants":[135,1],"decals":[-1,0],"shoes":[52,0],"t-shirt":[0,0],"mask":[35,0],"arms":[213,0]},"props":{"hat":[149,0],"glass":[-1,0],"ear":[-1,0],"bracelet":[-1,0],"watch":[-1,0]}}'),
(19, 'T-Shirt', 1, 'ambulance', '["0","1","2","3","4"]', '{"components":{"accessory":[97,0],"mask":[121,0],"pants":[99,0],"shoes":[55,0],"arms":[109,0],"torso2":[258,0],"decals":[66,0],"vest":[0,0],"bag":[0,0],"t-shirt":[159,0]},"props":{"bracelet":[-1,0],"glass":[-1,0],"watch":[-1,0],"hat":[121,0],"ear":[-1,0]}}'),
(20, 'Polo', 1, 'ambulance', '["2","3","4"]', '{"components":{"accessory":[96,0],"mask":[121,0],"pants":[99,0],"shoes":[55,0],"arms":[105,0],"torso2":[257,0],"decals":[65,0],"vest":[0,0],"bag":[0,0],"t-shirt":[13,0]},"props":{"bracelet":[-1,0],"glass":[-1,0],"watch":[-1,0],"hat":[121,0],"ear":[-1,0]}}'),
(21, 'Doctor', 1, 'ambulance', '["3","4"]', '{"components":{"accessory":[96,0],"mask":[0,0],"pants":[34,0],"shoes":[29,0],"arms":[105,0],"torso2":[7,1],"decals":[-1,0],"vest":[0,0],"bag":[0,0],"t-shirt":[39,3]},"props":{"bracelet":[-1,0],"glass":[-1,0],"watch":[-1,0],"hat":[-1,0],"ear":[-1,0]}}'),
(22, 'T-Shirt', 0, 'ambulance', '["0","1","2","3","4"]', '{"components":{"accessory":[127,0],"mask":[121,0],"pants":[96,0],"shoes":[54,0],"arms":[85,0],"torso2":[250,0],"decals":[58,0],"vest":[0,0],"bag":[0,0],"t-shirt":[129,0]},"props":{"bracelet":[-1,-1],"glass":[-1,-1],"watch":[-1,-1],"hat":[122,0],"ear":[-1,-1]}}'),
(23, 'Polo', 0, 'ambulance', '["2","3","4"]', '{"components":{"accessory":[126,0],"mask":[121,0],"pants":[96,0],"shoes":[54,0],"arms":[90,0],"torso2":[249,0],"decals":[57,0],"vest":[0,0],"bag":[0,0],"t-shirt":[15,0]},"props":{"bracelet":[-1,-1],"glass":[-1,-1],"watch":[-1,-1],"hat":[122,0],"ear":[-1,-1]}}'),
(24, 'Doctor', 0, 'ambulance', '["3","4"]', '{"components":{"accessory":[126,0],"mask":[0,0],"pants":[28,0],"shoes":[10,0],"arms":[93,0],"torso2":[31,7],"decals":[-1,0],"vest":[0,0],"bag":[0,0],"t-shirt":[32,3]},"props":{"bracelet":[-1,-1],"glass":[-1,-1],"watch":[-1,-1],"hat":[-1,0],"ear":[-1,-1]}}');
In table player_outfits.outfitId change expression to uuid()

Im using illenium-appearance
In table player_outfits add new column skin.

How to migrate
Download migration script.
Run command
migration [resourceName] [type]
.After successfuly migration, remove this script from your server.
If you were using nf-skin 1.0.x, you need to migrate to the new tables.
migration nf skins
migration nf outfits
Last updated