{"id":17182099,"url":"https://github.com/jmtd/inkfoundry","last_synced_at":"2025-03-25T01:43:43.547Z","repository":{"id":35574841,"uuid":"39847074","full_name":"jmtd/inkfoundry","owner":"jmtd","description":"tools for manipulating Doom COLORMAP lumps","archived":false,"fork":false,"pushed_at":"2021-01-26T11:56:37.000Z","size":17,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-01-30T03:26:55.400Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jmtd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-07-28T17:05:55.000Z","updated_at":"2021-09-25T18:05:26.000Z","dependencies_parsed_at":"2022-09-18T00:51:02.995Z","dependency_job_id":null,"html_url":"https://github.com/jmtd/inkfoundry","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmtd%2Finkfoundry","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmtd%2Finkfoundry/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmtd%2Finkfoundry/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmtd%2Finkfoundry/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jmtd","download_url":"https://codeload.github.com/jmtd/inkfoundry/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245383118,"owners_count":20606265,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-15T00:36:00.370Z","updated_at":"2025-03-25T01:43:43.530Z","avatar_url":"https://github.com/jmtd.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# InkFoundry suite\n\nInkFoundry will eventually be a suit of tools for manipulating Doom `COLORMAP` lumps.\n\nRight now, InkFoundry is a simple command-line tool that can be used to remix\nDoom `COLORMAP` lumps.  It is inspired by the program MIXMAPS which was\ndistributed with INKWORKS.\n\nCopyright (c) Jonathan Dowland, 2015. Distributed under the terms of the GNU GPL,\nversion 2. See LICENSE for full details.\n\n## Usage\n\n    inkfoundry instructions.txt \u003coutfile.wad\u003e\n\nif `outfile.wad` is not supplied, the output filename will be the input file with\nthe suffix changed to `.wad`.\n\nThe instructions language is inspired by and similar - but not identical - to that used\nby mixmaps. It's slightly more powerful.\n\nEmpty lines, all-whitespace lines, lines which begin with a hash ('#') symbol, or lines\nwhich have some whitespace and then have a hash symbol, are treated as comments and are\nignored.\n\nThe first non-comment lines should list, one per line, input files. These can be either\nraw `COLORMAP` lumps or Doom WAD files (IWAD or PWAD).\n\nThe remaining lines are the remix directives. Each line should be four integers divided\nby whitespace. e.g.\n\n    0 0 33 0\n\nThe integers have the following meanings:\n\n1. The first one is an index into the input files, beginning with 0. So, the line above\n   refers to the first input file supplied.\n\n2. The second one is the start of a range to pick from the input file. In the example\n   above, we're defining a range from the first entry, the full-bright color-map. (The\n   ranges start from 0).\n\n3. The third one is the end of the input range. There are 34 mappings in a `COLORMAP`\n   lump, so 33 is the index for the last one. The input range we've defined above is\n   therefore the entire `COLORMAP`.\n\n4. The fourth one is an offset into the output `COLORMAP` to put the range. We've selected\n   0, so the entire line simply copies the whole `COLORMAP` from the first input file\n   into the output.\n\n## More interesting example\n\n    colormap.lmp\n    lavamap.lmp\n    0   0 33  0\n    0  31 31 30\n    1   0  0 31\n\nThe above example has two input colormaps: `colormap.lmp` is Doom's default and\n`lavamap.lmp` is a lava-tinted mapping (generated using `colormap.py` from the\nFreedoom sources, by Colin Phipps. Thanks!)\n\nThe first directive copies the entirety of the default `COLORMAP`.\n\nThe second takes the darkest mapping and writes it one mapping earlier.\n\nThe final directive takes the brightest mapping from the second input,\n`lavamap.lmp`, and puts it in the darkest slot of the output.\n\n## Future work\n\nCurrently we've only cloned MIXMAPS. It would be nice to clone INKWORKS too, and/or\nadd some other useful tools for manipulating `COLORMAP`s.\n\n## See also\n\n * \u003chttp://jmtd.net/doom/\u003e\n * \u003chttp://doomwiki.org/wiki/Inkworks\u003e\n * \u003chttp://doomwiki.org/wiki/COLORMAP\u003e\n * \u003chttp://freedoom.github.io/\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjmtd%2Finkfoundry","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjmtd%2Finkfoundry","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjmtd%2Finkfoundry/lists"}