Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pirate jobs #2646

Merged
merged 11 commits into from Jun 30, 2017
Merged

Pirate jobs #2646

merged 11 commits into from Jun 30, 2017

Conversation

Amazinite
Copy link
Collaborator

@Amazinite Amazinite commented Jun 18, 2017

This is a continuation of #1935. I've split the previous pirate jobs PR up because it was too big and had some pretty wild changes in it (e.g. selling passengers into slavery) which I will introduce in seperate PRs. This PR contains only the generic pirate jobs from #1935, excluding any of the selling your passengers into slavery job and the fake ID job that allowed you to reset your reputation with certain governments.


Jobs available on pirate planets. Most of which are in some way illegal, either through the cargo you carry or through requiring you to attack merchants and law enforcement, and they are only offered to you if you have a high enough reputation with pirates or if you have proven yourself to them through having a high combat rating.

Instead of increasing job payments by increasing sizes, Pirate jobs are worth more per ton/passenger than other jobs. This is to give them some sort of appeal given how low-profit they would otherwise be from fines or how dangerous they can be from being hostile toward most of human space. These jobs pay anywhere from 33.3% to 150% more for cargo related missions and 100% to 166.6% more for passenger missions (and 566.6% more for the rare highly wanted passenger missions, which is transporting a single passenger with NPCs deployed to either scan you or take you down). Escort missions pay twice as much as their legal counterparts of the same size due to how every merchant becomes an enemy to your escort.

Contains:

  • 65 total jobs that can be offered on pirate planets.
  • 3 space port planetary defense missions.
  • 2 invisible missions that trigger bounty hunters to come after you if you are hated by law enforcement.
  • Some new pirate hails that relate to the jobs.

The new jobs:

  • Cargo Smuggling (0 through 3): Smuggle illegal cargo from pirate worlds into law enforced space.
  • Drug Running (0 through 3): Smuggle illegal drugs from pirate worlds into law enforced space. Fines and pay are bigger than transporting cargo.
  • Bulk versions of the previous two jobs (0 through 2): Bigger cargo, bigger fines, and more distance to travel.
  • Stealth versions of the previous job types (2 per region: north, south, and core): If scanned during the job, the job is failed and a hefty fine is placed on the player. Spawns law enforcement with scanners to track down the player (also adds Quicksilver and Bastion scanner variants for this mission).
  • Wanted Passengers (0 through 3): transport wanted criminals across law enforced space. Being scanned results in a failure. These missions do not spawn NPCs with scanners.
  • Highly Wanted Passenger (3 regional jobs): transport a passenger who is wanted across the galaxy, namely for stealing stuff from the government. Spawns NPCs with scanners to track down the player and their cargo.
  • Slave Transport (0 through 2) and bulk versions (0 and 1): transport slaves across the galaxy from pirate planet to pirate planet. Slavery is highly illegal throughout the galaxy, and thus getting caught is considered an atrocity.
  • Mercenary Jobs: The pirate version of escort jobs. Comes in 2 flavors: normal escorting and escorting stolen ships. There are two normal escorting jobs per region (entitled Protection to <planet> and Protect cargo to <planet>) and one stolen ship escort per region (entitled Protect ship to <planet>) which involves the player escorting a large warship and their stolen freighter or transport ship.
    • These jobs do not spawn many NPCs to fight given that most fleets that you come across will already be hostile to your escorts.
  • Eliminating Targets: The pirate version of bounty missions. 5 different jobs per region. There are 3 types: competition (which comes in small and large), law enforcement (also comes in small and large), and merchant raids.
  • Regional Pirate Defense: the flipside of the pirate attack missions, where instead you are the pirate defending against regional law enforcement.
  • Cargo Theft: A local warlord is interested in some cargo being transported by a merchant convoy nearby. Attack the convoy and board the target ship, stealing its secret cargo before blowing it out of the stars and returning to the pirate world.

Other Changes:

  • Adds a bunch of illegal cargo and drug commodities.
  • Changes the drug names mentioned in a friendly pirate hail to match the new drugs and adds a new hail with pirates giving drugs a bad review.
  • If your reputation with any law enforcement is too low, there is a chance that they will send bounty hunters after you on landing. There is a smaller version of a few interceptors when you hit -10 and a larger version of a heavy warship and either one medium warship or two light warships after you hit -200. This does not occur during the war.

I got a little bit of help from @OmegaLokkes @Kryes-Omega for a few of the jobs at first, and @Bladewood, @Wrzlprnft, @Disiuze, @Pointedstick, @kaylara, and @comnom all contributed commodity names.

They aren't relavent to this PR anymore. Will be included in slavery PR.
but will come after the player even if they only land on pirate worlds.
@Amazinite
Copy link
Collaborator Author

Keep or trash?: The ransom jobs. I don't really like how they play out (I imagine them being confusing to some players), and in the end it doesn't really make sense for the law enforcement to attack the player if they really are carrying someone who is suppose to be given over for ransom. Should I just trash the dangerous half of the jobs and keep the safe half, making it a rare job that pays well?

Not as likely to get the hardest stolen vessel to transport
Wording changes in descriptions
Removed redundant numbering on elminating law enforcement jobs
@Forlarren
Copy link

Forlarren commented Jun 20, 2017

Ransom should have a chance to go bad at the exchange. Getting away should be the challenge, since you no longer have your insurance aboard.

And maybe a very rare chance that you anger a family member "with a particular set of skills" and a "bounty hunter" harries the player every step of the way. Something like a 1% chance. If they board the players ship it should be bad, really bad.

I like the idea of using hails as tutorial material/tips. Maybe a couple of suggestions on better engines, and good pirate ship types and where to find them could be part of their hail messages.

I like your pirate hails a lot though, I'd actually pay attention to them, the regular ones are so much spam I never even watch coms.

Thing with criminals is it's not the job that should be the challenge. Criminals pick easy jobs because they are criminals. The least work for the highest payoff.

Where the challenge should come from is after, it's about complications. Think like grand theft auto the police star system. Doing the job is just pressing the button, that's not the real mission though, surviving after pushing that one button is the actual mission.

