gilgetter/garlandtools-dump
MashPotato fa23620802 Update go modules 2023-01-08 00:18:49 -07:00
..
README.md Make README.MD more user friendly 2022-06-20 01:49:14 +00:00
go.mod Update go modules 2023-01-08 00:18:49 -07:00
go.sum Update go modules 2023-01-08 00:18:49 -07:00
recipe-dump.go Fix filtering items that have non marketable crafting mats 2022-12-11 16:31:55 -07:00
regenerate.sh Update recipe-dump with script 2022-10-19 11:48:37 -06:00

README.md

garlandtools-dump

A small utility for generating crafting recipe ingredient data for gilgetter by pulling and converting data from garland tools and universalis.

Usage

Open the recipe-dump.go file in a text editor and update the filterCriteria function to suit your needs - the example filter provided just filters for goldsmithing crafts below level 81

// All market items are run through this function to filter what should be included
// returns true if item should be included in gilgetter
func filterCriteria(craft *GarlandToolsCraft) bool {
	if craft.Job != 11 || craft.Lvl > 80 { // Ignore everything but goldsmith crafts level 80 or below
		return false
	}
	return true
}

After the filter suits your needs, you can build and run. The first run will take awhile and may write a few hundred MB of data to the item directory. For me it took around two hours, as I didn't want to hit Garland Tools servers in a way that would impact their level of service.

go build .
.\recipe-dump.exe

You should be left with an output-data.json which contains all the crafting recipes matching the filterCriteria function.

Local cache

The item subfolder is the local cache from garland tools so that subsequent runs will be much quicker and not put any load on the garlandtools servers.

If any crafting recipes change, you will need to delete any changed items (or all) from the cache directory and rerun the utility. If new recipes are added to the game, as long as garlandtools is up to date, you can simply rerun the recipe-dump utility again and new items will be downloaded to the cache and added to the output document.