Greetings Superfighters. This is a serious problem I've encountered since the Steam release (but no one really noticed or reported it).
When I'm hosting an empty dedicated server, the game keeps GameOver-ing the match and loads the same map over and over.. until someone joins. This is a serious issue since it causes lag spikes and useless resources usage every 20 seconds (especially when hosting and playing in other servers).
I already tried to make a script to change the current map type to custom, or add bots and disable them, but nothing seems to work.
As I said this causes intense lag spikes when hosting and playing in some server at the same time, regardless your pc specs; and I've a pretty powerful pc.
Is there any workaround or fix to this peculiar problem?! I just hope I'm not too late for posting this, and devs will fix this annoying and weird issue.
Any suggestion is appreciated.
Dear forum users! In compliance with the new European GDPR regulations, we'd just like to inform you that if you have an account, your email address is stored in our database. We do not share your information with third parties, and your email address and password are encrypted for security reasons.
New to the forum? Say hello in this topic! Also make sure to read the rules.
New to the forum? Say hello in this topic! Also make sure to read the rules.
Dedicated Server loading loop..
Forum rules
By using the forum you agree to the following rules. For this forum you also need to follow these additional rules.
By using the forum you agree to the following rules. For this forum you also need to follow these additional rules.
- Gurt
- Lead Programmer
- Posts: 1884
- Joined: Sun Feb 28, 2016 3:22 pm
- Title: Lead programmer
- Started SFD: Made it!
- Location: Sweden
- Gender:
- Age: 34
I'm not exactly sure why you're experience such severe lagspikes. The server do restart a special map each minute while waiting for players. It loads a special map with only a text "Waiting for players to join" which is a bare minimum map.
However, it does load extension scripts you have enabled which I'm assuming is causing the lagspikes / CPU spikes as they need to compile and load into memory and a lot of other stuff - it's a lot of overhead doing this - then you take that for each server you want to run.
I have released an experimental build in the BETAPREVIEW branch for Superfighters Deluxe where I have
You can try this out now and see if it helps in your case.
1: Download the BETAPREVIEW branch. You do this by going into Steam -> Library -> Superfighters Deluxe -> Properties -> BETA. Select the betapreview branch. If you don't see it you need to enable it by typing in "balistabalista" into the password box. This build is fully compatible with the existing 1.3.7 version so you don't have to worry about players not being able to join in.
2: Close your servers and open your config.ini file for each server you have configured. Find HOST_GAME_IGNORE_SCRIPTS_WHILE_WAITING_FOR_PLAYERS and set it to 1 (if you don't see the key just add it).
HOST_GAME_IGNORE_SCRIPTS_WHILE_WAITING_FOR_PLAYERS=1
OBS: The server needs to be closed or any changes made to the config.ini file will be overwritten by the server itself.
Note that extension scripts can't be interacted with using the chat while the server is waiting for players if you change use this option. But it might just be required if you have extension scripts running in a "multi-server environment" to avoid lag-spikes.
If this helps please reply so I can make it a more permanent and easily accessible option in the "host options" tab within the server software itself.
--
Keep reporting bugs and issues as we're still supporting and maintaining Superfighters Deluxe. However, we have no more plans for new content to Superfighters Deluxe but that's not saying we're never going to keep releasing updates containing tweaks and bug-fixes.
However, it does load extension scripts you have enabled which I'm assuming is causing the lagspikes / CPU spikes as they need to compile and load into memory and a lot of other stuff - it's a lot of overhead doing this - then you take that for each server you want to run.
I have released an experimental build in the BETAPREVIEW branch for Superfighters Deluxe where I have
- increased the time between map restarts to 10 minutes while waiting for players
- option to disable loading extension scripts while waiting for players.
You can try this out now and see if it helps in your case.
1: Download the BETAPREVIEW branch. You do this by going into Steam -> Library -> Superfighters Deluxe -> Properties -> BETA. Select the betapreview branch. If you don't see it you need to enable it by typing in "balistabalista" into the password box. This build is fully compatible with the existing 1.3.7 version so you don't have to worry about players not being able to join in.
2: Close your servers and open your config.ini file for each server you have configured. Find HOST_GAME_IGNORE_SCRIPTS_WHILE_WAITING_FOR_PLAYERS and set it to 1 (if you don't see the key just add it).
HOST_GAME_IGNORE_SCRIPTS_WHILE_WAITING_FOR_PLAYERS=1
OBS: The server needs to be closed or any changes made to the config.ini file will be overwritten by the server itself.
Note that extension scripts can't be interacted with using the chat while the server is waiting for players if you change use this option. But it might just be required if you have extension scripts running in a "multi-server environment" to avoid lag-spikes.
If this helps please reply so I can make it a more permanent and easily accessible option in the "host options" tab within the server software itself.
--
Keep reporting bugs and issues as we're still supporting and maintaining Superfighters Deluxe. However, we have no more plans for new content to Superfighters Deluxe but that's not saying we're never going to keep releasing updates containing tweaks and bug-fixes.
1 x
Gurt
- Odex64
- Superfighter
- Posts: 172
- Joined: Sat Jul 29, 2017 12:39 pm
- Title: Content Creator
- SFD Account: Odex64
- Started SFD: PreAlpha
- Location: Italy
- Gender:
- Age: 22
Glad you didn't abandon SFD and keep patching it! I've tested the new build for at least 20/30 minutes, and it worked as expected.
First of all I want to say that when I downloaded the betapreview, I launched and closed sfd (in order to update the confing.ini); but I didn't find the "HOST_GAME_IGNORE_SCRIPTS_WHILE_WAITING_FOR_PLAYERS". So I had to delete the config.ini and let the game create a new one.
Regarding the lag spikes, I've experienced performance issues only after 10 minutes while hosting and playing in other servers (when my server re-loaded the special map). This is a great improvement which makes the lag spikes negligible since it happens every 10 minutes, however I recommend to extend the time at least to 30 minutes / 1 hour.
P.s: There's still some lag when firsts players join or the server changes / loads a map in general (so my problem is the map loading itself).
I've tried the new setting in confing.ini too, but I didn't notice performance change.
I didn't find any other issue (or bug) so far. As I said above I'd extend the time to at least 30 minutes; But I don't think you can completely fix these lag spikes, since the problem is the map-loading itself (even though I don't experience lags while hosting and playing in my server).
Said that, I'll keep testing this version and report any other bug or issue as soon as I find them.
----
Keep it up
First of all I want to say that when I downloaded the betapreview, I launched and closed sfd (in order to update the confing.ini); but I didn't find the "HOST_GAME_IGNORE_SCRIPTS_WHILE_WAITING_FOR_PLAYERS". So I had to delete the config.ini and let the game create a new one.
Regarding the lag spikes, I've experienced performance issues only after 10 minutes while hosting and playing in other servers (when my server re-loaded the special map). This is a great improvement which makes the lag spikes negligible since it happens every 10 minutes, however I recommend to extend the time at least to 30 minutes / 1 hour.
P.s: There's still some lag when firsts players join or the server changes / loads a map in general (so my problem is the map loading itself).
I've tried the new setting in confing.ini too, but I didn't notice performance change.
I also tried to start scripts through the chat, and it worked (did you mean this?).
I didn't find any other issue (or bug) so far. As I said above I'd extend the time to at least 30 minutes; But I don't think you can completely fix these lag spikes, since the problem is the map-loading itself (even though I don't experience lags while hosting and playing in my server).
Said that, I'll keep testing this version and report any other bug or issue as soon as I find them.
----
Keep it up
0 x
- Gurt
- Lead Programmer
- Posts: 1884
- Joined: Sun Feb 28, 2016 3:22 pm
- Title: Lead programmer
- Started SFD: Made it!
- Location: Sweden
- Gender:
- Age: 34
You didn't need to delete your config.ini file. Just add the key if you don't see it "(if you don't see the key just add it)".
The "special map" is just all in-memory and no IO access is required. The restart time is there for failsafe reasons. I think I will add an option for the restart time too that can be configured for "multi server instance users" with some description of what it does to help ease your problem.
"There's still some lag when firsts players join or the server changes / loads a map in general (so my problem is the map loading itself)."
However, based on your description of your problem and how your experience has improved with this test-build my guess is that your network throughput isn't enough when one server is loading a map and sends information to all players joined in while the other servers are still running. Everyone using the network will feel this bottleneck in the network throughput. I don't think we can add a max "transmition speed" for servers in the middle of loading another map but I will look into it and see if it's possible as it might just be what you need for your network/router to keep up with all the data packages to avoid congestion. The downside is that loading will take longer but you might rather have that then having occasional network congestion spikes causing some lag on the other servers.
"Note that extension scripts can't be interacted with using the chat while the server is waiting for players .. "
What I mean is that you can't use the chat to type in script specific commands implemented by some scripts. Some scripts can read the chat and use this to be able to configure stuff in them using the chat directly. Starting/Stopping scripts can still be done as that's implemented by SFD itself.
The "special map" is just all in-memory and no IO access is required. The restart time is there for failsafe reasons. I think I will add an option for the restart time too that can be configured for "multi server instance users" with some description of what it does to help ease your problem.
"There's still some lag when firsts players join or the server changes / loads a map in general (so my problem is the map loading itself)."
However, based on your description of your problem and how your experience has improved with this test-build my guess is that your network throughput isn't enough when one server is loading a map and sends information to all players joined in while the other servers are still running. Everyone using the network will feel this bottleneck in the network throughput. I don't think we can add a max "transmition speed" for servers in the middle of loading another map but I will look into it and see if it's possible as it might just be what you need for your network/router to keep up with all the data packages to avoid congestion. The downside is that loading will take longer but you might rather have that then having occasional network congestion spikes causing some lag on the other servers.
"Note that extension scripts can't be interacted with using the chat while the server is waiting for players .. "
What I mean is that you can't use the chat to type in script specific commands implemented by some scripts. Some scripts can read the chat and use this to be able to configure stuff in them using the chat directly. Starting/Stopping scripts can still be done as that's implemented by SFD itself.
1 x
Gurt