Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or buildbot

Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or buildbot

Please use this forum to set up matches and discuss played games.

Moderator: Moderators

User avatar
ThinkSome
Posts: 170
Joined: 14 Jun 2015, 13:36
x 20

Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or buildbot

Postby ThinkSome » 11 Jun 2018, 19:52

Silentwings had a great idea to restrict bot-flagged game hosts to engine versions that can be automatically downloaded from the official buildbot.

I applaud such an initiative as it will make newbie life less frustrating, however I am of the opinion that it should be extended:
  1. It should apply to all rooms, with an exception for private rooms (i.e. password protected rooms where the password is not easily obtainable to anyone. These rooms should also not be 24/7).
  2. It should apply to maps and all their dependencies as well.
  3. It should apply to games and all their dependencies as well.
1 x

User avatar
Silentwings
Moderator
Posts: 3365
Joined: 25 Oct 2008, 00:23
x 219

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby Silentwings » 11 Jun 2018, 21:37

You have already had your answer in that thread - no. Short version:



Can this be extended to games and maps as well?

In practice: no. Auto-dl will never be mandatory for content.

to all hosts, not just botflagged ones

No - such restrictions won't be imposed on hosts without a botflag. Doing so gets in the way of devs and interested players who are developing and testing new content (use of rapid/SF is not compulsory, nor is use of botflagged autohosts).

From https://springrts.com/wiki/Botflags: "Hosts without a botflag are ... free to act as a private service provided by one or more users. "

That said, it would be sensible to notify user when content can't be autodownloaded, which presumably most lobby clients already do.

For newbies & casual players, lua lobbies are the future, and that's where effort should go here.
0 x

User avatar
ThinkSome
Posts: 170
Joined: 14 Jun 2015, 13:36
x 20

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby ThinkSome » 11 Jun 2018, 22:09

I am writing here because clearly I was not going to achieve anything on GitHub. I must repeat again that it does NOT prevent testing of new content. Most new content that is tested today can already be auto-downloaded and these restrictions would not apply for private rooms and the test lobby. Additionally, there are no unreasonable limits for uploading new content to SF/rapid.

Rules can and should change.
0 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14335
Joined: 17 Nov 2005, 02:43
x 80

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby Forboding Angel » 11 Jun 2018, 22:24

I agree with the spirit of this, but in practice, it would cause a lot of issues. Doing gamedev in spring, sometimes you need to use a client in the actual lobby, on the actual server to adequately test (using more than one bot at a time, for example).

Ofc, these rooms could be locked, but I just don't see how the ease of use to newbies would outweigh the headache to *devs.

If you're having newbies use springlobby as their client then you already have a serious problem from the get-go. What you are complaining about is a symptom of using springlobby for newbies, it isn't the actual problem. I suggest focusing on the actual problem.
1 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14335
Joined: 17 Nov 2005, 02:43
x 80

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby Forboding Angel » 11 Jun 2018, 22:32

And I forgot to address the elephant in the room anyway...

In many cases the lobby will report that the game or map can't be found, when in fact it can be found if you run pr-downloader from command line. (Big fat caveat here... addressed below)

This is why I resorted to have a launcher script run for my Steam and Itch.io builds which goes and gets the latest stable and test versions, as well as including the maps in the map pool with the initial download. On test versions this is common for hte lobby to report that the game doesn't exist. Thankfully, because of my launcher the user can just reload the lobby and get what they need.

This is a common issue and is usually because the lobbies don't delete the package lists and count on pr-downloader to overwrite them. The problem is that pr-downloader often fails at this, resulting in an outdated package list. In my launcher, the first thing I have it do is delete the rapid folder which forces pr-downloader to redownload the latest package lists, solving the issue.

Perhaps you should lobby abma to have springlobby do something similar.

It's not like my little launching script is anything special. You could copy pasta this and edit it to work for launching springlobby.

Code: Select all

TITLE Updating and Launching Evolution RTS Online
ECHO OFF
CLS
rd "%~dp0evo_data\rapid" /s /q
CLS
"%~dp0evo_data\engine\103.0\pr-downloader.exe" --filesystem-writepath "%~dp0evo_data" --download-game spring-features:stable
"%~dp0evo_data\engine\103.0\pr-downloader.exe" --filesystem-writepath "%~dp0evo_data" --download-game spring-features:test
"%~dp0evo_data\engine\103.0\pr-downloader.exe" --filesystem-writepath "%~dp0evo_data" --download-game evo:stable
"%~dp0evo_data\engine\103.0\pr-downloader.exe" --filesystem-writepath "%~dp0evo_data" --download-game evo:test
ECHO This window will close when you exit the game (You can close it now if you like)
weblobby.exe -url http://weblobby.springrts.com/evowl/index.html
exit


