Author Archives: SmartFoxServer Team

SmartFoxServer 2.18.3 is out!

We just released SFS2X patch 2.18.3 which fixes a couple of problems with the Analytics module, adds IP-range support for Admin clients and fixes a minor UI issue with the AdminTool. You can read the release notes and proceed with the download from here.

While you are at it, also check out the latest client API in our dedicated download section.

Please note: the patch requires SFS2X 2.18.0 to be already installed.

SmartFoxServer 2.18.2 is available!

We just released SFS2X patch 2.18.2 which provides a series of features that have been requested and launches updated client-side APIs for all supported platforms. You can read the release notes and proceed with the download from here.

The latest client API can be obtained from our dedicated download section.

Please note: the patch requires SFS2X 2.18.0 to be already installed.

Custom Room Storage with SFS2X 2.18

Since the release of SmartFoxServer 2.18 we have introduced a way to override the default implementations for the Room Persistence API so that they can be customized to your needs.

Prior to this release we provided a file-based and a relational database-based storage mechanisms that could be used in conjunction with the API to save the state of multiple active Rooms.

With the new release you can now create your own storage implementations and plug them into the Persistence API. In this short article we’ll walk you through what has changed and how you can create a custom storage class.

Continue reading

SmartFoxServer 2.18 is out!

We have just released SmartFoxServer 2X 2.18.0, which provides several library updates, new runtime, support for M1 Macs, extra features and bug fixes.

Please note: the new release comes as a standalone installer so it can’t be used to update a previous instance.

» Get the new SmartFoxServer 2.18.0 installer from our download section.
» Read the full release notes here.

Load Balancing SmartFoxServer 2X with HAProxy

In this article we are going to explore several ways to use the open source HAProxy load balancer in conjunction with SFS2X, to increase the scalability and availability of a multiplayer project.

We are going to show different configurations for TCP and Websocket connections and several ways to setup the system for common use cases.

To get the most out of this tutorial we require a basic knowledge of what a Load Balancer is and how it works, and some familiarity with the basics of networking and the OSI Model.

Continue reading

SFS2X memory settings and garbage collection (part 2)

In our previous chapter we have talked about the JVM memory configuration: when to use the defaults and when it might be necessary to fine tune the settings. We also touched on potential side effects of manual tuning and how it can sometimes backfire, for example, forcing the Garbage Collector (GC) to work harder.

In the second part of this series we are taking a look at the different Garbage Collectors available, which is the best for a specific use case, and when it’s useful to switch to a different implementation.

Continue reading

Using a database in Overcast (part 3)

In the third (and last) part of this series we are taking a look at using the JDBC API to access a database via SFS2X Extensions. While this approach takes a bit more coding compared to the DBManager API (which we have explored in part 2) it also provides more sophisticated features such as working with metadata and advanced data types.

Continue reading