Kiwami-2-Model-Replacer/config.default.js
Lordmau5 58ced46d85 Various changes
- Rename original files
- Allow exclusions and blacklist to be disabled completely
- Add "valid locations" option
- Add option to overwrite the files in the output folder ("chaining")
- Add console output for how many models have been replaced, excluded, or are non valid
2020-05-21 21:28:55 +02:00

179 lines
3.4 KiB
JavaScript

// Which mode the program should run in?
//
// 0 = Everyone is one model (singleModel)
// 1 = Everyone has a random model from a list (randomModels)
// 2 = Everyone is a completely random model
const mode = 0;
// Whether or not the files should be modified from the output directory
const overwrite = false;
// Should we try to make sure models are replaced
// with another one of the same "type"? (2nd byte)
const sameType = false;
// Singular model to replace when mode is 0
//
// Example: [0x71, 0x08] for Kiryu
// const singleModel = [0x71, 0x08];
const singleModel = [0x71, 0x08];
// List of base models to exclude from modifications
// Other models can still be replaced *with* that model
//
// Example: If Kiryu's base model is found it will never be changed
// That means Kiryu can't be set to Daigo, but Daigo can still be set to Kiryu
// Can also work as a whitelist so only the models listed here will be replaced
const exclusions = {
enabled: false,
isWhitelist: false,
models: [
[0x71, 0x08],
[0x72, 0x08],
[0x81, 0x08],
[0x75, 0x08],
[0x7d, 0x08],
[0x77, 0x08],
[0x7b, 0x08],
[0x7a, 0x08],
[0x78, 0x08],
[0x79, 0x08],
[0x73, 0x08],
[0x7f, 0x08],
[0x7e, 0x08],
[0x7c, 0x08],
[0x82, 0x08],
[0x76, 0x08],
[0x80, 0x08],
[0x83, 0x08],
],
};
// Blacklist to prevent models from appearing
// Can also act as a whitelist so *only* those models will appear
const blacklist = {
enabled: false,
isWhitelist: false,
models: [
// Dummies
[0x58, 0x08],
[0x1e, 0x0a],
// Sitting models
[0x03, 0x0b],
[0x90, 0x08],
[0xc7, 0x08],
[0x6b, 0x08],
[0xb9, 0x08],
[0x62, 0x08],
[0xa4, 0x08],
[0xa0, 0x08],
[0x82, 0x08],
[0x70, 0x05],
[0x72, 0x05],
[0x76, 0x05],
[0xb5, 0x08],
[0x8d, 0x08],
[0xc8, 0x08],
[0xb1, 0x02],
// Sitting characters
[0x12, 0x07],
[0x13, 0x07],
[0x14, 0x07],
[0x15, 0x07],
[0x16, 0x07],
[0x17, 0x07],
[0x18, 0x07],
[0x19, 0x07],
[0x1a, 0x07],
[0x1b, 0x07],
[0x1c, 0x07],
[0xec, 0x0a],
[0xed, 0x0a],
[0xee, 0x0a],
[0xef, 0x0a],
[0xf0, 0x0a],
[0xf1, 0x0a],
[0xf2, 0x0a],
[0xf3, 0x0a],
[0xf4, 0x0a],
[0xf5, 0x0a],
[0xf6, 0x0a],
[0xf7, 0x0a],
[0xf8, 0x0a],
[0xf9, 0x0a],
[0xfa, 0x0a],
[0x1d, 0x07],
[0x1e, 0x07],
[0x1f, 0x07],
[0x20, 0x07],
[0x21, 0x07],
[0x22, 0x07],
[0x23, 0x07],
[0x24, 0x07],
[0x25, 0x07],
[0x26, 0x07],
[0x27, 0x07],
[0x28, 0x07],
[0x29, 0x07],
[0x2a, 0x07],
[0x2b, 0x07],
[0x2c, 0x07],
[0x2d, 0x07],
[0x2e, 0x07],
[0x2f, 0x07],
[0x30, 0x07],
[0x31, 0x07],
[0x32, 0x07],
[0x33, 0x07],
[0x34, 0x07],
[0x35, 0x07],
[0x36, 0x07],
[0x37, 0x07],
[0x38, 0x07],
[0x39, 0x07],
[0x3a, 0x07],
],
};
// List of valid locations to replace
//
// Can also act as a blacklist so those locations will be excluded
const valid = {
enabled: false,
isWhitelist: true,
locations: [
// All Kiryu model locations
0x16194,
0x181c0,
0x18c28,
0x17c14,
0x18c24,
0x18bb8,
0x161b4,
0x161b8,
0x18bbc,
0x18bc0,
0x18310,
0x161c0,
0x161cc,
0x161c4,
0x18c20,
0x189d4,
0x18ae0,
0x18e50,
],
};
module.exports = {
mode,
overwrite,
sameType,
singleModel,
randomModels,
exclusions,
blacklist,
valid,
};