-
Posts
1070 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Events
Everything posted by doc flabby
-
You know we could add this to Continuum pretty easily....
-
This is a nice skin im using at the moment (its a mod of telson's skin) i think its nicer than the dsb onecontskin2.zip
-
I don't really see what any of this has to do with discretion. Discretion could easily be modified to work with subgame as well as ASSS.
-
Reminds me of http://www.stackoverflow.com a very useful site It needs a more obvious "ASK A QUESTION" Option i think. Graphicly the rounded corners on the questions, don't quite line up on FF3.
-
Ah I don't mean a group, i mean like an official fan page (the "become a fan" feature".) Which acts more like a person, and can have status updates etc, a group can't do anything of this You can sync twitter updates to facebook and myspace too, which would mean multiple updates to these sites could be made in one place.
-
We should also make a SubSpace Fan page on Facebook.
-
I think this logic is round the wrong way, a new client, with exciting new features, that ONLY works with ASSS, will attract zones to using ASSS much faster than any other way. I think it will be relativly easy to introduce a new client. If it is substancially better than Continuum, and offers new design oppertunities, people will naturally be attracted to it.
-
The problem with dynamic loading C++ classes was part of why it would be better to not have loadable modules at all and to use scripting instead. I agree if you are going to do use dynamic loading, you a are better off sticking to using pure C. (or in the case of more "enterprise applications" use something like COM http://en.wikipedia.org/wiki/Component_Object_Model which is not something i would use unless I had to, for example writing addin programs for MSOffice) My idea with the scripting is that the server would be able to execute scripts on the clients, the clients wouldn't be able to run them by themselves. Basically the server would be able to run custom stuff on the client (so instead of only the graphics it could change a whole lot more, and in a dynamic way)
-
Acctually if you use robots.txt correctly they should obey it, also if you register for webmaster tools http://www.google.com/webmasters/tools/ at google you can use that to adjust the indexing rate. You can test it if its working using the webmaster tools as well http://www.google.com/support/webmasters/bin/answer.py?answer=35237 Another way to reduce indexing is to create a Google Site Map. IPB should come with this functionality, or an addon to do this, these can be submitted though webmaster tools as well. A site map is essentially a pre-made index of the website. A problem may be other bots pretending to be GoogleBot of course. Its quite likely MalWare attacks/scans pretend to be GoogleBot Theses will ignore robot.txt, or even use robot.txt to find hidden areas of a website.
-
Just to start out, this is a critial post, but please don't take it as an attack on discretion, it is far further forward than STF, and i may be wrong, but i would be interested to see the counter arguements. Discretion has a badly designed module system and is also using a C system like on top of C++, which makes is difficult to develop for: - Having separate modules that depend on other separate modules, is not a good idea. - Modules should only depend on the core program, interdepedant modules are a nightmare in design terms. - Would be better to write it all in C++ and use Object Orientation to allow people to extend and contribute classes. - Keeping to pure, modern C++ would make the code more readable and more java/c# like for us newbie coders - It would be also be far better to provide a scripting interface, than use a module interface, for the user side development. Writing in LUA is easier than C++. Most people will just want to create pre-scripted events, or change the graphics of physics behavior on the client side. - It would avoid the need for all the nasty pointers and (void*) casts. - It would be easier to develop and debug. - It would still be easy to extend if you only allowed scripting (i mean everyone has the source anyway), and more control would be retained over the program execution. External modules that run in-process are going to make it simple to add cheat module to the game. However none of these problems are unsummountable, but i think they are the main reasons there has been very little outside help in terms of development with discretion. I've got code already for creating a radar and map screen, from LVL files in c# that could faily easily be translated in to c++, I had a look at how i could add this to discretion..and my mind went...wtf... http://wiki.minegoboom.com/index.php/Listening_for_Key_Presses%2C_Displaying_Text%2C_and_Per_Player_Data its just too difficult for me to work out what i need to do to add them.
-
The SubSpace client has been dead for many years. The Continuum client, whos last (improved functionality) release was in 2003, however is going strong. Its no co-incedence that population peaked in 2004, the lack of client development is what has stopped our growth. You can talk about advertising or any of the crap but in reality, its the lack of client development that IS the most urgent thing to address, and where our resources should be focused. The life cycle of a technology product like Continuum is pretty standard. http://en.wikipedia.org/wiki/Product_life_cycle_management Continuum is now phase 4. The two client projects need support to regain our population, they ARE the only way this game will start growing, innovation = growth. Unfortunatly there are a number of problems with both projects.
-
When someone says SubSpace is dying they forget the population NOW is larger than it was 9 years ago. I had an idea, we could create a single player flash game based on subspace and submit it to many games websites...inside the game we have a link (alot of games like these have adverts)..."want to play the real thing" or similar.
-
This feature already exists TW has a resolution limit, and has for many years I'm not sure it exists in pub still, but in league games you are limited to 1280x1024 max.
-
1. I have this problem in 32-bit XP, it started fairly recently an I have no idea why. 2. It doesn't suffer from these problems in 64-bit Vista which is a much better operating system for 64-bit work (which gives you an idea of how terrible 64-bit XP is, its basically a hack of Windows 2003 64-bit edition)
-
Incidentally you can use .NET controls in VB6 via COM. Not something I would recommend as you're waste alot of time learning something totally pointless (the real world uses are fairly limited), and it will be easier to create in pure VB6
-
Hmm i hadn't thought of that looks like theres more I need to work on Edit: found something here that looks useful http://games.fourtwo.se/xna/2d_collision_response_xna/
-
Having tried out a number of physics engines for Subspace2 none of them quite meet the performance demands I require. The biggest issue is that many of the engines support alot of features that I'm not interested in at the moment such as collisions with rotating objects. I want a much more simpler system (arcade style). Unfortunately this whole area I'm woefully lacking knowledge in in. Fortunately after ALOT of research I found a tutorial http://gafferongames.com/game-physics/ that started to make some sence to me. and from the knowledge i've learnt in the tutorial i have begun to build my own engine based on the work of many others. I still have plans to use other physics engines for other game modes. The subspace world only contains AABB (squares or rectangles) collision objects. Collision handling and physics are usually done separately. In my engine I move all the objects first using numerical integration and process the collisions afterwards by looking for intersecting objects (this is a pretty standard way of doing things). So there are 2 district phases. That are repeated around 60times/second while (GameLoop) Integrate CollisionCheckResponse end 1. Physics As objects in subspace have no mass there are only 2 equations governing the movement of objects. position = velocity * time velocity = acceleration * time A simple Eular Integrator can be used to calculate your new position for a change in time. public void EularIntergrate(float deltaTime) { position += velocity * deltaTime; velocity += acceleration * deltaTime; } the problem with Eular Integration is its horrible inaccurate which can lead to nasty quirks appearing in the game. Therefore after reading this article http://gafferongames.com/game-physics/integration-basics/ I managed to implement a RK4 (Runge-Kutta Integration) integrator. Thus the Physics part of the engine is now complete, we have a decent integrator which is producing the accurate simulation we require. 1. Collisions The First step in a collision detection is to detect if an object has collided with another (wow big surpise) In the example i'm using I test every object against each other, which is very inefficient, though the use of spacial partitioning and/or broad phase the number of tests can be minimised. ( http://stackoverflow.com/questions/414553/broad-phase-collision-detection-quadtrees-bsp-etc) The test if two AABB bodies intersect is pretty simple: Min refers to the top left corner, Max refers to the bottom right corner. public bool Intersects(aabb other) { if (this.Max.X < other.Min.X || this.Max.Y < other.Min.Y || this.Min.X > other.Max.X || this.Min.Y > other.Max.Y) { return false; } return true; } Following testing for intersections we will have a list of objects that are colliding, we are now ready to create responses to the collisions. In order to create accurate responses we need to find the collision vector, which can be obtained from the Minimum Translation Distance or MTD Vector. This is more complex to calculate: public Vector2 minimumTranslation(aabb other) { Vector2 amin = this.Min; Vector2 amax = this.Max; Vector2 bmin = other.Min; Vector2 bmax = other.Max; Vector2 mtd = new Vector2(); float left = (bmin.X - amax.X); float right = (bmax.X - amin.X); float top = (bmin.Y - amax.Y); float bottom = (bmax.Y - amin.Y); // box dont intersect if (left > 0 || right < 0) throw new Exception("no intersection"); if (top > 0 || bottom < 0) throw new Exception("no intersection"); // box intersect. work out the mtd on both x and y axes. if (Math.Abs(left) < right) mtd.X = left; else mtd.X = right; if (Math.Abs(top) < bottom) mtd.Y = top; else mtd.Y = bottom; // 0 the axis with the largest mtd value. if (Math.Abs(mtd.X) < Math.Abs(mtd.Y)) mtd.Y = 0; else mtd.X = 0; return mtd; } Now we have the MTD we can use it to move our objects out of collision, and correct there velocities to ensure they should not collide next time mtd = this.minimumTranslation(ab); this.position += mtd ; if (interv.X != 0) { this.velocity.X = -this.velocity.X ; //* bounce factor\ } else if (interv.Y != 0) { this.velocity.Y = -this.velocity.Y;//* bounce factor } This is more a reminder to myself than a particularly useful tutorial, but maybe it will help someone somewhere References http://gafferongames.com/game-physics/ http://www.gamedev.net/community/forums/topic.asp?topic_id=531478 http://www.gamedev.net/community/forums/topic.asp?topic_id=520224 http://www.deannolan.co.uk/pt/blog/default.aspx?id=23&t=2D-Collision-Detection-and-Response Any quite a few other random pages, that I can't remember I've attached my C# source code to a test project I created. Keys AWSD Mouse clicks create another object. Its quick and messy but gives you enough to play with physics2.zip
-
Come to realise ODE is not really suited to tile-based levels...however for levels where we do not use tiles it could be quite useful
-
Its strikes me as incredible how little homework, and the lack of imagination they had on this whole thing. And why "free at 1st" would never go down well. I mean if people who play Continuum wanted to pay, they'd have been playing cosmic rift And to be honest you would probably run the entirety of subspace (all the servers / bandwidth ) for about $200/month which would be pretty minimal to a large company. You could probably find that kind of money though advertising revenue alone, or by selling value added stuff (or second life style, rent your own arena in a zone for example).
-
Need some help writing a small history on Subspace
doc flabby replied to Zephyd's topic in General Discussion
This link might be of some help http://www.geocities.com/epinephrine.rm/history.html As are a number of old interviews with important subspace figures and other media files available on if you have a poke about on http://www.subspacedownloads.com theres not obvious to find unfortunatly. wikipedia might have some useful sources (in the citations section) but i wouldnt count on it -
Fixed hopefully, i've now restricted incoming zone descriptions to 480 characters in length. I think longer descriptions cause problems.
-
Looks like a bug in my directory server. I remember having this problem before when testing it, Its caused by an packet alignment issue in the packets it sends to Continuum. I suspect its related to a certain character used in the zone name or description. I thought i had fixed it though... Btw can all zones please ADD (ssdir.playsubspace.com) it to your list of directory servers as the the main directory server is down. Mine is the only one running at the moment. Current SRC : if anyone is interested and wants to try and fix it, i will have a look too but ive stuggled so far http://subspace2.svn.sourceforge.net/viewv...space2/Central/
-
Just a reminder for myself Nice example of using ODE with collisions with static information (as i was havuing trouble getting them to work as i was creating a needless number of bodys, when i only needed geoms) http://subspace2.net/TaoOdeExample.zip
-
I'm pretty open minded about this whole thing, i just want to see what they want to offer, and what they want in return, and what their business plan is before making my mind up a bout it, the details are vauge I agree with you RiiStar. But i think also if as many people who showed interest in this topic, showed interest in Discretion and helped develop it, its likely we would have a working substitute client by now. I really would like to see more support for these projects, Discretion is getting really close to being a workable replacement. My project STF is somewhat different, in aim and completion so I can understand a lack of interest, but Discretion IS the real deal, and some parts of it are really slick, having tried it i love it, and i really think you guys should try to support it more.
-
Bit of an update for ya'll Having realised i'm totally useless at physics and failing to fix the problems with the collsion detection http://www.ssforum.net/index.php?showtopic=22855 i was writing and suffering from other problems, I've decided to bit the bullet and use a physics engine, i choose ODE as it has c# bindings already, so far i've been impressed with how easily it has integrated into subspace2. It made me wonder why i bothered trying to do this stuff myself before -_- website www.ode.org I'm using the Tao Library of ode. the real test will be how well it performs at collision detection however Remote ships as well as radar+map are working now, once i have collision detection sorted, it should be relatively straightforward to finish enough of the basic game to make it playable, and then i can start on the fun stuff (finally)