off-topic ramble

off-topic ramble

Post just about everything that isn't directly related to Spring here!

Moderator: Moderators

Ares
Balanced Annihilation Developer
Posts: 441
Joined: 19 Mar 2011, 13:43

off-topic ramble

Post by Ares »

A request to keep Spring engine usable by all. The Spring Engine is a platform for all RTS mods, not just one.

Every mod should get a vote as they have decades of work invested in Spring, they deserve control of their future.

BAR devs do you agree not to relicense the engine and make changes that make it unusable by other games?

Thanks
User avatar
Silentwings
Moderator
Posts: 3703
Joined: 25 Oct 2008, 00:23

Re: Keep Spring engine usable by all

Post by Silentwings »

Springs GPL license basically prevents relicensing of existing code. It would need the permission of *all* previous authors, which is Springs case is near impossible, I doubt a single one would agree and contact details for some of them are long lost.
User avatar
Teifion
Posts: 13
Joined: 10 Mar 2021, 00:10

Re: Keep Spring engine usable by all

Post by Teifion »

I think Silentwings hit the nail on the head here. In addition to not giving any indication they plan to screw over other games, the BAR devs can't relicense the code even if they wanted to. Furthermore, if your mod fell out of compatibility with the latest game improvements you can always just use the existing game engine. I don't understand the concern.
Ares
Balanced Annihilation Developer
Posts: 441
Joined: 19 Mar 2011, 13:43

Re: Keep Spring engine usable by all

Post by Ares »

Teifion, maybe you aren't familiar with what happens to mods that use old engines?
Ares
Balanced Annihilation Developer
Posts: 441
Joined: 19 Mar 2011, 13:43

Re: Keep Spring engine usable by all

Post by Ares »

Teifion wrote: 31 Mar 2021, 15:03 In addition to not giving any indication they plan to screw over other games
Felony 2 for spamming out of context screenshots intended as defamation. User was warned for this post.
Last edited by Ares on 31 Mar 2021, 18:04, edited 2 times in total.
User avatar
Teifion
Posts: 13
Joined: 10 Mar 2021, 00:10

Re: Keep Spring engine usable by all

Post by Teifion »

I'm not familiar no; my guess from context is they fall out of popularity as other mods implement new features, improvements and changes the community prefer. Just like everywhere else in life; if you've got people actively developing your mod then you have a choice to spend time/energy on implementing those features or not.

As for Triton; I don't think he's a BAR dev so I'd not take his word on that. In addition, that statement of his makes no sense.

I still can't understand why you are concerned over this given the replies you've gotten. I might be misunderstanding what you are actually worried about; so far I've understood it to be you are worried BAR devs will make changes to the engine and not allow it to remain open source (which they legally can't and even if they could it's not a problem as outlined above).
Ares
Balanced Annihilation Developer
Posts: 441
Joined: 19 Mar 2011, 13:43

Re: Keep Spring engine usable by all

Post by Ares »

we agree it is great when people are allowed to play and develop their mods without being treated badly by others
User avatar
Teifion
Posts: 13
Joined: 10 Mar 2021, 00:10

Re: Keep Spring engine usable by all

Post by Teifion »

You've not responded to my points in the slightest; instead you've responded with a loaded statement. I'm not sure I can provide the help/answers you are looking for.
Ares
Balanced Annihilation Developer
Posts: 441
Joined: 19 Mar 2011, 13:43

Re: Keep Spring engine usable by all

Post by Ares »

You work on BAR Teifion? My main concern is the effect on the majority of Spring games.
saturnV
Posts: 107
Joined: 03 Dec 2020, 07:58

Re: Keep Spring engine usable by all

Post by saturnV »

Teifion wrote: 31 Mar 2021, 17:43 I'm not familiar no; my guess from context is they fall out of popularity as other mods implement new features, improvements and changes the community prefer.
No, you guessed very wrong.

At the time, BA was still the most popular game on the spring server. Playeractivity was comperable to zero-K.
In 2016 a new team took over BA and mainly did two things:
1) gameplay changes
2) change BA's engine to spring v104 (and 104 testversions)

