Jump to content
View in the app

A better way to browse. Learn more.

Horizon Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Hello everyone,

After a rigorous and fair benchmarking competition between the three major Ragnarok server emulators—Horizon, Hercules, and rAthena—I'm excited to announce the final results and crown the winner!

Test Methodology:

- All servers were set up with identical world states: the npc folder was removed (renamed to npc-removed) to ensure no NPC scripts or events could affect performance. Only the core source code differed.

- The test measured the average response time for walk (move) packets and the number of packets required to achieve 2,000 successful walk responses.

- This approach isolates the networking and core logic performance of each emulator.

Results:

Server

Avg. Walk Response Time (s)

Walk Packets Sent

Walk Packets Received

Horizon

0.016543

7,330

2,000

Hercules

0.017796

34,496

2,000

rAthena

0.033758

25,093

2,000

Technical Details:

- Horizon demonstrated the fastest and most reliable walk packet handling, with the lowest average response time and the fewest packets needed for 2,000 successful responses.

- Hercules performed well in response time but required nearly five times as many packets as Horizon, indicating more packet loss or retries.

- rAthena had the slowest response time and also required a high number of packets, showing both higher latency and less efficient packet processing.

Conclusion:

> The final winner of the competition is: Horizon

Congratulations to the Horizon team! for their outstanding performance in both speed and reliability under identical, script-free conditions!

If you have questions about the methodology or want to see the raw data, feel free to ask.

A patch for this benchmark has been added to this post, if you wish to check out the results on your own and run the code you are free to do so.

— Protos

benchmark.patch

User Feedback

Recommended Comments

There are no comments to display.

Recently Browsing 0

  • No registered users viewing this page.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.