I heard about an attempt to recreate a biller and read a recent post about patching subbill.exe. These efforts take high skill and I don't doubt the people involved, whoever they happen to be, can finish their projects successfully. I consider the dev community surrounding subspace to be high skill, including many of those who frequent these forums.

From a learning or fun standpoint dev and reverse engineering efforts here are great. From a standpoint of accomplishing change in SS, there is no point. The SS community is trapped in the mindset that the games problems can be fixed with technical solutions, and they simply can't be.

For some background on why I'm saying this, I've been a professional reverse engineer for about a decade. I do malware analysis, which frequently involves breaking software protections, reimplementing missing software components, deciphering obfuscated assembly, and all sorts of other related activities that greatly overlap with development in SubSpace. I fully understand the effort that development in this kind of environment requires and I mean that when I say it.

I don't want this to be interpreted as a post to gain publicity or brag about my work. If I wanted attention I would've posted this all long ago; I'm posting so devs can realize through concrete examples how stuck we are as a community and not spend their time on technical solutions that won't be used, like I have.

Regarding a patched Continuum client, this is not any kind of a teaser. This work WILL go unused without PriitK's blessing which seems to be impossible to get. Neither I nor Stag Shot will risk being targeted with a lawsuit by releasing our work.

Here's what was written to PriitK, Ghost Ship, and a few trusted others a year and a half ago, with sensitive parts XXXXXXXX'ed out:

Quote:

Hello Priit!

Our goal is to support SubSpace/Continuum in the most effective way we can and XXXXXXXX we believe we can pick up where you left off with the Continuum client. Our intentions are fully supportive and constructive and we don't want you to interpret our work as adversarial. The technical details described below have been done in private and will remain in private. We respect that XXXXXXXX privacy and protections are necessary and that any information leak could be detrimental to the community.

Briefly stated, we can XXXXXXXX, update the binary as needed, and then XXXXXXXX in a way that's indistinguishable from the original work. This includes removal and reapplication of each of the following: XXXXXXXX. Additionally, a cross-platform library containing XXXXXXXX including XXXXXXXX has been developed for compatibility with ASSS. We also understand - although did not modify - the other protections Continuum has such as XXXXXXXX.

We have also reconstructed the installer's build environment XXXXXXXX and can produce an installer indistinguishable from the original.

Our goal is to maintain Continuum and move forward to release .42 in 3-6 months. Powerball has tested the waters by releasing .41 involving XXXXXXXX by taking advantage of XXXXXXXX. Through this work, arena settings were added and bugs pertaining to Powerball handling were fixed. Windows 7/8 incompatibilities with XXXXXXXX were also fixed. This update was done as a DLL download only and did not repackage Continuum.exe and graphics.

We want to take this work further and fix known bugs and make minor updates/adjustments/
improvements where possible. We recognize the limitations of our approach but think it's reasonable way forward given the constraints we have to work with.

From a technical perspective, we can extend the game by XXXXXXXX. Since we re-implemented XXXXXXXX we can also apply those to any such XXXXXXXX we create. Of course, we could apply different protections too, but one of our goals is to be as similar as possible with the original binary.

We recognize the significance of our undertaking and the impact on the community such a pursuit might have. We do not want to fragment the community further or weaken the client from a security perspective. However, with no leadership and no coordinated effort, the community is faced with hard times and this is our best hope for lengthening the game's lifespan.

We'd very much like to engage you in dialogue and get your feedback/insight on our work.

I can log in to any zone, right now (well I guess I could if SSC were up, ha), without any moderator powers, and have *version show that I'm using Continuum .41. This is the real thing -- far more than a simple text change in the binary.

Unfortunately all this work will go unused. It demonstrates, though, what's possible right now, immediately, if we had proper leadership & coordination. Even in trying to communicate this work (both subgame2.exe and Continuum patches) to those that be, there were powermongers wanting to be middlemen for relaying communication that provided no value whatsoever. I even unsuccessfully tried to get traction in EG by talking to a few trusted moderators. Quite frankly the non-technical experiences of these projects were distasteful.

