Requirements
Runtime
| Requirement | Version / Detail |
| Java | 25.0.2 LTS — OpenJDK or GraalVM |
| Database | MariaDB 10.6+ or MySQL 8.0+ |
| Build tool | Apache Ant 1.10+ |
| OS | Linux (recommended) or Windows Server 2019+ |
Network Ports
| Port | Service | Direction |
7777 | GameServer — client connections | inbound |
2106 | LoginServer — C1 authentication | inbound |
9014 | GameServer ↔ LoginServer internal link | localhost |
Hardware
| Component | Minimum | Recommended |
| CPU | 4 cores | 8 cores, 3.5 GHz+ — single-thread speed matters for AI tick |
| RAM | 8 GB | 16 GB for 500+ concurrent players |
| Disk | HDD | SSD — geodata reads and log writes are I/O sensitive |
Java Dependencies
Managed via the lib/ folder, included in the Ant build classpath.
| Library | Purpose |
jackson-dataformat-toml | TOML config parsing via Jackson TomlMapper |
slf4j-api + logback-classic | Logging facade and implementation |
mchange-commons + c3p0 | JDBC connection pooling |
mariadb-java-client | JDBC driver |
netty | Async network I/O (inherited from upstream) |
Both L2JEvolution.HighFive and L2JEvolution.Engine must be compiled
with release="25". Mixing Java versions between the two projects will cause
UnsupportedClassVersionError at startup.