traveller:worldgen
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
traveller:worldgen [2014/01/19 22:17] – [So, where is it?] sam | traveller:worldgen [2018/08/16 21:20] (current) – sam | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Traveller | + | ====== Traveller |
- | // | + | **WorldGen** |
- | A basic description is that Worldgen is a Java web application, | + | There were several versions of it over a course |
- | The current status of the project is that a major re-write started of it about two years ago, but it has been on hold for over a year now. It is not forgotten though, and work will hopefully begin again before the end of the year. | + | There was then several years where it was left untouched, but in 2017 there was an attempt to re-start it, by re-writing |
- | ===== Mapping the Galaxy ===== | + | There is a current development version running on a [[https:// |
- | The original galaxy map was done in the style of Google Maps, though | + | The primary source |
- | The first version of Traveller I really played was 4th edition (I only played AD&D in the '80s), so never learnt to memorise the UWP codes. I still find them impenetrable. So these maps are much simpler, and use a combination of text and icons to display information about the system and world. Since you can click through to full details on the star system, it's not necessary to show everything on the map itself. | ||
- | The big difference is that the ' | ||
- | |||
- | Also, the data was put together for a GURPS Traveller campaign, so technology levels go up to 12, not to 16. The very latest code base has reverted to a 0-16 scale, but the working data sets still use the GURPS scale. | ||
- | |||
- | ===== Mapping Traveller Worlds ===== | ||
- | |||
- | The first aim was to map all the worlds of the Imperium. Since Traveller condenses everything there is to know about a star system into a single line //Universal World Profile//, the first requirement was to extend this to provide more complete information on a star system. This included: | ||
- | |||
- | * Individual detail on each world within the system. | ||
- | * For multi-star systems, detail on the arrangement of the stars and the orbits of the planets. | ||
- | * Details on moons for some of the worlds. | ||
- | * Textual description for each world, rather than just limiting the description to raw statistics. | ||
- | |||
- | To simplify things, a [[classification]] system was used. This classes worlds into broad types, such as CryoJovian, EoGaian, Enceladean etc. The system generation can work out how many planets there are, and what the types of those planets are, and then leave it to a planet generator to work out the details. | ||
- | |||
- | ==== Describing the Worlds ==== | ||
- | |||
- | The textual descriptions are randomly generated from seed files. Each world type has its own set of possible phrases, which can be strung together and can also include simple conditional statements. For example, a world might be described as a "A small airless rock", though the word ' | ||
- | |||
- | For example, one world' | ||
- | |||
- | //This is an Earth-like planet with a fully developed ecology. Irkhi III is a beautiful planet of colourful forests which cover much of the world. The oceans are filled with giant killer fish. Irkhi III is heavily populated.// | ||
- | |||
- | For worlds which have a civilisation, | ||
- | |||
- | //The laws here are many, and quite restrictive. Off-worlders may find themselves subject to investigation if they step out of line, though the legal system is still capable of standing up to the government. There are no laws allowing free speech, and journalism is heavily monitored. There are religious leaders who think the government should increase its power in order to reduce off-world interference.// | ||
- | |||
- | The idea is to flesh out every planet and moon in Traveller to a high level of detail. | ||
- | |||
- | ==== Showing the Worlds ==== | ||
- | |||
- | The big work though is in actually mapping each world. This involved writing planetary mapping routines from scratch, since not only did they need to be fully automated, they also needed to be fast enough to generate maps for hundreds of thousands of worlds. Quantity over quality. | ||
- | |||
- | Because worlds have both a map image and a text description, | ||
- | |||
- | This part of the system is currently in a lot of flux, because it's quite hard to do. The latest version produces quite low resolution icosahedral maps. | ||
- | |||
- | At some point, it would be nice to be able to show a 'night side' map which shows city lights as well, but that hasn't even been started on yet. | ||
- | |||
- | ===== A Living Universe ===== | ||
- | |||
- | Finally, it was decided that it would be good to show trade information about worlds. Rather than use something like the rules in //GURPS Free Trader//, the system works out trade by determining what every world produces, what every world needs, and actually simulates trade between them by having ships buy and sell goods. | ||
- | |||
- | This simulation is very much a work in progress (it needs to work out trade goods for everything from a TL 0 stone age culture to a TL 16 advanced society with 10 billion people living in orbit). It also needs to model what each ship knows about the world. Information only travels as fast as a ship, so market prices on the current world is stored for each system, plus latest //known// market prices for neighbouring systems which has been brought in by recent ships. This requires simulating the flow of information around the universe. | ||
- | |||
- | It's all fun, but there' | ||
- | |||
- | ===== So, where is it? ===== | ||
- | |||
- | There' | ||
- | |||
- | A good place to start is in the [[http:// | ||
- | |||
- | Everything is built on top of a REST API, so for example, the following URLs show interesting stuff: | ||
- | |||
- | * [[http:// | ||
- | * [[http:// | ||
- | * [[http:// | ||
- | |||
- | Finally, there is a [[http:// |
traveller/worldgen.txt · Last modified: 2018/08/16 21:20 by sam