ScarDoc

Start typing to search the SCAR reference.

Contributing

How to report an error in the reference, file a site bug, or open a pull request.

On this page

ScarDoc is a community project, and most of what you see here is generated from the game’s own SCAR sources rather than written by hand. That means where you report something depends on what is wrong with it.

Where to report what#

ProblemWhere
A function, enum or global is wrong, missing or incompletescardoc-generator issues — the reference data is produced there
The site itself is broken — search, layout, a broken link, an unexpected 404scardoc-website issues
A written page needs an edit — introduction, glossary, changelog, this pageA pull request on scardoc-website
Not sure, or a quick questionOur Discord server

If you file it in the wrong place, we will move it. Reporting something imperfectly is far better than not reporting it.

Filing a good issue#

The reference covers thousands of functions, so specifics save a lot of guesswork:

  • The function name, and a link to its page on this site.
  • The game build or patch you saw the behaviour on.
  • What the game actually does, against what the page says it does.
  • The source file shown on the function page, if you know where the function comes from.
  • For a missing function, anything you know about it — a signature, a call site, a mod that uses it.

Working on the site#

The site is a static Astro build. You will need Node 22.12 or newer.

git clone https://github.com/BattlegroundsCoH/scardoc-website.git
cd scardoc-website
npm install
npm run dev          # http://localhost:4321

Two things worth knowing before you file a bug against your own setup:

  • Search does not work in npm run dev. The Pagefind index is built from the output HTML, so it only exists after npm run build. To exercise search, run npm run build and then npm run preview.
  • There is no test suite. The checks are npm run typecheck (astro check) and npm run format (Prettier, 100 columns).

Opening a pull request#

Branch off dev and target dev — not master. Keep one topic per pull request, and run npm run format and npm run typecheck before you open it.

What not to edit#

Two rules that will otherwise cost you a rewrite:

  • Do not hand-edit data/coh3/*.json. Those datasets are regenerated wholesale from scardoc-generator, so a fix made here is lost on the next game build. Fix it at the source instead.
  • Do not add a navigation config. The sidebar, the category pages and the breadcrumbs are all derived from the data at build time. The previous version of this site hand-maintained a 5,467-line navigation file that had already drifted out of sync with reality, and re-introducing one would bring that back.