Maybe add hidden quests (I think that's possible) so the player doesn't know they are making enemies until they run into them. The more pirate quests you take the more likely on the next mission you go out on you run into a past loose end. They could date out so if you "lay low" for a while (stay away from the territory of people looking for you), until the heat passes you can avoid consequences, but you will be constantly moving around, having to avoid jobs, etc...

Love your work here, good stuff.

Last edit: after "endangered animals" you have "endangered planets" instead of "plants". I made the opposite typo yesterday and called planets, plants.

I lied. More editing: WTF is a "framulator", wait, no, don't tell me. Whatever it is it's my favorite, it's so fun to say. Also MOAR weaponized farm animals. Also stolen "square pigs" please (a reference from Space Truckers hugely under rated movie).

@Forlarren
Copy link

I'm going to make a separate post here and it's going in my personal notes, I'm maybe half way to getting how to do these mods. Actually I'm procrastinating learning git... anyway...

A model for a crime and punishment system.

Win or lose if a player "gets caught" (mission dependent), there should be some consequence based on the crime, either a fine they can pay or try to escape.

Republic worlds might use a system much like the modern US. They announce via a quest trigger something like "Capitan so and so of the vessel such and such, hereby serving you a warrant for (whatever they did), stand down and prepare to be boarded...

If it's just a fine you pay it then and there. If it's a death warrant you better fight though, giving up is losing.

I'm thinking about taking an idea from THX 1138 here, warrants should run out according to cost. Blow up enough retrievers and they give up. As long as you only blow up retrievers it shouldn't hurt your reputation. Reputation is more for politics than simple crime. Governments shouldn't care politically about a little crime as long as it doesn't affect military operations.

The idea is there is a pot of money, a "budget" for every police action. Ships keep getting bought from the budget until it runs out and the contract is canceled. Bigger the budget bigger the problem.

The actual quest logic wouldn't bother but that's the explanation. The real quest logic would be two to four ambushes they have to wipe out before being clear based on their combat rating. Just don't tell them that. Bureaucratic court systems are obtuse and capricious no explanation necessary.

The Syndicate just change the flavor to corporate gangsters. If you break the "law" somewhere there is someone that considered whatever you took his property and you personally insulted him/her/whatever. Same concept you can pay off your debt and all is forgiven, or you get enforcers.

Maybe the first one's AI is to disable and board, where the player gets a "meet here and bring the money" timed quest.

Miss the deadline they send a contract killer.

Contract killer fails, depending on the size of the insult (fine size) whoever's problem you are comes after you personally. Disable and board that guy's ship to earn your rep back, or blow him up, costs reputation but the quest missions stop coming after you.

Bigger the "insult" the more escalating layers. Also the cost to pay off the "insult" doubles each time you don't have the money or you kill a collector/enforcer.

Rim and Dirt Belt should have a loose Federal Martial system. Basically those "Wanted: Dead or Alive" with a reward for retrieval. Well the dead part was only for the really bad guys.

Martials can swing all sorts of ways is the interesting part.

Some wear a white hat and will announce themselves, demand you stand down and escort them to the world you broke the law (timed, no dilly dallying), pay the fine and you are on your way. Since the governments are looser knit and less staffed "good guys" try to make things easiest on everyone. Shiny white knights.

Or you could roll a black hat. Shoots first, shoots more later, then maybe asks questions. Tries to board you and demand double to make him go away. Trick to this mission is you have to kill the Martial but do not kill the deputy. Race back to where you owe the court and pay it (timed), and you can even get a reputation bonus (everyone likes the honorable rapscallion).

Or get away and "lay low" long enough. Maybe give that one planet no landing clearance until the fine is payed or time runs out for small crimes and hostile unless fine is payed for big crimes.

All missions should have a statute of limitations, but like a half life system, after a week if you can just avoid scans (I don't know if that's possible, will look into it) in their territory (or shorter or longer for game play) and another week consequences just go away so main quests don't break. The universe is a busy place and as a starship captain and a member of the ultra rich class, there are rules for thee and rules for me (aka it has to be fun).

Just a concept. Feel free to ignore. Posted here just in case someone wants to get to it before I take a swing. I still have to actually play the plot.

@Pointedstick
Copy link
Member

@Forlarren Those are interesting ideas, but it's considered a bit rude to hijack someone's issue or pull request with your own voluminous semi-related thoughts like that. This isn't a forum. I'd like to see some of those ideas implemented, but this PR isn't the right place to talk about them. The right approach is to try your hand at implementing your ideas, and if you wind bugs or missing features that are getting in your way, then open specific issues or PRs to fix them in a narrow, targeted manner.

@Amazinite
Copy link
Collaborator Author

Amazinite commented Jun 30, 2017

Removing the ransom jobs. Here's my reasoning:

  1. a person's weight in credits when a single chip can be worth billions doesn't make sense. That could be rewritten but then there's the complaint that you still have the passenger space taken up on the return trip.
  2. they force otherwise peaceful players into fighting law enforcement
  3. they aren't dynamic in their destination. (Can't place the fleet and the random stopover/waypoint in the same spot.)

Changed the `to offer` conditions on most of the jobs.
* Only the smaller cargo jobs and the smallest passenger job offer with
either a not-too-low pirate rep or a high combat rating.
* Required combat ratings for jobs now correspond to levels, the lowest
combat level requirement being ~5 (150) and the highest being ~8 (3000).

Removed all mentions of "your crew" in `illegal` messages. Highly wanted
passenger jobs now mention the cargo you must carry.

Renamed slave transport jobs and reworked the descriptions. They now
require a combat rating and positive pirate rep. Changed cargo name from
"shackles and grub" to "slave food."

Large law enforcement jobs now mention their size.
Lowercased all instances of "militia" in descriptions and dialog.

Reworded the description of large "Eliminating Competition" jobs.

Raiding merchant jobs now require you to have a positive pirate
reputation so your escorts don't attack you.

Removed the ransom jobs.

Fixed a typo. "Convoy at <system>" -> "Convoy near <system>"
It doesn't make sense for jobs to sometimes consider a commodity illegal
and sometimes highly illegal, so I've moved some of th commodities over
into a highly illegal category.

Yes, stolen silver spoons are highly illegal. You never know what
pirates could do with those things.
Pirate jobs should be good, but not THAT good.
@Amazinite
Copy link
Collaborator Author

Amazinite commented Jun 30, 2017

I feel that this is pretty polished as is for now.

I've reduced the payment on a lot of the jobs so they aren't so outrageously better than non-pirate jobs. Cargo and passenger jobs are now generally anywhere from 33.3% to 150% better in terms of payment than their legal counterparts. The bigger the pay, the bigger the fine, and even a single fine will take out most if not all of your profit on shorter jobs, and leave you with a lot less on longer jobs (or with nothing if the job fails on scan). Slave transfer jobs, which can leave you dead when scanned, are 166.6% better than normal passenger jobs, and highly wanted passenger jobs (transporting 1 passenger) are 566.6% better than normal jobs (of the same size), but with massive fines to go with them.

@endless-sky
Copy link
Collaborator

I'm wondering if there's a better way to do the "Target <government>" ships. Having them show up as a different government seems messy, and if you're a pirate it's likely that at least some of those governments are hostile to you so you're going to have to sort through all ships in system to find your true targets anyway.

@endless-sky
Copy link
Collaborator

I've added a "target" personality that lets you mark a mission target so it will stand out on the radar (flashing white) and be labeled as a "mission target" in the target info. (ee91ad9) I think that's a better approach than having a separate government for the target ships.

@Amazinite
Copy link
Collaborator Author

Thanks.

Copy link
Member

@Pointedstick Pointedstick left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is some really top-notch work.

@endless-sky endless-sky merged commit c451d28 into endless-sky:master Jun 30, 2017
@Amazinite
Copy link
Collaborator Author

🎆

@Amazinite Amazinite deleted the generic-pirate-jobs branch June 30, 2017 21:09
@jafdy
Copy link
Contributor

jafdy commented Jun 30, 2017

Nice going @Amazinite this should be an interesting addition.

@Amazinite
Copy link
Collaborator Author

Amazinite commented Jun 30, 2017

