# ๐Ÿ“ฆ EQ2Emu Server Directory Layout > This document describes the structure and purpose of the EQ2Emu server directory. ## ๐Ÿ“š Table of Contents - [Overview](#overview) - [Network Structure XML Files](#network-structure-xml-files) - [Script Folders](#script-folders) - [Data Folders](#data-folders) - [Definition Files](#definition-files) - [Executables](#executables) - [Example Configuration Files](#example-configuration-files) - [Notes](#notes) --- ## Overview ``` / (base directory) โ”œโ”€โ”€ *.xml (Network Structure Files) โ”œโ”€โ”€ ItemScripts/ โ”œโ”€โ”€ Quests/ โ”œโ”€โ”€ RegionScripts/ โ”œโ”€โ”€ SpawnScripts/ โ”œโ”€โ”€ Spells/ โ”œโ”€โ”€ ZoneScripts/ โ”œโ”€โ”€ Maps/ โ”œโ”€โ”€ Regions/ โ”œโ”€โ”€ logs/ โ”œโ”€โ”€ log_config.xml โ”œโ”€โ”€ login_db.ini โ”œโ”€โ”€ world_db.ini โ”œโ”€โ”€ server_config.json โ”œโ”€โ”€ login (executable) โ””โ”€โ”€ eq2world (executable) ``` ---
๐Ÿ“ก Network Structure XML Files These XML files define the client-server network structures used by EQ2Emu: - `CommonStructs.xml` - `EQ2_Structs.xml` - `ItemStructs.xml` - `LoginStructs.xml` - `SpawnStructs.xml` - `WorldStructs.xml`
---
๐Ÿงน Script Folders Custom server-side Lua scripts that drive server content: - `ItemScripts/`: Item-specific scripts. - `Quests/`: Quest-related scripts. - `RegionScripts/`: Regional behavior. - `SpawnScripts/`: NPC spawning behavior. - `Spells/`: Spell logic. - `ZoneScripts/`: Zone triggers and scripting.
---
๐Ÿ“‚ Data Folders Stores important data and logs: - `Maps/`: Zone layout and navigation meshes. - `Regions/`: Zone regional metadata. - `logs/`: Runtime logs for diagnostics.
---
โš™๏ธ Definition Files Configuration files necessary to operate the server: - [`log_config.xml`](https://github.com/emagi/eq2emu/blob/main/server/log_config.xml.example): Logging configuration. - [`login_db.ini`](https://github.com/emagi/eq2emu/blob/main/server/login_db.ini.example): Login server database connection. - [`world_db.ini`](https://github.com/emagi/eq2emu/blob/main/server/world_db.ini.example): World server database connection. - [`server_config.json`](https://github.com/emagi/eq2emu/blob/main/server/server_config.json.example): Main configuration for login/world server and ports.
---
๐Ÿš€ Executables ### `login` - Handles login from EverQuest II clients. - Clients use `cl_ls_address` in `eq2_default.ini` to connect. - Default UDP Port: `9100`. - Configured via `LoginConfig -> ServerPort` in [`server_config.json`](https://github.com/emagi/eq2emu/blob/main/server/server_config.json.example). ### `eq2world` - Acts as the world and zone server. - Connects to `login` via TCP on `9100` (default). - Manages character creation, server list, and zoning. - Default UDP port: `9001` (can be customized via `LoginServer -> worldport` in [`server_config.json`](https://github.com/emagi/eq2emu/blob/main/server/server_config.json.example)).
---
๐Ÿ“‘ Example Configuration Files These examples are included for quick setup: - [`log_config.xml.example`](https://github.com/emagi/eq2emu/blob/main/server/log_config.xml.example) - [`login_db.ini.example`](https://github.com/emagi/eq2emu/blob/main/server/login_db.ini.example) - [`world_db.ini.example`](https://github.com/emagi/eq2emu/blob/main/server/world_db.ini.example) - [`server_config.json.example`](https://github.com/emagi/eq2emu/blob/main/server/server_config.json.example)
--- ## ๐Ÿ“Œ Notes - All ports can be customized via `server_config.json`. - Lua script folders are modular and extensible. - Example config files are included to assist with initial setup.