Blarg. I started looking into the code I've written over the last few years to display my star systems and it's just plain nasty. I'm such a hack when it comes to coding. Heh. I've started ripping it all out and I'm replacing almost all of it. At least it's more fun to work on this than to enter more db rows about planet tiles.
I have made a few decisions about how I'm going to use the Morale rating on ships and colonies. It will act more like an efficiency rating for the most part. So it will start at 100% and will affect things like how much He3 you scoop at gas giants, or anything else where an efficient, happy crew would be able to do things more effectively. If morale reaches 0, the ship will mutiny and disappear. This is how I'll handle accounts that stop playing. The ships will disappear, but the crew will eventually show up at a colony and can be hired by another player.
The main way to raise morale will be to grant shore leave at a colony. This is another way to make sure ships have to come back in from the wild every once and a while. When you grant shore leave, you also have to spend money for the crew salaries, and part of that money will go back to the colony owner. There will be a type of Entertainment complex that can be constructed at colonies, and the better that complex is the more Morale will be raised for a ship and the colony owner will collect more of the income.