Skip to content

CAIO - WIP#183

Draft
Rochet2 wants to merge 27 commits into
3.3.5from
c_aio_new
Draft

CAIO - WIP#183
Rochet2 wants to merge 27 commits into
3.3.5from
c_aio_new

Conversation

@Rochet2
Copy link
Copy Markdown
Owner

@Rochet2 Rochet2 commented Jun 1, 2026

No description provided.

SaiFi0102 and others added 27 commits August 22, 2015 02:17
This will be CAIO's permanent supported repository now.
-Now handling multi block AIO messages

Not tested, gonna test very soon.
Integrate upstream 3.3.5 (script modules, logging, RBAC, HotSwap) while
preserving CAIO/AIO addon messaging, LuaVal scripts, and 1.75 protocol settings.
…ol handling.

- Merge upstream TrinityCore 3.3.5 and fix CAIO build (chat packets, cs_caio, logging, smallfolk).

- Cap AIO.MsgMaxLen at 255; fix long-message chunk sizing; add buffer/init config.

- Remove compression/obfuscation paths; optional ExampleWindow via WITH_CAIO_EXAMPLES.

- Point smallfolk_cpp submodule at LuaVal copy-assignment fix (cfa8c64).
- Remove invalid in-class template specialization (GCC -Werror).

- CI: checkout submodules recursively; default MaxParts 64.

- Validate long-message parts; ordered concat; init cooldown after validation.

- World::RemoveAddon returns bool; log missing AIO handlers.
- Link smallfolk_cpp::smallfolk from dep/CMakeLists.txt; drop header-only include path.

- Adapt CAIO to v2 API: smallfolk.h, LuaVal::nil, typetag(), len(), int get().
Match stock AIO.lua AIO_MSG_CACHE_TIME (15s) and AIO_MSG_CACHE_DELAY (5s). Replace the old single BufferTimeout sweep with periodic cache eviction on WorldSession.
Reject incoming blocks with n > 15 like stock AIO_SERVER. Remove m_aioInitialized, which was never read (AIO_INITED is client-only in AIO.lua).
Clarify LANG_ADDON whisper transport, message cache settings, and block limits. Add AddOnInit vs AddInitArgs as an explicit future todo.
Replace tabs with 4-space indentation and align comment and control-flow spacing with surrounding core code.
Clean all files in the CAIO diff against TrinityCore 3.3.5, including docs and .gitmodules.
Use indented access specifiers in docs and examples, single-line for-loops where split lines misaligned, and consistent AIOMsg/AIOScript formatting.
PrepareClientAddons returns size_t; cast addon count for LuaVal. Add shared AIO.h and silence -Wsign-compare in AIO paths.
- Revert unrelated upstream diffs; restore gossip world SQL update

- Migrate .caio to ChatCommandTable; fmt outAIOMessage logs; CI builds examples

- Extract HandleIncomingAIOClientWhisper; trim ScriptMgr.h; add script example doc
Make AIOScript::FindByKey public for ScriptMgr, fix -Werror conversions
on LuaVal table indices, decode AIO whisper bytes safely, and pass
WITH_CAIO_EXAMPLES to the dynamic AIO script module.
Route addon blocks through HandleAddonBlock, store reassembly buffers
by uint32 message id, and tighten LuaVal numeric index conversions.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants