Jump to content
SubSpace Forum Network

Recommended Posts

Posted

So I am officially declaring my intention to create a new client.

 

My reasoning for this is that this game has been abandoned by its creator, and the sscouncil is forced to do things like vpn tunneling to add new clients, and the server software is limited, and the limits of subgame have been reached and surpassed, limiting development. By releasing a new client, I hope to force a new transition to ASSS, while still being able to connect to subgame zones, and to release the stranglehold that priit has on the game, and release it to the community.

 

My focus is to produce an exact duplicate of the current client and all servers before adding any new features.

Additionally, I will be putting everything on a bitbucket repository, so anyone can contribute.

 

I plan to release my private SSChat client that was created in the process of creating SuperBank in HyperSpace, which uses the ASSS chatnet protocol.

I will probably end up writing a directory and billing server in the process, and possible a lvl image creator, but probably not a full map editor.

 

I have not decided what I will call it yet.

I will be writing it in C, like ASSS.

I will be using a modular system in the style of ASSS (probably stealing some stuff).

As such, it will be multiplatform.

Once nearly complete, I will be submitting it to the steam greenlight program, and possibly set up an acheivements skeleton.

 

I have a large amount of experience with writing win32 applications in C.

I have a large amount of experience with direct3d, directinput, and the directx sprite library.

However, in an effort to create a multiplatform client, I am researching the capabilities of OpenGL's 2D capabilities, which appear to only be a weak orthographic projection.

There will be a Windows module which creates win32 windows and controls, but I have absolutely no idea how to create something similar on a mac or on linux, so the client will probably only be available on windows early on in development.

 

consider this a forward declaration

  • Replies 58
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

Posted

By only aiming to replicate continuum and not adding more features, you might actually be able to finish this.

 

It's still a little disheartening to see client after client get started, but never finished, though. I hope yours will be the exception.

 

Good luck.

Posted

because they keep trying to do other things

 

 

i work very quickly, but my biggest hurdle is that im lazy and busy irl

additionally, even if i suddenly get hit by a meteor irl, someone can still pick up where i left off

Posted (edited)

Alot of this work has been done for you already, if you look though some of the code in the subspace2 project, I used open GL to project the maps into 3d, Its written mostly in c# but there is some c/c++ code.

 

Also descretion is worth a look as it sounds similar in design.

 

We stand on the shoulders of giants :)

Edited by doc flabby
Posted (edited)

Fundamental Problems with Continuum (development/security/bans etc)

ASSS doesn't really solve the problems of continuum development, it just makes development possible for people who know how to code in difficult languages, which still leaves a strangle hold on development, because these people are usually...

 

1. jerks

2. have no time/don't give a shit about the zone as much as the players who actually play it.

3. big procrastinators or lazy

 

Usually they fall into category 2, which means tons of people will still want updates, events, changes in their respective zones, but only 2 or 3 people per a zone (USUALLY 1) will be capable of coding these in ASSS, and we will AGAIN be dependant on ONE person, to get anything done. SURE MORE will be possible with ASSS, but you solve no problems otherwise.

 

Examples

