This is my idea for a casual massive multi-player space trader game. It’s inspired by games like Eve Online and Space Bucks. This will be my idea board for now.
I’ve played Eve Online and loved the game. The scale of battles and intrigue is amazing and the way people interact creates a unique experience. The biggest problem was that it took a very large investment of time to forge friendships and space ships. I needed something like Eve without the constant time sink, so I thought building my own game from scratch would take less time out of my day…
Eve is influencing the multiplayer aspects of this game, but the core gameplay ideas come from a 1996 game called Space Bucks. This is more of a space trading mogul business simulator. You buy a fleet of ships to transport goods from one planet to the next and when your advanced enough, start to manufacture goods as well. This is the main idea for my Space Trader Game.
The player will start the game by naming his new space company and choosing the region of space to start in. The player will then be given a generous lump of cash by the parent race to buy his first ship and cargo from the local markets. A guide will help the player through these first purchases and get him on his way to setting up the first trade route. The first leg of this route may be accelerated (a parent race stargate?), after this, ships will travel at normal speed.
In the beginning, the Mother Race developed Faster Than Light (FTL) and stared exploring and colonizing the galaxy. They found life everywhere, but nothing intelligent, so they uplifted the 6 races.
The Mother Race controlled the technology and space flight for all the children races, although they have never shown themselves. Recently, the mother race has been giving more responsibility to the children races. Basic research is now allowed, and the Mother Race is giving the gift of FTL travel to all the races. They are keeping control of the FTL technology, but selling the FTL modules to ship builders.
Something is changing with the Mother Race, and the children don’t know what. They are becoming more isolated and being seen less often.Spoilers
Some of my thoughts on what the Mother Race was doing is they are leaving to ascend to the next plane of existence, or more exciting, they are preparing for a war against another highly advanced race from another galaxy. With the war story, there could be clues left for players to figure out what is happening, and maybe the enemy can become an NPC threat that could be dealt with by the players joining together.
Planets will be spread around randomly through out the galaxy with a minimum distance between them (.7 light-years?). Major regions will be created with each representing an alien races’ territory. Some ideas for the layout of these regions include being separated by large expanses of empty or unexplored space linked by large stargates, or located adjacent with the stargates linking major trade hubs.
The major regions and areas surrounding these will be explored space with inhabited and uninhabited planets. This area will be large enough for most players to spend all their time here. The rest of the galaxy will be unknown, and populated proceduraly. Players will be able to send ships into this unexplored space to discover new planets, resources, and anomalies. New planets discovered by a player will start with a default generated name and can be renamed by the discoverer for all to see (the names would be reviewed before being applied).
Inhabited planets will have cities, population, production, space ports, and land available for rent or sale. Cities will sprout around the planet as the population grows. Each city will produce materials according to the surrounding ores and resources. Cities will also have tech levels which will determine what quality of goods are produced (low levels will produce raw materials, higher will produce electronics and luxury goods…). A global market will be available at the planet space port where the player can buy and sell goods to cities and other players.
Land space on planets is available for players who want to expand their trade empire into industry. Mines and wells can extract resources straight from the planet. Natural resources will deplete and rebuild over time, so players may have to move these. Factories can also be set up to build more advanced goods from materials bought or mined. Most player required goods like ships and modules will be built by players in this fashion.
Each land space will allow placement of a certain number and size of buildings. Each building will work like ships, with a grid module placement system. Most modules that can be used on ships could be used on planets or stations, except for some like engines. Most planet designed modules would be much larger than most ships, so they would not be seen in space as often.
Each planet will be given a general class, like bearen, habitable, lava, gas… Once this is done, rules for each class will guide procedural sizes, climets, and land masses. Each planet will have a unique land and resource layout. Colony cities can be started on most classes of planets, with penalties to the more hostile types. Planets of certain classes, like bearen, could also be terraformed by players to be easier for colonists.
When a ship approaches a planet, it has the option of landing or entering orbit. Planets will allow for stations to be built in orbit and allow trading. Goods can be ferried up and down from these stations by other ships (they don’t even need FTL drives!). Planets with a high tech level may build a space elevator which would bring the cost of trading with a planet down considerably.
Ships will be highly customizable by the player. A ship will be a created as a .png image with transparencies. A scale will be setup (.5 pixels per meter?) so that ship size and mass can be determined by this image. A grid will also be laid on top of the non-transparent section of the image (5×5 pixels), this will be the ship’s internal volume. Players will be able to design and submit new ship images once they build design facilities. They will then be able to build and sell these new hulls to other players, creating an ecosystem for new and unique ship designs.
Systems can be added to the hull grid to add functionality to your ship (I think Star Drive stole my idea for this :-P). Some systems will be blocks with set sizes like weapons, shields, engines, and cargo bays. Some will be areas which need to be filled with sub-modules, like the bridge and crew areas. Some system can be opened up and modified with sub-modules. These modules will give the systems their properties and tell them how they react to different ship states. Some examples are power inlets and outlets, batteries, capacitors, switches, reactors, heat spreaders, and lots of other things. Players will create and manufacture unique systems to sell on the market like computer components are sold today.
Two important modules will be the FTL and sub-light engines. FTL engines will be needed to travel between planets and are only built and sold by the Mother Race. Sub-light is needed to land at space ports and maneuver in space battles. The actual speed will depend on the size and mass of the ship and the quality of engines fitted. Flying between planets will take a ship a few hours in real-time. The long flight times per ship will give the game a more casual feel, something that can be programmed and checked upon every once in a while. As the player’s fleet grows, more things will need the players attention.
Ships require upkeep as they fly their routes. The biggest expense is fuel to power your generators. There will be different types of generators that require different fuels that may cost different in certain regions of space. Also, when ships arrive at a planet, the have the option of entering orbit or landing. If a ship lands, it will use a considerable bit more fuel to both land and take off again.
The crew also want to be paid on a set schedule. Ships will require periodic maintenance as well, and if this isn’t done, systems can begin to fail.
Each ship also needs a crew to fly. Each system added to the ship will have a crew requirement, this will drive the number of crew needed for a ship, and how many crew quarters needed. Crew can be hired on most planets, and better crew can be hired on planets with higher tech levels and an academy.
I have been going back and forth on the style of ships that is going to be used. I was thinking of top down view of 3D models or Photoshop style 2D images. Lately I’ve discovered pixel art and found it to be quite easy. Here are some examples of the ships I designed and may use:
Some modules added to a ship require a certain number of crew to operate. They also might require certain officer specialties. General crew can be hired anywhere and draw from the general population of a planet. Officers must have training in certain skills and can only be found a certain places. All crew need quarters on board the ship.
Modules take from the pool of general crew as needed and if there are to few, it can run at diminished capability. Some modules will still run with no crew and some might shut down.
Every ship must have at least one officer, a captain. The captain makes any decisions when needed, directed by the player’s orders. Depending on certain officer attributes, he may or may not follow the player’s wishes. An example would be to run in a fight when you tell them to fight to the death. Other officers can affect the performance of systems and modules that specify them. Better officers give a better boost.
Officers can be found on many planets, but most are found on planets with an officer academy. These train new recruits to be officers of many types. Planets with higher tech levels often produce better trained officers. More experienced officers can also be found after they have left other companies (players), or poached from other companies by paying higher wages.
Crew require wages, which is a part of a ships upkeep. Better officers typically ask for higher wages. Officers attributes can improve over time as they gain experience, but with this they may ask for raises, or leave you ship.
There are going to be 6 playable races, each with different strengths, weaknesses, needs, and wants. There is one mysterious Mother Race that has “Uplifted” the others, and they control everything in the known galaxy (as far as you know). The Mother Race is highly advanced and controls the flow of technology to the 6 children races. They also will act as a police force closer to the more populated areas.
At times, the races might have differing opinions of each other making hiring mixed crews difficult at times. Wars can pop up in more outer regions springing from lack of resources or racial tensions. When you hire crew from a race, they will randomly bring a certain amount of their races opinions with them which can cause problems on long trips.
I don’t know what the other races are going to be yet, but I would like them to all be alien, very alien (no humanoids!). Some of them could have vastly different biology and require special modules on ships and some planets to live. Some might have special skills that are useful for certain modules on a ship or planet. Each race will have needs that can be fulfilled by other races specialties.
Since the game is persistent and resources are limited, exploring new space is essential for the continuing economy. A ship must be outfitted with special subspace astrometrics sensors and sent into an empty region of space (bring plenty of fuel too).
As the ship flies around space, sensor data will be uploaded to your interface when the sensor’s capacitors fill and discharge. The data will consist of a direction and sensor error (Gaussian) with strength determined by object size and distance. As the player collects more snapshots from different angles, a picture of the planet or anomaly location can be built up. There will be a sensor tool that the player can use to manipulate the sensor readings. If the ship flies within a certain distance of the object (1 light min? probably based on another sensor system), it is discovered and its absolute location is placed in your map.
Once a planet is discovered, it is saved on the players local map and can name it what ever they want. The location can be shared privately with friends or release the location of the planet to the public map for a reward (The name will then be checked for nastiness at this point). Without the exact location, it would be very hard to find the planet without astrometric sensors.
A player could also find anomalies, which could include asteroids, comets, black holes, nebula, and other fun things (derelict ships maybe? they would be very weak signals). Asteroids and comets can be mined for resources, and maybe even colonized.Spoiler
As an Easter egg, I think it would be fun to have Earth show up further out from the core worlds. Maybe the humans could become a new race, or the planet would be destroyed…
Space and StructuresRead More
Space will be 2D and cut up into sectors of 1500 light years. inside each sector there are (x, y) coordinates with a resolution down to a meter (64 bit numbers are big…). This will allow a player to build structures in space and be semi-hidden because of the vast emptiness of space (unless they have really good sensors).
Communication in space will be driven by the speed of sub-space energy. One planet module that could be built is an Ansible, which allows instantaneous communication between these modules, but as ships move further away from a planet, communication is delayed. This will affect when a players orders are received and reports on events like combat.
Space stations could work similar to space ships, just much larger and more modular. A player can build a core structure in a location of space by bringing components to a constructor ship. Once the structure is built, the station will be broken up with the same grid as ships and modules can be added, which can include power generators, industrial rooms, quarters, restaurants, weapons, hangers, and other things. One goal is to have these modules be the same that are used by ships, just much larger. You could then have a moving station if you build a ship large enough.
More structures can be added to the station to expand the living room. These extra spaces will tax the environmental and power systems you install.
Asteroids could also be built on like a space station. The difference would be that module space expands as you mine and prepare parts of the rock. Structure additions could also be built onto the asteroid like a station.
Stations and asteroids could not fit engines, but can be towed by other ships, even a fleet. This would add to the ship’s mass and slow the engines and increase power consumption.
Because this is a causal game and there is a time delay for all communication to and from ships, combat will be done in a DnD style. Each ship’s modules and crew determine the maneuverability, speed, shields, hull, and weapons. The crew’s qualities like aggressiveness, tactical thinking, and other traits determine the actions taken.
Each ship takes turns striking with the attacker going first (unless a module can effect that). The weapons that are ready this turn fire with a set accuracy and each shot hits or misses based on the maneuverability. If hit, damage is assigned to the shields, then the hull.
On each turn, the ship has a chance to try to run, continue attacking, or if the other ship is disabled, board the ship. This can be determined by the crew attributes. If a ship is destroyed, a distress beacon is dropped that transmits a record of the fight. Debris can be salvaged for some cargo and parts.
Astrometric sensors can be used to pin point the location and velocity of a ship moving on a route similar to finding a planet. The FTL drives produce a very large signal and can be easily tracked, although the sensors still give bearing only data, so different processing has to be done. There will be modules that can mask the subspace signal the FTL generates, maybe even make it almost invisible.
If a ship is within a certain distance and has a FTL disruptor module fitted, it can pull another ship out of FTL and attack. The attacking ship must still move into attack range, the time this takes is determined by the ships sub-light speed, if the enemy is fleeing, stationary, or attacking, and how close they were when the FTL disruptor was used.
This game would mainly be a PC or web based game with possibly a limited mobile app. I am starting to build the front end in Unity, which can be compiled for all these platforms.
The backend may be written in ASP.net as both this and Unity use C#, so code can be easily reused. A SQL database can be used to store the persistent state of the universe. Because things happen slowly, the database only has to be updated based on timers set by orders and NPC actions at least once a day. This should be a low server load.
The screens that a player would interact with are:
- Ship/Station/Building Builder – This is where the player would create a blueprint for the construction of a ship, station, or building. They would be able to select from available modules and place them on the container’s grid. This would also be used for retrofits where the current layout is shown and modules can be removed and replaced. Once the build order is given, construction is started.
- Space View – This is where the player can see all the ship positions in space and known planets. The player can select ships to set routes, give orders, and build modules. The player can also select stations and planets to move into their build screens. This screen would look like Space Bucks.
- Planet View – When a player selects a planet, this view can be brought up. Here all land plots are shown and specific information about a plot can be found by selecting it. Land plots can be bought and sold here. Planet resources, climate, and population can also be shown in this view.
- Land Plot View – This is where a player can see what buildings are on a land plot. If the player owns the land, the buildings can be selected to show specific information about it. This would look similar to Space Bucks again.
- Trade View – This is where the player would select what good to load into a ship with cargo modules attached at each planet in a route. When the ship lands on that planet, it will sell the cargo it is holding and buy what is specified here.
- Business View – This is where you would get detailed information about the money coming in and going out of your business. There will be graphs and plot and it will be glorious. Transactions with banks, the Mother Race, and the stock market will be done here.