Hello, in search of improvements for my self-written python bot, I came across sanderling, unfortunately my knowledge is limited to python. Could someone please share documentation, guides, examples of working with this program?
Hello, to navigate the documentation, guides and examples of working with Sanderling start with the readme file at https://github.com/Arcitectus/Sanderling/blob/main/readme.md
Screenshot by Lightshot I downloaded and tried to run the latest version through the exe of this, but all that happens is a cmd window appears for a split second and that’s it.
In that screenshot, I see you exported the memory reading as JSON.
To view that, you only need the static build of the alternate UI, which is available in a web browser app here: https://botlabs.blob.core.windows.net/blob-library/by-name/2023-06-21-eve-online-alternate-ui.html
That runs in your web browser, so you don’t need the executable file in this case.
No, I can’t figure out how to enable constant reading from memory, I could only make a cast through cmd that weighed 6gb. Do I understand correctly that the program can read information from the game’s memory in real time, or does it do this in periods?
That is a different use case than the one from above, so the way to do that is different. To run the cyclic reading from memory you need to start the complete alternate UI app, including the backend part.
Download the elm-time.exe
release from https://github.com/elm-time/elm-time/releases/tag/v2023-05-21
Then run this command in Windows PowerShell:
."C:\Users\John\Downloads\elm-time-bin-v2023-05-21-win10-x64\elm-time.exe" run-server --public-urls="http://*:80" --deploy=https://github.com/Arcitectus/Sanderling/tree/dd6ca58e26a217e79261e0d6f2f597804f5b558a/implement/alternate-ui/source
To enable the cyclic reading there, select the From live game client process
option:
You can see a complete guide on that usage at https://github.com/Arcitectus/Sanderling/blob/main/implement/alternate-ui/readme.md
Nvm, find solution, Will the program always try to make the game window on top of the others?
Is it possible to use multiple copies of the program to read memory from several running windows of the game?
No, it does not necessarily always bring the game window to the top. Most apps do that because they can better read the pixel colors this way. But in a case where you are not interested in reading from screenshots, you might as well disable that.
You can disable that behavior by disabling the following line in the program code:
An easy way is to remove that block or to add the condition if(false)
at the beginning of the enclosing block.
Yes, reading from multiple game clients with multiple copies of the program is a common scenario.
In the BotLab client, the ‘Input Focus Scheduling’ feature ensures automatic coordination between multiple instances: https://to.botlab.org/guide/input-focus-scheduling-for-multiple-bot-instances
The alternate UI uses the Z-order for selection:
This guide explains the process of starting multiple instances when using this approach: https://to.botlab.org/guide/running-bots-on-multiple-game-clients#default-to-select-the-topmost-game-client-window