# Celestia/Suggested New Features

This page is obsolete. See the page Bugs and Feature Requests.
Features requested on this page are very unlikely to be implemented if they aren't on the SourceForge list. If you are interested in any of the features listed below, you must take the responsibility of making sure they're requested on SourceForge.

# Keyboard Commands
## Customized Command Key Assignments

It might be useful if it were possible to specify customized command key assignments in a configuration file.

## Scripted Key Commands

It might be useful if it were possible to create user-defined key commands using Lua scripting.
    This already is possible. See the example script elsewhere in this WikiBook. ...Selden 19:43, 2 September 2007 (UTC)

# Time Controls
## Change Time Flow Rate While Paused

It might be useful if it were possible to change the time flow rate while paused, so that when the pause is ended time would flow at the new rate.
    This is possible in Celestia v1.4.1 ...Selden 19:44, 2 September 2007 (UTC)

## GOTO Spacecraft In Time

Currently, one needs to look at the SSC file to see when a spacecraft begins (such as Mir). Doctorjoe created a simple patch, which I have applied to my OS X builds without a problem, that shows the start and end times of a spacecraft in the view window. In addition, hitting shift-G, takes you to the spacecraft's temporal and physical location.
I have this patch now... and would be happy to send it to anyone who wants to try incorporating it into CVS (contact: BlindedByTheLight).
Furthermore, it might be cool to allow more than just two dates (start and end) to appear in the view. Various spacecrafts have SEVERAL temporal points of interest. Perhaps changing the code so that people could declare various times with text labels...
Start Time: 34747373.4234234
Start Text: "Ship takes off"
Date1: 35343434.2343
Date1Text: "Ship passes the moon"
Date2: 35324344.2343223
Date2Text: "Ship circles Jupiter"
End Time: 342423434
End Text: "Ship crashes into Io"
Then a keyboard shortcut to go to each successive point in time...? Would be cool and would open up a whole new world for add-ons designers.

# Render Options
## Improved illumination phase functions

It might be nice to allow planet/satellite illumination functions to vary dependent on the surface type. Presently objects like Jupiter are more realistic with the default lambert function. Solid surfaces are less realistic and might be improved with a type of "lunar lambert" function.

## Improved distance filters

It might be nice to allow distance filters for any object, not only stars. When you have a populated system, it's annoying see all/none names/orbits. It could be possible show only largest/important/brightest names/orbits of objects from your FOV.

## Display coordinates

It might be useful to show galactic and equatorial coordinates.

## Display apparent magnitude for planetary bodies

It would be interesting to have the apparent magnitude of the selected planetary body displayed. The program already performs these calculations, for instance, to set the scale of the planetary scaled discs, so I assume it wouldn't be too difficult to add this information to the planetary information display.

## Display axis

It might be useful to show rotation axis of bodies which I selected to see their orbits.

## Display speed/forces

It might be useful to show ship's speed/forces (angular and radial) when I do a follow/sync orbit/track selection.

## Create visual filters

It might be wonderful to apply filters: select between infrared, visible, ultraviolet, X-ray and gamma spectrum, simple polarized colors, aberration of light, high level of ambiental light. A stereographic mode, for use with red-cyan glasses, could be excellent (StarStrider have this).

## Improved real-time clouds

It might be nice to update clouds from public databases.

# View Controls
## Zoom to Fill

It might be useful if there were a key command to cause the view to zoom so that the selected object fills the screen. Then the user could select an object of small apparent size (by onscreen picking or keying-in its name), press a key to center it in the view, and press another key to zoom the view so the object fills the screen. This would be more convenient than manual zooming.

## Select Orbits

It might be useful if you can select which orbits (from one group) you will see (if orbits turned on) - for example only from objects with a special size. Especially if you have many asteroids in you Solar System Browser it becomes very complex in the presentation. An alternativ or additionally it might be useful to group orbits close to each other in a "fuzzy" orbit - similary to the rings of a planet.

## Third-Person View

It might be useful if you can see from perspective an Official Celestial Ship for navigation.

# Solar System Browser
## Presentation

It might be useful if you can categorise and / or group planets and asteroids, so that a list doesn't become too complex.

## Proximity lists

It would be interesting to have a list of the closest objects to the current position not only in the star browser, but also in the planetary one. It would be even more interesting if the program included a function that returned the closest approaches to a given body (or between two bodies of choice) in a given interval.

# Orbits
## Galactic Orbits (stellar proper motion)

It might be useful if galactic orbits could be simulated based on stellar proper motion where available.

## Segmented Orbits

It might be useful if orbits could be defined with multiple segments, combining elliptical orbit segments with different elements, xyz files, etc. Also if orbits for objects could be made up of different ephemeris data blocks. i.e. so the orbit is correct for various dates of interest. This would be useful when considering planet/moon events and spacecraft missions etc. At the moment using beginning and ending nearly works but celestia then has multiple objects with the same name and does not switch to the visible object of the same name at the specified ending of the objects life. Hence the satellite/Moon/asteroid disappears and the new object pops up but is not tracked only the "ghost" object.

## Horseshoe and Tadpole Orbits

It might be useful if horseshoe and tadpole orbits could be specified.

