Compare commits

...

2 Commits

Author SHA1 Message Date
056dd70ab7 整理初版 2026-05-08 19:03:47 +08:00
a605fb2bea 整理初版 2026-05-08 19:03:33 +08:00
357 changed files with 122 additions and 7318 deletions

1
.gitignore vendored
View File

@@ -30,3 +30,4 @@ Thumbs.db
*~ *~
3rd/ 3rd/
lib/ lib/
compile_commands.json

21
README.md Normal file
View File

@@ -0,0 +1,21 @@
# DnfProject / Aurora
本仓库是 `Aurora` 共享库项目,使用 xmake 构建 32 位 Linux 目标。
## 目录结构
- `src/core/`入口、控制器、调度、Hook、主流程。
- `src/script/`Squirrel 绑定、脚本注册、脚本请求相关代码。
- `src/net/`socket、DIO、HTTP/异步网络相关代码。
- `src/db/`MySQL 连接池和数据库封装。
- `src/sdk/`:游戏 SDK、结构体、枚举、协议对象。
- `src/utils/`通用工具、编码、IO、BASE64、Singleton。
- `third_party/`:随项目保存的第三方头文件或源码。
- `3rd/``lib/`:本地第三方库和二进制依赖目录,默认不纳入 Git 跟踪。
## 构建方式
本机工作区通常是远程目录挂载,实际编译环境在 `192.168.200.110` 上。请使用 SSH 到远端执行 xmake。
详细命令见 `docs/build-remote.md`
更多清理边界说明见 docs/cleanup-notes.md。

View File

@@ -1,326 +0,0 @@
[
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/CConnectPool.cpp.o", "src/CConnectPool.cpp"],
"file": "src/CConnectPool.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/controller.cpp.o", "src/controller.cpp"],
"file": "src/controller.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/df_main.cpp.o", "src/df_main.cpp"],
"file": "src/df_main.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/dispatch.cpp.o", "src/dispatch.cpp"],
"file": "src/dispatch.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/l_socket.cpp.o", "src/l_socket.cpp"],
"file": "src/l_socket.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/l_squirrel.cpp.o", "src/l_squirrel.cpp"],
"file": "src/l_squirrel.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/Tool.cpp.o", "src/Tool.cpp"],
"file": "src/Tool.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/archtraits.cpp.o", "src/asmjit/core/archtraits.cpp"],
"file": "src/asmjit/core/archtraits.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/assembler.cpp.o", "src/asmjit/core/assembler.cpp"],
"file": "src/asmjit/core/assembler.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/builder.cpp.o", "src/asmjit/core/builder.cpp"],
"file": "src/asmjit/core/builder.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/codeholder.cpp.o", "src/asmjit/core/codeholder.cpp"],
"file": "src/asmjit/core/codeholder.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/codewriter.cpp.o", "src/asmjit/core/codewriter.cpp"],
"file": "src/asmjit/core/codewriter.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/compiler.cpp.o", "src/asmjit/core/compiler.cpp"],
"file": "src/asmjit/core/compiler.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/constpool.cpp.o", "src/asmjit/core/constpool.cpp"],
"file": "src/asmjit/core/constpool.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/cpuinfo.cpp.o", "src/asmjit/core/cpuinfo.cpp"],
"file": "src/asmjit/core/cpuinfo.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/emithelper.cpp.o", "src/asmjit/core/emithelper.cpp"],
"file": "src/asmjit/core/emithelper.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/emitter.cpp.o", "src/asmjit/core/emitter.cpp"],
"file": "src/asmjit/core/emitter.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/emitterutils.cpp.o", "src/asmjit/core/emitterutils.cpp"],
"file": "src/asmjit/core/emitterutils.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/environment.cpp.o", "src/asmjit/core/environment.cpp"],
"file": "src/asmjit/core/environment.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/errorhandler.cpp.o", "src/asmjit/core/errorhandler.cpp"],
"file": "src/asmjit/core/errorhandler.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/formatter.cpp.o", "src/asmjit/core/formatter.cpp"],
"file": "src/asmjit/core/formatter.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/func.cpp.o", "src/asmjit/core/func.cpp"],
"file": "src/asmjit/core/func.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/funcargscontext.cpp.o", "src/asmjit/core/funcargscontext.cpp"],
"file": "src/asmjit/core/funcargscontext.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/globals.cpp.o", "src/asmjit/core/globals.cpp"],
"file": "src/asmjit/core/globals.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/inst.cpp.o", "src/asmjit/core/inst.cpp"],
"file": "src/asmjit/core/inst.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/jitallocator.cpp.o", "src/asmjit/core/jitallocator.cpp"],
"file": "src/asmjit/core/jitallocator.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/jitruntime.cpp.o", "src/asmjit/core/jitruntime.cpp"],
"file": "src/asmjit/core/jitruntime.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/logger.cpp.o", "src/asmjit/core/logger.cpp"],
"file": "src/asmjit/core/logger.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/operand.cpp.o", "src/asmjit/core/operand.cpp"],
"file": "src/asmjit/core/operand.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/osutils.cpp.o", "src/asmjit/core/osutils.cpp"],
"file": "src/asmjit/core/osutils.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/ralocal.cpp.o", "src/asmjit/core/ralocal.cpp"],
"file": "src/asmjit/core/ralocal.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/rapass.cpp.o", "src/asmjit/core/rapass.cpp"],
"file": "src/asmjit/core/rapass.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/rastack.cpp.o", "src/asmjit/core/rastack.cpp"],
"file": "src/asmjit/core/rastack.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/string.cpp.o", "src/asmjit/core/string.cpp"],
"file": "src/asmjit/core/string.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/support.cpp.o", "src/asmjit/core/support.cpp"],
"file": "src/asmjit/core/support.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/target.cpp.o", "src/asmjit/core/target.cpp"],
"file": "src/asmjit/core/target.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/type.cpp.o", "src/asmjit/core/type.cpp"],
"file": "src/asmjit/core/type.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/virtmem.cpp.o", "src/asmjit/core/virtmem.cpp"],
"file": "src/asmjit/core/virtmem.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/zone.cpp.o", "src/asmjit/core/zone.cpp"],
"file": "src/asmjit/core/zone.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/zonehash.cpp.o", "src/asmjit/core/zonehash.cpp"],
"file": "src/asmjit/core/zonehash.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/zonelist.cpp.o", "src/asmjit/core/zonelist.cpp"],
"file": "src/asmjit/core/zonelist.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/zonestack.cpp.o", "src/asmjit/core/zonestack.cpp"],
"file": "src/asmjit/core/zonestack.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/zonetree.cpp.o", "src/asmjit/core/zonetree.cpp"],
"file": "src/asmjit/core/zonetree.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/core/zonevector.cpp.o", "src/asmjit/core/zonevector.cpp"],
"file": "src/asmjit/core/zonevector.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64assembler.cpp.o", "src/asmjit/arm/a64assembler.cpp"],
"file": "src/asmjit/arm/a64assembler.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64builder.cpp.o", "src/asmjit/arm/a64builder.cpp"],
"file": "src/asmjit/arm/a64builder.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64compiler.cpp.o", "src/asmjit/arm/a64compiler.cpp"],
"file": "src/asmjit/arm/a64compiler.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64emithelper.cpp.o", "src/asmjit/arm/a64emithelper.cpp"],
"file": "src/asmjit/arm/a64emithelper.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64formatter.cpp.o", "src/asmjit/arm/a64formatter.cpp"],
"file": "src/asmjit/arm/a64formatter.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64func.cpp.o", "src/asmjit/arm/a64func.cpp"],
"file": "src/asmjit/arm/a64func.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64instapi.cpp.o", "src/asmjit/arm/a64instapi.cpp"],
"file": "src/asmjit/arm/a64instapi.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64instdb.cpp.o", "src/asmjit/arm/a64instdb.cpp"],
"file": "src/asmjit/arm/a64instdb.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64operand.cpp.o", "src/asmjit/arm/a64operand.cpp"],
"file": "src/asmjit/arm/a64operand.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/a64rapass.cpp.o", "src/asmjit/arm/a64rapass.cpp"],
"file": "src/asmjit/arm/a64rapass.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/arm/armformatter.cpp.o", "src/asmjit/arm/armformatter.cpp"],
"file": "src/asmjit/arm/armformatter.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86assembler.cpp.o", "src/asmjit/x86/x86assembler.cpp"],
"file": "src/asmjit/x86/x86assembler.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86builder.cpp.o", "src/asmjit/x86/x86builder.cpp"],
"file": "src/asmjit/x86/x86builder.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86compiler.cpp.o", "src/asmjit/x86/x86compiler.cpp"],
"file": "src/asmjit/x86/x86compiler.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86emithelper.cpp.o", "src/asmjit/x86/x86emithelper.cpp"],
"file": "src/asmjit/x86/x86emithelper.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86formatter.cpp.o", "src/asmjit/x86/x86formatter.cpp"],
"file": "src/asmjit/x86/x86formatter.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86func.cpp.o", "src/asmjit/x86/x86func.cpp"],
"file": "src/asmjit/x86/x86func.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86instapi.cpp.o", "src/asmjit/x86/x86instapi.cpp"],
"file": "src/asmjit/x86/x86instapi.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86instdb.cpp.o", "src/asmjit/x86/x86instdb.cpp"],
"file": "src/asmjit/x86/x86instdb.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86operand.cpp.o", "src/asmjit/x86/x86operand.cpp"],
"file": "src/asmjit/x86/x86operand.cpp"
},
{
"directory": "/home/Project/dps",
"arguments": ["/usr/bin/g++", "-c", "-fPIC", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-std=c++11", "-Iinclude", "-Isrc", "-Isrc/sdk", "-I3rd/squirrel/include", "-I3rd/asio/include", "-I3rd/openssl/include", "-I/usr/local/opencc-32bit/include", "-I/usr/local/keystone-32bit/include", "-DASMJIT_STATIC", "-m32", "-static-libgcc", "-static-libstdc++", "-Wno-pointer-arith", "-Wdeprecated-declarations", "-fvisibility=hidden", "-fno-asynchronous-unwind-tables", "-fpic", "-fexceptions", "-Wno-int-to-pointer-cast", "-o", "build/obj/Aurora/linux/i386/release/src/asmjit/x86/x86rapass.cpp.o", "src/asmjit/x86/x86rapass.cpp"],
"file": "src/asmjit/x86/x86rapass.cpp"
}]

