Refactor the Bulletin Board System#5312
Conversation
CalcTextSize takes an optional font parameter which overrides the currently active font. Fix an issue with IsAnyWindowHoverered.
Expand SystemBody handling, makes getBodyIcon suitable for both world display and maps.
ui.Format routines now return a single formatted parameter. Add -Unit suffixed functions which return two parameters.
Fix text in gauges being misaligned (don't use fudged offset value, calculate text alignment from C++). ui.rescaleUI now implicitly assumes the base size is 1600x900. General cleanup and fixes to ui.addFancyText.
Handle window padding and drawing the ship status in the station view file instead of duplicated and scattered across seven files. Slightly rework the station lobby to use the full width and put the request launch button underneath the portrait. Other minor tweaks and fixes.
Show mission due date, reward amount, as well as mission short title string. Also fix some issues with gauge drawing and text formatting.
Bulletin board now shows in-system or inter-system distance to the target of the mission, if present. Added titles to the DeliverPackage module. Sadly, this will require retranslation.
Update Assassination, CargoRun, Combat, SAR, Taxi modules to support new BBS information.
Templatize Graphics::ProjectToScreen. Add zoom, tag position querying to ModelSpinner. ModelViewer now properly loads non-SGM files. SceneGraph::Model now displays the bounding sphere.
|
Very nice! I'll see if I can wedge my SoldOut module into this PR, so you can focus on doing other cool stuff. Thought for the future: Search/filter function on target direction / quadrant. Regarding the empty space to the right, we can think of it as a step towards making Pioneer "mobile vertical mode friendly" ;) |
|
Looks really good! This is what I found while testing: When I switch to the 2d radar: Fatal: [string "[T] @pigui/modules/radar.lua"]:99: attempt to concatenate local 'd_u' (a nil value) When I land at a station and enter the lobby, the error window appears: Warning: [string "[T] @pigui/modules/station-view/01-lobby.lua"]:174: attempt to index upvalue 'station' (a nil value) |
Fixed.
Fixed. This is actually caused by clicking Request Launch on the previous station's lobby menu; you just don't see the error until you land at another station. |
|
Looks Great! fixes #5076? Needs a bit a longer play time to get a list long enough. Some unexpected graphical issues in the smuggler store and the fuel trade: funny this is corrected when trading: slide bar where not expected: traveller's advice does not fit new standard: |
|
One more thing. The additional data e.g. title, due etc. are not restored after save/load. |
|
I'd say #5076 is fixed with this ..but did you change something in the autopilot / landing / orbital station code? Touches (until total damage) when flying into the dock of orbital stations are unusual frequently (ca. every second fly-in!), often seen an 3d-ERROR display before death. |
|
@impaktor can I ask you to handle converting the Traveller's Advice module to the new standard as well? The data format should be relatively self documenting from the diff of a changed module; most likely the bulk of the work will be separating title strings from short description. |
- Add new breakpoints for Pionillium aimed at more coherent theming - Expose new ImGui style vars to LuaPiGui - Fix crash with ModelSpinner not having a valid model ptr - Add trailing digit control to ui.Format.Mass
|
The autopilot set speed mode crashes. I guess because of the ui.Format thing. |
|
Fixed in another branch, will backport the commits here when I get a chance. |
confirmed, screenshot is from equipment screen branch, all the bulletins once displayed before the game has been saved are affected. Only display is disturbed, data are safe, click on an affected bulletin, the submenu answers all the questions. |
|
Have cloned it just now, will look at it soonish, I hope. |
Unify initial and loading advertisement placement. Calculate title / description at runtime to reduce amount of string data.
|
Fixed reward formatting. Now more robustly handles large values. Save/load should be fixed now (with the exception of the Traveller's Advice and SoldOut modules which have not been ported to new standard). Validating this requires a new savefile (or to regenerate all missions by leaving the system) due to mission save format changes in several modules. No guarantees are made that existing saves will load correctly as we're savebumping for this release. Going to merge this tomorrow if no major issues are found, and will handle the remaining minor cosmetic problems in a future branch. |
- Use semantic font sizes for BBS, cleanup rendering logic. - Fix GoodsTrader UI issues. - Tweak CommodityMarket fonts, add import/export icons.
|
short survey done
confirmed
fixed save format: |
(Needed for BBS refactor pioneerspacesim#5312, and Cultures based name gen pioneerspacesim#5223)








This PR has sitting in my development branch for a long time waiting to be rebased off of the prerequisite commits; I've finally found time (and landed enough other supporting work) to get it separated out and opened.
This essentially refactors the data that BBS advertisements provide to the bulletin board system with an eye to presenting more comprehensive information and allowing easy filtering of BBS ads by the user. Advanced filters and sorting are not currently implemented, but this PR does the difficult legwork of refactoring the various BBS modules to make that data available.
Here's an example screenshot of what the BBS looks like when making use of this data:

There is a noticeable amount of unused space on the right side; in the initial mockup this was to display the contents of the BBS ad, for the purposes of this PR it's left as-is and will be revisited with further work towards filtering and sorting.
This change does necessitate an extensive number of changes to language resources to provide this data; I've made a few opinionated changes of my own to slightly normalize the way mission text is presented and in general make mission titles a little more unique. This is overall minimal, just a few changes to wording and sentence structure.
As of writing, this PR covers all BBS advertisements with the exception of @impaktor's SoldOut module (as that module was developed after this work was done).
This PR branch also includes a few improvements to the UI, including a complete refactor of the way the station view screen handles drawing it's bottom "info bar" and window padding. It also contains a long-suffering bugfix for the DESCENT_RATE alarm volume - your ears are safe again!
Fixes #5076.