@endless-sky Just so I can know if I should go ahead with polishing and PRing the rest of what was in #1935, would you want those fake ID and/or selling passengers into slavery jobs? I'm just going to list some of the stuff I had written down for how I needed to polish the selling passengers missions:

  • Have the first time you land on a pirate planet with passengers require the player to choose to walk up to a pirate slaver. From there on out, pirate slavers would approach the player.
    • By extension, the chances of finding a slaver in the spaceport increases with the number times you've sold slaves
  • Create a job where the player can release slaves without having sold slaves before, as the current releasing slaves jobs requires the player to have sold slaves in the past.
    • Be extension, the chances of finding a slaver in a spaceport decrease with the number of times you've released slaves
  • Rewrite the on offer conversations to have little to no repetition in dialog between different missions. Possibly include branches that change the conversation based on how many times you've sold slaves (e.g. when you start becoming a regular supplier, slavers get more buddy-buddy with you).

My only concerns with the selling passenger jobs right now are that 1) #1938 is an issue, and 2) the missions have to have a static payment that I'm basing off of the average number of passengers that a certain passenger job will give you instead of scaling with the number of passengers you have, meaning that sometimes you get overpaid and sometimes you get unerpaid per passenger sold. i.e. the issue is that two missions can't communicate how many cargo or passengers they have right now and change their payments based on that.

Hadron1776 added a commit to Hadron1776/endless-sky that referenced this pull request Jul 12, 2017
* Added some Remnant ship names.

* Added a label for the Ember Waste, which shows up once you make contact with the Remnant.

* Added a fuel pod to the cruisers to give them the extra range needed

* Reordered the entries in the saved game file to a more logical order (and fixed the fact that Load() listed them in a completely different order than Save()).

* In the shop panels, only let the "i" keyboard shortcut ("Install") work if you are actually installing an outfit from cargo.

* Fixed a bug where you couldn't transfer an outfit between ships or install it from cargo if buying it requires a license.

* Fixed scrolling of the fleet list when "looping around" to the first or last item.

* Fixed a ship variant with negative outfit space.

* Made a mission fail if it becomes impossible to complete

If you need to board or scan a ship, and that ship is destroyed before
you do so, the mission will now fail.

* Capturing ships should affect reputation

Previously, capturing a ship didn't actually change your reputation with
the ship's government. The event never went into the eventQueue, so
wasn't processed by AI::UpdateEvents and didn't flow into Offend. This
fix directly runs Offend when you capture a ship.

* A ship's animation now "pauses" if it is disabled or destroyed.

* Fix typo in Deep Treasure's spaceport

