diff --git a/ddra20+.html b/ddra20+.html index 7c1ea10..85e6201 100644 --- a/ddra20+.html +++ b/ddra20+.html @@ -495,7 +495,7 @@ ] } ]), - new Patcher("gamemdx.dll", "2022-02-02", [ + new Patcher("gamemdx.dll", "2022-02-02 (MDX-001)", [ { name: "Force enable fast/slow", patches: [{ offset: 0xA7A70, off: [0x8B, 0x41, 0x44], on: [0x31, 0xC0, 0x40] }], @@ -753,6 +753,250 @@ ], }, ]), + new Patcher("gamemdx.dll", "2022-02-02 (MDX-003)", [ + { + name: "Force enable fast/slow", + patches: [{ offset: 0x14B6D0, off: [0x8B, 0x41, 0x48, 0xC3, 0xCC, 0xCC], on: [0xB8, 0x01, 0x00, 0x00, 0x00, 0xC3] }], + }, + { + name: "Force background judgement", + patches: [{ offset: 0xDD750, off: [0x8B, 0x41, 0x44, 0xC3, 0xCC, 0xCC], on: [0xB8, 0x01, 0x00, 0x00, 0x00, 0xC3] }], + }, + { + name: "Force darkest background", + patches: [{ offset: 0xDE431, off: [0x75, 0x03, 0x33, 0xC0], on: [0x33, 0xC0, 0xB0, 0x03] }], + }, + { + name: "Opaque background for darkest background option", + tooltip: "This makes the darkest background option be 99% opaque, hiding the dancers and videos.", + patches: [{ offset: 0x2323D0, off: [0x66, 0x66, 0x66], on: [0xA4, 0x70, 0x7D] }], + }, + { + name: "Song Unlock", + patches: [ + { offset: 0xCEC32, off: [0x0F, 0x84], on: [0x90, 0xE9] }, + { offset: 0xCECC8, off: [0x32, 0xC0], on: [0xB0, 0x01] }, + { offset: 0xD060E, off: [0x0F, 0x8C], on: [0x90, 0xE9] }, + { offset: 0x229D08, off: [0x65], on: [0x62] }, + { offset: 0x229D18, off: [0x65], on: [0x62] }, + { offset: 0x229D20, off: [0x72], on: [0x62] }, + { offset: 0x229D28, off: [0x6C], on: [0x62] }, + { offset: 0x229D38, off: [0x6C], on: [0x62] }, + ] + }, + { + name: "Tutorial Skip", + danger: "Not recommended with cards on networks", + patches: [{ offset: 0x61E9B, off: [0x75], on: [0xEB] }], + }, + { + name: "Timer Freeze", + patches: [{ offset: 0x32430, off: [0x74], on: [0xEB] }], + }, + { + name: "Force unlock extended paseli exclusive options", + tooltip: "Premium mode options such as ARROW COLOR and 0.25 speed mod", + danger: "Not recommended with cards on networks", + patches: [ + { offset: 0x82606, off: [0x8B, 0xCB, 0xFF, 0x15, 0x92], on: [0xE9, 0xAF, 0x00, 0x00, 0x00] }, + { offset: 0x82805, off: [0x49, 0x8B], on: [0xEB, 0x44] }, + ] + }, + { + name: "Enable extended speed modifiers", + tooltip: "x4.25/x7.75", + patches: [{ offset: 0xDDA4D, off: [0x0F, 0x8F, 0x80, 0x00, 0x00, 0x00], on: [0x90, 0x90, 0x90, 0x90, 0x90, 0x90] }], + }, + { + name: "Enable LIFE8 modifier", + tooltip: "Must be in premium mode to select", + patches: [ + { offset: 0xDDAA1, off: [0x74, 0x1D], on: [0x90, 0x90] }, + { offset: 0xDDAA5, off: [0x74, 0x2C], on: [0x90, 0x90] }, + { offset: 0xDDAA9, off: [0x74, 0x28], on: [0x90, 0x90] }, + { offset: 0xDDAAD, off: [0x74, 0x24], on: [0x90, 0x90] }, + ] + }, + { + name: "PFC Mode", + tooltip: "Like Extra Encore Stage. If you hit a Great or a Good, you lose a life. This feature requires you to select LIFE8/LIFE4/RISKY on the Options, otherwise it has no effect.", + patches: [{ offset: 0xDE35D, off: [0x0F, 0x9C, 0xC0], on: [0xB0, 0x01, 0x90] }], + }, + { + name: "MFC Mode", + tooltip: "Like PFC Mode with Marvelous' only. Requires PFC Mode to be enabled.", + patches: [{ offset: 0xDE339, off: [0x02], on: [0x01] }], + }, + { + name: "Hide all bottom text", + tooltip: "Such as EVENT MODE, PASELI, COIN, CREDIT, MAINTENANCE", + patches: [{ offset: 0x19C710, off: [0x45, 0x56, 0x45, 0x4E, 0x54, 0x20, 0x4D, 0x4F, 0x44, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x52, 0x45, 0x45, 0x20, 0x50, 0x4C, 0x41, 0x59, 0x00, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x54, 0x4F, 0x4B, 0x45, 0x4E, 0x00, 0x00, 0x00, 0x43, 0x4F, 0x49, 0x4E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x25, 0x73, 0x25, 0x73, 0x3A, 0x25, 0x32, 0x64, 0x2F, 0x25, 0x32, 0x64, 0x00, 0x00, 0x00, 0x00, 0x43, 0x52, 0x45, 0x44, 0x49, 0x54, 0x25, 0x73, 0x3A, 0x25, 0x32, 0x64, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x00, 0x00, 0x50, 0x41, 0x53, 0x45, 0x4C, 0x49, 0x3A, 0x20, 0x25, 0x73, 0x20, 0x2B, 0x20, 0x25, 0x73, 0x00, 0x50, 0x41, 0x53, 0x45, 0x4C, 0x49, 0x3A, 0x20, 0x25, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x58, 0x54, 0x52, 0x41, 0x20, 0x50, 0x41, 0x53, 0x45, 0x4C, 0x49, 0x3A, 0x20, 0x25, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x41, 0x53, 0x45, 0x4C, 0x49, 0x3A, 0x20, 0x4E, 0x4F, 0x54, 0x20, 0x41, 0x56, 0x41, 0x49, 0x4C, 0x41, 0x42, 0x4C, 0x45, 0x00, 0x00, 0x00, 0x4C, 0x4F, 0x43, 0x41, 0x4C, 0x20, 0x4D, 0x4F, 0x44, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x46, 0x46, 0x4C, 0x49, 0x4E, 0x45, 0x20, 0x4D, 0x4F, 0x44, 0x45, 0x00, 0x00, 0x00, 0x00, 0x4D, 0x41, 0x49, 0x4E, 0x54, 0x45, 0x4E, 0x41, 0x4E, 0x43, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x45, 0x43, 0x4B, 0x49, 0x4E, 0x47, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x45, 0x43, 0x4B, 0x49, 0x4E, 0x47, 0x2E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x45, 0x43, 0x4B, 0x49, 0x4E, 0x47, 0x2E, 0x2E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x48, 0x45, 0x43, 0x4B, 0x49, 0x4E, 0x47, 0x2E, 0x2E, 0x2E, 0x00, 0x4F, 0x4E, 0x4C, 0x49, 0x4E, 0x45, 0x00, 0x00, 0x45, 0x52, 0x52, 0x4F, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4E, 0x4F, 0x54, 0x20, 0x41, 0x56, 0x41, 0x49, 0x4C, 0x41, 0x42, 0x4C, 0x45], on: [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] }], + }, + { + name: "Force Cabinet Type 6", + tooltip: "Gold cab, some assets (such as menu background) may not work", + patches: [ + { offset: 0x107CC, off: [0x02], on: [0x06] }, + { offset: 0x107E9, off: [0x0F, 0x88], on: [0x90, 0xE9] }, + ] + }, + { + name: "Enable cabinet lights for Cabinet Type 6", + patches: [ + { offset: 0xD4F4, off: [0xE8, 0xC7, 0x32, 0x00, 0x00], on: [0xB8, 0x00, 0x00, 0x00, 0x00] }, + { offset: 0x37BDE, off: [0xE8, 0xDD, 0x8B, 0xFD, 0xFF], on: [0xB8, 0x00, 0x00, 0x00, 0x00] }, + { offset: 0x382C7, off: [0xE8, 0xF4, 0x84, 0xFD, 0xFF], on: [0xB8, 0x00, 0x00, 0x00, 0x00] }, + ] + }, + { + name: "Enable DDR SELECTION", + tooltip: "Even works in offline/local mode!", + patches: [{ offset: 0xDBEDB, off: [0x32, 0xC0], on: [0xB0, 0x01] }], + }, + { + name: "PFREE - Force 2nd stage forever", + danger: "Breaks score saving unless the patch below is also enabled.", + patches: [ + { offset: 0x24D3F, off: [0x01], on: [0x00] }, + { offset: 0x24D4D, off: [0xFF, 0x41, 0x08, 0x45, 0x33, 0xC0], on: [0xE9, 0x93, 0xEE, 0x14, 0x00, 0x90] }, + { offset: 0x173BE5, off: [0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC], on: [0xC7, 0x41, 0x08, 0x01, 0x00, 0x00, 0x00, 0x45, 0x33, 0xC0, 0xE9, 0x5F, 0x11, 0xEB, 0xFF] }, + ] + }, + { + name: "PFREE score saving", + danger: "Make sure your network supports this before enabling.", + tooltip: "Bug: ghost score pacemaker indicator doesn't reload in the same round if a new best is achieved", + patches: [ + { offset: 0x148D6, off: [0xFF, 0xE1], on: [0x90, 0x90] }, + { offset: 0x1491F, off: [0x74, 0x69], on: [0x90, 0x90] }, + ] + }, + { + name: "Mute Announcer", + tooltip: "Also mutes crowd cheering and booing during gameplay", + patches: [ + { offset: 0x34ED9, off: [0x0F, 0x84], on: [0x90, 0xE9] }, + { offset: 0x21979F, off: [0x76], on: [0x62] }, + { offset: 0x2197BF, off: [0x76], on: [0x62] }, + ] + }, + { + name: "Force DDR SELECTION theme everywhere", + tooltip: "Skips intro and enables the skin selected below on all songs", + patches: [ + { offset: 0x30D86, off: [0x0F, 0x84], on: [0x90, 0xE9] }, + { offset: 0xB7212, off: [0x75, 0x35], on: [0x90, 0x90] }, + { offset: 0xB721A, off: [0x74], on: [0xEB] }, + ] + }, + { + type : "union", + name : "Choose forced theme", + offset : 0xB7245, + patches : [ + { + name : "1st", + patch : [0x01], + }, + { + name : "EXTREME", + patch : [0x02], + }, + { + name : "SuperNOVA2", + patch : [0x03], + }, + { + name : "X2", + patch : [0x04], + }, + { + name : "2013", + patch : [0x05], + }, + ] + }, + { + type : "union", + name : "Choose cabinet type timing offset", + offset : 0x21BBE, + patches : [ + { + name : "Default", + patch : [0xE8, 0xFD, 0xEB, 0xFE, 0xFF], + }, + { + name : "Force CRT 945 p3io timing", + patch : [0xB8, 0x00, 0x00, 0x00, 0x00], + }, + { + name : "Force LCD 945 p3io timing", + patch : [0xB8, 0x01, 0x00, 0x00, 0x00], + }, + { + name : "Force LCD HM64 p4io timing", + patch : [0xB8, 0x02, 0x00, 0x00, 0x00], + }, + { + name : "Force CRT ADE-6291 p3io timing", + patch : [0xB8, 0x03, 0x00, 0x00, 0x00], + }, + { + name : "Force LCD ADE-6291 p3io timing", + patch : [0xB8, 0x04, 0x00, 0x00, 0x00], + }, + { + name : "Force LCD ADE-6291 p4io timing", + patch : [0xB8, 0x05, 0x00, 0x00, 0x00], + }, + { + name : "Force LCD ADE-6291 bio2 timing", + patch : [0xB8, 0x06, 0x00, 0x00, 0x00], + }, + ] + }, + { + name: "Center arrows for single player", + patches: [ + { offset: 0x4888B, off: [0x75], on: [0xEB] }, + { offset: 0x48B92, off: [0x4C, 0x0F, 0x45, 0xC9], on: [0x90, 0x90, 0x90, 0x90] }, + { offset: 0x491E4, off: [0x8B, 0x5C, 0x24, 0x38, 0xEB, 0x24, 0x8B, 0xDF, 0x89, 0x5C, 0x24, 0x38], on: [0xBB, 0xEF, 0x01, 0x00, 0x00, 0x89, 0x5C, 0x24, 0x38, 0xEB, 0x1F, 0x90] }, + { offset: 0x492C9, off: [0xEB, 0x16, 0x48, 0x89, 0x44, 0x24, 0x38, 0x48, 0x89, 0x44, 0x24, 0x40], on: [0xC7, 0x44, 0x24, 0x38, 0xEF, 0x01, 0x00, 0x00, 0xEB, 0x0E, 0x90, 0x90] }, + ] + }, + { + type : "union", + name : "Fullscreen FPS Target", + danger: "Experimental: fast animations and menu scrolling", + offset : 0x15F8, + patches : [ + { + name : "60 FPS", + patch : [0x3C, 0x00, 0x00, 0x00], + }, + { + name : "120 FPS", + patch : [0x78, 0x00, 0x00, 0x00], + }, + { + name : "144 FPS", + patch : [0x90, 0x00, 0x00, 0x00], + }, + { + name : "165 FPS", + patch : [0xA5, 0x00, 0x00, 0x00], + }, + { + name : "240 FPS", + patch : [0xF0, 0x00, 0x00, 0x00], + }, + { + name : "360 FPS", + patch : [0x68, 0x01, 0x00, 0x00], + }, + ] + }, + ]), ]); });