Here is something else you can use... Just save this as a .bat file and put it in your spring folder and make a shortcut to it on your desktop (this assumes that you have engine 104.0):

Code: Select all

ECHO OFF
CLS
rd "rapid" /s /q
CLS
:MANUALTAGINSTALL
TITLE PR-Downloader Menu: Manual Tag Entry
cls
ECHO ..............................................................................................
ECHO Manual Tag Entry (E.G. evo:test or evo:stable)
ECHO You can download specific versions such as "Evolution RTS - test-2113-e444a5a"
ECHO.
ECHO Please note that tags with spaces must be enclosed in double quotes (E.G. "tag name")
ECHO ..............................................................................................
ECHO.
ECHO 1 - Open a list of all rapid tags
ECHO 2 - Exit
ECHO.
SET /P M=Enter 1, or the tag you would like to install or update and press ENTER:

IF %M%==1 (
   GOTO RAPIDTAGS
) ELSE IF %M%==2 (
   exit
) ELSE (
   "%CD%\engine\104.0\pr-downloader.exe" --filesystem-writepath "%CD%" --download-game %M%
   GOTO MANUALTAGINSTALL
)

:RAPIDTAGS
start http://springrts.com/wiki/Rapid_Tags
cls
GOTO MANUALTAGINSTALL
Last edited by Forboding Angel on 11 Jun 2018, 22:44, edited 1 time in total.
1 x

User avatar
ThinkSome
Posts: 170
Joined: 14 Jun 2015, 13:36
x 20

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby ThinkSome » 11 Jun 2018, 22:41

This is not a consequence of Springlobby, despite the many shortcomings it has. Client side filtering would not be a good way to solve this problem.

What do you mean by "sometimes you need to use a client in the actual lobby, on the actual server to adequately test (using more than one bot at a time, for example)."? What are you testing that would be negatively impacted by this? As far as I can see, EvoRTS is available on rapid.

I must also reiterate that the test lobby is out there and available for radical testing. And I'm sure Uberserver devs and administrators would appreciate some "real" testing of it.


game/map not being found is not related to the issue at hand, but if the solution is as simple as forcing update of the rapid cache, then I guess this can be resolved. I remember such a ticket@ SL, but not the solution that you just gave.
0 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14335
Joined: 17 Nov 2005, 02:43
x 80

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby Forboding Angel » 11 Jun 2018, 22:48

Functionally, you could just open your spring folder, delete the rapid folder, leave and rejoin the battle and problem most likely solved. With new people from steam "DELETE YOUR RAPID FOLDER" became a pretty common refrain. So much so that I was embarrassed that such a glaring flaw existed, which prompted me to make a launcher (if you can really call it that).

Now the refrain has become, restart your lobby, which is much more acceptable due to the fact that SWL loads very quickly.

What do you mean by "sometimes you need to use a client in the actual lobby, on the actual server to adequately test (using more than one bot at a time, for example)."? What are you testing that would be negatively impacted by this? As far as I can see, EvoRTS is available on rapid.


When I'm testing, I'm usually testing changes that I have not committed yet, so my game will show up in the lobby as "Evolution RTS - $VERSION", and yes, I do occasionally have people join them when I forget to lock the battle.

https://github.com/EvolutionRTS/Evoluti ... fo.lua#L16


Understand, I didn't say your suggestion was bad, just that it has some issues of it's own and that imo it would be better to solve the problem at it's source, which is the fact that the lobbies aren't forcing package list updates.
0 x

User avatar
ThinkSome
Posts: 170
Joined: 14 Jun 2015, 13:36
x 20

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby ThinkSome » 11 Jun 2018, 23:07

What do those people do when they join your test battle? Do you paste-bin patches and you start playing? :D I don't see any reason why you couldn't continue doing these tests on the test lobby. Actually ... are you unable to do these tests locally, without hosting a battle?

Also your lobby problem has nothing to do with this topic, it would still persist even after these rules were implemented and enforced.
0 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14335
Joined: 17 Nov 2005, 02:43
x 80

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby Forboding Angel » 11 Jun 2018, 23:29

The point is that your suggestion would only make things more complicated without helping anything.

Additionally, I have steam and Itch as distribution systems. Within those distribution systems I can include anything I want, including an engine or game version or even maps that isn't available elsewhere. In fact, this is precisely what NOTA does. They have their own entire distribution system that exists completely outside of spring's infra.

You are suggesting that we be confined to spring's infra. That's BS. If you want a good newbie experience, then put together an actual package instead of telling newbies to grab the lobby at springlobby.info and join a host. If you care about newbie experiences, then you should go to the trouble of providing a good experience for them.