41
docs/build-remote.md Normal file
View File

@@ -0,0 +1,41 @@
# 远程编译验证
本机只编辑挂载的远程工作区,实际编译在 CentOS 7 编译机上完成。
## 远端环境
- SSH`root@192.168.200.110`
- 项目目录:`/home/Project/dps`
- xmake`/root/.local/bin/xmake`
- 构建目标:`Aurora`
## 常用命令
配置 debug 构建:
```bash
ssh root@192.168.200.110 "cd /home/Project/dps && /root/.local/bin/xmake f -m debug"
```
编译 Aurora
```bash
ssh root@192.168.200.110 "cd /home/Project/dps && /root/.local/bin/xmake build Aurora"
```
一次性配置并编译:
```bash
ssh root@192.168.200.110 "cd /home/Project/dps && /root/.local/bin/xmake f -m debug && /root/.local/bin/xmake build Aurora"
```
## 已知环境提示
SSH 登录时可能出现:
```text
/etc/profile.d/dps-java.sh: line 3: export
JAVA_HOME="/java_env/jdk1.8.0_161": No such file or directory
```
这是远端环境脚本的已知噪音。只要 xmake 返回成功并显示 `build ok`,本项目构建验证视为通过。

45
docs/cleanup-notes.md Normal file
View File

@@ -0,0 +1,45 @@
# 清理说明
本文件记录项目整理后的依赖边界,避免后续误删构建必需内容。
## 已验证可清理
以下内容已删除,并通过远程 `xmake build Aurora` 验证:
- `compile_commands.json`:生成文件,已加入 `.gitignore`
- `src/CMakeLists.txt`:旧 CMake 入口,当前只维护 `xmake.lua`
- `src/net/httplib.h`:未被源码引用。
- `src/core/Hook_1.hpp`:未被源码引用。
- `src/core/ffitest.h`:未被源码引用。
- `src/sdk/dp2_sdk_c.h`:未被源码引用。
- `192.168.200.110/`:空目录,非项目内容。
## 当前构建必需
以下路径被 `xmake.lua` 或源码直接依赖,不能直接删除:
- `3rd/squirrel`Squirrel 头文件和静态库。
- `3rd/asio`Asio 头文件。
- `3rd/openssl`OpenSSL 头文件和静态库。
- `3rd/frida`Frida 静态库。
- `3rd/zlib`zlib 静态库。
- `/usr/local/opencc-32bit`OpenCC 头文件和静态库。
- `/usr/local/keystone-32bit`Keystone 头文件和静态库。
- `/usr/local/libffi-32bit`libffi 静态库。
## 暂不物理删除
以下目录未被 Git 跟踪,可能是历史构建副本或离线备份。本次不删除:
- `lib/`
- `3rd/mysql`
- `3rd/opencc`
- `3rd/keystone`
- `3rd/libffi`
如果未来要继续瘦身,建议先在远端确认没有手工脚本、部署流程或旧构建流程引用这些目录,再单独清理。
## 已确认移除
- src/db/CConnectPool.cpp 和 src/db/CConnectPool.h连接池实现已确认无脚本使用。
- Sq_CreatCConnectPool 和 Sq_MysqlExecNoRet对应 Squirrel API 已移除。
- 3rd/mysql、lib/mysql当前源码和 xmake 已无直接引用,仍作为未跟踪历史副本暂不物理删除。

View File

