endless-sky / endless-sky

Space exploration, trading, and combat game.
https://endless-sky.github.io/
GNU General Public License v3.0
5.7k stars 1.02k forks source link

Overlapping spaceport missions #4431

Open tmoftdead opened 5 years ago

tmoftdead commented 5 years ago

Describe the bug Spaceport mission texts overlap sometimes. One will be at the front normally. After you accept or decline it, the next mission will appear behind the news which you can accept or not. You can accept only one to be the real mission.

To Reproduce Steps to reproduce the behavior:

  1. Start your game.
  2. Spam spaceport on every planet you land on.
  3. This is rare so you sometimes don't even get it through your playthrough if you don't spam.
  4. Accept drug running missions so they don't disappear.
  5. Play the game. It happened to me Albert foster+ cargo, cargo+illegal, people+illegal, and illegal+illegal. Expected behavior Only one mission pops up and you can see and accept it.

Screenshots Not applicable as they overlap and I would need a video.

System (please complete the following information):

Save file: Aloisus Feiben.txt

Additional context The news system seems to be the main issue here as one is stuck behind the news.

Amazinite commented 5 years ago

The save file you linked doesn't seem to be out of order, and I'm not even sure a save file would be sufficient to show this bug in action. If you're able to record this bug occurring, that would be more beneficial.

As far as I can tell (as you didn't give exact mission names), the missions in question are all marked minor, meaning that only one will be offering at any given time. I haven't been able to reproduce this bug at all, so I'm not sure exactly what's happening here.

ChamEV commented 5 years ago

I'd recommend writing some missions of your own with 100% probability to be able to demonstrate this bug.

tmoftdead commented 5 years ago

I've found a video recording app. I'll be back once I get it again.

tmoftdead commented 5 years ago

Closed this. Looked and saw that it happened only when the Cpu was over 100%. ( happens with 50 shield beetles sometimes)

MCOfficer commented 5 years ago

Please somebody reopen this - it shouldn't happen at all, even with high CPU loads.

Amazinite commented 5 years ago

Please somebody reopen this

Have you reproduced it in any way?

Looked and saw that it happened only when the Cpu was over 100%

Do you have a video showing this to be the case and that it's reproducible?

MCOfficer commented 5 years ago

Please somebody reopen this

Have you reproduced it in any way?

I've not, but i would give OP the benefit of the doubt until we have a proper reason to close it. High CPU loads don't seem like a plausible reason to do so.

tmoftdead commented 5 years ago

I couldn't make it reoccur. I looked at errors too but couldn't find any reason. I think my patato computer sometimes doesn't register spams correctly after 1 or 2 hours of gameplay. closed it because the issue didn't happen when I ran the game without any other tabs open. It only caused a visual glitch when spamming. Now it doesn't. Closed now, but if any other people get this, I'll reopen.

tmoftdead commented 5 years ago

errors.txt Taylor Stuart.txt 1 2 3 reopened after reoccured errors: nothing because it accepts it like a normal mission and no duplicates save: is still fine 1 is the glitch, 2 is the mission list so to show it, (you can see a seperate drug run but they aren't the same.) and 3 is to show eveything goes well after you accept or decline it

tmoftdead commented 5 years ago

If this is enough, it would be better because I can't code so well(created copy missions but failed) and I don't want to play another save again due to the rareness of this.

Fzzr commented 5 years ago

I did some investigation and only managed to reproduce it once. I simulated the graphical behavior by forcing a help dialog to pop up right before the spaceport panel is opened and got that visual result. I can say pretty confidently it doesn't have to do with news, because the whole spaceport panel is on top of the dialog, not just the news part. That's why the text in the shipyard description area is also messed up.

Fzzr commented 5 years ago

An additional thing I found (may or may not be relevant): If you're holding p when you land and a mission dialog comes up, the News won't appear until the dialog is cleared and you press p or the Spaceport button again. If nothing else it suggests irregularities in the order that parts of the Spaceport panel render.

Edit: Actually it seems to be a pretty straightforward consequence of

        if(isNewPress)
            spaceport->UpdateNews();

In PlanetPanel.cpp

tehhowch commented 4 years ago

This is also perhaps possible with non-spaceport situations: the preceding steps are unavailable that led to the screenshot here:

UnorderedSigh commented 1 year ago

Fix is here: https://github.com/endless-sky/endless-sky/pull/8872