Code Monkey home page Code Monkey logo

houston's Introduction

Houston: KSP Mission Control

Have you ever been launching Kerbals into the Sun and thought

You know what I need? MOAR SCREENS!

Do you have a bunch of friends who haven't done something unbelievably nerdy in the past 6 months?

If the answer to either of these questions is "Sure?", then behold Houston:

We have liftoff!

Houston is a UI for Telemachus, the premiere mod for KSP Telemetry and Flight Control data.

Houston's designed for Mission Control Parties. What's a Mission Control Party? It's when you get a bunch of friends together and each person has a separate station, and you somehow have to coordinate with the pilot (who you may have locked in the bathroom with some snacks for dramatic effect) to try to pull off an actual mission.

You could also use it playing solo, switching between stations as needed.

Want to see some more? Here's a GIF of the Ground Track in action!

What's Houston got?

Houston has a ton of really cool features, some of which work!

  • A ground track, for plotting the path of a ship in orbit
  • An altitude estimate for said ground track (heavy emphasis on "estimate")
  • Readouts for the stock resource types in KSP
  • Status light indicators
  • A 3D navball (huuge thanks to Lokaltog/KeRD for an awesome implementation)
  • Throttle and Atmosphere gauges
  • Position Maps
  • A Hohmann Transfer tool (not guaranteed to properly transfer you as per Hohmann's specifications)
  • Links to the Telemachus Console and MKON
  • Data Tables, whoooo!

UIs

Houston was designed to have specialized UIs for specific stations or contexts. That way you can divide the work across a team and only focus on the relevant data. So far, Houston has:

A ground track/orbit overview

An ascension module

A landing module

Combined BOOST/EECOM stations

A FIDO station

SCIEEENNNCEEE

Everything's accessible through a pulldown menu, including links to the Telemachus console or MKON

Installing

  1. Install the latest version of Telemachus
  2. Download the latest version of Houston
  3. Copy everything in the public/ directory to [YOUR KSP FOLDER]/Game Data/Telemachus/Plugins/PluginData/Telemachus/houston/
  4. Launch KSP, add the Telemachus parts to your ships, and have fun!

How do I play?

I've written up two guides for how to play KSP: Houston:

Developing

Houston's compiled using nanoc.

Make sure to install nanoc, then run bundle install.

You can run guard to automatically compile the site as you make changes, making development a breeze!

The repo structure is:

  • content: where UIs are built
  • layouts: where partials are stored and the site-wide layout is defined
  • lib: various helpers for nanoc
  • licenses: Where I store licenses
  • public: the final compiled version of the site
  • static: where images/JS/CSS go

Fork it and make a PR if you want to improve something! :D

Current issues

  • The actual altitudes reported in the altitude estimation chart are completely broken. It's still useful for seeing the pattern of your orbit
  • The ground track doesn't always work when the orbit's inclination is > 90 degrees
  • There are still some rough spots in the design
  • While the layout is compatible across all modern browsers, there are still weird display issues in Firefox (I just haven't gotten around to fixing it yet)
  • The ground track doesn't work for suborbital paths
  • There's no "disconnected" indicator in the UI.

Thanks to

Why?

Why does a man climb Everest? Because it is there

houston's People

Contributors

rcannon95 avatar tcannonfodder avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

houston's Issues

Remove Math.js

math.js is one of our largest dependencies and we only use it for 1 function (math.add, which is matrix addition). A method can be written in math_polyfill.js that can do the same thing, reducing page weight.

Build Mission Wall module

Below is a mockup of the mission wall module, which would be projected on a larger monitor in mission control

wall

Setup build chain to compress & concatenate assets, only load required assets

Right now Houston loads all the app's assets for every page load. As the app grows, this increases page bloat and weight unnecessarily. The assets are also not compressed. Both of these create problems for users running Houston remotely: their limited network connection is bogged down sending "junk" requests and bloated data.

I prefer Jammit style asset compression, it's straightforward and does the job without getting in the way. However, I haven't had much luck finding a jammit-style asset packager that works well with Nanoc.

Make SYSOPS module to replace SCIENCE module

The SCIENCE module needs improved, and it should be renamed to SYSOPS to indicate that it's broader scope. While it largely includes basic science & sensor data, the module can control custom actions and will include a live feed of cameras attached to the vessel in a future version of Telemachus (tcannonfodder/Telemachus#3)

A rough mockup of the SYSOPS station
A rough mockup of the SYSOPS station

Icon / UI Not snowing in 1.4.3

The parts appear fine in the latest release of KSP but no UI elements appear. (Including the toolbar icon)
The server for the telemetry mod does not start but this could simply be because it's required to be turned on in the UI.

Audit station screens, redesign as necessary

A design and UX audit of the station screen is necessary, given the enhancements in the latest version of Houston. We may need to make additional stations, split work amongst them, or even move specific components (like the maneuver node editor) into separate station.

Design Sysops icon

Self-explanatory. Not sure what it's supposed to look like, but it should look like something ๐Ÿ˜œ

Network error

Hi,
Upon loading index.html, the only data that is displayed is MET and UT. When I open up the web console I am seeing several" downloadable font: download failed" messages, and finally at the end after about 2 seconds after page load, the message "NetworkError: A network error occurred." I've attached a screenshot if that helps.

Cheers,
Tim
screenshot at 2016-04-12 16 57 04

Add loss of signal (LOS) notice in title bar

If Houston is unable to collect data, a "loss of signal" error should be shown somewhere on the title bar. This will let users know that they are not getting live data from the vessel.

If the connection is restored, the LOS notice should disappear

Rewrite Telemachus datalink to use web sockets instead of AJAX requests

This is a major overhaul to Houston's backend (maybe 1.5/2.0?), but could have a number of performance and usability improvements:

  • Page weight could be reduced, since browsers aren't caching the AJAX responses, needlessly filling up the page cache
  • A version of Houston could be hosted on a centralized website, rather than relying on the Telemachus server to pass all that data along (currently CORS prevents this)
  • Potentially better performance?

It's worth looking into and seeing what the effect is and how feasible it is

Vessel cubes too large for smaller reference bodies

I did have one question about the Orbital Map. I initially tried this with a pre-existing probe that is currently in a tight orbit around Gilly and this is the resulting Orbital Map. I understand that the cube represents the craft, but is the size in relation to Gilly (essentially a large asteroid) the intended behavior? If so, I suspect that the cube size is appropriate relative to larger bodies such as Kerbin or the Mun, but you may want to reduce the dimensions of the craft-cube if it is possible.

80cm4l jpg

Build Navigation module

Below is a rough mockup of the Navigation module. The mockup may be missing some fields in the orbital info table

navigation

Fix display bugs on Firefox/Edge

Right now Houston works on Webkit browsers. If someone wants to fix Houston to work on Firefox and Microsoft Edge, I'd love to merge that PR in!

Redesign navigation to support new views?

The current navigation might not make sense with the inclusion of new stations and multiple possible stations per role. It might make sense to design a new navigation UI to make it easier to switch stations.

An overlay grid might make sense, since relevant stations can be grouped by role (and it might be possible to open all relevant stations for a role with a single click).

is this project dead?

It's been a while since an update, and I've been having trouble getting Houston to work with the newer version of KSP.

Any other ground control mods I should check out?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.