HS: only coder is essentially Spidernl (might be more but i don't hear/know of them coding)

DSB: only coder is Entropy (does nothing, has no time)

Devastation: only coder is Avihay? occassionally resol? (zone owner can't code modules)

 

The Pheonix client will have real time map editing, so i can make changes, to scripting, push play, and watch my changes in action. This enables me who knows no programming to literally learn by trial and error, meaning i could do complicated game designs in hours, what would take you the same time to code in C++, all with less coding knowledge, and since Pheonix uses scripting, we no longer have to learn complicated C++ or C or whatever it is.

 

Other games which do this are Furcadia, which has its own programming language, something like Turing, or Java, but it's called Dragon speak, you just select "if and statements", and there is code behind it which does everything else.

 

So yeah you are not solving any fundamental problems with the game, just making it all ASSS, there will still be fundamental dev problems, fundamental ban problems (no new features to deal with players in a better way), there will still be lack of anything getting done, and complaints, whereas the system pheonix is aiming for, and the system i propose, truly sparks development on every level, it allows the lay-man to develop and put out extensive updates of quality. We will no longer be relying on one guy with specialized knowledge who doesn't give a shit out the zone or has no time.

 

Pheonix will be done!

Also Pheonix client will get completed, so saying NO client will ever be done is a bold statement, especially considering how much progress Richard has made so far.

 

Some History

Keep in mind what i say is a very real problem, you are essentially making a better continuum, but with all the same core problems, which means in the end it will only be as successful as continuum is right now.

 

Polix realized the issues with Development, and tried to unite every zone development team, and i think he possibly tried to make a library of modules. Since many zones have similar events, one could release modules for such events, and then the respective zones would only have to make minor changes to such modules, in effect creating a module library, so even zones without full time coders could have modules. Of course the zone wide development chat he created remains largely empty today, and it never went too far. All of these issues just get more prevalent as continuum dwindles in population, and they wont be solved just because we all switch to ASSS.

Edited by Lone Outlaw
Posted (edited)

You need to realize what scripting is in order to really vouch for it.

 

It's correct that quite a few games (including popular ones, such as the Elder Scrolls Series - Skyrim being the latest one) let end-users script to extend the game's functionality. However, take a look at Skyrim's modding forums and you'll find out that scripting isn't the ultimate solution, either. Guess what the modding community of Skyrim relies on now? Exactly, advanced coders who are essentially 'hacking' new scripting functionality into the game, because the original devs couldn't possibly code everything the modders would want to script. Mere weeks after the game's release, "Scriptdragon" was released. Now, a majority of Skyrim's more scripting-reliant mods are dependent on Skyrim Script Extender.

 

It is of course true that a very well coded "script engine" can let players do a lot of new things without having as much knowledge as you'd need to code in a regular programming language. However, it's generally not nearly as easy as you're trying to make it sound. Have a look: Scripting in Skyrim. Also, the easier it is, the more limited it usually is as well (thus resulting in "we need programmers to extend what our scripts can do").

 

In other words: despite having scripting functionality, you'll still need coders with more knowledge sooner or later.

Edited by spidernl
Posted

Good luck.

 

Few points of advice if you want any:

+ Do not waste time on being 100% compatible with continuum.

+ Do not use ASSS as an inspiration on threading ;)

Posted

UPDATE:

 

work has begun

 

i have the critical core components compiled and up and running

 

core modules loaded: main logman module cmod mainloop logman log_console

total source files to date: 19

 

next modules to write: windows opengl

Posted

UPDATE:

 

client is up and running, modules are loading and unloading, opening windows, and drawing using opengl

 

next on the list is drawing sprites, then sending network traffic, and probably saving data of some sort like profiles and zone info

 

 

 

DEMO ATTACHED TO THIS POST

 

 

 

 

will put opengl windows on todo list for eventual completion

 

 

im thinking about calling the new client "SubSpace Continuum"

has a nice ring to it, right?

sscpreview.zip

Posted

I've been using Qt a lot lately, and if you want a solid library to start off with that is multiplatform and takes care of a lot of dirty work, I recommend it. Most people see it as a GUI library, but it actually does much more than that.

http://doc.qt.digia.....7/modules.html

It even has a OpenGL module, which might be useful to you. And just take a look at all the classes available in QtCore, it can really speed up development. Also, QtGui will take care of making the proper windows and controls for Win32 / MacOSX / Linux / whatever.

 

I was actually also thinking of starting a project like that, just to see where it would get me. I was thinking of using OGRE with Bullet Physics as rendering and physics engine. They both can be used in 3D, but they also work fine in 2D. However, it might prove hard to "exactly" replicate the current physics that way, but it would certainly be possible to get approximately the same effects, and it would be easier to add functionalities after. It might be a bit overkill too, but it would take care of all the annoying quad-tree stuff and drawing optimisations. I really hate coding something when I know someone else has already done it :p

 

Edit: nvm didn't notice you already had a couple modules running and a demo, it's probably too late for this :p Also, these are C++, not C

Posted (edited)

3:Cheese!> i just got done loading warbird pictures, then making them not have black squares DONE

3:Cheese!> next i break it apart into which way wb is facing DONE

3:Cheese!> after that im going to break apart lvl files and make a map

3:Cheese!> then im gonna do camera stuff DONE

3:Cheese!> also probably make object tracking system

3:Cheese!> then im either going to do basic physics or networking

Edited by Cheese
Posted

Cleaning out an old drive I found some network packet details I was using on a custom c++ bot many years ago. This is all known stuff but thought I would dump it here since I'm just going to be deleted anyway. If you don't find it useful then just ignore it.

 

Good luck in your project!

SS_Core.zip

  • 3 weeks later...
Posted

gonna start using this thread as idea collector/todo list

 

Cheese!> id like to call them SSCS and SSCC

Cheese!> SubSpace Continuum Server (instead of ASSS)

Cheese!> SubSpace Continuum Client

Cheese!> which i will be once things get rolling :)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...