Cheese Posted December 12, 2012 Report Posted December 12, 2012 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 Quote
spidernl Posted December 12, 2012 Report Posted December 12, 2012 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. Quote
Cheese Posted December 12, 2012 Author Report Posted December 12, 2012 because they keep trying to do other things i work very quickly, but my biggest hurdle is that im lazy and busy irladditionally, even if i suddenly get hit by a meteor irl, someone can still pick up where i left off Quote
»doc flabby Posted December 12, 2012 Report Posted December 12, 2012 (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 December 12, 2012 by doc flabby Quote
Cheese Posted December 12, 2012 Author Report Posted December 12, 2012 i remember seeing you did some sort of 3d camera test with 3d block-tiles many years back, but i assure you im purely interested in sprites Quote
Lone Outlaw Posted December 13, 2012 Report Posted December 13, 2012 (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. jerks2. 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. ExamplesHS: 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 HistoryKeep 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 December 13, 2012 by Lone Outlaw Quote
Dr Brain Posted December 13, 2012 Report Posted December 13, 2012 Pretty much everything you said was wrong. Except where you called me a lazy jerk with no time. That was true. Good luck cheese. I agree with nl that limiting your scope will help. Quote
spidernl Posted December 14, 2012 Report Posted December 14, 2012 (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 December 14, 2012 by spidernl Quote
Lone Outlaw Posted December 14, 2012 Report Posted December 14, 2012 (edited) bah at least when brain bursts my bubbles he's funny. Edited December 14, 2012 by Lone Outlaw Quote
JoWie Posted December 14, 2012 Report Posted December 14, 2012 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 Quote
Cheese Posted December 14, 2012 Author Report Posted December 14, 2012 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_consoletotal source files to date: 19 next modules to write: windows opengl Quote
Cheese Posted December 14, 2012 Author Report Posted December 14, 2012 so i already wrote the windows module, but it looks like i might be able to bypass it entirely because opengl has stuff for creating windows that might also work in linux/mac... Quote
Cheese Posted December 15, 2012 Author Report Posted December 15, 2012 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 Quote
Cheese Posted December 15, 2012 Author Report Posted December 15, 2012 so i sit down and look at net.c and holy fucking fuck its 3000 lines Quote
Lone Outlaw Posted December 15, 2012 Report Posted December 15, 2012 I'll pay by page if you sort through that. Quote
spidernl Posted December 15, 2012 Report Posted December 15, 2012 void waste_of_space(int variable_ spread_over_multiple_ lines_for_no_reason) { // extra space here // because we don't need it int unused_variable = 0; Never ceases to amuse me. Quote
Cheese Posted December 15, 2012 Author Report Posted December 15, 2012 and its 3000 lines of dense textbecause its a critical module obviously Quote
Samapico Posted December 15, 2012 Report Posted December 15, 2012 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.htmlIt 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 Edit: nvm didn't notice you already had a couple modules running and a demo, it's probably too late for this Also, these are C++, not C Quote
Cheese Posted December 15, 2012 Author Report Posted December 15, 2012 even so, im going to be doing this without any dependence on any third party stuff, excluding windows and opengl, so i wouldnt have used it anyways Quote
JoWie Posted December 16, 2012 Report Posted December 16, 2012 Nothing wrong with a thin abstraction layer as long as you can find a really good one. Quote
Cheese Posted December 17, 2012 Author Report Posted December 17, 2012 (edited) Nothing wrong with a thin abstraction layer as long as you can find a really good one. there arent any Edited December 17, 2012 by Cheese Quote
Samapico Posted December 17, 2012 Report Posted December 17, 2012 You might not think the same thing when you want to make it cross-platform Quote
Cheese Posted December 17, 2012 Author Report Posted December 17, 2012 (edited) 3:Cheese!> i just got done loading warbird pictures, then making them not have black squares DONE3:Cheese!> next i break it apart into which way wb is facing DONE3:Cheese!> after that im going to break apart lvl files and make a map3:Cheese!> then im gonna do camera stuff DONE3:Cheese!> also probably make object tracking system3:Cheese!> then im either going to do basic physics or networking Edited December 17, 2012 by Cheese Quote
Ninja Cat Posted December 19, 2012 Report Posted December 19, 2012 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 Quote
Cheese Posted January 6, 2013 Author Report Posted January 6, 2013 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 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.