(01-01-2025, 08:37 AM)sanuske4 Wrote: Local non-ARM Windows version simply crashes out when attempting to run. File placed in C:\Users\XXXXX\AppData\Local\Discovery Freelancer 5.00.8. Tested under EXE subdirectory as well. When ran through CMD returns error:
C:\Users\XXXXXXX\AppData\Local\Discovery Freelancer 5.00.8>darkstat-windows-amd64.exe
panic: failed to read file from embeded fs of files\docs_coordinates_in_trade_routes.png
...
I reproduced the error. It shall be fixed. adding into priority todo list to take care of it.
Funny filesystem differences between Linux and Windows hmm. probably just a matter of fixing paths \ to // Task fl-darkstat#74 is registered
(01-01-2025, 08:37 AM)sanuske4 Wrote: Local non-ARM Windows version simply crashes out when attempting to run. File placed in C:\Users\XXXXX\AppData\Local\Discovery Freelancer 5.00.8. Tested under EXE subdirectory as well. When ran through CMD returns error:
C:\Users\XXXXXXX\AppData\Local\Discovery Freelancer 5.00.8>darkstat-windows-amd64.exe
panic: failed to read file from embeded fs of files\docs_coordinates_in_trade_routes.png
...
I reproduced the error. It shall be fixed. adding into priority todo list to take care of it.
Funny filesystem differences between Linux and Windows hmm. probably just a matter of fixing paths \ to // Task fl-darkstat#74 is registered
All endpoints where designed to share data in Bulk, as fast as possible, but with some reasonability to pulled data size
Exposed every entity basically almost as darkstat has tabs for.
the json API is cross language friendly format, but if you utilize Golang, there is extra option of hooking yourself to RPC way to Pull data in addition (this one has sort of always correct client library avaiable to just import code)
The json API and RPC are both available through https. Plus you can always run darkstat locally, in this case you can get 3 times performance boost to pull data by using Unix Sockets if it is running on Linux!
Darkstat now offers to share all its data through API 2.0 built on gRPC (with json api gateway fallback). It has benefit of able to autogenerate precise client libraries for many languages, including C#/.Net, C++, Dart, Go, Java, Kotlin, Node, Objective-C, PHP, Python and Ruby. The technology was made mature by large company Google and made specifically to simplify communications between services written in different languages
This has benefits of... not writing client lib code, i take care of it at proto file stuff. You will be able to keep up with changes through code regeneration and seeing anything that was added or changed or removed through static typing features ^_^ Basically client lib is written by me for your any language through this feature.
To generate client lib in your language, u need to use get started with gRPC and utilize Darkstat's Proto file to generate the client. For user friendliness i kept all stuff to a single file, and made things available without TSL and with TSL at the same time
Find up to date recommendations in README of repository
Migrated pretty much all the data
As fallback gRPC all the rpc calls are available over regular json api! automatically syncnorized with stuff available in grpc. grpc-gateway api generator make it automated ^_^ Technically same proto generated data structs can be used to deserialize json incoming data
If u will be using darkstat locally, u can access gRPC port at localhost:50051 , alternatively you can access stuff with performance boosts over Unix Domain Socket /tmp/darkstat/grpc.sock if at linux.
NOTE: By default Grpc goes through grpc endpoint and uses compression of Protocol Buffers. Ability to go Json in API Gateway (for which Swagger documentation is provided) is ONLY FALLBACK for situations when people unable to go gRPC native way. If you will go through gRPC getting started instruction, u will receive automatically for your language client generated to utilize Protocol Buffers
You can check the available of the new technology on two docker deployed backends of darkstat
I realized fascinating idea... The beauty of gRPC technology in ability to generate precise data structs for serializations/deserializations across languages in a mature way... and it comes embedded with capabilities for json serialization....
...Nothing really stopping generating those data structs, and using them to deserializer/deserializer, send/receive data from JSON api gateway mentioned there. the gateway is fully synchronized to be exactly matching them
So itself gRPC protocol to compress data is not obligatory. This technology breaks barriers between languages even at json level.
Official documentation for gRPC technology is clearly full of examples where it is abused for json usage too.
That makes it in theory perfect for communications of backend even with web frontend, where simple jsons are still preferable for the sake of sanity in debugging.
Thus barriers across language communications become completely unchained.
The POB Goods feature is truly brilliant. I strongly feel that it is so good that it needs some kind of separate/standalone tab on the forums (Galactic Market or something?) for maximum visibility. In an ideal world, if there was some way to get it in-game, it would be incredible.
(02-10-2025, 12:43 PM)Lythrilux Wrote: The POB Goods feature is truly brilliant. I strongly feel that it is so good that it needs some kind of separate/standalone tab on the forums (Galactic Market or something?) for maximum visibility. In an ideal world, if there was some way to get it in-game, it would be incredible.
Also: new release for fl-darkstat v1.74.0 - Color coding pob goods base sells condition
- That should help to speed up comprehension of PoB goods tab by magnitude. On example of Military Salvage, plentifully of bases having Quantity amount even up to 26 thousands units, yet they don't sell it. With color coding u should be able to grasp info more rapidly.
- Slightly adjusted dark coloring scheme, giving separate color for column headers, and making less visible table borders between cells. That should help less having all elements blurring together. Easier distinguishing.
Hi. How is the average efficiency of a weapon calculated?
(01-01-2024, 12:15 PM)Ravenna Nagash Wrote: In a live role playing environment, you are not owed or mandated to be given a duel. Fights develop differently every time and people have varying degree of time to log on their hands or have their own plans.