Getting started
This reference covers module development for TERA Toolbox. You should be familiar with JavaScript, Node.js basics and events. Packet work also requires an understanding of client/server network communication.
- Create your first module and learn its lifecycle.
- Add metadata, commands and settings.
- Use game state for common tasks and packet hooks for protocol access.
- Read about DataCenter and .def structures when you need game data or custom packet handling.
Toolbox API
| Topic | Contents |
|---|---|
| Packets and hooks | Reading, modifying, blocking and sending; filters and versions |
| Commands | Chat commands and player messages |
| Settings | JSON, migrations and persistence |
| Timers | Deferred actions and cleanup |
| Logging | Messages and diagnostics |
| Client interface | Client information and queryData |
| Client mods | ClientMod and GPK installation |
| Graphical interface | tera-mod-ui windows |
| Other features | Dependencies, system messages and hot reload |
Libraries and formats
tera-game-state exposes game events and tracks the character, inventory, party, contracts, glyphs and talents. library is a separate library for entities, effects and coordinate utilities. Vec3 covers vector operations and distances.
Toolbox networking explains the TCP proxy, traffic processing and tera-network-proxy classes. .def files connect packet bytes to JavaScript objects.
Sources and compatibility
This documentation is based on doc, mods/tera-game-state/doc and mods/library/README.md in the supplied Toolbox distribution. Previously unfinished sections have been completed from implementation code. Each article identifies its source files. Sources checked on September 15, 2026.
Available packets and definition versions depend on the server and patch. Version numbers in examples illustrate the API: check the definitions shipped with your distribution. Older TERA Proxy forks may only support part of this API. The language selector opens the translation of the current article.