Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Kepler - Java v14+ server (SnowStorm, BattleBall, Camera, Wobble Squabble)

Developer
Developer
Joined
Dec 11, 2010
Messages
2,955
Reaction score
2,689
1) The lazysodium-java error has nothing to do with my programming so I can't assist with that. It's just a guess about the redist versions, maybe try the older ones (2012-2016 etc).... I don't know how to fix your problem since I've never encountered it myself, and it's an error in a different library, not mine.

2) Your configuration has

Code:
mus.bind=bind
instead of an actual IP address.
 
Ball like Wall
Joined
Aug 12, 2009
Messages
301
Reaction score
56
1) The lazysodium-java error has nothing to do with my programming so I can't assist with that. It's just a guess about the redist versions, maybe try the older ones (2012-2016 etc).... I don't know how to fix your problem since I've never encountered it myself, and it's an error in a different library, not mine.

2) Your configuration has

Code:
mus.bind=bind
instead of an actual IP address.

Yeah I have no idea either. The LibSodium error was with 1.4, it's gotta be a Windows Server thing. The MUS port error was with v1.32 but I used the config file from 1.4. It's working, sorry for bothering.
 
Initiate Mage
Joined
Sep 2, 2022
Messages
3
Reaction score
3
To solve the libsodium problem:

Windows

Visit
Downloaded latest pre-built binary e.g. libsodium-1.0.18-msvc.zip
Extract the .zip file and locate an appropriate DLL file, e.g. libsodium-1.0.18-msvc\libsodium\x64\Release\v142\dynamic\libsodium.dll
Copy libsodium.dll to C:\Windows\System32\

Linux

Install the package libsodium23
 
Experienced Elementalist
Joined
May 30, 2013
Messages
288
Reaction score
242
Yeah I have no idea either. The LibSodium error was with 1.4, it's gotta be a Windows Server thing. The MUS port error was with v1.32 but I used the config file from 1.4. It's working, sorry for bothering.
Please, please don't use Windoze Server. Unless you want to get utterly pwned. Get a RHCSA (or just install Debian/Ubuntu and experiment with it in free time, that's as valueable).



Awesome to see you're still updating this software. It's just sad we need extra software to run the client - unlike how it used to be, just your daily browser. Perhaps one day there will be some magic x86 emulator for wasm.
No need for once the full Lingo AST tree is correct and reproducible, then one can implement the base minium for a interpreted VM running in WebAssembly that communicates with a DOM canvas to draw on.
 
Newbie Spellweaver
Joined
Sep 6, 2022
Messages
13
Reaction score
0
Kepler V1.32 works fine for me.

Fresh install of V1.4 produces , all libraries installed from what I can see.

Screenshot -
 
Ball like Wall
Joined
Aug 12, 2009
Messages
301
Reaction score
56
Kepler V1.32 works fine for me.

Fresh install of V1.4 produces , all libraries installed from what I can see.

Screenshot -


This was just answered by Marcio on the previous page:

To solve the libsodium problem:

Windows

Visit
Downloaded latest pre-built binary e.g. libsodium-1.0.18-msvc.zip
Extract the .zip file and locate an appropriate DLL file, e.g. libsodium-1.0.18-msvc\libsodium\x64\Release\v142\dynamic\libsodium.dll
Copy libsodium.dll to C:\Windows\System32\

Linux

Install the package libsodium23
 
Developer
Developer
Joined
Dec 11, 2010
Messages
2,955
Reaction score
2,689
In regards to the libsodium issues, for the love of Ducking god stop using Windows Server when running Kepler.

There is no reason to use overpriced, proprietary crap that requires an overkill amount of resources to run an operating system when Kepler can in theory, run on a complete potato inside a barebones Linux operating system.
 
Last edited:
Developer
Developer
Joined
Dec 11, 2010
Messages
2,955
Reaction score
2,689
I moved Kepler from JDK 11 LTS to JDK 17 LTS.

