online version of the flstat to navigate game data of the game Freelancer. You can see data about Bases, Guns, Ships and multiple other stuff.
See demos:
- It was made in mind with supporting Freelancer Discovery as first order.
- Support is extended to Vanilla version.
- Any other mode will be supported on request, see contacts to get in touch.
-
git clone https://github.com/darklab8/fl-configs repository for game configs scan, download it to same parent folder as this repository
-
install golang of project version or higher (potentially will work anyway).
- See current golang version in CI workflow
-
install templ
- go install github.com/a-h/templ/cmd/templ@latest
- check specific version in go.mod
- In case of emergency we could use vendored in version perhaps
-
check environment variables to set
- set your own environment variable FREELANCER_FOLDER to Freelancer Folder
- ensure it was set.
echo $FREELANCER_FOLDER
at Linux orecho %FREELANCER_FOLDER%
at windows- optionally is enough to change value in enverant.json for that
- Check to have set other values from enverant.json ! Some options make development way more pleasant by speeding up rerender by disabling unnecessary features!
-
install Taskfile and check commands to run
- run some command, for example
task web
- run some command, for example
-
if u wish access to
task dev:watch
that reloads running web server on file changes, then installpip install watchdog[watchmedo]
and ensurewatchmedo
binary is available totask dev:watch
command written in Taskfile -
If u wish making changes fl-configs and having them right away reflected to fl-darkstat
go work init ; go work use . ; go work use ../fl-configs
- initialize Go workspaces, and provide relative path to fl-configs
- go workspaces allow developing libraries code with real time update of usage to another repository
-
All dependencies are vendored in with go mod vendor to vendor folder for long term maintanance purposes. We need to to run
go mod vendor
command after library updates for auto refreshing them. Vendored dependencies serve as backup in case of some libs dissapearings.
If u have problems with configuring development environment, then seek my contacts below to help you through it ^_^
- Long term maintance support for dozen of years. Minimum dependencies software with Golang and Htmx.
- for this purpose everything is go mod vendored in
- full GitOps. On commit push to redeploy it automatically
- See example in fl-data-discovery repo. It contains .github/workflows + game data
- scans Freelancer folder and builds to static assets (html/css/js) deployable to Github pages or any other static assets serving place.
- Usable locally for Linux and Windows.
- Only Freelancer Discovery mod and Vanilla are supported at the moment
- Obviously online
- i also added at last Commodities view with prices per volume ^_^ better reflecting situation for Freelancer Discovery.
- It is interesting to see in Ship details exact Hp Types of equipment you can install onto ship. Other tabs like Guns, Shields, Engines show those Hp Type, so u could find equipment exactly supported for your Light Fighter, Heavy Fighter, Gunboat, Cruser or whatever (u can sort by column to find all such equipment)
- Tractors tab has info regarding Discovery IDs and where to buy them ^_^
- other extra tabs like Engines, CMs added
- Tabs for different equipment could be showing more full list of equipment in "Show all" mode.
- Has searching/filtering options with multiple matching items shown
- You can pin items for comparison
- For Discovery Freelancer, u can select ID/Tractor and having guns/ships etc filtered/shown according to what your ID can use without power core regeneration debuffs. Shows ID compatibility (75% ID compatibility at any equiped item will mean having only 75% of Power core regeneration)
- build latest according to instruction
- if it is not forgotten, then recent version has it built as binaries already https://github.com/darklab8/fl-darkstat/releases
- put file into root of Freelancer folder and start
- optionally launch from anywhere, just add env variable FREELANCER_FOLDER with location to freelancer folder root.
- visit http://localhost:8000/ as printed in console to see web site locally
- Launching from
cmd
or any other console at Freelancer Discovery folder path is preferable. Because u will see detailed log output.
P.S. The tool uses lazy filesystem approach by grabbing first file with matching name. I did not use full paths. So don't have folder "DATA2" duplicating all files in same FreelancerDiscovery folder
- The tool was strongly inspired by flstat originally written by Dan Tascau
- regretfully original code was not found
- some things helped from patch written in Assembly to flstat by Adoxa
- In general a lot of stuff was checked from Starport wiki
- Bribing probabilities were inspired by Adoxa conversation at Starport in 2014
- Also stuff like market stuff page helped too
- Formulas for angular stuff were found in flint
- Discord Community in starport also answered multiple questions
- as well as Freelancer Discovery dev community
- Also thanks to The Alex (From Freelancer Discovery) for getting me Python script for reading dlls
- That helped rewriting it in go for fl-configs lib
- Honorary mentions for very active moral support and extra ideas by
- IrateRedKite (from starport Discord)
- Bolte (from starport Discord)
- discord DM: darkwind8
- discord server lab: https://discord.gg/aukHmTK82J
- or open Pull Request here and write there
See anouncements at Discovery Freelancer forum thread
fl-darkstat was originally created by Andrei Novoselov (aka darkwind, aka dd84ai) The work is released under AGPL license, free to modify, copy and etc. as long as you keep code open source and mentioned original author. See LICENSE file for details.