The gamplay changes were not liked by players and they split about 50-50: On some days the last "original" BA 9.46 was played, sometimes they played/test the "new BA10." (BA10 team later complained that players refused to test their new versions which is not true.)
However, in the end the "original" BA turned out to be more popular.
In this context you have the comments by BA10 team like: "Players should just be forced to play our version until they like it." (freely quoted)

Players felt that BA10 attempted too many balance changes in too short time.
To understand this, one should know that BA describes itself as "BA is a mature game and new versions feature only minor balance tweaks."
Some were also fed up discussing gameplay with members of the BA10-team and random spring-users who never played the game.
(The engine version had little to do with this, except that some players could not run the new spring version.
This was and is often mispresented.)


So the new situation was:
Players continuted to play BA9.46 on an older spring version.
BA10 had used up all its trust and basically was ignored. It run on "bleeding edge" test-version of Spring.

It was during this situation when engine developers stepped in even further:
They disliked to see the most popular game using an old engine version. So they put in place a "botflag system" that limited hosts on old engine version to max 8 players.
Many games were still using old engine versions.
However, BA was the only game popular enough to be hit by this ban, others games struggled to keep players at all. So one could say this new rule was invented to target the original BA9.46.

BA10 was using "bleeding edge test versions" of spring. These were deleted by a script after 120 days to free up server diskspace. The testversions were not meant for long-time use like BA10 did. When BA10 team slowly forgot about BA10 and moved to BAR, they left BA in an unplayable state:
The used engine versions were no long downloadable.
(In Dec 2020 only one host of all games used the current stable engine version. See my posts in viewtopic.php?p=596081#p596081 )

With the new BA10 left in an unplayable state plus a gameplay philosophy not acceppted by players plus original BA effectivel banned, this was the end of BA on official lobby server.
By then, another BA-team made up of players who prefered "original BA9.46" had already formed and was running an alternative lobbyserver. (springfightclub) There BA is still played today and eventually updated to using latest stable spring version - without being forced by restrictions.
User avatar
Teifion
Posts: 13
Joined: 10 Mar 2021, 00:10

Re: Keep Spring engine usable by all

Post by Teifion »

Thank you for the history lesson (not sarcasm, it's all before my time so legitimately helpful) saturnV.
They disliked to see the most popular game using an old engine version. So they put in place a "botflag system" that limited hosts on old engine version to max 8 players.
Everything makes logical sense up until this point. The engine is opensource, what stopped those that wanted to play on the older version of BA from using a pre botflag build of the engine? Even if they didn't benefit from new features they'd not be forced to be limited to 8v8. If I want to use a bleeding-edge version of my operating system then I understand it comes with risks.

I'm just not understanding how something open source (thus has a commit history) means you have to upgrade.
saturnV
Posts: 107
Joined: 03 Dec 2020, 07:58

Re: Keep Spring engine usable by all

Post by saturnV »

Teifion wrote: 31 Mar 2021, 17:43I still can't understand why you are concerned over this given the replies you've gotten. I might be misunderstanding what you are actually worried about;
What I understand from the 3do-thread:
1) according to ivand, official engine development is dead since 1 year.

2) The BAR-fork of spring removes support for 3do models.

3) eventually changes from BAR-fork might get put into official spring.
Especially with official spring development "being dead", it does seem possible that BAR-fork simply replaces official spring?
This could mean that eventually official Spring will lose 3do models support, too.
This would hit basically all spring games that still have a playerbase.


Lately, spring developers took measures against games using old spring versions.
Already XTA was effectively killed by banning engine 98.0 over "security issue."
BA would have died too, if not for the alternative springfightclub server.

Games stay on old engines for several reasons:
Sometimes new versions do not work on some computers. For example Mac support was dropped and generally newer hardware is required.
In general that is okay, however the communities around active spring games are tiny. Even BA playerbase only was in the hundreds and for other games it was no more than a dozen players. If a game loses a group of friends who plays on Mac or old hardware or laptops then that can easily kill the whole game.