@@ -1,90 +0,0 @@
#pragma once
#ifndef CCONNECT_POOL_H_2021
#define CCONNECT_POOL_H_2021
#include <stdio.h>
#include <stdlib.h>
#include <queue>
#include <set>
#include <pthread.h>
#include <unistd.h>
#include "mysql/mysql.h"
class CConnectPool
{
public:
struct Connect_Info
{
int MinConnectCount;
int MaxConnectCount;
const char *Host;
int Port;
const char *Account;
const char *Passwd;
const char* KName;
};
Connect_Info My_Info;
public:
/**
* @brief 创建连接池 \n
* 在主线程中创建连接池创建后需要调用FreePool予以释放
* 创建失败程序会打印错误信息并终止运行
*/
static void
CreatePool(int MinConnectCount, int MaxConnectCount, const char *Host, int Port, const char *Account, const char *Passwd);
/**
* @brief 释放连接池 \n
* 需要在主线程中调用该接口
*/
static void FreePool();
/**
* @brief 获取连接 \n
* 支持多线程使用完成后需调用PutConnect归还连接本函数为阻塞函数直到有可用连接才调用返回
* @return 返回数据库连接
* --NULL表示调用失败
*/
static MYSQL *GetConnect();
/**
* @brief 获取连接 \n
* 支持多线程使用完成后需调用PutConnect归还连接本函数调用后立刻返回若没有空闲连接则返回NULL
* @return 返回数据库连接
* --NULL表示调用失败
* */
static MYSQL *TryGetConnect();
/**
* @brief 向连接池归还连接 \n
* 支持多线程
* @param[in] pConn 需要归还的数据库连接
* */
static void PutConnect(MYSQL *pConn);
private:
CConnectPool();
~CConnectPool();
MYSQL *_GetConnect(bool bTry);
void _PutConnect(MYSQL *pConn);
// 真正创建连接
MYSQL *_CreateConnect();
static CConnectPool *s_pInstance;
std::queue<MYSQL *> m_queueFree; // 空闲队列
std::set<MYSQL *> m_setBusy; // 繁忙队列
pthread_mutex_t m_mutex;
pthread_cond_t m_cond;
};
#endif
/*
使用说明
CConnectPool::CreatePool();
MYSQL *sql = CConnectPool::GetConnect();
CConnectPool::PutConnect(sql);
CConnectPool::FreePool();
*/

View File

