On Star Systems [from Transcendence.tdb 1.2 beta 2]

This is a moderated forum that collects tutorials, guides, and references for creating Transcendence extensions and scripts.
Post Reply
RPC
Fleet Admiral
Fleet Admiral
Posts: 2876
Joined: Thu Feb 03, 2011 5:21 am
Location: Hmm... I'm confused. Anybody have a starmap to the Core?

I need to put this on the wiki put this is also a nice place for this info.

Code: Select all

	Creating a random star system consists of two main processes: 1) we 
	generate random planets, asteroids, and nebulae; 2) we place stations and
	encounters randomly around appropriate locations.

	OBJECT TYPES

	Object types (implemented as a StationType) represent specific planets
	and asteroids. Specific object types have the following properties:

	CLASSIFICATION		An object's classification represents the type or kind
						of object. For example, some objects are "volcanic"
						while others are "primordial". This library defines
						several classifications, but additional libraries may
						defines an arbitrary number of new classifications.

						Generally, a classification encompasses something unique
						about the objects in the class.

	SIZE				An object has a specific size (in kilometers) that can
						be placed into one of 13 size classes:

								Asteroid			< 1,000 km
						sizeA		Tiny			~ 10 km
						sizeB		Small			~ 50 km
						sizeC		Medium			~ 100 km
						sizeD		Large			~ 500 km

								Planetoid			~ 2,500 km
						sizeE		Small			~ 1,000 km
						sizeF		Medium			~ 2,000	km
						sizeG		Large			~ 4,000 km
		
								Terrestrial			~ 10,000 km
						sizeH		Small			~ 5,000 km
						sizeI		Medium			~ 10,000 km
						sizeJ		Large			~ 20,000 km

								Gas Giant			~ 100,000 km
						sizeK		Small			~ 50,000 km
						sizeL		Medium			~ 100,000 km
						sizeM		Large			~ 200,000 km

	REGION				An object may appear different depending on its distance
						from the central star. For example, some objects may have
						a coating of ice when far away. For purposes of object
						appearence, there are three regions:

						inner		Inner objects are baked by the central star.

						lifeZone	LifeZone objects are at the right distance 
									to possibly support liquid water (although
									they are not required).

						outer		Outer objects are frozen.

	Every concrete object type (represented by a StationType) has the above 
	properties. For example, stPrimordialInnerAsteroidSizeA implements an object
	with the following properties:

		classification: primordial
		size: A
		region: inner
	
	In general, each StationType should have a unique combination of properties.
	If an object with identical properties can have multiple appearences, then
	it should generally be implemented as multiple image variants within a 
	single StationType.

	Object types should include these properties in their attributes. For 
	example, stPrimordialAsteroidSizeA should have the following attributes:

	primordial			The classification
	sizeA				The size
	lifeZone			The region

	If the object type can be found in multiple regions, then it should have
	all of the appropriate regions listed. In addition, all object types should
	have the attribute "generic" if they wish to be selected randomly in a
	system morphology.

	SYSTEM MORPHOLOGIES

	A system morphology defines the form and configuration of a specific kind
	of system. For example, the AsteroidArcBeltSystem definition creates a 
	system with a K-class star and asteroid belts.

	System morphologies are designed to be included in a SystemType definitions.
	The SystemType is responsible for binding the physical characteristics of
	the system (its morphology) with the stations and encounters that are 
	appropriate to it.

	For example, there could be two (or more) different SystemTypes that include
	the AsteroidArcBeltSystem: One might be a friendly Commonwealth system with
	a heavy Commonwealth presence; the other might define an enemy system with
	lots of Ranx stations.
	
	The tbSystemMorphologies table contains all of the system morphologies
	defined by this library.

	SYSTEM ZONES

	The system morphologies in this library could, laboriously, define the 
	system in terms of specific object types. For example, a morphology could
	randomly place a size A primordial asteroid in the inner region. But this
	would duplicate lots of code.

	Instead, the morphologies use the concept of "zones" to help place specific
	object types. There are twelve zone types defined in this library:

						Inner Zones			Life Zones			Outer Zones
					 ===========================================================
	Metallic Zones	 |	molten				metallic			barren
	Organic Zones	 |	greenhouse			primordial			tholin
	Rocky Zones		 |	cinder				desert				frost
	Water Zones		 |	steam				biosphere			ice

	In general, each system morphology picks an approprize zone for its inner,
	lifeZone and outer regions. For example, the VolcanicSystem morphology might
	pick molten for its inner zone, desert for its lifezone and barren for its
	outer zone.

	The system morphology then uses "group morphologies" to place asteroids
	and planets. The group morphologies will determined the zone in which they
	have been placed to pick specific object types.

	Example: The VolcanicSystem morphology defines the inner zone to be molten.
	It then creates an AsteroidSparseBeltMorph in the inner zone. The
	definition of AsteroidSpareseBeltMorph picks a different set of random
	asteroids depending on the zone it finds itself in. For molten zone it picks
	lots of volcanic asteroids.

	NOTE: These zones are an implementation detail of the system morphologies
	defined in this library. Do not assume that these are the only zones 
	available nor that systems must have a certain set of zones.

	EXTENSIONS

	Extensions and libraries using this library should follow these guidelines:

	1.	DO use any of the object types (StationTypes) defined in this library.
	2.	DO define your own object types, but DO NOT expect them to be 
		automatically selected by morphologies in this library.
	3.	DO define your own SystemTypes. DO include any system morphology defined
		in this library.
	4.	DO use any group morphology defined in this library.
	5.	DO define your own morphology tables and use them in your own 
		SystemTypes. Your own tables may include these object types or your own
		object types.

	DISTANCE ATTRIBUTES

	innerSystem			Hot zone; 60% of max star illumination
	lifeZone			Lize zone; from end of inner to edge of illumination
	outerSystem			Outsize star's max illumination

	COMPOSITION ATTRIBUTES

	metallicComp		High metallic content
	organicComp			High organic content
	rockyComp			High rock content
	waterComp			High water content

	ZONE ATTRIBUTES

	barrenZone			metallic, outer
	biosphereZone		water, lifeZone
	cinderZone			rocky, inner
	desertZone			rocky, lifeZone
	frostZone			rocky, outer
	greenhouseZone		organic, inner
	iceZone				water, outer
	metallicZone		metallic, lifeZone
	moltenZone			metallic, inner
	primordialZone		organic, lifeZone
	steamZone			water, inner
	tholinZone			organic, outer

	OBJECT ATTRIBUTES

	asteroids			among asteroids
	asteroidbelt		among asteroid belt around star
	cratered			in orbit around cratered planet/moon
	desert				in orbit around desert planet/moon
	earthlike			in orbit around earthlike planet/moon
	frost				among frost asteroids
	gasgiant			near gas-giant planet
	ice					among ice asteroids
	methanegiant		near methane-giant planet
	moon				in orbit around large moon
	nebulae				in a nebula
	ocean				in orbit around ocean planet/moon
	planet				in orbit around primary planet
	planetary			in orbit around planet or large moon
	poisonous			in orbit around poisonous planet/moon
	radioactive			in orbit around radioactive planet/moon
	ringedgiant			near ringed-giant planet
	trojan				at trojan (or antitrojan) point
	volcanic			in orbit around volcanic planet/moon

	LABEL HIERARCHY

	asteroids
		asteroidbelt
		comet
		frost
		ice

	planetary
		moon
			cratered
			desert
			earthlike
			ocean
			poisonous
			radioactive
			volcanic
		planet
			cratered
			desert
			earthlike
			frost
			gasgiant
			methanegiant
			ocean
			poisonous
			radioactive
			ringedgiant
			volcanic

	trojan
	void

-->
Tutorial List on the Wiki and Installing Mods
Get on Discord for mod help and general chat
Image
Image
Der Tod ist der zeitlose Frieden und das leben ist der Krieg
Wir müssen wissen — wir werden wissen!
I don't want any sort of copyright on my Transcendence mods. Feel free to take/modify whatever you want.
Post Reply