All of this is to say that the games problems aren't technical. We could be using an updated client, but as a community we can't. Not only that but no leadership showed any engagement/interest on such efforts, aside from Junky in EG. The real problems are lack of leadership and fragmentation. Those types of issues and coordinating dev effort (I can't imagine how much duplicated work there has been between botcores, plugins, reverse engineering, etc) would be far more effective and constructive than embarking on the next generation biller, client, or anything else.

I strongly urge those involved in dev projects to consider the expected outcome from their work. Not to in any way trivialize those efforts, like I said the dev community is high skill, but the real challenges are questions such as: If a biller were created, who is going to use it? How will the current user database be ported? Who will host it? Who will run it? What if PriitK releases a new client or server? What response strategy do we have to manage risk in the event of unforeseen problems? How will the new biller be verified for security? If new zones are added, how do we know that these zones are handling authentication credentials properly? Are all major zones agreeable to such a change? Do these zones even have a clear & timely decision making process to address such questions?

If work is done for fun, to learn, or to meet interesting devs, then it's a great idea. But if the goal is to have real community impact, strongly consider and address the non-technical issues before embarking on a significant effort. One of the worst things as a developer is to see your work go unused or your time treated without respect, and I'd hate for that to be the outcome in the case of biller development.

I've worked on writing a java biller called Accede a few years ago which combined both the VIE and ASSS TCP billing protocols into one platform. However, between the random deadlock/spinlock/whatever you want to call it and the lack of breaking continuum's encryption to interpret the client data that SSC uses I gave up (note this was the same time snrrrub released his biller - I couldn't compete). The real opportunity was back in 2009 when the final "developers" for this game were still active and willing to put forward an effort but I think most of us have gone on to other things. I've been tempted to re-start a project like that once again to keep my technical skills going but I also realize it'd be impractical to do so at this point since no one plays on non-SSC zones.

I've also spoken with a couple developers about a new client and they too shared the same thoughts. Why bother trying to write a new client to get to the same point the client is today - it'd be a lot of work and for what 100 users?

I still think we may have an opportunity to salvage what's left.

The server doesn't integrate with web or mobile devices in any way. I've been conceptually thinking about how to tackle some of this considering I don't have a strong background with C/C++/ASM.

Accede was still going to need a central core of individuals who could be trusted - but servers could come and go as they pleased. Server groups would still exist to control their pockets of the cluster while they form another layer where escalation of bans/threats could be escalated to for actions.

But it opens up a lot of questions, many of which you already described.

Dr Brain had a lot of ideas at the time I was developing it maybe he would still have some thoughts to share._________________Performance is often the art of cheating carefully. - James Gosling

This work WILL go unused without PriitK's blessing which seems to be impossible to get. Neither I nor Stag Shot will risk being targeted with a lawsuit by releasing our work.

That's a shame, but completely understandable.

cycad wrote:

Unfortunately all this work will go unused. It demonstrates, though, what's possible right now, immediately, if we had proper leadership & coordination. Even in trying to communicate this work (both subgame2.exe and Continuum patches) to those that be, there were powermongers wanting to be middlemen for relaying communication that provided no value whatsoever.

It is quite hard to get a hold of PriitK, but don't confuse him for "the leadership". SS is a collection of zones, each run in their own way. To view them as a single community is not a good idea.

cycad wrote:

All of this is to say that the games problems aren't technical. We could be using an updated client, but as a community we can't. Not only that but no leadership showed any engagement/interest on such efforts, aside from Junky in EG.

In my opinion, all "our" problems stem from a lack of new development. There hasn't been any new interesting gameplay for at least 5 years (probably closer to 10). If there's nothing to keep the devs interested, then nothing new gets developed and consequently there's nothing to keep the players interested.

A new client is one solution to this, but only if it provides an avenue for new features. If it's just bug fixes and zone list updates there's really no point. Better to just let the game stagnate and die in peace.

cycad wrote:

The real problems are lack of leadership and fragmentation. Those types of issues and coordinating dev effort (I can't imagine how much duplicated work there has been between botcores, plugins, reverse engineering, etc) would be far more effective and constructive than embarking on the next generation biller, client, or anything else.

That lack of leadership and fragmentation is the only reason the game has survived as long as it has. It's, in my opinion, the game's greatest asset.

I think you're approaching the client update in the wrong direction (because you're assuming the community is a unified whole). I think if you were to get a single SSC zone to update their client to your 0.42, the rest would quickly follow suit.

Those on Priitk's server would be last, because he's so slow in changing anything. But the zone ops would be clamoring for the update the whole time it takes him to eventually give in and switch._________________Hyperspace Owner

Smong> so long as 99% deaths feel lame it will always be hyperspace to me

You can post new topics in this forumYou can reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot vote in polls in this forumYou can attach files in this forumYou can download files in this forum