Go download Evo and see how the experience is. It's quite smooth and seamless.


Your suggestion is from the perspective of someone who ONLY knows about using spring games via independently installing springlobby. That is objectively the WORST way to do it. Please, do some research. You can start by going to the downloads page here:

https://www.evolutionrts.info/

Then, I suggest that you try the NOTA experience:

http://nota.machys.net/

Because it is clear that you need some perspective. Your suggestions are unrealistic and could impose a lot of unnecessary hardship.
0 x

User avatar
ThinkSome
Posts: 170
Joined: 14 Jun 2015, 13:36
x 20

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby ThinkSome » 12 Jun 2018, 00:15

I'm not suggesting for you to be confined to spring infra, I'm suggesting that whatever you distribute outside of spring infra is also made available on spring infra. Is that not a simple and reasonable requirement to make? This is so that other game release teams/persons that do not wish to hide other games do not have to scour itch and steam for your files so that their players could also experience your game.

I'm also not arguing against packaging everything together. This is a good thing for initial distribution. NOTA does what it does because they want to be special with their closed-source client. They also have their own lobby server if I understood correctly.

I also don't see why I should have to do XYZ and PQR as preconditions before I can dare to suggest THIS improvement. And I am already going to the trouble of providing a good experience to them in multiple ways, including opening this topic and requesting this change to be implemented. This change is also not a replacement for making game distribution packages and is not related to those in any way.
0 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14335
Joined: 17 Nov 2005, 02:43
x 80

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby Forboding Angel » 12 Jun 2018, 02:54

I'm not suggesting for you to be confined to spring infra, I'm suggesting that whatever you distribute outside of spring infra is also made available on spring infra.


But the end result is the same.

This is so that other game release teams/persons that do not wish to hide other games do not have to scour itch and steam for your files so that their players could also experience your game.


If you went and downloaded evo via springlobby, your experience will be fundamentally subpar compared to if you had grabbed it via steam or itch. This seems more like a filtering issue on your end. You want to be able to filter out things that you can't access from directly within spring's infra.

NOTA does what it does because they want to be special with their closed-source client. They also have their own lobby server if I understood correctly.


Everything that you said here is incorrect. The client is not closed source, and hasn't been for many years(4?) at this point. They also use spring's ubserserver server.

I also don't see why I should have to do XYZ and PQR as preconditions before I can dare to suggest THIS improvement. And I am already going to the trouble of providing a good experience to them in multiple ways, including opening this topic and requesting this change to be implemented. This change is also not a replacement for making game distribution packages and is not related to those in any way.


The problem is that what you want would not actually improve the experience. It would simply extend a broken one to not be quite as broken. It's still broken! Rapid wasn't created with the intention of it being used as a distribution system apparently(which was certainly news to me, but this was stated semi-recently by either abma or kloot, iirc. I'm pretty sure it was kloot in response to a BA thread regarding rapid.). As a result, I wouldn't recommend hanging all my hopes and dreams upon it. The test branches are certainly useful, and the updating of rapid is super useful and saves me a lot of time and trouble in the long run. But just understand that the way we use it was not it's intended use (although I don't understand why).

I'm telling you that your suggestion is flawed and that what you want wouldn't necessarily help matters. As far as I can tell, what would work for you best would be a special battle filter. Your suggestion might simply just add an ineffective bandaid to a wound that refuses to heal.

Edit: I'mma stop replying at this point because I don't think I'm helping matters. Perhaps someone else has a better perspective and can articulate it in a way that is less confusing than I.
0 x

gajop
Moderator
Posts: 2891
Joined: 05 Aug 2009, 20:42
x 158

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby gajop » 12 Jun 2018, 15:08

Hey.
Silentwings' idea was mostly about the engine. I see many mentions of rapid here, are we talking about the same thing?

As far as public/official hosts go, they should most probably offer downloadable engines. Generally I'm not super in favor of this idea anyway, because it's bound to introduce some issues during legitimate use, but let's not waste time discussing games and maps
0 x

sprunk
Posts: 67
Joined: 29 Jun 2015, 07:36
x 27

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby sprunk » 12 Jun 2018, 17:19

What are the meaningful differences between content and engine from the PoV of a player that warrant special handling for one but not the other?
0 x

User avatar
Silentwings
Moderator
Posts: 3365
Joined: 25 Oct 2008, 00:23
x 219

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby Silentwings » 12 Jun 2018, 20:07

Debug symbols of dev engine builds are deleted after 120 days, because of disk space, at which point they are also made unavailable for dl. So, bug reports from such engines mostly can't be dealt with.