BAR devs do you agree not to relicense the engine and make changes that make it unusable by other games?
It is not about the license.
The question is if spring devs would allow the BAR-fork to be played on official server, plus if support for that forks would be added.
Spring multiplayer has had multi-version engine support since many years, so it seems doable in theory.
However, from the replies in 3do-thread and the recent handling of old engines, it seems unlikely. Sure, sometimes people suggest that games should get their own engine-developers, run their own lobby-servers and so on. But if you raise the barrier more and more then it is no wonder no new games have been made in the last years.
saturnV
Posts: 107
Joined: 03 Dec 2020, 07:58

Re: Keep Spring engine usable by all

Post by saturnV »

Teifion wrote: 31 Mar 2021, 19:16 Thank you for the history lesson (not sarcasm, it's all before my time so legitimately helpful) saturnV.
They disliked to see the most popular game using an old engine version. So they put in place a "botflag system" that limited hosts on old engine version to max 8 players.
Everything makes logical sense up until this point. The engine is opensource, what stopped those that wanted to play on the older version of BA from using a pre botflag build of the engine?
The botflag-system is not in the engine. It is lobby-server side.
User avatar
Teifion
Posts: 13
Joined: 10 Mar 2021, 00:10

Re: Keep Spring engine usable by all

Post by Teifion »

I'm still not understanding. I've read through what you said and I think there's an element of distraction. I'm not fussed about the models thing, I'm trying to understand how making changes to new versions of the engine will affect those using an older version.

You said the botflag was lobby side, that sounds like a spring lobby issue as opposed to an engine issue. I appreciate asking your users to stay on an older version of the lobby is not practical but I can't see how this ties in to Ares original post.

I suppose ultimately it comes down to something like this:
I'd summarise by saying wrote:If I'm devving a game G and using Engine V1000 butt V1001 will break my game, I simply don't have to use V1001
I'm hoping this explains my confusion, it's not always easy to communicate over forums and I'm conscious I may not have come across as clearly as I desired.
saturnV
Posts: 107
Joined: 03 Dec 2020, 07:58

Re: Keep Spring engine usable by all

Post by saturnV »

I'm trying to understand how making changes to new versions of the engine will affect those using an older version.
Using the old version is not be possibly anymore. Basically since some years the old versions are banned.
The spring-server does not allow hosting games that are over 8 players and use old engine versions.
It is lobby-server side.
It can not be bypassed by using an old engine or old lobbyclient because the server will refuse to host it.
It is that simple, really.
https://springrts.com/wiki/Botflags
viewtopic.php?f=64&t=38922

Nobody knows how future versions will be handled, but it seems likely in the future it will continue like that.
(Sometimes people say that "it is not a ban" because you can still play with less than 8 players. However, we all know that BA-players enjoyed team and FFA games with >8 players. )

The people who run server and develop engine are either the same people or closely connected. They used this ban to force games/players to use current versions. ("Either use newest engine version or development stops.")

Teifion wrote: 31 Mar 2021, 19:36
I'd summarise by saying wrote:If I'm devving a game G and using Engine V1000 butt V1001 will break my game, I simply don't have to use V1001
I'm hoping this explains my confusion, it's not always easy to communicate over forums and I'm conscious I may not have come across as clearly as I desired.
Yes, in your example your game would now be limited to 8 players if you want to stay on Engine V1000.
If your game is built around teamgames and (one of the few spring games to reach 8 players in a battle) then that would effectively kill it.
User avatar
Teifion
Posts: 13
Joined: 10 Mar 2021, 00:10

Re: Keep Spring engine usable by all

Post by Teifion »

What stops those that don't want to update from hosting their own server? I just always assumed until now they'd been doing that but your post implies they're using a server hosted by somebody else and that person wants to use a newer engine so is enforcing it. Have I got that correct?
Master-Athmos
Posts: 916
Joined: 27 Jun 2009, 01:32

Re: Keep Spring engine usable by all

Post by Master-Athmos »

saturnV wrote: 31 Mar 2021, 19:21 This could mean that eventually official Spring will lose 3do models support, too.
This would hit basically all spring games that still have a playerbase.
Actually no. Converting 3dos to s3os already is and was for years possible via Upspring. I tried this years ago and it did work just fine so the only thing that would be needed is like ... I don't know ... one minute of time for the conversion of each model?

Also it's not like this is a new thing that games have to adapt in order to be compatible with new engine versions. Think of what happened around version 82 where things like unit spawn on game startup was changed to Lua scripts instead of being hardcoded for TA games - not mentioning the transition from fbi unit definition files to Lua. Things like that happened all the time plus it was even worse as initially you couldn't host games running different engine versions. In other words conditions way worse than it's the case right now and BA made it through this just fine. And to be true with all the fuzz about BA and version 103 and the playercount limitation on the official server: This all could have been evaded by adapting the game to version 104. As I read a couple of weeks ago I think someone finally has worked on BA so it runs on engine version 105. So all of the problems could have been solved at any time. That's also what I myself had to go through when working on my old Maximum Annihilation mod again. It of course wouldn't run with recent engine versions anymore so I went ahead and started doing the work and make it compatible again...

So from my point of view the whole beef about BA basically comes down to the lack of a person who wanted to maintain it so it runs with the latest engine version. I completely understand that for the gamers this is an annoying situation and yes even if there were some people who weren't fond of Total Annihilation based games in general it's not like BA ever was completely roadblocked - your very own 105 port should show that now...

Apart from that I don't think BA should prevent any advances of the engine that would make it more performant and capable. Sticking to 1997 tech can't be the way to go - especially when adapting to it is rather easy and just needs some time to just do the work (or even next to none if the automatic 3do->s3o conversion comes to fruition). Personally I'd vote to just remove such very outdated tech as maintaining and bugfixing it takes development time that the engine really needs in other parts to make some reasonable progress. Plus it's probably extremely boring for the actual programmers trying to keep 25 year old concepts alive...

So to wrap things up this topic's title "Keep Spring engine usable by all" is misleading as even if things like 3do support would be dropped (which isn't even set in stone anyway) the engine stilll would be usable by everyone who desires to do so...
saturnV
Posts: 107
Joined: 03 Dec 2020, 07:58

