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

Allow Mission Name Change, and Sending Text to Cargo, from Mission Script #7540

Open
ChuckStarchaser opened this issue Nov 7, 2022 · 2 comments
Labels
enhancement A suggestion for new content or functionality that requires code changes

Comments

@ChuckStarchaser
Copy link

Problem Description

Naming of a mission can be a delicate matter. If your name is too "instructional", it may lead to misunderstandings.
For example, one mission called "Recover Probe" takes several trips to complete. In your last trip, you have to disable a pirate quicksilver ship, and yank it out, then fly back to Coalition. The problem was that the script told me that I had the probe in my cargo; but when I landed I looked at the cargo and it wasn't there! Then I looked at my mission, and it still said "Recover Probe", so I thought a bug had cheated me of the probe, and the mission was lost; and posted a comment that the mission was broken. It turns out the mission was fine, and all I had to do was bring the probe back.
So, there's two problems here, both probably very easy to fix:
The current scripting language has no hook or means to,

  a   Change the mission name to reflect its progress, or
  b   Make it so that the probe does show in the cargo

Reason: To have the name still read "Recover Probe" can be confusing, if you already have it. Even more confusing if you land on a planet to verify it is in your cargo, and find out it isn't.

Related Issue Links

None

Desired Solution

Simple idea: Allow mission scripts to change the mission name, to better reflect what the next step is.
For example, if a mission named "Recover Probe" is to recover a probe and bring it back, once the player recovers the probe, the game script could change the mission's name to "Bring Back Probe".

For the second problem, probe missing from the cargo, I have what I think is the simplest solution: Just allow mission scripts to send a text message to the cargo object (assuming you are using OO programming). This text gets added to where on the Trading display you read how many tons of outfits you have: bottom-left.
This way, you are not doing something as complicated as inserting an actual object into the Cargo; just a text message, to comfort the player who does look at the cargo for that special object.

Alternative Approaches

Allow missions to have a Name and a Stage; and display both in the Missions panel. This way, the mission title could be less instructional sounding; instead of "Recover Probe", for example,

Arach Lady's Lost Probe
and have 4 stages named:

Search Planet A
Visit Pirate Base B
Yank Probe From BAD Pirate Quicksilver
Bring Back the Probe

And so the mission panel could read,

Arach Lady's Lost Probe -- Bring Back the Probe

Additional Context

I realize I'm requesting two features in the same issue; but I did this intentionally because I think these two features go together in the sense that they serve closely related purposes, in that they are both super-simple, and in that they probably both belong in the same existing code files.

@1010todd
Copy link
Contributor

1010todd commented Nov 7, 2022

iirc The first mission you don't really know the probe is on the planet until you're there, you only know it's somewhere in that system. So that name might spoil it abit. Also there's mission description which tells you exactly what you have to do...?

Anyway, someway to dynamically change things lile cargo would be nice, yeah. Right now I think the way is to have (reserved) cargo as placeholder until you get the actual cargo. Else maybe it could be done like secret cargo jobs where you board and steal the "cargo" from the ship except the cargo is actually an outfit (So you can put on a ship and have mission know if you actually have it).

@ChuckStarchaser
Copy link
Author

ChuckStarchaser commented Nov 7, 2022

Regarding the particular mission, once I had that probe (supposedly in the cargo) the mission description did not change; it still read that I was supposed to intercept those Quicksilvers. But perhaps that was an error in the mission coding; I don't know. In any case, I think it could be useful for the mission script to be able to change the mission name; and/or for missions to have named states shown next to the mission name, to give you a hint of what to do next just by glancing at the name, even if you don't bother to read the description.
As for reserving a cargo place-holder at the start of a mission ... Well ... I'm a programmer, myself, and I know the kind of quagmire this whole thing can lead to. What happens if the player's cargo is already full when the item needs to be inserted? That's the reason for having a place-holder? What happens if the player's cargo is already full when the place-holder needs to be inserted? There's already a quagmire of problems regarding cargo and when you park ships, and what to do with the cargo then ...
The solution with the old Privateer game engine was to ignore cargo limits; and this applied to mission cargo's, as well; so you could fill your cargo manually, then take on delivery missions galore, and leave port with twice as much stuff as you were supposed to have room for, and you could still pick up any goodies you found floating around in space on top of it. And I know why their solution was actually the best: Any other solution grows the boilerplate code along multiple dimensions.
This is why I suggested "TEXT to cargo", to just add something decorative to pacify the curious player, without hurting anything else.

@Hecter94 Hecter94 added the enhancement A suggestion for new content or functionality that requires code changes label Dec 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement A suggestion for new content or functionality that requires code changes
Projects
None yet
Development

No branches or pull requests

3 participants