Open Source Philosophy
Hyperspace is open source! All software and code required to operate the zone is freely available on the Internet. Hyperspace is a cooperative zone where anyone can suggest a change with a pull request.
Zone Server and Configuration
A Small Subspace Server (ASSS) - Originally developed by Grelminar, and now mostly maintained by jowie, ASSS is the open source successer to SubGame, Virgin Interactive's original Subspace server. Unlike SubGame, ASSS was designed to provide far more extensibility, offering zones the ability to completely customize their gameplay. Without this extensibility, the Hyperspace concept would not be possible. For additional extensive information about using ASSS, go to the Server Help site, and the Server Help Forums.
Canonical Hyperspace zone modules and configuration repository - These are the additional code neccessary to be added to ASSS in order to run Hyperspace. Ceiu is currently the zone sysop, and main developer; all zone changes come from, or get pushed to, his repository before being enabled on the server. For some cursory tips on getting started with the modules, have a look at Writing Modules for Hyperspace on the ASSS wiki.
Authoritative JSON config for Hyperspace items - Ceiu also maintains the official repository for zone item configuration. Items and their properties are kept in a JSON object, in plain text, so that it can be edited by anyone. As such anyone interested is welcome to modify the JSON, and submit it for consideration to be included on the server.
CDB, the lead items developer, also maintains his own branch of the items JSON.
Ship settings JSON config - sigma13 maintains a repo containing an unofficial JSON config (in the vein of the items config) which details the default ship values (initial & max) listed in the
?shipinfo # in-game menu.
Hyperspace Website Repository - Naturally, the entire website is open source as well. sigma13 maintains the official repository; anyone is welcome to fork it, modify, and pull request changes, which will be considered for inclusion.
Continuum Screen Bot - Unlike other Subspace bots (which basically run in the background with no interface), monkey's 'ScreenBot' is a program that runs alongside the Continuum application, and mimics the actions of a human player. Continuum Screen Bot is not distributed as an executable, and must be compiled from source.
AI Bots (those that fly around and shoot other players) in Hyperspace are player run. Although there is no explicit list of rules when running a bot in Hyperspace, the following guidelines are to be kept in mind:
- The bot may be forced to spec, or kicked from the zone by a staff member at any time, for any reason.
- "Farming" bots (either by killing them over and over, or by transfering money from the bot's account to your own) is not allowed. There are multiple safeguards to discourage this behavior, including but not limited to Reward Restrictor (hsd_multiplier and exp_multiplier). If zone staff feel necessary, the offending player may be fined money, degranted items, have their kill counts reset, and possible just
?exploded on site.
- Bots should not be annoying. Bots may "taunt," however the 'cooldown' period should be set to a reasonable length of time. Real players can be annoying enough as it is.
- Bots should identify themselves as bots by responding to the
!ownercommand with the player name of the bot's operator.
The following are the AI bots can sometimes be found in the zone, and their owners/operators.
|Baked Cake||Baked Cake occasionally runs an obscene number of bots, all of which have names which are some variation on his own, such as, "Borked Cork."|
|monkey||taz, X FORCE|
|Pity.||Baby Bot Back, Botham Knight|
|Saiyan Prince||Bringer of Rain, Pabl0 Escobar|
In addition to user-run AI bots, Hypserspace also utilizes various 'bots;' each facilitate their own unique gameplay features.
|UB-Picobot||Picobot tracks win/loss/suicide numbers and ratios, as well as providing time-tracking alerts for items such as Antideath. PM UB-Picobot
|These 'bots' are server modules which control various item-related functions from the server-side, such as Point Defense, Fields, and controlling engine failures. You can not interact with these bots in the traditional sense, other than engaging in gameplay.|
|Autoturret||Although very rarely seen, Autoturrets can be placed in game by moderators. These are virual players who's ships are stationary, but target and shoot at other players. Their specific purpose is varied, but Autoturrets are usually used to temporarily enhance gameplay by challenging users to specific tasks (such as getting past one or more turrets in a base).|
ChatNet for Android
Although not open source, ChatNet for Android was written so that anyone can connect to Hyperspace on the go. All you need is an Android device running v2.3.4 or above, and you can Hyperspec with the best players. It was developed and is maintained by dest_matter, and CDB-Man, using Ceiu's jcnlib (see below).
There are a lot of talented people in the Subspace community. Here is a quick list of other interesting projects to have a look at:
|Continuum Resizer||Weasal's helper-application to update Continuum's dated graphics code (as well as other useful features), C# and C++|
|Discretion||BaK's open source replacement for the Continuum client|
|jcnlib||Ceiu's Java ChatNet library|
|MERVbot||The first and most widely used Suspace bot, written by catid in C++|
|OpenCore||Cycad's Subspace bot for use on Linux, written in Python, C and C++|
|PyCore||Extreme Games' zone bot, written in Python|
|TWCore||Subspace bot written in Java, originally designed for Trench Wars zone|