The main reason was to scrap the dependency of libsodium because the JNA native library stuff caused a whole bunch of issues for people, so I moved to a library (Spring crypto and Bouncy Castle) that has a native implementation of Argon2id hashing written within Java itself. Yes, I am fully aware we take a massive hit to performance doing password hashing in Java itself rather than a call to a C library, but it's worth it to make sure Kepler runs everywhere.

Another plus is that JDK 17 has further long term support than JDK 11 has.

You may check out the release here:

Please upgrade your JDK if the highest you've installed is 11, you may need to reconfigure your path variables to ensure it works in command line.
 
Last edited:
Experienced Elementalist
Joined
May 30, 2013
Messages
288
Reaction score
242
Yes, I am fully aware we take a massive hit to performance doing password hashing in Java itself rather than a call to a C library.
There's no perceivable hit. Not really, maybe a few ms here and there per operation, not anything significant. Java's JIT has gotten really good in recent years.

Maybe for the first user logging in there's some spike, but that'll be in the future as well.
 
Initiate Mage
Joined
Jan 9, 2023
Messages
3
Reaction score
0
Hello! Thanks alot for this, its amazing! Love it!
Great job!
 
Last edited:
Initiate Mage
Joined
Mar 25, 2022
Messages
4
Reaction score
3
In regards to the libsodium issues, for the love of Ducking god stop using Windows Server when running Kepler.

There is no reason to use overpriced, proprietary crap that requires an overkill amount of resources to run an operating system when Kepler can in theory, run on a complete potato inside a barebones Linux operating system.

I've been running Kepler for months on a single Raspberry Pi 4 using the default Debian-based distribution. That includes Kepler, MariaDB as database engine, and NGINX for serving DCRs as static files. CPU was under 30% with ~25 users online. You can rent way more powerful Linux virtual machines for less than $5/month. There's no need to pay for more!
 
Developer
Developer
Joined
Dec 11, 2010
Messages
2,955
Reaction score
2,689
I've been running Kepler for months on a single Raspberry Pi 4 using the default Debian-based distribution. That includes Kepler, MariaDB as database engine, and NGINX for serving DCRs as static files. CPU was under 30% with ~25 users online. You can rent way more powerful Linux virtual machines for less than $5/month. There's no need to pay for more!

I think MariaDB is more resource demanding than Kepler itself... I'm surprised you can run the database server on a Raspberry Pi 4 lol
 
Experienced Elementalist
Joined
May 30, 2013
Messages
288
Reaction score
242
I've been running Kepler for months on a single Raspberry Pi 4 using the default Debian-based distribution. That includes Kepler, MariaDB as database engine, and NGINX for serving DCRs as static files. CPU was under 30% with ~25 users online. You can rent way more powerful Linux virtual machines for less than $5/month. There's no need to pay for more!
Might want to consider attaching an SSD via USB and store MariaDB and Redis (it snapshots to disk every 30 minutes or so) data on there.

SD cards aren't meant for 24/7 write applications (don't let camera companies fool you, they're cheaping out), and will wear out quick if used in that manner.

Make sure to use an SSD with at least a 1 GB DRAM cache, built on TLC NAND. Otherwise, it's not much better. Cheap SSDs with no DRAM and QLC instead of TLC will wear out quick as well.
 
