Discovery Gaming Community
fl-Darklint - config formatter - Printable Version

+- Discovery Gaming Community (https://discoverygc.com/forums)
+-- Forum: The Community (https://discoverygc.com/forums/forumdisplay.php?fid=4)
+--- Forum: Real Life Discussion (https://discoverygc.com/forums/forumdisplay.php?fid=16)
+---- Forum: Software & Hardware (https://discoverygc.com/forums/forumdisplay.php?fid=17)
+---- Thread: fl-Darklint - config formatter (/showthread.php?tid=195174)



fl-Darklint - config formatter - darkwind - 12-07-2022


DARKLINT




DESCRIPTION

  • Set of dev tools for Freelancer Discovery community, in order to help them in their configurational effort;
  • Main goal is to create classic linter for game files, which can autofix config files.
  • For tool usage was developed freelancer ini reader/writer with easily mapping variables to access in ORM - object relational mapping fashion. This alone allows quickly accessing any config data with least amont of code effort for additional features.
FEATURES

  • Processes:
    • market_commodities.ini
    • market_misc.ini
    • market_ships.ini
    • universe_ini
    • all system files like universe/systems/**/**.ini

  • For processed files brings to lower case allowed set of keys, like base = GA06_03_base to base = ga06_03_base

  • to market_*.ini files it adds to bases human readable name extracted from infocard.txt

  • to market_*.ini reports if base is recycle_candidate, by checking mismatch in its set system and presence in files + if system is fp7_system or ga13, example:
    • ;%is_recycle_candidate = DARK_ERR_0001 base_good.base=ga06_03_base not in universe.ini->Base.system->System.file->systems\ga13\ga13.ini | universe.ini->Base.system=ga13 in [[ga13 fp7]]

  • rounding float numbers for set keys to more preferable precision. 45.7465645656 to 45.7

FUTURE DEVELOPMENT

The tool is intended to add additional features in linting configurational files. It is possible adding any other additional rules for checking foreign key data integrity between objects Or adding additional commented strings to objects with helpful information

Request new features here

DOWNLOADS

download here

built for all OSes and CPU architetures.
HOW TO USE

See other documentation here

Contributors:




RE: Darktool - config linter - Major. - 12-07-2022

While my knowledge is limited about Freelancer stuff, projects like this always give me a smile.

Keep up the good work and thanks alot for that tool!


RE: Darktool - config linter - Backo - 12-08-2022

Cool idea. I had something similar (but much more simple and limited) while in the Story Dev team for processing the DATA/MISSIONS/news.ini and appending similar comments about base names and IFF to news entries.


RE: Darklint - config linter - darkwind - 02-12-2024

Surprise. Released v1.3.2

This tool to format game configs continued its life.
Code is cleaned up greatly.
Logic to parse data was moved into separate library fl-configs for its reusage in building online flstat
Remaining code logic for fl-darklint specifically became very simplified
Added support to utilize not only infocards.txt/xml, but having fallback to reading infocards values directly from dlls.
Added into readme more permament installing instruction


RE: fl-Darklint - config formatter - darkwind - 07-20-2024

Release v1.6.1

The tool once requested by Groshyr... continues its life just because the common library dependency is used in development of a darkstat.
(No idea why i still develop it, but... whatever)

Changelog:
Different bug fixes + super new feature
When u apply this tool to vanilla bini formatted configs, the tool automatically converts them to txt files now, across entire Freelancer folder Wink