(Release builds of the engine are kept indefinitely, and are unaffected.)
0 x

User avatar
ThinkSome
Posts: 170
Joined: 14 Jun 2015, 13:36
x 20

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby ThinkSome » 17 Jun 2018, 01:32

Forboding Angel wrote:
NOTA does what it does because they want to be special with their closed-source client. They also have their own lobby server if I understood correctly.


Everything that you said here is incorrect. The client is not closed source, and hasn't been for many years(4?) at this point. They also use spring's ubserserver server.

Can you link me to the source code, then? They use uberserver sure, but I was told they have their own server software ready to replace uberserver.


Forboding Angel wrote:The problem is that what you want would not actually improve the experience. It would simply extend a broken one to not be quite as broken. It's still broken! ...

And making a broken one to not be quite as broken does not improve the experience?
Forboding Angel wrote:Rapid wasn't created with the intention of it being used as a distribution system apparently(which was certainly news to me, but this was stated semi-recently by either abma or kloot, iirc. I'm pretty sure it was kloot in response to a BA thread regarding rapid.). As a result, I wouldn't recommend hanging all my hopes and dreams upon it. The test branches are certainly useful, and the updating of rapid is super useful and saves me a lot of time and trouble in the long run. But just understand that the way we use it was not it's intended use (although I don't understand why).

I'm telling you that your suggestion is flawed and that what you want wouldn't necessarily help matters. As far as I can tell, what would work for you best would be a special battle filter. Your suggestion might simply just add an ineffective bandaid to a wound that refuses to heal.

Edit: I'mma stop replying at this point because I don't think I'm helping matters. Perhaps someone else has a better perspective and can articulate it in a way that is less confusing than I.



What was rapid designed as, then?
Why would my suggestion be flawed? So far all you did was ramble about some unrelated issue and how you "fixed" it by NOT fixing it. And then you went on to ramble about how this improvement is bad and not an improvement at all, all the while failing to come up with a single valid use case that would necessitate not implementing this (and before you start repeating yourself, I already told you that the test lobby exists AND that you could just password your test games).

Do you expect me or someone else to just post one single huge patch that solves all problems spring has ever had in one go? Nobody can do this, me included.


Silentwings wrote:


How large are these symbols? Until now I imagined the problem was engine downloads themselves, but symbols can be kept on cheap home storage.. Downloading them at 1mbps from a home server is also acceptable.
0 x

User avatar
Peet
Malcontent
Posts: 4375
Joined: 27 Feb 2006, 22:04
x 4

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby Peet » 21 Jun 2018, 08:53

Let's make hosting as hard and annoying as possible so even fewer people do it
2 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14335
Joined: 17 Nov 2005, 02:43
x 80

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby Forboding Angel » 21 Jun 2018, 22:24

The sarcasm makes a good point. Running spads hosts is already a thoroughly irritating ordeal, but then turning around and saying "Your stuff has to be available through rapid, full stop" is a bit much.

It's very possible that a spring game does not want to use spring infra other than lobby server, and I don't think there is anything wrong with that. If your lobby is showing you battles that you can't automagically participate in, I would say that that is a problem with your lobby, not the host.

Ubserserver is a garden hose gushing out information. It is up to your lobby to be a nozzle that focuses that information in a manner that is useful.
0 x

User avatar
ThinkSome
Posts: 170
Joined: 14 Jun 2015, 13:36
x 20

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby ThinkSome » 21 Jun 2018, 23:26

Running SPADS is easy for someone who knows how to manage servers, I believe Yaribz did a great job at making it so. He is also very responsive when you need help at hosting.

Why would any game refuse to use the infra that is provided along the lobby server for free? I simply do not find this believable.
Furthermore, if we allow every game to have their own infra outside the spring lobby and not make their content available to at a common location, then we may quickly end up in a situation where every game will host their own lobby server and generally wall themselves in. I was always of the opinion that sharing the work burden helps us all and that everyone doing everything all by themselves will end up with multiple perpetually unfinished projects that have no hope of ever competing with commercial offerings.
0 x

User avatar
code_man
Posts: 260
Joined: 19 Jan 2014, 13:10
x 14

Re: Add a new rule for game hosting: all non-private rooms must have content that can be auto-dl from SF, rapid or build

Postby code_man » 05 Jul 2018, 14:06

I agree with thinksome here.
It just makes so little sense to have a public hosted room if the public cannot play it.
I dont see how those edge cases that provide games only for specific lobbies piggiebacking on sl infra have much of a significance.
Usually the rare games that are being dev tested are already passworded.
I absolutely dont see how such a rule could have a downside.
0 x


Return to “Ingame Community”