Re: Keep Spring engine usable by all

Post by saturnV »

BA moved to its own lobbyserver already: The springfightclub server.
It was originally started by players who could not play the original BA9.46 anymore when the used engine version was banned on official spring server.
Some other games are played there too, sometimes.
The springfightclub server does not restrict which engine version is used.

This BA team has meanwhile updated BA to current engine version. (Before that, they had already done other releases with bugfixes/small gameplay changes.)
From what I read, BA would like to return to official spring server.
It just has so many advantages for players to have all spring games on one server. So starting the alternate server was a big step not taken lightly.
It was the current thing to do at the time:
No multiplayer game can afford to stay in unplayable state for too long, especially not when we are talking about tiny communities like the ones around Spring games.

Since BA is currently running on latest stable engine release, a return to official server would be possible - at the moment. It makes no sense to return to official server only to be hit again with new restrictions in the future.
saturnV
Posts: 107
Joined: 03 Dec 2020, 07:58

Re: Keep Spring engine usable by all

Post by saturnV »

Master-Athmos:
Also it's not like this is a new thing that games have to adapt in order to be compatible with new engine versions.
That never was the problem. Some people claim that BA was always outdated or whatever but actually it is the only game that always updated. It stayed playable and stable throughout the years. Many other games failed at that.
The update to spring 105 was late because BA development had slowed down. That does not mean the game was dead, the game had simply been in a stable position where nothing was to gain from changing the engine.

Read my previous posts:
BA10, the version updated by a new team to work with new spring had a problem:
It also included too many gameplay changes. Players would not have liked it even without the engine change.
The discussions between players and people who do not play BA (but still want a word on BA gameplay) would have been fruitless, no matter what engine is used.

Forking BA was tried however:
-It would have been required to use a new name. (Which is silly: The game that tries to be most true to old BA is not allowed to be named BA?)
-Initially there was still some trust that BA10 would undo some gameplay changes
-A new dev team had to form from players, which takes time.
-It would have split players even more/sooner.
-For teamgames it matters how players are sorted into teams. (even distribution of skill, no fun to have all good players in one team etc)
For some silly reasons, the fork would not have been allowed to seed its skill-database from BA. Which would have made teamgames very unfun, especially in the crucial testing phase.
Personally I'd vote to just remove such very outdated tech as maintaining and bugfixing it takes development time that the engine really needs in other parts to make some reasonable progress. Plus it's probably extremely boring for the actual programmers trying to keep 25 year old concepts alive...
Oh, sure, I agree. However I still see no reasons why people should not be allowed to use old engines if they want to do so - for whatever reasons. The multi-engine support is already there. Even zero-K used years old engine for some time. History shows that generally the newest engine will always be used, eventually.