* Ships can have a custom "swizzle" property (endless-sky#2629)

* Ships can have a custom "swizzle" property

The nomenclature is the word "swizzle" (quotes unnecessary) followed by
a number between 0 and 8, at the same level of indentation as sprite or
attributes. Use 0 for no swizzling of the original sprite.

* Defined key in Ship::Load

* Custom swizzle corrections

Invalid ship swizzle values will be ignored. Also fixed a missing
if(government) check in Ship::Place, introduced in previous commit.

* Moved the chack for invalid swizzle values directly into SpriteShader, so that no code outside of SpriteShader would need to be changed in the future if new swizzle options are added. (Also made it possible for DrawList to use swizzle 8.)

* Fix to 'inactive' Next/Previous buttons when you have no Log entries

Adding the Logbook button, and the condition for when it's active has
incidentally attached that condition to the Next and Previous buttons in
Ship Info. This means they're greyed out unless you have log entries.

This fix just adds the line "active" so that Next/Previous are always
active.

* AI TravelPlan actions should not target inaccessible StellarObjects

These steps prevent the player from toggling LAND in an otherwise "uninhabited" system with a StellarObject already targeted, which will generate a segfault at AI.cpp:2472.

* If a ship is captured, make its escorts independent.

* The AI no longer gets "stuck" if a ship is an escort, its parent is disabled, and it has no target to fight.

* Typo in my previous commit.

* Made the "previous" snapshots update by moving the files, not copying them, so their timestamps will not be changed.

* Truncate displayed ship names to prevent overflowing containers (endless-sky#2631)

* Apply truncation to the front of ship names if selling more than one

Avoids awkward-looking line wraps caused by long ship names when coupled with list-style confirmation dialog.
Refs endless-sky#2249

* Extend truncation to other appearances of ship names

Adds front or end truncation to the following locations:
 - Hailing screen: no overflow off right edge for combinations of long ship names and/or long government names.
 - Targeting reticle: no overflow off left edge of ship name
 - Ship detail screen: no overlap of "ship:" and the ship name
 - Shipyard/Outfitter ship details screen: no/minimal overflow out of rounded square border
 - Player Info fleet list: no overflow of ship name across category

Front truncation used where possible, to preserve possible identifying numbers on the tail of the ship name, e.g. the "1" in 'My Ship 1'

* Remove all overlap from Shipyard/Outfitter shared panel

* Font::TruncateMiddle

Allow truncation of strings from the middle out. No special handling to cut in "pretty" locations to do things such as prefer whole-word removal, 2nd-letter starting, etc.
Changes in border characters from "..." to alphanumerics, plus the slightly reduced width precision of TruncateMiddle vs Truncate(Front) made adjusting some targeted widths necessary.

* More Free Worlds log entries.

* Added a helper function for the common task of splitting a string into paragraphs.

* Hostile NPCs should not KeepStation with cloaked parents (endless-sky#2641)

* Hostile NPCs should not KeepStation with cloaked parents

* Hostile mission NPCs without targets in player system avoid jumping

MoveIndependent will instead instruct them to patrol the system you are in until a target becomes available.

* Shifting the Vanguard's turret slightly.

* Added support for "special" log entries, containing whatever you know about a particular person, faction, etc.

* More Free Worlds log entries.

* Fix typo in Wanderers first contact

* Possible fix for low-resolution window icons on KDE.

* Wrapping the Linux-specific aspects for the previous commit inside ifdef guards.

* Typo in my previous commit.

* Backing out my changes to try to fix icons on KDE, because they didn't work.

* made a sestor search hint less subtle (endless-sky#2647)

* made a sestor search hint less subtle

The Varu K'prai hint now tells the player that the sestor fleet left
wanderer space.

* made it a tad more subtle

@MessyMix

* More Free Worlds log entries.

* Added the log text for the rest of the Free Worlds missions.

* Nemesis target selection now considers NPCs escorted by the player

 - Added a check of the target's personality for the "escort" tag, which indicates a ship important enough to the player that it appears in the HUD.

Ref endless-sky#2586

* Spelling corrections noted on Steam (Rhendox)

As per:
http://steamcommunity.com/app/404410/discussions/1/2333276539613621549/

* MOVE_TO orders should not stack ships on the same position

When cross-system MOVE_TO was implemented, the check to space out ships that were in the player's system did not get updated.

* Fixed the description and attributes of Trove.

* In the logbook, don't allow moving the selection up if you're already at the top. Also, if you click a different year, select the first month in that year, not the last one.

* Capitalizing "the Eye" in "Wanderers Conversation"

* Ships no longer mine if they have offered assistance

* Use user-defined colors for status overlays and escort attributes

Status overlays (shields, hull, scanning progress) were previously fixed
 - New colors are added to data/interfaces.txt to allow custom colors

Escort attributes (shields, hull, fuel, heat, energy) were previously hard-coded to the default values assigned to the flagship.
 - Colors now reflect the custom values given to the user's flagship's attributes.
 - Existing "overlapping" bar behavior for displaying attributes that differ between like-model escorts is preserved.

* Do not allow scanning of cloaked ships

When a ship cloaks, any "scan circles" will be removed
If your targeted ship is cloaked, you cannot attempt to scan it.

* Added two weapon modifiers: "safe," meaning the blast radius only hits hostile ships, and "phasing," meaning the projectile is not blocked by asteroids or other ships.

* Fix typo in FW log

* Fixed bad auto-hinting that made the '+' sign non-symmetrical.

* Prettify more credits displays with Format::Number (endless-sky#2672)

* Prettify more credits displays with Format::Number

* Remove unnecessary variables in Account.cpp

* Switched "Spaceport" to always being one word (even the button in the planet panel).

* Added a "target" personality that marks a ship by making it flash in the radar and the targeting display.

* Added a "skybound" personality that keeps a ship from landing on planets. (Useful for creating a bounty ship that will flee to other systems but will not land even if it's technically in friendly territory.)

* Added the first string of Remnant intro missions.

* Use Target personality to highlight espionage target

* Marked the Syndicate Test Dummy ships with the new "target" personality

* Added a secong Remnant intro mission.

* Pirate jobs (endless-sky#2646)

* Pirate jobs

* Removed reputation condition from normal jobs

They aren't relavent to this PR anymore. Will be included in slavery PR.

* Bounty hunters less likely to come after player...

but will come after the player even if they only land on pirate worlds.

* Changing pirate defense missions to offer in spaceports

* Minor changes

Not as likely to get the hardest stolen vessel to transport
Wording changes in descriptions
Removed redundant numbering on elminating law enforcement jobs

* Illegal cargo related hail

* New illegal cargo names (@comnom)

* A bunch of changes

Changed the `to offer` conditions on most of the jobs.
* Only the smaller cargo jobs and the smallest passenger job offer with
either a not-too-low pirate rep or a high combat rating.
* Required combat ratings for jobs now correspond to levels, the lowest
combat level requirement being ~5 (150) and the highest being ~8 (3000).

Removed all mentions of "your crew" in `illegal` messages. Highly wanted
passenger jobs now mention the cargo you must carry.

Renamed slave transport jobs and reworked the descriptions. They now
require a combat rating and positive pirate rep. Changed cargo name from
"shackles and grub" to "slave food."

Large law enforcement jobs now mention their size.
Lowercased all instances of "militia" in descriptions and dialog.

Reworded the description of large "Eliminating Competition" jobs.

Raiding merchant jobs now require you to have a positive pirate
reputation so your escorts don't attack you.

Removed the ransom jobs.

Fixed a typo. "Convoy at <system>" -> "Convoy near <system>"

* Created highly illegal substance and cargo categories

It doesn't make sense for jobs to sometimes consider a commodity illegal
and sometimes highly illegal, so I've moved some of th commodities over
into a highly illegal category.

Yes, stolen silver spoons are highly illegal. You never know what
pirates could do with those things.

* Lowered the payment for each job, in some cases drastically

Pirate jobs should be good, but not THAT good.

* Replacing all "target" governments with the new target personality

* Fixing a missing quotation mark

* Fixed the fleet names in the new pirate jobs.

* Fixed pluralization of "ton" vs. "tons" in the trading panel.

* Making "Unfettered: Jump Drive Source" invisible

* Made sure the Syndicate is hostile after you capture one of their executives in the Free Worlds story.

* Fixing a small story conflict in the Free Worlds plot.

* Black vegetable new hails (endless-sky#2275)

* Update hails.txt

* Added more hails

* Replace with contraction

"there is" sounds a little stodgy.

* Cleaned up spaces

I accidentally tried to insert spaces where tabs were expected.

* older generation --> oldsters

I'm starting to wonder if I am actually part of the older generation...

* fixup from reviews

* Fixed a bug in Files::RecursiveList() on Windows (because it turns out Windows doesn't use 0 to indicate an invalid handle).

* Clarified where you are supposed to go after deploying the surveillance cubes in the Wanderers story.

* Made the Free Worlds commitment conversation more generic to account for the fact that you may or may not have met each of the Council members already.

* Made "raids" on poorly defended player fleets only happen if the raid's government is hostile to the player.

* If the player somehow clicks through to the spaceport before all "landing" missions are offered, still offer landing missions there.

* Added the "target" personality to NPCs that must be killed for various story line missions.

* Carried Ships find parents

Commit 1177434 broke the assignment of fighters to a member of their government if they did not have a free bay to belong to.
This commit randomizes the assigned parent to one of the fellow members of the same government in the same system that is also not a fighter.

* Updating the changelog to include everything from the past 4 months.

* Fixed the "clear" keyword not working on planet data since the add / remove keywords were added.

* Fixed the logic for deciding when to show commodity prices for a system.

* Fixed an event that didn't fully succeed in making Varu K'prai show up as "uninhabited."

* Fixed a few typos and omissions in the changelog.

* Sorting out the distinction between System::IsInhabited() and ::HasFuelFor().

* Typo fix. (Spotted by @Alkallid)

* Made it so the only way to get pirates to be friendly toward you is to attack merchants.

* Added the final Remnant into mission, making it possible to get a license to purchase their ships and technology.

* enhancement: Allow mods to change wormhole hail messages (endless-sky#2706)

* Allow mods to change wormhole hail messages

* Drop leftover, unneeded commas

* Typo fix.

* Typo fixes. (@Bladewood)

* Ship group hotkeys now work in the shops.

* More typos. (@Bladewood, @awfulworldkid)

* Added log entries for the Wanderer story line.

* Typo fixes and minor edits. (@Bladewood, @jafdy, @Proont)

* Another typo.

* Made it so homing weapons that don't consume ammo can auto-fire in "dumb" mode (i.e. with no target).

* In the fleet list, made it possible to click and drag all the selected ships as a block, instead of having to reorder ships one by one.

* Made it possible to assign group hotkeys in the player info panel's fleet listing.

* Added support for ship attributes that confer resistance to heat, ion, disruption, or slowing damage.

* Fixed how harvested materials are shown when scanning a ship's cargo.

* Updating the tooltips to include "cooling inefficiency."

* Typo fix.

* Cleaning out more tooltips that are no longer used.

* Carried ships assist in NPC mining operations

The mining personality will now deploy any carried ships while actively mining.
These carried ships inherit the mining personality, so if they have cargo space free, they will mine independently.
After filling their cargo space, carried ships will assist their parent ship in destroying its target asteroid.

* Fixed the condition checks for which weapons are included in the "maximum range" check in AutoFire().

* Added a mission to clue the player in to the existence of the special wormhole in the Terminus system.

* Reduced the top speeds of some missiles to compensate for the 10% speed boost provided by endless-sky#2592.

* Typo fix. (@KiLEdEnNis)

* Typo fix. (@SolraBizna)

* Vindictive ships only remember targetable targets

Prevent vindictive personality ships from thinking they have someone to attack or assist when that ship is no longer available to target, yet still exists (i.e. carried ships).

* Mission NPCs added to the escort display are drawn with hostile colors as appropriate. (endless-sky#2725)

* Mission NPCs added to the escort display are drawn with hostile colors

If a mission adds a hostile ship to the escort display so that the player can track its whereabouts, this ship will appear under the player's colors (green) on the radar and in the target reticle.

This commit prevents drawing hostile escorts as assumed friendlies.

* Display escort icon as Radar::HOSTILE color

Also, do not merge it with friendly escort icons.

* Restore colors in radar display

* Made it possible to customize the colors used in the radar (which are also used for target crosshairs).

* bugfix: Restore follow-parent behavior for hostile NPCs which began patrolling (endless-sky#2722)

* Restore follow-parent behavior for hostile NPCs which began patrolling

In 4ab74b5 hostile, non-staying NPCs which could not target any ships in a system were instructed to patrol it instead of jump away and then jump back. However, if the player left the system while remaining untargetable, the NPCs would get stuck landing if they were targeting a non-planet at the time of your jump.
This commit resolves the logic bug in MoveEscort that assumed the ship's stellar target was a landable planet by verifying that it is indeed a landable planet. If it is not, the ship will clear the target and resume tracking down the player.

* Remove redundant check
Hadron1776 added a commit to Hadron1776/endless-sky that referenced this pull request Jul 12, 2017
* Allow events to modify a fleet's personality (#51)

* . (#52)

* Added some Remnant ship names.

* Added a label for the Ember Waste, which shows up once you make contact with the Remnant.

* Added a fuel pod to the cruisers to give them the extra range needed

* Reordered the entries in the saved game file to a more logical order (and fixed the fact that Load() listed them in a completely different order than Save()).

* In the shop panels, only let the "i" keyboard shortcut ("Install") work if you are actually installing an outfit from cargo.

* Fixed a bug where you couldn't transfer an outfit between ships or install it from cargo if buying it requires a license.

* Fixed scrolling of the fleet list when "looping around" to the first or last item.

* Fixed a ship variant with negative outfit space.

* Made a mission fail if it becomes impossible to complete

If you need to board or scan a ship, and that ship is destroyed before
you do so, the mission will now fail.

* Capturing ships should affect reputation

Previously, capturing a ship didn't actually change your reputation with
the ship's government. The event never went into the eventQueue, so
wasn't processed by AI::UpdateEvents and didn't flow into Offend. This
fix directly runs Offend when you capture a ship.

* A ship's animation now "pauses" if it is disabled or destroyed.

* Fix typo in Deep Treasure's spaceport

* Ships can have a custom "swizzle" property (endless-sky#2629)

* Ships can have a custom "swizzle" property

The nomenclature is the word "swizzle" (quotes unnecessary) followed by
a number between 0 and 8, at the same level of indentation as sprite or
attributes. Use 0 for no swizzling of the original sprite.

* Defined key in Ship::Load

* Custom swizzle corrections

Invalid ship swizzle values will be ignored. Also fixed a missing
if(government) check in Ship::Place, introduced in previous commit.

* Moved the chack for invalid swizzle values directly into SpriteShader, so that no code outside of SpriteShader would need to be changed in the future if new swizzle options are added. (Also made it possible for DrawList to use swizzle 8.)

* Fix to 'inactive' Next/Previous buttons when you have no Log entries

Adding the Logbook button, and the condition for when it's active has
incidentally attached that condition to the Next and Previous buttons in
Ship Info. This means they're greyed out unless you have log entries.

This fix just adds the line "active" so that Next/Previous are always
active.

* AI TravelPlan actions should not target inaccessible StellarObjects

These steps prevent the player from toggling LAND in an otherwise "uninhabited" system with a StellarObject already targeted, which will generate a segfault at AI.cpp:2472.

* If a ship is captured, make its escorts independent.

* The AI no longer gets "stuck" if a ship is an escort, its parent is disabled, and it has no target to fight.

* Typo in my previous commit.

* Made the "previous" snapshots update by moving the files, not copying them, so their timestamps will not be changed.

* Truncate displayed ship names to prevent overflowing containers (endless-sky#2631)

* Apply truncation to the front of ship names if selling more than one

Avoids awkward-looking line wraps caused by long ship names when coupled with list-style confirmation dialog.
Refs endless-sky#2249

* Extend truncation to other appearances of ship names

Adds front or end truncation to the following locations:
 - Hailing screen: no overflow off right edge for combinations of long ship names and/or long government names.
 - Targeting reticle: no overflow off left edge of ship name
 - Ship detail screen: no overlap of "ship:" and the ship name
 - Shipyard/Outfitter ship details screen: no/minimal overflow out of rounded square border
 - Player Info fleet list: no overflow of ship name across category

Front truncation used where possible, to preserve possible identifying numbers on the tail of the ship name, e.g. the "1" in 'My Ship 1'

* Remove all overlap from Shipyard/Outfitter shared panel

* Font::TruncateMiddle

Allow truncation of strings from the middle out. No special handling to cut in "pretty" locations to do things such as prefer whole-word removal, 2nd-letter starting, etc.
Changes in border characters from "..." to alphanumerics, plus the slightly reduced width precision of TruncateMiddle vs Truncate(Front) made adjusting some targeted widths necessary.

* More Free Worlds log entries.

* Added a helper function for the common task of splitting a string into paragraphs.

* Hostile NPCs should not KeepStation with cloaked parents (endless-sky#2641)

* Hostile NPCs should not KeepStation with cloaked parents

* Hostile mission NPCs without targets in player system avoid jumping

MoveIndependent will instead instruct them to patrol the system you are in until a target becomes available.

* Shifting the Vanguard's turret slightly.

* Added support for "special" log entries, containing whatever you know about a particular person, faction, etc.

* More Free Worlds log entries.

* Fix typo in Wanderers first contact

* Possible fix for low-resolution window icons on KDE.

* Wrapping the Linux-specific aspects for the previous commit inside ifdef guards.

* Typo in my previous commit.

* Backing out my changes to try to fix icons on KDE, because they didn't work.

* made a sestor search hint less subtle (endless-sky#2647)

* made a sestor search hint less subtle

The Varu K'prai hint now tells the player that the sestor fleet left
wanderer space.

* made it a tad more subtle

@MessyMix

* More Free Worlds log entries.

* Added the log text for the rest of the Free Worlds missions.

* Nemesis target selection now considers NPCs escorted by the player

 - Added a check of the target's personality for the "escort" tag, which indicates a ship important enough to the player that it appears in the HUD.

Ref endless-sky#2586

* Spelling corrections noted on Steam (Rhendox)

As per:
http://steamcommunity.com/app/404410/discussions/1/2333276539613621549/

* MOVE_TO orders should not stack ships on the same position

When cross-system MOVE_TO was implemented, the check to space out ships that were in the player's system did not get updated.

* Fixed the description and attributes of Trove.

* In the logbook, don't allow moving the selection up if you're already at the top. Also, if you click a different year, select the first month in that year, not the last one.

* Capitalizing "the Eye" in "Wanderers Conversation"

* Ships no longer mine if they have offered assistance

* Use user-defined colors for status overlays and escort attributes

Status overlays (shields, hull, scanning progress) were previously fixed
 - New colors are added to data/interfaces.txt to allow custom colors

Escort attributes (shields, hull, fuel, heat, energy) were previously hard-coded to the default values assigned to the flagship.
 - Colors now reflect the custom values given to the user's flagship's attributes.
 - Existing "overlapping" bar behavior for displaying attributes that differ between like-model escorts is preserved.

* Do not allow scanning of cloaked ships

When a ship cloaks, any "scan circles" will be removed
If your targeted ship is cloaked, you cannot attempt to scan it.

* Added two weapon modifiers: "safe," meaning the blast radius only hits hostile ships, and "phasing," meaning the projectile is not blocked by asteroids or other ships.

* Fix typo in FW log

* Fixed bad auto-hinting that made the '+' sign non-symmetrical.

* Prettify more credits displays with Format::Number (endless-sky#2672)

* Prettify more credits displays with Format::Number

* Remove unnecessary variables in Account.cpp

* Switched "Spaceport" to always being one word (even the button in the planet panel).

* Added a "target" personality that marks a ship by making it flash in the radar and the targeting display.

* Added a "skybound" personality that keeps a ship from landing on planets. (Useful for creating a bounty ship that will flee to other systems but will not land even if it's technically in friendly territory.)

* Added the first string of Remnant intro missions.

* Use Target personality to highlight espionage target

* Marked the Syndicate Test Dummy ships with the new "target" personality

* Added a secong Remnant intro mission.

* Pirate jobs (endless-sky#2646)

* Pirate jobs

* Removed reputation condition from normal jobs

They aren't relavent to this PR anymore. Will be included in slavery PR.

* Bounty hunters less likely to come after player...

but will come after the player even if they only land on pirate worlds.

* Changing pirate defense missions to offer in spaceports

* Minor changes

Not as likely to get the hardest stolen vessel to transport
Wording changes in descriptions
Removed redundant numbering on elminating law enforcement jobs

* Illegal cargo related hail

* New illegal cargo names (@comnom)

* A bunch of changes

Changed the `to offer` conditions on most of the jobs.
* Only the smaller cargo jobs and the smallest passenger job offer with
either a not-too-low pirate rep or a high combat rating.
* Required combat ratings for jobs now correspond to levels, the lowest
combat level requirement being ~5 (150) and the highest being ~8 (3000).

Removed all mentions of "your crew" in `illegal` messages. Highly wanted
passenger jobs now mention the cargo you must carry.

Renamed slave transport jobs and reworked the descriptions. They now
require a combat rating and positive pirate rep. Changed cargo name from
"shackles and grub" to "slave food."

Large law enforcement jobs now mention their size.
Lowercased all instances of "militia" in descriptions and dialog.

Reworded the description of large "Eliminating Competition" jobs.

Raiding merchant jobs now require you to have a positive pirate
reputation so your escorts don't attack you.

Removed the ransom jobs.

Fixed a typo. "Convoy at <system>" -> "Convoy near <system>"

* Created highly illegal substance and cargo categories

It doesn't make sense for jobs to sometimes consider a commodity illegal
and sometimes highly illegal, so I've moved some of th commodities over
into a highly illegal category.

Yes, stolen silver spoons are highly illegal. You never know what
pirates could do with those things.

* Lowered the payment for each job, in some cases drastically

Pirate jobs should be good, but not THAT good.

* Replacing all "target" governments with the new target personality

* Fixing a missing quotation mark

* Fixed the fleet names in the new pirate jobs.

* Fixed pluralization of "ton" vs. "tons" in the trading panel.

* Making "Unfettered: Jump Drive Source" invisible

* Made sure the Syndicate is hostile after you capture one of their executives in the Free Worlds story.

* Fixing a small story conflict in the Free Worlds plot.

* Black vegetable new hails (endless-sky#2275)

* Update hails.txt

* Added more hails

* Replace with contraction

"there is" sounds a little stodgy.

* Cleaned up spaces

I accidentally tried to insert spaces where tabs were expected.

* older generation --> oldsters

I'm starting to wonder if I am actually part of the older generation...

* fixup from reviews

* Fixed a bug in Files::RecursiveList() on Windows (because it turns out Windows doesn't use 0 to indicate an invalid handle).

* Clarified where you are supposed to go after deploying the surveillance cubes in the Wanderers story.

* Made the Free Worlds commitment conversation more generic to account for the fact that you may or may not have met each of the Council members already.

* Made "raids" on poorly defended player fleets only happen if the raid's government is hostile to the player.

* If the player somehow clicks through to the spaceport before all "landing" missions are offered, still offer landing missions there.

* Added the "target" personality to NPCs that must be killed for various story line missions.

* Carried Ships find parents

Commit 1177434 broke the assignment of fighters to a member of their government if they did not have a free bay to belong to.
This commit randomizes the assigned parent to one of the fellow members of the same government in the same system that is also not a fighter.

* Updating the changelog to include everything from the past 4 months.

* Fixed the "clear" keyword not working on planet data since the add / remove keywords were added.

* Fixed the logic for deciding when to show commodity prices for a system.

* Fixed an event that didn't fully succeed in making Varu K'prai show up as "uninhabited."

* Fixed a few typos and omissions in the changelog.

* Sorting out the distinction between System::IsInhabited() and ::HasFuelFor().

* Typo fix. (Spotted by @Alkallid)

* Made it so the only way to get pirates to be friendly toward you is to attack merchants.

* Added the final Remnant into mission, making it possible to get a license to purchase their ships and technology.

* enhancement: Allow mods to change wormhole hail messages (endless-sky#2706)

* Allow mods to change wormhole hail messages

* Drop leftover, unneeded commas

* Typo fix.

* Typo fixes. (@Bladewood)

* Ship group hotkeys now work in the shops.

* More typos. (@Bladewood, @awfulworldkid)

* Added log entries for the Wanderer story line.

* Typo fixes and minor edits. (@Bladewood, @jafdy, @Proont)

* Another typo.

* Made it so homing weapons that don't consume ammo can auto-fire in "dumb" mode (i.e. with no target).

* In the fleet list, made it possible to click and drag all the selected ships as a block, instead of having to reorder ships one by one.

* Made it possible to assign group hotkeys in the player info panel's fleet listing.

* Added support for ship attributes that confer resistance to heat, ion, disruption, or slowing damage.

* Fixed how harvested materials are shown when scanning a ship's cargo.

* Updating the tooltips to include "cooling inefficiency."

* Typo fix.

* Cleaning out more tooltips that are no longer used.

* Carried ships assist in NPC mining operations

The mining personality will now deploy any carried ships while actively mining.
These carried ships inherit the mining personality, so if they have cargo space free, they will mine independently.
After filling their cargo space, carried ships will assist their parent ship in destroying its target asteroid.

* Fixed the condition checks for which weapons are included in the "maximum range" check in AutoFire().

* Added a mission to clue the player in to the existence of the special wormhole in the Terminus system.

* Reduced the top speeds of some missiles to compensate for the 10% speed boost provided by endless-sky#2592.

* Typo fix. (@KiLEdEnNis)

* Typo fix. (@SolraBizna)

* Vindictive ships only remember targetable targets

Prevent vindictive personality ships from thinking they have someone to attack or assist when that ship is no longer available to target, yet still exists (i.e. carried ships).

* Mission NPCs added to the escort display are drawn with hostile colors as appropriate. (endless-sky#2725)

* Mission NPCs added to the escort display are drawn with hostile colors

If a mission adds a hostile ship to the escort display so that the player can track its whereabouts, this ship will appear under the player's colors (green) on the radar and in the target reticle.

This commit prevents drawing hostile escorts as assumed friendlies.

* Display escort icon as Radar::HOSTILE color

Also, do not merge it with friendly escort icons.

* Restore colors in radar display

* Made it possible to customize the colors used in the radar (which are also used for target crosshairs).

* bugfix: Restore follow-parent behavior for hostile NPCs which began patrolling (endless-sky#2722)

* Restore follow-parent behavior for hostile NPCs which began patrolling

In 4ab74b5 hostile, non-staying NPCs which could not target any ships in a system were instructed to patrol it instead of jump away and then jump back. However, if the player left the system while remaining untargetable, the NPCs would get stuck landing if they were targeting a non-planet at the time of your jump.
This commit resolves the logic bug in MoveEscort that assumed the ship's stellar target was a landable planet by verifying that it is indeed a landable planet. If it is not, the ship will clear the target and resume tracking down the player.

* Remove redundant check
Jeremy-E-Johnson added a commit to Jeremy-E-Johnson/endless-sky that referenced this pull request Jul 13, 2017
* Added the log text for the rest of the Free Worlds missions.

* Nemesis target selection now considers NPCs escorted by the player

 - Added a check of the target's personality for the "escort" tag, which indicates a ship important enough to the player that it appears in the HUD.

Ref endless-sky#2586

* Spelling corrections noted on Steam (Rhendox)

As per:
http://steamcommunity.com/app/404410/discussions/1/2333276539613621549/

* MOVE_TO orders should not stack ships on the same position

When cross-system MOVE_TO was implemented, the check to space out ships that were in the player's system did not get updated.

* Fixed the description and attributes of Trove.

* In the logbook, don't allow moving the selection up if you're already at the top. Also, if you click a different year, select the first month in that year, not the last one.

* Capitalizing "the Eye" in "Wanderers Conversation"

* Ships no longer mine if they have offered assistance

* Use user-defined colors for status overlays and escort attributes

Status overlays (shields, hull, scanning progress) were previously fixed
 - New colors are added to data/interfaces.txt to allow custom colors

Escort attributes (shields, hull, fuel, heat, energy) were previously hard-coded to the default values assigned to the flagship.
 - Colors now reflect the custom values given to the user's flagship's attributes.
 - Existing "overlapping" bar behavior for displaying attributes that differ between like-model escorts is preserved.

* Do not allow scanning of cloaked ships

When a ship cloaks, any "scan circles" will be removed
If your targeted ship is cloaked, you cannot attempt to scan it.

* Added two weapon modifiers: "safe," meaning the blast radius only hits hostile ships, and "phasing," meaning the projectile is not blocked by asteroids or other ships.

* Fix typo in FW log

* Fixed bad auto-hinting that made the '+' sign non-symmetrical.

* Prettify more credits displays with Format::Number (endless-sky#2672)

* Prettify more credits displays with Format::Number

* Remove unnecessary variables in Account.cpp

* Switched "Spaceport" to always being one word (even the button in the planet panel).

* Added a "target" personality that marks a ship by making it flash in the radar and the targeting display.

* Added a "skybound" personality that keeps a ship from landing on planets. (Useful for creating a bounty ship that will flee to other systems but will not land even if it's technically in friendly territory.)

* Added the first string of Remnant intro missions.

* Use Target personality to highlight espionage target

* Marked the Syndicate Test Dummy ships with the new "target" personality

* Added a secong Remnant intro mission.

* Pirate jobs (endless-sky#2646)

* Pirate jobs

* Removed reputation condition from normal jobs

They aren't relavent to this PR anymore. Will be included in slavery PR.

* Bounty hunters less likely to come after player...

but will come after the player even if they only land on pirate worlds.

* Changing pirate defense missions to offer in spaceports

* Minor changes

Not as likely to get the hardest stolen vessel to transport
Wording changes in descriptions
Removed redundant numbering on elminating law enforcement jobs

* Illegal cargo related hail

* New illegal cargo names (@comnom)

* A bunch of changes

Changed the `to offer` conditions on most of the jobs.
* Only the smaller cargo jobs and the smallest passenger job offer with
either a not-too-low pirate rep or a high combat rating.
* Required combat ratings for jobs now correspond to levels, the lowest
combat level requirement being ~5 (150) and the highest being ~8 (3000).

Removed all mentions of "your crew" in `illegal` messages. Highly wanted
passenger jobs now mention the cargo you must carry.

Renamed slave transport jobs and reworked the descriptions. They now
require a combat rating and positive pirate rep. Changed cargo name from
"shackles and grub" to "slave food."

Large law enforcement jobs now mention their size.
Lowercased all instances of "militia" in descriptions and dialog.

Reworded the description of large "Eliminating Competition" jobs.

Raiding merchant jobs now require you to have a positive pirate
reputation so your escorts don't attack you.

Removed the ransom jobs.

Fixed a typo. "Convoy at <system>" -> "Convoy near <system>"

* Created highly illegal substance and cargo categories

It doesn't make sense for jobs to sometimes consider a commodity illegal
and sometimes highly illegal, so I've moved some of th commodities over
into a highly illegal category.

Yes, stolen silver spoons are highly illegal. You never know what
pirates could do with those things.

* Lowered the payment for each job, in some cases drastically

Pirate jobs should be good, but not THAT good.

* Replacing all "target" governments with the new target personality

* Fixing a missing quotation mark

* Fixed the fleet names in the new pirate jobs.

* Fixed pluralization of "ton" vs. "tons" in the trading panel.

* Making "Unfettered: Jump Drive Source" invisible

* Made sure the Syndicate is hostile after you capture one of their executives in the Free Worlds story.

* Fixing a small story conflict in the Free Worlds plot.

* Black vegetable new hails (endless-sky#2275)

* Update hails.txt

* Added more hails

* Replace with contraction

"there is" sounds a little stodgy.

* Cleaned up spaces

I accidentally tried to insert spaces where tabs were expected.

* older generation --> oldsters

I'm starting to wonder if I am actually part of the older generation...

* fixup from reviews

* Fixed a bug in Files::RecursiveList() on Windows (because it turns out Windows doesn't use 0 to indicate an invalid handle).

* Clarified where you are supposed to go after deploying the surveillance cubes in the Wanderers story.

* Made the Free Worlds commitment conversation more generic to account for the fact that you may or may not have met each of the Council members already.

* Made "raids" on poorly defended player fleets only happen if the raid's government is hostile to the player.

* If the player somehow clicks through to the spaceport before all "landing" missions are offered, still offer landing missions there.

* Added the "target" personality to NPCs that must be killed for various story line missions.

* Carried Ships find parents

Commit 1177434 broke the assignment of fighters to a member of their government if they did not have a free bay to belong to.
This commit randomizes the assigned parent to one of the fellow members of the same government in the same system that is also not a fighter.

* Updating the changelog to include everything from the past 4 months.

* Fixed the "clear" keyword not working on planet data since the add / remove keywords were added.

* Fixed the logic for deciding when to show commodity prices for a system.

* Fixed an event that didn't fully succeed in making Varu K'prai show up as "uninhabited."

* Fixed a few typos and omissions in the changelog.

* Sorting out the distinction between System::IsInhabited() and ::HasFuelFor().

* Typo fix. (Spotted by @Alkallid)

* Made it so the only way to get pirates to be friendly toward you is to attack merchants.

* Added the final Remnant into mission, making it possible to get a license to purchase their ships and technology.

* enhancement: Allow mods to change wormhole hail messages (endless-sky#2706)

* Allow mods to change wormhole hail messages

* Drop leftover, unneeded commas

* Typo fix.

* Typo fixes. (@Bladewood)

* Ship group hotkeys now work in the shops.

* More typos. (@Bladewood, @awfulworldkid)

* Added log entries for the Wanderer story line.

* Typo fixes and minor edits. (@Bladewood, @jafdy, @Proont)

* Another typo.

* Made it so homing weapons that don't consume ammo can auto-fire in "dumb" mode (i.e. with no target).

* In the fleet list, made it possible to click and drag all the selected ships as a block, instead of having to reorder ships one by one.

* Made it possible to assign group hotkeys in the player info panel's fleet listing.

* Added support for ship attributes that confer resistance to heat, ion, disruption, or slowing damage.

* Fixed how harvested materials are shown when scanning a ship's cargo.

* Updating the tooltips to include "cooling inefficiency."

* Typo fix.

* Cleaning out more tooltips that are no longer used.

* Carried ships assist in NPC mining operations

The mining personality will now deploy any carried ships while actively mining.
These carried ships inherit the mining personality, so if they have cargo space free, they will mine independently.
After filling their cargo space, carried ships will assist their parent ship in destroying its target asteroid.

* Fixed the condition checks for which weapons are included in the "maximum range" check in AutoFire().

* Added a mission to clue the player in to the existence of the special wormhole in the Terminus system.

* Reduced the top speeds of some missiles to compensate for the 10% speed boost provided by endless-sky#2592.

* Typo fix. (@KiLEdEnNis)

* Typo fix. (@SolraBizna)

* Vindictive ships only remember targetable targets

Prevent vindictive personality ships from thinking they have someone to attack or assist when that ship is no longer available to target, yet still exists (i.e. carried ships).

* Mission NPCs added to the escort display are drawn with hostile colors as appropriate. (endless-sky#2725)

* Mission NPCs added to the escort display are drawn with hostile colors

If a mission adds a hostile ship to the escort display so that the player can track its whereabouts, this ship will appear under the player's colors (green) on the radar and in the target reticle.

This commit prevents drawing hostile escorts as assumed friendlies.

* Display escort icon as Radar::HOSTILE color

Also, do not merge it with friendly escort icons.

* Restore colors in radar display

* Made it possible to customize the colors used in the radar (which are also used for target crosshairs).

* bugfix: Restore follow-parent behavior for hostile NPCs which began patrolling (endless-sky#2722)

* Restore follow-parent behavior for hostile NPCs which began patrolling

In 4ab74b5 hostile, non-staying NPCs which could not target any ships in a system were instructed to patrol it instead of jump away and then jump back. However, if the player left the system while remaining untargetable, the NPCs would get stuck landing if they were targeting a non-planet at the time of your jump.
This commit resolves the logic bug in MoveEscort that assumed the ship's stellar target was a landable planet by verifying that it is indeed a landable planet. If it is not, the ship will clear the target and resume tracking down the player.

* Remove redundant check
tehhowch pushed a commit to tehhowch/endless-sky that referenced this pull request Sep 1, 2017
* Pirate jobs

* Removed reputation condition from normal jobs

They aren't relavent to this PR anymore. Will be included in slavery PR.

* Bounty hunters less likely to come after player...

but will come after the player even if they only land on pirate worlds.

* Changing pirate defense missions to offer in spaceports

* Minor changes

Not as likely to get the hardest stolen vessel to transport
Wording changes in descriptions
Removed redundant numbering on elminating law enforcement jobs

* Illegal cargo related hail

* New illegal cargo names (@comnom)

* A bunch of changes

Changed the `to offer` conditions on most of the jobs.
* Only the smaller cargo jobs and the smallest passenger job offer with
either a not-too-low pirate rep or a high combat rating.
* Required combat ratings for jobs now correspond to levels, the lowest
combat level requirement being ~5 (150) and the highest being ~8 (3000).

Removed all mentions of "your crew" in `illegal` messages. Highly wanted
passenger jobs now mention the cargo you must carry.

Renamed slave transport jobs and reworked the descriptions. They now
require a combat rating and positive pirate rep. Changed cargo name from
"shackles and grub" to "slave food."

Large law enforcement jobs now mention their size.
Lowercased all instances of "militia" in descriptions and dialog.

Reworded the description of large "Eliminating Competition" jobs.

Raiding merchant jobs now require you to have a positive pirate
reputation so your escorts don't attack you.

Removed the ransom jobs.

Fixed a typo. "Convoy at <system>" -> "Convoy near <system>"

* Created highly illegal substance and cargo categories

It doesn't make sense for jobs to sometimes consider a commodity illegal
and sometimes highly illegal, so I've moved some of th commodities over
into a highly illegal category.

Yes, stolen silver spoons are highly illegal. You never know what
pirates could do with those things.

* Lowered the payment for each job, in some cases drastically

Pirate jobs should be good, but not THAT good.

* Replacing all "target" governments with the new target personality
TJesionowski pushed a commit to TJesionowski/endless-sky that referenced this pull request Oct 2, 2018
* Pirate jobs

* Removed reputation condition from normal jobs

They aren't relavent to this PR anymore. Will be included in slavery PR.

* Bounty hunters less likely to come after player...

but will come after the player even if they only land on pirate worlds.

* Changing pirate defense missions to offer in spaceports

* Minor changes

Not as likely to get the hardest stolen vessel to transport
Wording changes in descriptions
Removed redundant numbering on elminating law enforcement jobs

* Illegal cargo related hail

* New illegal cargo names (@comnom)

* A bunch of changes

Changed the `to offer` conditions on most of the jobs.
* Only the smaller cargo jobs and the smallest passenger job offer with
either a not-too-low pirate rep or a high combat rating.
* Required combat ratings for jobs now correspond to levels, the lowest
combat level requirement being ~5 (150) and the highest being ~8 (3000).

Removed all mentions of "your crew" in `illegal` messages. Highly wanted
passenger jobs now mention the cargo you must carry.

Renamed slave transport jobs and reworked the descriptions. They now
require a combat rating and positive pirate rep. Changed cargo name from
"shackles and grub" to "slave food."

Large law enforcement jobs now mention their size.
Lowercased all instances of "militia" in descriptions and dialog.

Reworded the description of large "Eliminating Competition" jobs.

Raiding merchant jobs now require you to have a positive pirate
reputation so your escorts don't attack you.

Removed the ransom jobs.

Fixed a typo. "Convoy at <system>" -> "Convoy near <system>"

* Created highly illegal substance and cargo categories

It doesn't make sense for jobs to sometimes consider a commodity illegal
and sometimes highly illegal, so I've moved some of th commodities over
into a highly illegal category.

Yes, stolen silver spoons are highly illegal. You never know what
pirates could do with those things.

* Lowered the payment for each job, in some cases drastically

Pirate jobs should be good, but not THAT good.

* Replacing all "target" governments with the new target personality
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants