Repository navigation
Add EDMC-Rhinospotter plugin - #77
Merged
Merged
Conversation
An EDMC plugin for Elite Dangerous surface mining. It lists the landable bodies of the system you are in, grouped by body type, with the materials that type has been found to hold; and it records the patch you are standing on as a card. Everything it reads is the commander own journal plus one table shipped with the plugin. It makes no network request except the update check against its own GitHub releases. GPL-3.0-or-later. VERSION and __version__ are on load.py, semantic versioning. pluginZip and pluginHash are left empty until a release is attached.
The screenshot conversion moved out into its own plugin, which is a version the entry should point at rather than the one before it.
pluginZip is the release asset rather than GitHub's own zipball, which unpacks to a folder EDMC cannot load. pluginHash is the SHA256 of that archive.
Delete on a bookmark, an arrow over the game that guides back to a marked patch, and the location filled in from the landing rather than typed. Claude-Session: https://claude.ai/code/session_01GMHMeFPzvTGmvgGbU7Cfnf
Hash verified against the zip as GitHub serves it. Claude-Session: https://claude.ai/code/session_01WaVgaUn6B1U8Ra8ASgAUWM
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Zip hash verified against the release as GitHub serves it.
Plugin validation: ✅ passedEntry: Warnings
Checks
Auto-merge: not eligible
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Please complete the following information:
Additional context
Please Confirm the Following...
VERSIONconstant or__version__dunder in Semantic Versioning style.What it does
RhinoScan answers "is there anything here worth landing on". It lists the
landable bodies of the current system, grouped by body type, with the three
materials that type of ground pays most for per mining location. Picking a
material filters the window to the ground that carries it. A body's bookmarks
open in the same window, grouped by mining location.
Bookmark records the patch you are standing on - body, material, rigs,
mining location, heading and coordinates - as a small JSON file. Guide
puts a click-through arrow over the game pointing back to it.
Minimap comes up in a corner of the game while you are in the SRV and
paints the ground driven within scanner range, with your bookmarks on it. Two
optional hotkeys, Ctrl+Alt+Z and Ctrl+Alt+B, let the player mark the mining
location's center and border; the map then shows the rings to drive. Each time
the SRV docks the map is saved as a picture that can be shared. The minimap and
the arrow hide whenever Elite is not the foreground window.
Where its data comes from
Scanevents from the commander's own journal, viajournal_entry. Nothing is fetched for them.FSSBodySignalsandSAASignalsFound, sameplace.
Status.json, read once a second.load.py, measured overmining locations read by hand. It is data, not a lookup.
%LOCALAPPDATA%\RhinoSpotter\, because EDMC replays the journal file it iswatching and nothing older.
The only network requests go to its own GitHub repository, to say when a newer
version is out and fetch it on request: the
releases/latestpage redirectfor the version,
codeload.github.comfor the tag's zip. No community serviceis queried, polled or scraped, and there is no API key, account or telemetry
anywhere in it.
On the standards
LICENSEin the repository root.VERSIONand__version__onload.py, currently4.1.1,Major.Minor.Patch. A test fails if the constant and the changelog headingdisagree.
about 640 KB, most of it README screenshots. Nothing is vendored.
RegisterHotKeywhile EDMC runs and released atplugin_stop. If anotherprogram holds one, it is skipped with a warning in the log.
RHINOSPOTTER_DEBUG=1formore.
go to
%LOCALAPPDATA%\RhinoSpotter\, deliberately outside the plugindirectory so a reinstall does not take a commander's records with it.
The archive
pluginZippoints at the release asset rather than GitHub's generated zipball,which unpacks to
Fumlop-EDRhinoSpotter-<sha>. The attached archive unpacks toRhinoSpotter/withload.pydirectly inside, which is what EDMC needs.pluginHashis the SHA256 of that archive, checked against the file GitHubserves.
Tests: 357, no network, no game, no display -
pytestfrom the plugin folder.The branch has one commit per release that moved the entry; happy to squash it
to one, change anything here, split the categories differently, or fill in
pluginVTif you would rather it were set.