Server Help Forum Index Server Help
Community forums for Subgame, ASSS, and bots
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   StatisticsStatistics   RegisterRegister 
 ProfileProfile   Login to check your private messagesLogin to check your private messages   LoginLogin (SSL) 

Server Help | ASSS Wiki (0) | Shanky.com
Continuum Patching and Thoughts on a Biller

 
Post new topic   Reply to topic Printable version
 View previous topic  Linux startup script for ASSS Server +... Post :: Post ssbilling2 for linux (ported)  View next topic  
Author Message
cycad
Novice


Gender:Gender:Male
Joined: Feb 12 2004
Posts: 29
Offline

PostPosted: Thu Apr 10, 2014 7:04 pm    Post subject: Continuum Patching and Thoughts on a Biller Reply to topic Reply with quote

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.

Things I've created between 2004 and now:
I maintain these, off and on, for fun.

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.

Collectively-
cycad (ex-Sysop Extreme-Games) and Stag Shot (Sysop Powerball)

Things like these are possible from a technical perspective:
    * Updating zone lists
    * Updating approved biller IP addresses
    * Compatibility fixes
    * Bug fixes (BanG field fixes, usability fixes, etc)
    * Continuum interoperability (encryption, packet definitions, etc)
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.
Back to top
View users profile Send private message Add User to Ignore List
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2579
Location: USA
Offline

PostPosted: Thu Apr 10, 2014 9:20 pm    Post subject: Reply to topic Reply with quote

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
Back to top
View users profile Send private message Add User to Ignore List
stag shot
Newbie


Joined: Jan 18 2005
Posts: 10
Offline

PostPosted: Thu Apr 10, 2014 10:43 pm    Post subject: Reply to topic Reply with quote

I actually just made the PB bitbucket public yesterday, since we are closing up shop.

I also included how zones can utilize that client data:

https://bitbucket.org/stag/asss-pb/commits/26232d4f57f757fddc11a234212ab6f121a12ed7
Back to top
View users profile Send private message Add User to Ignore List
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2579
Location: USA
Offline

PostPosted: Thu Apr 10, 2014 11:36 pm    Post subject: Reply to topic Reply with quote

Give both of you guys a lot of credit being able to reverse engineer this stuff. icon_smile.gif
Back to top
View users profile Send private message Add User to Ignore List
Cheese
Wow Cheese is so helpful!


Joined: Mar 18 2007
Posts: 1004
Offline

PostPosted: Fri Apr 11, 2014 3:35 am    Post subject: Reply to topic Reply with quote

stag anything in there u can push to main repo?
_________________
SSC Distension Owner
SSCU Trench Wars Developer
Back to top
View users profile Send private message Add User to Ignore List Visit posters website AIM Address
Dr Brain
Flip-flopping like a wind surfer


Age:31
Gender:Gender:Male
Joined: Dec 01 2002
Posts: 3502
Location: Hyperspace
Offline

PostPosted: Fri Apr 11, 2014 9:12 am    Post subject: Re: Continuum Patching and Thoughts on a Biller Reply to topic Reply with quote

cycad wrote:
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
Back to top
View users profile Send private message Add User to Ignore List AIM Address Yahoo Messenger MSN Messenger
stag shot
Newbie


Joined: Jan 18 2005
Posts: 10
Offline

PostPosted: Fri Apr 11, 2014 1:50 pm    Post subject: Reply to topic Reply with quote

Cheese wrote:
stag anything in there u can push to main repo?


We broke off from the main repo long ago, so it would probably be difficult.

Some of the things of interest may be:
peering code
replay code (with fast-forward and ball support)
pbang

I would think most of the other changes are PB-specific.
Back to top
View users profile Send private message Add User to Ignore List
Display posts from previous:   
Post new topic   Reply to topic    Server Help Forum Index -> Misc User Apps All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum
View online users | View Statistics | View Ignored List


Software by php BB © php BB Group
Server Load: 34 page(s) served in previous 5 minutes.

phpBB Created this page in 0.155632 seconds : 32 queries executed (8.5%): GZIP compression disabled