diff options
-rw-r--r-- | Patcher.cpp | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/Patcher.cpp b/Patcher.cpp index d8ad155..8196d21 100644 --- a/Patcher.cpp +++ b/Patcher.cpp @@ -17,7 +17,7 @@ void write_pos(std::streampos pos, uint8_t value) wow_exe << value; } -void write_pos(std::streampos pos, std::vector<uint8_t> values) +void write_pos(std::streampos pos, std::vector<uint8_t> const& values) { wow_exe.clear(); wow_exe.seekg(0); @@ -44,10 +44,10 @@ int main(int argc, char** argv) return 1; } - wow_exe = std::fstream(wow, std::ios::in | std::ios::out | std::ios::binary); - wow = argv[1]; + wow_exe = std::fstream(wow, std::ios::in | std::ios::out | std::ios::binary); + if (!wow_exe) { std::cout << "World of Warcraft exe not found!\n"; @@ -71,21 +71,21 @@ int main(int argc, char** argv) // mouse flickering and camera snapping issue when mouse has high report rate // credits to bonbigz - { - write_pos(0x369A2F, { 0x8B, 0x15, 0xF8, 0x13, 0xD4, 0x00, 0x8B, 0x1D, 0xFC, 0x13, 0xD4, 0x00 }); - write_pos(0x369A2C, { 0xE9, 0x71, 0xF0, 0x0B, 0x00 }); - write_pos(0x428AA2, { 0x8D, 0x4D, 0xF0, 0x51, 0x57, 0xFF, 0x15, 0xDC, 0xF5, 0x9D, 0x00, 0x8B, 0x45, 0xF0, 0x8B, 0x15, 0xF8, 0x13, 0xD4, 0x00, 0xE9, 0x7A, 0x0F, 0xF4, 0xFF }); - write_pos(0x3691B0, { 0x55, 0x89, 0xE5, 0x8B, 0x05, 0xFC, 0x13, 0xD4, 0x00, 0x8B, 0x0D, 0xF8, 0x13, 0xD4, 0x00, 0xEB, 0xC2, 0x7D, 0x03, 0x83, 0xC1, 0x01, 0x83, 0xC0, 0x32, 0x83, 0xC1, 0x32, 0x3B, 0x0D, 0xEC, 0xBC, 0xCA, 0x00, 0x7E, 0x03, 0x83, 0xE9, 0x01, 0x3B, 0x05, 0xF0, 0xBC, 0xCA, 0x00, 0x7E, 0x03, 0x83, 0xE8, 0x01, 0x83, 0xE9, 0x32, 0x83, 0xE8, 0x32, 0x89, 0x0D, 0xF8, 0x13, 0xD4, 0x00, 0x89, 0x05, 0xFC, 0x13, 0xD4, 0x00, 0x89, 0xEC, 0x5D, 0xE9, 0xB4, 0xF7, 0xFF, 0xFF }); - write_pos(0x369183, { 0x83, 0xF8, 0x32, 0x7D, 0x03, 0x83, 0xC0, 0x01, 0x83, 0xF9, 0x32, 0xEB, 0x31 }); - } - - // naked character issue + //{ + // write_pos(0x369A2F, { 0x8B, 0x15, 0xF8, 0x13, 0xD4, 0x00, 0x8B, 0x1D, 0xFC, 0x13, 0xD4, 0x00 }); + // write_pos(0x369A2C, { 0xE9, 0x71, 0xF0, 0x0B, 0x00 }); + // write_pos(0x428AA2, { 0x8D, 0x4D, 0xF0, 0x51, 0x57, 0xFF, 0x15, 0xDC, 0xF5, 0x9D, 0x00, 0x8B, 0x45, 0xF0, 0x8B, 0x15, 0xF8, 0x13, 0xD4, 0x00, 0xE9, 0x7A, 0x0F, 0xF4, 0xFF }); + // write_pos(0x3691B0, { 0x55, 0x89, 0xE5, 0x8B, 0x05, 0xFC, 0x13, 0xD4, 0x00, 0x8B, 0x0D, 0xF8, 0x13, 0xD4, 0x00, 0xEB, 0xC2, 0x7D, 0x03, 0x83, 0xC1, 0x01, 0x83, 0xC0, 0x32, 0x83, 0xC1, 0x32, 0x3B, 0x0D, 0xEC, 0xBC, 0xCA, 0x00, 0x7E, 0x03, 0x83, 0xE9, 0x01, 0x3B, 0x05, 0xF0, 0xBC, 0xCA, 0x00, 0x7E, 0x03, 0x83, 0xE8, 0x01, 0x83, 0xE9, 0x32, 0x83, 0xE8, 0x32, 0x89, 0x0D, 0xF8, 0x13, 0xD4, 0x00, 0x89, 0x05, 0xFC, 0x13, 0xD4, 0x00, 0x89, 0xEC, 0x5D, 0xE9, 0xB4, 0xF7, 0xFF, 0xFF }); + // write_pos(0x369183, { 0x83, 0xF8, 0x32, 0x7D, 0x03, 0x83, 0xC0, 0x01, 0x83, 0xF9, 0x32, 0xEB, 0x31 }); + //} + + //// naked character issue write_pos(0x1DDC5D, 0xEB); - // patches missiles impacting with terrain + //// patches missiles impacting with terrain write_pos(0x1FC99E, 0x00); write_pos(0x1FC8C7, 0x00); - write_pos(0x01FC735, 0x00); + write_pos(0x1FC735, 0x00); std::cout << "World of Warcraft exe has been patched!\n"; return 0; |