@@ -1,717 +0,0 @@
#pragma once
#include "controller.h"
typedef int (*fnCUser_CheckMoveTown)(void *CUser, unsigned int a2);
typedef int (*fnWongWork_CDungeonClear_getClearedDungeonDiff)(void *thisC, short a2);
typedef signed int (*fnCUser_use_stackable)(void *CUser, short a2, void *a3, int a4, int a5);
typedef int (*fnWongWork_CItemUpgrade_Separate__DoProcUpgrade)(void *thisC, void *CUser, void *a3, void *a4);
typedef int (*fnCUserCharacInfo_incCurCharacUsedFatigue)(void *thisC, unsigned short a2);
typedef int (*fnDisPatcher_BuyItem_get_data)(void *a1, void *a2, int a3, void *a4);
typedef bool (*fnDispatcher_BuyCeraShopItem_useCountDownCoinInFreeCoinDungeon)(int a1, void *CUser, int a3);
typedef int (*fnCParty_get_item)(void *thisC, void *CUser, int a4, bool a5, char a6, int *a7, unsigned char *a8, bool *a9);
typedef int (*fnCInventory_insertItemIntoInventory)(void **a1, __int64 a2, int a3, int a4, int a5, int a6, int a7, int a8, int a9, int a10, int a11, int a12, int a13, int a14, int a15, char a16, int a17, unsigned char a18, unsigned char a19);
typedef int (*fnCParty__onGetItem)(void *thisC, void *a2, unsigned int a3, int a4);
typedef int (*fnCUser_get_unique_id)(void *thisC);
typedef int (*fnCHackLog_OverDamage_GetDungeonLimitDamageAndHackType)(void *a1, _DWORD *a2, _DWORD *a3);
typedef int (*fnCDungeon_get_index)(void *CDungeon);
typedef int (*fnCUserCharacInfo_get_charac_level)(void *thisC);
typedef int (*fnCParty_getMonsterTotalExp)(void *thisC, unsigned int a2, char a3, int a4, float a5, float a6, bool a7);
typedef char *(*fnCParty_set_clear_reward_exp_parameter)(long double ExpAffectRate, void *thisC, void *a3, int a4, void *a5);
typedef int (*fnBingoEvent_sendOneMatchLineReward)(void *thisC, void *a2);
typedef int (*fnBingoEvent_sendMaxMatchLineReward)(void *thisC, void *a2);
typedef int (*fnCBattle_Field_add_monsters_current_map)(void *a1, int a2, int a3, void *a4, _DWORD *a5, int *a6, _DWORD *a7);
typedef int (*fnCDungeon_get_standard_level)(void *thisC);
typedef int (*fnCUser_isHumanCertified)(void *CUser);
typedef void (*fnDispatcher_ChangeAnotherSkillTree_send)(void *thisC, void *a2, void *a3);
typedef void (*fnCUser_AddDailyItem)(void *thisC);
typedef int (*fnGameWorld_leave_game_world)(int a1, void *thisC, void *a3);
typedef int (*fnCGameManager_user_exit)(int a1, void *mutex, void **a3);
typedef void (*fnGameWorld_send_chat_msg)(void *a1, void *a2, char a3, unsigned short a4, int a5, char *dest, size_t n, void *src, size_t a9, int a10);
typedef int (*fnGameWorld_IsForbiddenChat)(void *thisC, char *s);
typedef void (*fnCUser_quest_action)(void **thisC, int a2, void *a3, int a4, int a5);
typedef int (*fnCParty_get_dungeon_clear_state)(void *thisC);
typedef int (*fnCParty_SetPlayResult)(void *thisC, void *a2);
typedef int (*fnBestClearTime_getBestClearTime)(void *thisC, char a2, int a3);
SUBHOOK_INIT(CUser_CheckMoveTown, 0x8678526);
SUBHOOK_INIT(WongWork_CDungeonClear_getClearedDungeonDiff, 0x85BF96C);
SUBHOOK_INIT(CUser_use_stackable, 0x865E0AE);
SUBHOOK_INIT(WongWork_CItemUpgrade_Separate__DoProcUpgrade, 0x811E468);
SUBHOOK_INIT(CUserCharacInfo_incCurCharacUsedFatigue, 0x8696422);
SUBHOOK_INIT(DisPatcher_BuyItem_get_data, 0x81BE658);
SUBHOOK_INIT(Dispatcher_BuyCeraShopItem_useCountDownCoinInFreeCoinDungeon, 0x81FE4B8);
SUBHOOK_INIT(CParty_get_item, 0x85A3B98);
SUBHOOK_INIT(CInventory_insertItemIntoInventory, 0x8502D86);
SUBHOOK_INIT(CParty__onGetItem, 0x85B949C);
SUBHOOK_INIT(CUser_get_unique_id, 0x80DA37C);
SUBHOOK_INIT(CHackLog_OverDamage_GetDungeonLimitDamageAndHackType, 0x8286790);
SUBHOOK_INIT(CDungeon_get_index, 0x80FDCF0);
SUBHOOK_INIT(CUserCharacInfo_get_charac_level, 0x80DA2B8);
SUBHOOK_INIT(CParty_getMonsterTotalExp, 0x85A23DC);
SUBHOOK_INIT(CParty_set_clear_reward_exp_parameter, 0x85ADB00);
SUBHOOK_INIT(BingoEvent_sendOneMatchLineReward, 0x80CA3D4);
SUBHOOK_INIT(BingoEvent_sendMaxMatchLineReward, 0x80CA622);
SUBHOOK_INIT(CBattle_Field_add_monsters_current_map, 0x830162E);
SUBHOOK_INIT(CDungeon_get_standard_level, 0x80F9810);
SUBHOOK_INIT(CUser_isHumanCertified, 0x823021A);
SUBHOOK_INIT(Dispatcher_ChangeAnotherSkillTree_send, 0x81D2134);
SUBHOOK_INIT(CUser_AddDailyItem, 0x8656CAA);
SUBHOOK_INIT(GameWorld_leave_game_world, 0x86C5288);
SUBHOOK_INIT(CGameManager_user_exit, 0x82985A8);
SUBHOOK_INIT(GameWorld_send_chat_msg, 0x86C975E);
SUBHOOK_INIT(GameWorld_IsForbiddenChat, 0x86CD908);
SUBHOOK_INIT(CUser_quest_action, 0x866DA8A);
SUBHOOK_INIT(CParty_get_dungeon_clear_state, 0x822D89C);
SUBHOOK_INIT(CParty_SetPlayResult, 0x85B2412);
SUBHOOK_INIT(BestClearTime_getBestClearTime, 0x80C8AC0);
int _CUser_CheckMoveTown(void *CUser, unsigned int a2)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
// 执行虚拟机 Main 函数
SQInteger Ret = -99;
SQInteger top = sq_gettop(v); // saves the stack size before the call
sq_pushroottable(v); // pushes the global table
sq_pushstring(v, _SC("Cb_CUser_CheckMoveTown"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{ // gets the fie123oo' from the global table
sq_pushroottable(v); // push the 'this' (in this case is the global table)
sq_pushuserpointer(v, CUser);
sq_pushinteger(v, a2);
sq_call(v, 3, SQTrue, SQTrue); // calls the function
sq_getinteger(v, -1, &Ret);
}
sq_settop(v, top); // restores the original stack size
if (Ret == -99)
return CUser_CheckMoveTown(CUser, a2);
else
return Ret;
}
int _WongWork_CDungeonClear_getClearedDungeonDiff(void *thisC, short a2)
{
int OldRet = WongWork_CDungeonClear_getClearedDungeonDiff(thisC, a2);
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
SQInteger Ret = -99;
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_WongWork_CDungeonClear_getClearedDungeonDiff"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushinteger(v, a2);
sq_pushinteger(v, OldRet);
sq_call(v, 4, SQTrue, SQTrue);
sq_getinteger(v, -1, &Ret);
}
sq_settop(v, top);
if (Ret == -99)
return OldRet;
else
return Ret;
}
signed int _CUser_use_stackable(void *CUser, short a2, void *a3, int a4, int a5)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CUser_use_stackable"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, CUser);
sq_pushinteger(v, a2);
sq_pushuserpointer(v, a3);
sq_pushinteger(v, a4);
sq_pushinteger(v, a5);
sq_call(v, 6, SQFalse, SQTrue);
}
sq_settop(v, top);
return CUser_use_stackable(CUser, a2, a3, a4, a5);
}
int _WongWork_CItemUpgrade_Separate__DoProcUpgrade(void *thisC, void *CUser, void *a3, void *a4)
{
int OldRet = WongWork_CItemUpgrade_Separate__DoProcUpgrade(thisC, CUser, a3, a4);
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger Ret = -99;
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_WongWork_CItemUpgrade_Separate__DoProcUpgrade"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushuserpointer(v, CUser);
sq_pushinteger(v, OldRet);
sq_pushuserpointer(v, a3);
sq_pushuserpointer(v, a4);
sq_call(v, 6, SQTrue, SQTrue);
sq_getinteger(v, -1, &Ret);
}
sq_settop(v, top);
if (Ret == -99)
return OldRet;
else
return Ret;
}
int _CUserCharacInfo_incCurCharacUsedFatigue(void *thisC, unsigned short a2)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CUserCharacInfo_incCurCharacUsedFatigue"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushinteger(v, a2);
sq_call(v, 3, SQFalse, SQTrue);
}
sq_settop(v, top);
return CUserCharacInfo_incCurCharacUsedFatigue(thisC, a2);
}
int _DisPatcher_BuyItem_get_data(void *a1, void *a2, int a3, void *a4)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_DisPatcher_BuyItem_get_data"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, a1);
sq_pushuserpointer(v, a2);
sq_pushinteger(v, a3);
sq_pushuserpointer(v, a4);
sq_call(v, 5, SQFalse, SQTrue);
}
sq_settop(v, top);
return DisPatcher_BuyItem_get_data(a1, a2, a3, a4);
}
bool _Dispatcher_BuyCeraShopItem_useCountDownCoinInFreeCoinDungeon(int a1, void *CUser, int a3)
{
int OldRet = Dispatcher_BuyCeraShopItem_useCountDownCoinInFreeCoinDungeon(a1, CUser, a3);
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger Ret = -99;
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_Dispatcher_BuyCeraShopItem_useCountDownCoinInFreeCoinDungeon"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushinteger(v, a1);
sq_pushuserpointer(v, CUser);
sq_pushinteger(v, a3);
sq_pushinteger(v, OldRet);
sq_call(v, 5, SQTrue, SQTrue);
sq_getinteger(v, -1, &Ret);
}
sq_settop(v, top);
if (Ret == -99)
return OldRet;
else
return Ret;
}
int _CParty_get_item(void *thisC, void *CUser, int a4, bool a5, char a6, int *a7, unsigned char *a8, bool *a9)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CParty_get_item"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushuserpointer(v, CUser);
sq_pushinteger(v, a4);
sq_pushbool(v, a5);
sq_pushinteger(v, a6);
sq_pushuserpointer(v, a7);
sq_pushuserpointer(v, a8);
sq_pushuserpointer(v, a9);
sq_call(v, 9, SQFalse, SQTrue);
}
sq_settop(v, top);
return CParty_get_item(thisC, CUser, a4, a5, a6, a7, a8, a9);
}
int _CInventory_insertItemIntoInventory(void **a1, __int64 a2, int a3, int a4, int a5, int a6, int a7, int a8, int a9, int a10, int a11, int a12, int a13, int a14, int a15, char a16, int a17, unsigned char a18, unsigned char a19)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CInventory_insertItemIntoInventory"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, a1);
sq_pushinteger(v, a2);
sq_pushinteger(v, a3);
sq_pushinteger(v, a4);
sq_pushinteger(v, a5);
sq_pushinteger(v, a6);
sq_pushinteger(v, a7);
sq_pushinteger(v, a8);
sq_pushinteger(v, a9);
sq_pushinteger(v, a10);
sq_pushinteger(v, a11);
sq_pushinteger(v, a12);
sq_pushinteger(v, a13);
sq_pushinteger(v, a14);
sq_pushinteger(v, a15);
sq_pushinteger(v, a16);
sq_pushinteger(v, a17);
sq_pushinteger(v, a18);
sq_pushinteger(v, a19);
sq_call(v, 20, SQFalse, SQTrue);
}
sq_settop(v, top);
return CInventory_insertItemIntoInventory(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19);
}
int _CParty__onGetItem(void *thisC, void *a2, unsigned int a3, int a4)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CParty__onGetItem"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushuserpointer(v, a2);
sq_pushinteger(v, a3);
sq_pushinteger(v, a4);
sq_call(v, 5, SQFalse, SQTrue);
}
sq_settop(v, top);
return CParty__onGetItem(thisC, a2, a3, a4);
}
int _CUser_get_unique_id(void *thisC)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CUser_get_unique_id"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_call(v, 2, SQFalse, SQTrue);
}
sq_settop(v, top);
return CUser_get_unique_id(thisC);
}
int _CHackLog_OverDamage_GetDungeonLimitDamageAndHackType(void *a1, _DWORD *a2, _DWORD *a3)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CHackLog_OverDamage_GetDungeonLimitDamageAndHackType"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, a1);
sq_pushuserpointer(v, a2);
sq_pushuserpointer(v, a3);
sq_call(v, 4, SQFalse, SQTrue);
}
sq_settop(v, top);
return CHackLog_OverDamage_GetDungeonLimitDamageAndHackType(a1, a2, a3);
}
int _CDungeon_get_index(void *CDungeon)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CDungeon_get_index"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, CDungeon);
sq_call(v, 2, SQFalse, SQTrue);
}
sq_settop(v, top);
return CDungeon_get_index(CDungeon);
}
int _CUserCharacInfo_get_charac_level(void *thisC)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CUserCharacInfo_get_charac_level"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_call(v, 2, SQFalse, SQTrue);
}
sq_settop(v, top);
return CUserCharacInfo_get_charac_level(thisC);
}
int _CParty_getMonsterTotalExp(void *thisC, unsigned int a2, char a3, int a4, float a5, float a6, bool a7)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CParty_getMonsterTotalExp"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushinteger(v, a2);
sq_pushinteger(v, a3);
sq_pushinteger(v, a4);
sq_pushfloat(v, a5);
sq_pushfloat(v, a6);
sq_pushbool(v, a7);
sq_call(v, 8, SQFalse, SQTrue);
}
sq_settop(v, top);
return CParty_getMonsterTotalExp(thisC, a2, a3, a4, a5, a6, a7);
}
char *_CParty_set_clear_reward_exp_parameter(long double ExpAffectRate, void *thisC, void *a3, int a4, void *a5)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CParty_set_clear_reward_exp_parameter"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushinteger(v, ExpAffectRate);
sq_pushuserpointer(v, thisC);
sq_pushuserpointer(v, a3);
sq_pushinteger(v, a4);
sq_pushuserpointer(v, a5);
sq_call(v, 6, SQFalse, SQTrue);
}
sq_settop(v, top);
return CParty_set_clear_reward_exp_parameter(ExpAffectRate, thisC, a3, a4, a5);
}
int _BingoEvent_sendOneMatchLineReward(void *thisC, void *a2)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_BingoEvent_sendOneMatchLineReward"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushuserpointer(v, a2);
sq_call(v, 3, SQFalse, SQTrue);
}
sq_settop(v, top);
return BingoEvent_sendOneMatchLineReward(thisC, a2);
}
int _BingoEvent_sendMaxMatchLineReward(void *thisC, void *a2)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_BingoEvent_sendMaxMatchLineReward"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushuserpointer(v, a2);
sq_call(v, 3, SQFalse, SQTrue);
}
sq_settop(v, top);
return BingoEvent_sendMaxMatchLineReward(thisC, a2);
}
int _CBattle_Field_add_monsters_current_map(void *a1, int a2, int a3, void *a4, _DWORD *a5, int *a6, _DWORD *a7)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CBattle_Field_add_monsters_current_map"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, a1);
sq_pushinteger(v, a2);
sq_pushinteger(v, a3);
sq_pushuserpointer(v, a4);
sq_pushuserpointer(v, a5);
sq_pushuserpointer(v, a6);
sq_pushuserpointer(v, a7);
sq_call(v, 8, SQFalse, SQTrue);
}
sq_settop(v, top);
return CBattle_Field_add_monsters_current_map(a1, a2, a3, a4, a5, a6, a7);
}
int _CDungeon_get_standard_level(void *thisC)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CDungeon_get_standard_level"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_call(v, 2, SQFalse, SQTrue);
}
sq_settop(v, top);
return CDungeon_get_standard_level(thisC);
}
int _CUser_isHumanCertified(void *CUser)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CUser_isHumanCertified"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, CUser);
sq_call(v, 2, SQFalse, SQTrue);
}
sq_settop(v, top);
return CUser_isHumanCertified(CUser);
}
void _Dispatcher_ChangeAnotherSkillTree_send(void *thisC, void *a2, void *a3)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_Dispatcher_ChangeAnotherSkillTree_send"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushuserpointer(v, a2);
sq_pushuserpointer(v, a3);
sq_call(v, 4, SQFalse, SQTrue);
}
sq_settop(v, top);
Dispatcher_ChangeAnotherSkillTree_send(thisC, a2, a3);
return;
}
void _CUser_AddDailyItem(void *thisC)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CUser_AddDailyItem"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_call(v, 2, SQFalse, SQTrue);
}
sq_settop(v, top);
CUser_AddDailyItem(thisC);
return;
}
int _GameWorld_leave_game_world(int a1, void *thisC, void *a3)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_GameWorld_leave_game_world"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushinteger(v, a1);
sq_pushuserpointer(v, thisC);
sq_pushuserpointer(v, a3);
sq_call(v, 4, SQFalse, SQTrue);
}
sq_settop(v, top);
return GameWorld_leave_game_world(a1, thisC, a3);
}
int _CGameManager_user_exit(int a1, void *mutex, void **a3)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CGameManager_user_exit"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushinteger(v, a1);
sq_pushuserpointer(v, mutex);
sq_pushuserpointer(v, a3);
sq_call(v, 4, SQFalse, SQTrue);
}
sq_settop(v, top);
return CGameManager_user_exit(a1, mutex, a3);
}
void _GameWorld_send_chat_msg(void *a1, void *a2, char a3, unsigned __int16 a4, int a5, char *dest, size_t n, void *src, size_t a9, int a10)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_GameWorld_send_chat_msg"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, a1);
sq_pushuserpointer(v, a2);
sq_pushinteger(v, a3);
sq_pushinteger(v, a4);
sq_pushinteger(v, a5);
sq_pushuserpointer(v, dest);
sq_pushinteger(v, n);
sq_pushuserpointer(v, src);
sq_pushinteger(v, a9);
sq_pushinteger(v, a10);
sq_call(v, 11, SQFalse, SQTrue);
}
sq_settop(v, top);
GameWorld_send_chat_msg(a1, a2, a3, a4, a5, dest, n, src, a9, a10);
return;
}
int _GameWorld_IsForbiddenChat(void *thisC, char *s)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_GameWorld_IsForbiddenChat"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushstring(v, s, -1);
sq_call(v, 3, SQFalse, SQTrue);
}
sq_settop(v, top);
return GameWorld_IsForbiddenChat(thisC, s);
}
void _CUser_quest_action(void **thisC, int a2, void *a3, int a4, int a5)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CUser_quest_action"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushinteger(v, a2);
sq_pushuserpointer(v, a3);
sq_pushinteger(v, a4);
sq_pushinteger(v, a5);
sq_call(v, 6, SQFalse, SQTrue);
}
sq_settop(v, top);
CUser_quest_action(thisC, a2, a3, a4, a5);
return;
}
int _CParty_get_dungeon_clear_state(void *thisC)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CParty_get_dungeon_clear_state"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_call(v, 2, SQFalse, SQTrue);
}
sq_settop(v, top);
return CParty_get_dungeon_clear_state(thisC);
}
int _CParty_SetPlayResult(void *thisC, void *a2)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_CParty_SetPlayResult"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushuserpointer(v, a2);
sq_call(v, 3, SQFalse, SQTrue);
}
sq_settop(v, top);
return CParty_SetPlayResult(thisC, a2);
}
int _BestClearTime_getBestClearTime(void *thisC, char a2, int a3)
{
std::lock_guard<std::recursive_mutex> lock(SqMtx);
SQInteger top = sq_gettop(v);
sq_pushroottable(v);
sq_pushstring(v, _SC("Cb_BestClearTime_getBestClearTime"), -1);
if (SQ_SUCCEEDED(sq_get(v, -2)))
{
sq_pushroottable(v);
sq_pushuserpointer(v, thisC);
sq_pushinteger(v, a2);
sq_pushinteger(v, a3);
sq_call(v, 4, SQFalse, SQTrue);
}
sq_settop(v, top);
return BestClearTime_getBestClearTime(thisC, a2, a3);
}
void OpenHook1()
{
SUBHOOK_SETUP(CUser_CheckMoveTown);
SUBHOOK_SETUP(WongWork_CDungeonClear_getClearedDungeonDiff);
SUBHOOK_SETUP(CUser_use_stackable);
SUBHOOK_SETUP(WongWork_CItemUpgrade_Separate__DoProcUpgrade);
SUBHOOK_SETUP(CUserCharacInfo_incCurCharacUsedFatigue);
SUBHOOK_SETUP(DisPatcher_BuyItem_get_data);
SUBHOOK_SETUP(Dispatcher_BuyCeraShopItem_useCountDownCoinInFreeCoinDungeon);
SUBHOOK_SETUP(CParty_get_item);
SUBHOOK_SETUP(CInventory_insertItemIntoInventory);
SUBHOOK_SETUP(CParty__onGetItem);
// SUBHOOK_SETUP(CUser_get_unique_id);
SUBHOOK_SETUP(CHackLog_OverDamage_GetDungeonLimitDamageAndHackType);
SUBHOOK_SETUP(CDungeon_get_index);
SUBHOOK_SETUP(CUserCharacInfo_get_charac_level);
SUBHOOK_SETUP(CParty_getMonsterTotalExp);
SUBHOOK_SETUP(CParty_set_clear_reward_exp_parameter);
SUBHOOK_SETUP(BingoEvent_sendOneMatchLineReward);
SUBHOOK_SETUP(BingoEvent_sendMaxMatchLineReward);
SUBHOOK_SETUP(CBattle_Field_add_monsters_current_map);
SUBHOOK_SETUP(CDungeon_get_standard_level);
SUBHOOK_SETUP(CUser_isHumanCertified);
SUBHOOK_SETUP(Dispatcher_ChangeAnotherSkillTree_send);
SUBHOOK_SETUP(CUser_AddDailyItem);
SUBHOOK_SETUP(GameWorld_leave_game_world);
SUBHOOK_SETUP(CGameManager_user_exit);
SUBHOOK_SETUP(GameWorld_send_chat_msg);
SUBHOOK_SETUP(GameWorld_IsForbiddenChat);
SUBHOOK_SETUP(CUser_quest_action);
SUBHOOK_SETUP(CParty_get_dungeon_clear_state);
SUBHOOK_SETUP(CParty_SetPlayResult);
SUBHOOK_SETUP(BestClearTime_getBestClearTime);
}

