An in-depth, impartial comparison of four Lineage 2 High Five Java server source codebases — architecture, security, pathfinding and content richness.
| Criteria | L2JEvolution HighFive · Multi-module · Java 25 | L2J Mobius HighFive · Monolithic · Java 25 | L2J_Server HighFive · Monolithic · Java 25 | Ethernity HighFive · Multi-module · Java 15 |
|---|---|---|---|---|
| ● Foundation & Architecture | ||||
| Criteria | L2JEvolutionHighFive · Multi-module · Java 25 | L2J MobiusHighFive · Monolithic · Java 25 | L2J_ServerHighFive · Monolithic · Java 25 | EthernityHighFive · Multi-module · Java 15 |
| Java Version | Java 25 LTS | Java 25 LTS | Java 25 LTS | Java 15 (EOL) |
| Module Architecture |
Modular — 5 JARs
HighFive
Engine
GeoEngine
EventsEngine
Protection
|
Monolithic | Monolithic | Multi-module (core / datapack / fake) |
| Base Package | ro.evo.* | org.l2jmobius.* | com.l2jserver* | l2e.* |
| Lead Developer / Identity |
GenuinelyInsane
L2jEvoInfo + multiple config / board signatures
|
Not highlighted in scanned sources | Not highlighted in scanned sources | Not highlighted in scanned sources |
| Config Format |
TOML + Java Records
MultiFormatLoader, ConfigRegistry typed
|
.ini files | Config-Factory Interface | .properties files |
| Build System | Apache Ant | Apache Ant | Apache Ant | Apache Ant |
| Active Roadmap / TODO | TODO.md (~887 tracked items) | None | None | None |
| Architecture Rating | ★★★★★ | ★★★★★ | ★★★★★ | ★★★★★ |
| ● Codebase Size & Content Richness | ||||
| Criteria | L2JEvolutionHighFive · Multi-module · Java 25 | L2J MobiusHighFive · Monolithic · Java 25 | L2J_ServerHighFive · Monolithic · Java 25 | EthernityHighFive · Multi-module · Java 15 |
| Total Java Files | ~4,050 HighFive 3454 + Engine 362 + GeoEng 19 + EvtEng 166 + Prot 49 | 3,189 | 3,639 | 3,865 |
| XML Content Files | ~2,468 | 2,720 | 1,554 | 5,349 Largest content base |
| SQL Database Scripts | ~182 | 117 | 138 | 304 Most database tables |
| Content Rating | ★★★★★ | ★★★★★ | ★★★★★ | ★★★★★ |
| ● Geodata & Pathfinding Engine | ||||
| Criteria | L2JEvolutionHighFive · Multi-module · Java 25 | L2J MobiusHighFive · Monolithic · Java 25 | L2J_ServerHighFive · Monolithic · Java 25 | EthernityHighFive · Multi-module · Java 15 |
| GeoEngine Architecture |
Separate JAR Module
GeoData singleton + geo-index aware instance checks
|
Integrated in GameServer
org.l2jmobius.gameserver.geoengine
|
Integrated in GameServer
com.l2jserver.gameserver.GeoData
|
Static methods only
l2e.gameserver.geodata.GeoEngine
|
| Geodata File Format |
.l2jevo / .l2j / _conv.dat
NavMesh: .dtnv
|
Primary: %d_%d.l2j
GeoEngine adapter uses l2j naming
|
Primary: %d_%d.l2j
NavMesh: .dtnv
|
.l2j + _conv.dat
LoaderFactory: L2JGeoLoader + OffGeoLoader
|
| Pathfinding Modes |
3 Modes (0=off / 1=Geo / 2=Cell / 3=NavMesh)
GeoPathFinding
CellPathFinding
NavMesh (recast4j)
|
Integrated pathfinding
geoengine.pathfinding package
|
Integrated pathfinding
geoengine.pathfinding package
|
Basic GeoEngine only
GeoEngine.moveCheck()
|
| NavMesh Support (.dtnv) | YES — recast4j Detour library | NO | NO | NO |
| NavMesh + Cell Fallback | YES (automatic fallback to Cell) | NO | NO | NO |
| Geodata Z-axis Smart Snap | YES — smart Z-snap logic | Standard | Standard | Standard |
| Reflection / Instance Geodata | YES — instance-aware geo checks | Partial | Partial | YES — geoIndex based |
| GeoEngine Rating | ★★★★★ | ★★★★★ | ★★★★★ | ★★★★★ |
| ● Security & Anti-Cheat Systems | ||||
| Criteria | L2JEvolutionHighFive · Multi-module · Java 25 | L2J MobiusHighFive · Monolithic · Java 25 | L2J_ServerHighFive · Monolithic · Java 25 | EthernityHighFive · Multi-module · Java 15 |
| AntiBot Captcha System |
Image Captcha (5-digit codes)
AntibotSystem + CaptchaImageGenerator
Farm captcha & Enchant captcha |
CaptchaManager
Initialized in GameServer bootstrap
|
None (FloodProtector only) |
Antibot Popup Window
Question popup (README confirmed)
|
| External Protection Module |
FunGuard Anti-Cheat JAR
Separate deployable protection.jar
|
None | None | None |
| HWID Protection |
Full HWID protection
HDD + MAC + CPU with BanMask-based checks / bans
|
Full HWID system
KICK_MISSING_HWID, MAX_PLAYERS_PER_HWID
|
Not found |
Full HWID lock
allowedHwid per account, .lockHwid / .unlockHwid
Zone-based HWID limits (Siege, FunPvp) |
| Flood Protection |
FloodProtectedListener
IPv4Filter
FloodMap
|
FloodProtectorConfig
kick
ban
jail
|
Config-Factory Based
FloodProtectorConfiguration
|
FloodProtectorAction
+ Brute force protection (README)
|
| Over-Enchant Protection | Via AntibotConfigs config | OVER_ENCHANT_PROTECTION flag | Config flag | Config flag |
| IP Geo-blocking (GeoLite2) |
MaxMind GeoLite2-Country
.mmdb database bundled
|
Not found | Not found | Not found |
| Security Rating | ★★★★★ | ★★★★★ | ★★★★★ | ★★★★★ |
| ● Events Engine & Gameplay Systems | ||||
| Criteria | L2JEvolutionHighFive · Multi-module · Java 25 | L2J MobiusHighFive · Monolithic · Java 25 | L2J_ServerHighFive · Monolithic · Java 25 | EthernityHighFive · Multi-module · Java 15 |
| Events Engine Architecture |
Dedicated Module JAR
event-engine.jar — independently deployable
|
Integrated in GameServer | Integrated in GameServer | Integrated — 10+ custom events |
| Fake Player / NPC AI |
Advanced fake player engine
Dedicated configs, BBS control panel, reload, cleanup, spawn limits, DressMe/join events/Farm/PVP/PVE
|
FakePlayer system
GroupSpawn + GeoEngine compatibility
|
Not found |
FakePlayer with AI routines
|
| AutoPlay / AutoFarm | Basic Retail like-play |
AutoPlay System
GeoEngine integrated
|
Basic |
AutoFarm Service
5 distinct farming modes
|
| Custom Events Count |
19 custom events (dedicated JAR)
Largest custom events library
|
Standard set | Standard set |
10+ custom events
Large custom events library
|
| Database Installer Tool |
L2JEvoLauncher.exe (GUI)
Launcher service, creates login/game DB/ executes SQL folders/Read logs
|
DatabaseInstaller.jar (GUI)
Ant-built standalone GUI tool
|
Manual SQL scripts | Manual SQL scripts |
| Multilingual Support | Partial | Partial | Partial | Full multilingual (confirmed in README) |
| Gameplay Rating | ★★★★★ | ★★★★★ | ★★★★★ | ★★★★★ |
| ● Developer Experience & Maintainability | ||||
| Criteria | L2JEvolutionHighFive · Multi-module · Java 25 | L2J MobiusHighFive · Monolithic · Java 25 | L2J_ServerHighFive · Monolithic · Java 25 | EthernityHighFive · Multi-module · Java 15 |
| Typed Config Records |
Java Records (GeodataConfig, etc.)
ConfigRegistry pattern — type-safe
|
Raw string properties |
Config-Factory Interface
Interface-based (more modern than .ini)
|
Raw .properties |
| Independent Deployable Modules |
5 JARs — each independently deployable
Build auto-copies JARs to dependent modules
|
Single deployable | Single deployable | 2 JARs (LoginServer + GameServer) |
| Developers | GenuinelyInsane | Mobius and community | Zoey_76 and L2J_server community | LordWinter |
| Documentation Quality |
docs/ + README + TODO.md
887-item actively tracked TODO
|
Basic README only | Basic README only | Detailed README |