Yes, in the stoneage of Spring there was no multi-engine support. But why return to the stoneage?
So to wrap things up this topic's title "Keep Spring engine usable by all" is misleading as even if things like 3do support would be dropped (which isn't even set in stone anyway) the engine stilll would be usable by everyone who desires to do so...
As said, people with old hardware were already locked out. I do not know why for some people it was/is such a big problem to buy new hardware every 5 years or so. Maybe they are not techsavy enough to run Ubuntu on their Macs and it is their own fault for buying a Mac in the first place. Maybe PC gaming is not their top priority in live. Maybe they enjoyed playing on laptops. (I read much about international Spring LAN parties and doubt people travel with their desktop computers.)
The softban of 8-player limit and hard-ban of version 98.0 (or 96.0 or whatever the popular version was) has killed games.
Fact is, these people can not play anymore.

As for updating games:
People like to say that it is so easy and quick. But there are also many threads where people rage about having to extra work or not knowing what to do. Not posted by BA-devs, by the way.
You yourself have returned some time ago but still not released an updated version of your game. When you tried it some years ago, you also did not update. So clearly it is not so easy, even if it should be, especially if updating games for tiny communities is not the top priority.

These were long posts and I have to leave. So excuse me if the writing is a bit messy.
Master-Athmos
Posts: 916
Joined: 27 Jun 2009, 01:32

Re: Keep Spring engine usable by all

Post by Master-Athmos »

saturnV wrote: 31 Mar 2021, 21:00Oh, sure, I agree. However I still see no reasons why people should not be allowed to use old engines if they want to do so - for whatever reasons. The multi-engine support is already there. Even zero-K used years old engine for some time. History shows that generally the newest engine will always be used, eventually.
I don't think nobody wants to exclude anyone from using anything. Things like the version 103 limitations also weren't made with evil intentions but there were security reasons (an actual engine developer would have to point out the actual issues again as I have forgotten what exactly was the problem). So yes - version 105 is what it is and should be able to coexist with whatever new version might come...
saturnV wrote: 31 Mar 2021, 21:00As said, people with old hardware were already locked out. I do not know why for some people it was/is such a big problem to buy new hardware every 5 years or so. Maybe they are not techsavy enough to run Ubuntu on their Macs and it is their own fault for buying a Mac in the first place. Maybe PC gaming is not their top priority in live.
Yes and that always is a problem. Unfortunately this is a reality for software and IT. You won't be able to run many games developed for Windows 98 on a modern PC anymore because many things simply have changed. Software in general has sort of an expiration date. In the given case I think making a cut is quite reasonable as Spring has been around for over a decade. The Mac / Apple situation is even more frustrating as Apple simply doesn't care to support some common things like OpenGL or Vulkan and tries to push its proprietary APIs for whatever reason...

saturnV wrote: 31 Mar 2021, 21:00You yourself have returned some time ago but still not released an updated version of your game. When you tried it some years ago, you also did not update. So clearly it is not so easy, even if it should be, especially if updating games for tiny communities is not the top priority.
Well back then I decided to wait until the Lua integration was finished so my updated version wasn't immediately outdated again. Afterwards attaining my Bachelors degree took much of my time and so things remained in a 90% finished state. As of right now most of the work on porting MA is done but I don't plan on releasing the 105 port itself as I want to do some changes, improve balance and implement >10 new units while learning Blender and Substance Painter for this purpose ... and writing my PHD thesis... :P

So yes - a lot of work that has to be done but I think I need some additional oomph to seriously get people interested in MA. Not that I aim for a huge playerbase but having a certain group that keeps playing resulting in a game or two every day would be nice...
Locked

Return to “Off Topic Discussion”