View File

@@ -1,18 +0,0 @@
#pragma once
#include <dlfcn.h>
typedef struct lua_State lua_State;
typedef void (*dp2_game_script_t)(void(*ufptr)(lua_State* L, void*), void* udptr);
// 进入dp的锁, 触发回调, 同时获得lua指针
static int dp2_game_script(void(*ufptr)(lua_State* L, void*), void* udptr) {
void* fn = dlsym(RTLD_DEFAULT, "__dp2_game_script");
if (!fn) {
return 1;
}
dp2_game_script_t func = (dp2_game_script_t)fn;
printf("\n函数\n");
func(ufptr, udptr);
printf("\n调用成功\n");
return 0;
}

View File

@@ -1,169 +0,0 @@
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <fcntl.h>
#include <ffi.h>
// #include "fficonfig.h"
#include <float.h>
#include <math.h>
#if defined HAVE_STDINT_H
#include <stdint.h>
#endif
#if defined HAVE_INTTYPES_H
#include <inttypes.h>
#endif
#define MAX_ARGS 256
#define CHECK(x) \
do \
{ \
if (!(x)) \
{ \
printf("Check failed:\n%s\n", #x); \
abort(); \
} \
} while (0)
#define CHECK_FLOAT_EQ(x, y) \
do \
{ \
if (fabs((x) - (y)) > FLT_EPSILON) \
{ \
printf("Check failed CHECK_FLOAT_EQ(%s, %s)\n", #x, #y); \
abort(); \
} \
} while (0)
#define CHECK_DOUBLE_EQ(x, y) \
do \
{ \
if (fabs((x) - (y)) > DBL_EPSILON) \
{ \
printf("Check failed CHECK_FLOAT_EQ(%s, %s)\n", #x, #y); \
abort(); \
} \
} while (0)
/* Define macros so that compilers other than gcc can run the tests. */
#undef __UNUSED__
#if defined(__GNUC__)
#define __UNUSED__ __attribute__((__unused__))
#define __STDCALL__ __attribute__((stdcall))
#define __THISCALL__ __attribute__((thiscall))
#define __FASTCALL__ __attribute__((fastcall))
#define __MSABI__ __attribute__((ms_abi))
#else
#define __UNUSED__
#define __STDCALL__ __stdcall
#define __THISCALL__ __thiscall
#define __FASTCALL__ __fastcall
#endif
#ifndef ABI_NUM
#define ABI_NUM FFI_DEFAULT_ABI
#define ABI_ATTR
#endif
/* Prefer MAP_ANON(YMOUS) to /dev/zero, since we don't need to keep a
file open. */
#ifdef HAVE_MMAP_ANON
#undef HAVE_MMAP_DEV_ZERO
#include <sys/mman.h>
#ifndef MAP_FAILED
#define MAP_FAILED -1
#endif
#if !defined(MAP_ANONYMOUS) && defined(MAP_ANON)
#define MAP_ANONYMOUS MAP_ANON
#endif
#define USING_MMAP
#endif
#ifdef HAVE_MMAP_DEV_ZERO
#include <sys/mman.h>
#ifndef MAP_FAILED
#define MAP_FAILED -1
#endif
#define USING_MMAP
#endif
/* msvc kludge. */
#if defined(_MSC_VER)
#define PRIdLL "I64d"
#define PRIuLL "I64u"
#else
#define PRIdLL "lld"
#define PRIuLL "llu"
#endif
/* Tru64 UNIX kludge. */
#if defined(__alpha__) && defined(__osf__)
/* Tru64 UNIX V4.0 doesn't support %lld/%lld, but long is 64-bit. */
#undef PRIdLL
#define PRIdLL "ld"
#undef PRIuLL
#define PRIuLL "lu"
#define PRId8 "hd"
#define PRIu8 "hu"
#define PRId64 "ld"
#define PRIu64 "lu"
#define PRIuPTR "lu"
#endif
/* PA HP-UX kludge. */
#if defined(__hppa__) && defined(__hpux__) && !defined(PRIuPTR)
#define PRIuPTR "lu"
#endif
/* IRIX kludge. */
#if defined(__sgi)
/* IRIX 6.5 <inttypes.h> provides all definitions, but only for C99
compilations. */
#define PRId8 "hhd"
#define PRIu8 "hhu"
#if (_MIPS_SZLONG == 32)
#define PRId64 "lld"
#define PRIu64 "llu"
#endif
/* This doesn't match <inttypes.h>, which always has "lld" here, but the
arguments are uint64_t, int64_t, which are unsigned long, long for
64-bit in <sgidefs.h>. */
#if (_MIPS_SZLONG == 64)
#define PRId64 "ld"
#define PRIu64 "lu"
#endif
/* This doesn't match <inttypes.h>, which has "u" here, but the arguments
are uintptr_t, which is always unsigned long. */
#define PRIuPTR "lu"
#endif
/* Solaris < 10 kludge. */
#if defined(__sun__) && defined(__svr4__) && !defined(PRIuPTR)
#if defined(__arch64__) || defined(__x86_64__)
#define PRIuPTR "lu"
#else
#define PRIuPTR "u"
#endif
#endif
/* MSVC kludge. */
#if defined _MSC_VER
#if !defined(__cplusplus) || defined(__STDC_FORMAT_MACROS)
#define PRIuPTR "lu"
#define PRIu8 "u"
#define PRId8 "d"
#define PRIu64 "I64u"
#define PRId64 "I64d"
#endif
#endif
#ifndef PRIuPTR
#define PRIuPTR "u"
#endif

File diff suppressed because it is too large Load Diff

View File

@@ -1,170 +0,0 @@
#include "CConnectPool.h"
#include <iostream>
#define POOL_SAFE_DELETE(ptr) \
if (ptr != NULL) \
{ \
delete ptr; \
ptr = NULL; \
}
CConnectPool *CConnectPool::s_pInstance = NULL;
CConnectPool::CConnectPool()
{
pthread_mutex_init(&m_mutex, NULL);
pthread_cond_init(&m_cond, NULL);
// 初始化连接数
// 此处由主线程调用初始化,无需考虑锁问题
for (int i = 0; i < My_Info.MaxConnectCount; ++i)
{
MYSQL *pConn = _CreateConnect();
if (NULL == pConn)
{
exit(EXIT_FAILURE);
}
m_queueFree.push(pConn);
}
}
CConnectPool::~CConnectPool()
{
pthread_mutex_destroy(&m_mutex);
pthread_cond_destroy(&m_cond);
MYSQL *pConn = NULL;
while (m_queueFree.size() > 0)
{
pConn = m_queueFree.front();
POOL_SAFE_DELETE(pConn);
m_queueFree.pop();
}
std::set<MYSQL *>::iterator it = m_setBusy.begin();
while (it != m_setBusy.end())
{
pConn = *it;
POOL_SAFE_DELETE(pConn);
// it = m_setBusy.erase(it);
it++;
}
}
void CConnectPool::CreatePool(int MinConnectCount, int MaxConnectCount, const char *Host, int Port, const char *Account, const char *Passwd)
{
if (NULL == s_pInstance)
{
s_pInstance = new CConnectPool;
s_pInstance->My_Info.MinConnectCount = MinConnectCount;
s_pInstance->My_Info.MaxConnectCount = MaxConnectCount;
s_pInstance->My_Info.Host = Host;
s_pInstance->My_Info.Port = Port;
s_pInstance->My_Info.Account = Account;
s_pInstance->My_Info.Passwd = Passwd;
s_pInstance->My_Info.KName = "taiwan_cain";
}
}
void CConnectPool::FreePool()
{
if (NULL != s_pInstance)
{
delete s_pInstance;
s_pInstance = NULL;
}
}
MYSQL *CConnectPool::GetConnect()
{
return s_pInstance->_GetConnect(false);
}
MYSQL *CConnectPool::TryGetConnect()
{
return s_pInstance->_GetConnect(true);
}
void CConnectPool::PutConnect(MYSQL *pConn)
{
s_pInstance->_PutConnect(pConn);
}
MYSQL *CConnectPool::_CreateConnect()
{
MYSQL *pConn = new MYSQL;
mysql_init(pConn);
if (!mysql_real_connect(pConn, My_Info.Host, My_Info.Account, My_Info.Passwd, My_Info.KName, MYSQL_PORT, NULL, CLIENT_FOUND_ROWS))
{
printf("connect error:%s\n", mysql_error(pConn));
delete pConn;
pConn = NULL;
}
return pConn;
}
MYSQL *CConnectPool::_GetConnect(bool bTry)
{
static bool bCheck;
MYSQL *pRet = NULL;
pthread_mutex_lock(&m_mutex);
// 取出来还要检查一下是否能正常使用
bCheck = true;
if (m_queueFree.size() > 0)
{
pRet = m_queueFree.front();
m_queueFree.pop();
}
else
{
// 连接数不足,继续创建
if (m_queueFree.size() + m_setBusy.size() < My_Info.MinConnectCount)
{
pRet = _CreateConnect();
bCheck = false;
}
else
{
if (!bTry)
{
// 阻塞等待空闲连接
pthread_cond_wait(&m_cond, &m_mutex);
// 肯定会有空闲连接的
if (m_queueFree.size() > 0)
{
pRet = m_queueFree.front();
m_queueFree.pop();
}
}
}
}
// 检查连接是否可用
if (NULL != pRet && true == bCheck && 0 != mysql_ping(pRet))
{
mysql_close(pRet);
pRet = _CreateConnect();
}
// 加入busy队列
if (NULL != pRet)
{
m_setBusy.insert(pRet);
}
pthread_mutex_unlock(&m_mutex);
return pRet;
}
void CConnectPool::_PutConnect(MYSQL *pConn)
{
if (NULL == pConn)
return;
pthread_mutex_lock(&m_mutex);
std::set<MYSQL *>::iterator it = m_setBusy.find(pConn);
if (it != m_setBusy.end())
{
m_setBusy.erase(it);
}
m_queueFree.push(pConn);
if (1 == m_queueFree.size())
{
// 唤醒等待线程
pthread_cond_signal(&m_cond);
}
pthread_mutex_unlock(&m_mutex);
}

View File

@@ -1,62 +0,0 @@
# ???????????cmake???·Ú
CMAKE_MINIMUM_REQUIRED(VERSION 3.0)
# ????????++11
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32 -fpic -fexceptions -Wno-int-to-pointer-cast -Wdeprecated-declarations")
add_compile_options(
-Wno-pointer-arith
-Wdeprecated-declarations
-fvisibility=hidden
-fno-asynchronous-unwind-tables)
file(GLOB_RECURSE DIR_ASMJIT_LIB_SRCS
"asmjit/core/*.c"
"asmjit/core/*.cc"
"asmjit/core/*.cpp"
"asmjit/core/*.cxx"
"asmjit/arm/*.c"
"asmjit/arm/*.cc"
"asmjit/arm/*.cpp"
"asmjit/arm/*.cxx"
"asmjit/x86/*.c"
"asmjit/x86/*.cc"
"asmjit/x86/*.cpp"
"asmjit/x86/*.cxx"
)
#??????????
include_directories(${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/include/Squirrel ${PROJECT_SOURCE_DIR}/lib/mysql/include /home/asio/asio-1.28.0/include/ ${PROJECT_SOURCE_DIR}/src/ ${PROJECT_SOURCE_DIR}/src/sdk/ /home/muduo-2.0.2 /home/squirrel-master/squirrel-master/include)
add_compile_definitions(ASMJIT_STATIC)
# ?????????
set(LIB_SOURCE
"df_main.cpp"
"Tool.cpp"
"l_squirrel.cpp"
"l_socket.cpp"
"CConnectPool.cpp"
)
# ??????????????shared
ADD_LIBRARY(hook_aurora SHARED ${DIR_ASMJIT_LIB_SRCS} ${LIB_SOURCE})
# ????????????????
SET_TARGET_PROPERTIES(hook_aurora PROPERTIES OUTPUT_NAME "Aurora")
target_link_libraries(hook_aurora libstdc++.a -L/home/squirrel-master/squirrel-master/build/lib -lsqstdlib_static -L/home/squirrel-master/squirrel-master/build/lib -lsquirrel_static -L/home/dnf_project/dnf_project/build/lib/mysql/lib libmysqlclient.a -lpthread -L/home/openssl/openssl-3.0.13 libssl.a -L/home/openssl/openssl-3.0.13 libcrypto.a -L/home/dnf_project/dnf_project/build/lib/frida libfrida-gum.a -ldl -pthread -lresolv libffi.a -L/home/opencc/build/src libopencc.a libkeystone.a libz.a)
# target_link_libraries(hook_aurora /usr/local/lib/libffi.a)
# ????????·Ú, ????????????????
# VERSION:?????·Ú??SOVERSION:API?·Ú
#SET_TARGET_PROPERTIES(hook_aurora PROPERTIES VERSION 0.1.1 SOVERSION 0)
# ?????????????
SET(LIBRARY_OUTPUT_PATH /dp_s/lib)

View File

@@ -1,5 +1,4 @@
#include "CConnectPool.h"
#include "controller.h" #include "controller.h"
#include "import.h" #include "import.h"
#include "l_socket.h" #include "l_socket.h"

View File

@@ -6,7 +6,6 @@
#include "sqstdmath.h" #include "sqstdmath.h"
#include "sqstdstring.h" #include "sqstdstring.h"
#include "sqstdsystem.h" #include "sqstdsystem.h"
#include "CConnectPool.h"
#include "croncpp.h" #include "croncpp.h"
#include "l_socket.h" #include "l_socket.h"
#include <openssl/md5.h> #include <openssl/md5.h>
@@ -398,36 +397,6 @@ static SQInteger L_GetDataByIdFromPvf(HSQUIRRELVM v)
return 1; return 1;
} }
// 创建数据库连接池
static SQInteger L_CreatCConnectPool(HSQUIRRELVM v)
{
SQInteger MinConnectCount, MaxConnectCount, Port;
const SQChar* Host;
const SQChar* Account;
const SQChar* Passwd;
sq_getinteger(v, 2, &MinConnectCount);
sq_getinteger(v, 3, &MaxConnectCount);
sq_getstring(v, 4, &Host);
sq_getinteger(v, 5, &Port);
sq_getstring(v, 6, &Account);
sq_getstring(v, 7, &Passwd);
// 初始化数据库
CConnectPool::CreatePool(MinConnectCount, MaxConnectCount, Host, Port, Account, Passwd);
return 0;
}
// 阻塞线程的数据库操作 无返回值
static SQInteger L_MysqlExecNoRet(HSQUIRRELVM v)
{
const SQChar* Sql;
sq_getstring(v, 2, &Sql);
MYSQL* MysqlObject = CConnectPool::GetConnect();
mysql_query(MysqlObject, Sql);
CConnectPool::PutConnect(MysqlObject);
return 0;
}
struct CreateSocketInfo struct CreateSocketInfo
{ {
@@ -1179,9 +1148,7 @@ static void RegisterGame(HSQUIRRELVM v)
// 通过ID从Pvf中查询Data // 通过ID从Pvf中查询Data
register_World_func(v, L_GetDataByIdFromPvf, _SC("Sq_GetDataByIdFromPvf")); register_World_func(v, L_GetDataByIdFromPvf, _SC("Sq_GetDataByIdFromPvf"));
// 创建数据库连接池 // 创建数据库连接池
register_World_func(v, L_CreatCConnectPool, _SC("Sq_CreatCConnectPool"));
// 阻塞线程的数据库操作 无返回值 // 阻塞线程的数据库操作 无返回值
register_World_func(v, L_MysqlExecNoRet, _SC("Sq_MysqlExecNoRet"));
// 创建Socket连接 // 创建Socket连接
register_World_func(v, L_CreatSocketConnect, _SC("Sq_CreatSocketConnect")); register_World_func(v, L_CreatSocketConnect, _SC("Sq_CreatSocketConnect"));
// 动态调用Call // 动态调用Call

View File

@@ -6,7 +6,6 @@
#include "sqstdmath.h" #include "sqstdmath.h"
#include "sqstdstring.h" #include "sqstdstring.h"
#include "sqstdsystem.h" #include "sqstdsystem.h"
#include "CConnectPool.h"
#include "inline_hook.h" #include "inline_hook.h"
#include <iostream> #include <iostream>

Some files were not shown because too many files have changed in this diff Show More