Last edited:
Initiate Mage
Joined
Mar 29, 2014
Messages
4
Reaction score
1
2023-01-23T17:54:15.755 - [ErrorLogger] - Error when executing MySQL query:
com.zaxxer.hikari.pool.HikariPool$PoolInitializationException: Failed to initialize pool: Access denied for user 'kepler'@'localhost' (using password: YES)
at com.zaxxer.hikari.pool.HikariPool.throwPoolInitializationException(HikariPool.java:597)
at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:576)
at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115)
at com.zaxxer.hikari.HikariDataSource.<init>(HikariDataSource.java:81)
at org.alexdev.kepler.dao.Storage.<init>(Storage.java:51)
at org.alexdev.kepler.dao.Storage.connect(Storage.java:71)
at org.alexdev.kepler.Kepler.main(Kepler.java:85)
Caused by: java.sql.SQLInvalidAuthorizationSpecException: Access denied for user 'kepler'@'localhost' (using password: YES)
at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.get(ExceptionMapper.java:232)
at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.getException(ExceptionMapper.java:165)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connectWithoutProxy(AbstractConnectProtocol.java:1199)
at org.mariadb.jdbc.internal.util.Utils.retrieveProxy(Utils.java:560)
at org.mariadb.jdbc.MariaDbConnection.newConnection(MariaDbConnection.java:174)
at org.mariadb.jdbc.Driver.connect(Driver.java:92)
at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138)
at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:353)
at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:201)
at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:473)
at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:562)
... 5 more
Caused by: java.sql.SQLException: Access denied for user 'kepler'@'localhost' (using password: YES)
Current charset is UTF-8. If password has been set using other charset, consider using option 'passwordCharacterEncoding'
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.authentication(AbstractConnectProtocol.java:931)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.handleConnectionPhases(AbstractConnectProtocol.java:850)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connect(AbstractConnectProtocol.java:507)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connectWithoutProxy(AbstractConnectProtocol.java:1195)
... 13 more

please help
 
Newbie Spellweaver
Joined
Dec 26, 2019
Messages
69
Reaction score
38
Your database credentials are wrong. Failed to initialize pool: Access denied for user 'kepler'@'localhost' (using password: YES)
 
Newbie Spellweaver
Joined
Dec 11, 2006
Messages
55
Reaction score
2
Will the teleports get any update soon? They are an essential part of the game in my opinion
I just pulled from master and already found 3 issues with them
- All habbos in the room walk to a teleport if one habbo enters one
- After having used a teleport, I noticed teleports in the room would randomly flash out of nowhere, again making habbos walk towards them out of nothing
 
Last edited:
Newbie Spellweaver
Joined
Sep 8, 2012
Messages
19
Reaction score
2
Will the teleports get any update soon? They are an essential part of the game in my opinion
I just pulled from master and already found 3 issues with them
- All habbos in the room walk to a teleport if one habbo enters one
- Imperial teleports can't be entered and habbos leave the imperial teleport from the wrong side (only in the bigger private room models)
- After having used a teleport, I noticed teleports in the room would randomly flash out of nowhere, again making habbos walk towards them out of nothing

Unfortunately, I can't say anything about the problem that all Habbos run in the direction of the teleporter. I am using a modified version of kepler 1.32 and have no problems there. Neither before the modification nor after. The teleporters always worked perfectly.

But as for your other problem: This is the fault of the .cct file and not the emulator. That's why the problem only occurs with the teleporters in the big rooms, because big and small rooms use separate files (hh_furni_xx_doorD.cct, hh_furni_xx_s_doorD.cct for the imperial teleporter). So you have to look at the corresponding file for the imperial teleporter (hh_furni_xx_s_doorD.cct).
 
Newbie Spellweaver
Joined
Dec 11, 2006
Messages
55
Reaction score
2
But as for your other problem: This is the fault of the .cct file and not the emulator. That's why the problem only occurs with the teleporters in the big rooms, because big and small rooms use separate files (hh_furni_xx_doorD.cct, hh_furni_xx_s_doorD.cct for the imperial teleporter). So you have to look at the corresponding file for the imperial teleporter (hh_furni_xx_s_doorD.cct).

Thanks, I was looking at the cct but then I found the issue. Turns out it wasn't the cct but 'redirect_rotation_2' was missing in the 'behaviour' column in item_definitions :)
 
Initiate Mage
Joined
Mar 29, 2014
Messages
4
Reaction score
1
Hello, on the server when I buy a pet, I can't click twice to see its age and status. on the old server debbo v4 mount it to see this and if it works. here is an image of the state of the pet

J0TmpsZ - Kepler - Java v14+ server (SnowStorm, BattleBall, Camera, Wobble Squabble) - RaGEZONE Forums
 

Attachments

You must be registered for see attachments list
Back
Top