## SPICE Orbits

It might be useful if orbits could be specified using NASA's SPICE files.
    SPICE orbits will be supported in Celestia v1.5.0. They already can be used in its prereleases. See the documentation elsewhere in this WikiBook. ...Selden 19:49, 2 September 2007 (UTC)

## Horizons Orbit Data Extraction Tool

It might be useful if there were a tool for extracting orbit data from JPL's Horizons system into a Celestia-compatible format.

## Critical Interval Orbit Overrides

It might be useful if there were a way to specify xyz data for higher-precision during critical time intervals (e.g. spacecraft flybys) while using less precise orbital data at other times.

## Multiple Star Orbit Display

It might be useful if orbits could be displayed for binary/multiple stars.
    This already is possible in Celestia v1.4.1. See the documentation elsewhere in this WikiBook. ...Selden 19:51, 2 September 2007 (UTC)

## Detect collisions

It might be useful if I could select 2 bodies and calculate past and future collisions as Eclipse Finder. Or merge both as an "Events Finder" with alerts.

## Extended eclipse finder

It would be real neat to have an extended eclipse finder, able to find them for any body, not just the predefined ones.

# Browser
## Show Stars and Planets around Barycenters

It might be useful if it would be possible in the Star Browser to select the barycenter of a binary and then see the corresponding stars with subsequent planets or planets around the barycenter.

## Improved search

It might be useful if you can search a name and see all objects which matches it (in any part of the word). And could be interesting show all known names from an object (for example, 2003 UB313 / Xena)

# Label Display
## Star Labels
### Star Label Density Control

It might be useful if it were possible for the user to control the density of star labels, e.g. with a magnitude limit.

### Catalog Preference for Star Labels

It might be useful if it were possible for the user to specify a precedence ordering of catalogs for selecting which star labels to use.

# Data Loading
## Reload Data Without Restart

It might be useful if it were possible to reload the data without restarting the program. This would make it more convenient to test incremental changes to data. Such a reload should be able to reload one file, one directory or all of the data.

# Scripting
## CELX Scripting
### Disable User Inputs During Script

It might be useful if there were a script command to disable user inputs while the script is running. Another script command could reenable inputs if desired. The inputs wouild be reenabled automatically when the script ends, and of course the "escape" key to abort the script would always be enabled.

### Write Messages to Log from Script

It might be useful if were possible to write messages to the log from a script.

### Display Error Messages in Log

It might be useful if scripting error messages were displayed in the log.

# Views
## Save Multiple Views in Celestia URLs

It might be useful if multiple views could be saved in a Celestia URL. This would make it possible to easily restore a desired view layout.

## Separate Rendering Flag Settings for Each View

It might be useful if Celestia allowed separate rendering flag settings for separate views. This would make it possible, for example, to show orbits in one view but not another.

## Default Bookmarks

It might be useful to create default views such as solar system view from above.

# Data Files
## Merge STC and SSC file formats

At present Celestia requires separate file formats for stars (STC) and other bodies (SSC). It would work better if these were combined into a single file format with features of both.

## Planetary Barycenters

The modelling of planets with large moons is unrealistic because the barycenter of the planet-moon system is always the center of the planet. If a barycenter for a planet-moon system could be specified, the motion of the planet and moon can be modelled more accurately. Examples of systems that can be modelled correctly with this new feature would be Pluto-Charon, Earth-Moon, and certain binary asteroids.
    I believe you can currently create barycenters for planets/moon/asteroids, just not in .ssc files. They have to go in .stc files. Granted, this is an inconvenience.
       The Class "invisible" hack was defined long ago for just this purpose. Celestia v1.5.0 adds the ReferencePoint directive for use in SSC files. ...Selden 19:56, 2 September 2007 (UTC)

## Local InfoUrls

Local InfoUrls: have Celestia check local directories for InfoUrl files (html/cel/celx) before trying to look it up on the www. Alternatively, allow local InfoURL files to be specified explicitly.
    This latter capability already exists. ...Selden 19:58, 2 September 2007 (UTC)

## Spectral Light Emission

Implement a method to change the spectral color of stars in the STC. If for example you want to create a green star you can now add a green star texture with the "texture" command, but the halo of the star still has the color of the originally selected type i.e. "G2V". So the star doesn't look right. Perhaps a command with [R G B] values for this could be added.
    See: "Why aren't there any green stars?" Briefly, stars are black body radiators, so the spectral emission of a star is determined by its temperature. Stars emit light at essentially all wavelengths across the spectrum. We perceive color based on the wavelengths to which the receptor cells in our eyes are sensitive. Black body spectra don't have the proper proportion of radiation at different wavelengths to cause our eyes to perceive the light as green.

## Multiple Names in the SSC

It might be useful if the objects in the SSC allowed multiple names like stars. This would make it possible, for example, to select asteroids by not only its name but also the number. And this allows enabling translation of the objects' name into various languages keeping original English name.

## Customized body categories

(I'm not sure where this one fits best. Feel free to move around) It would be useful to be able to set up customized object categories, for instance, to separate main body asteroids from TNOs or dwarf planets, or whatever the user sees fit.