<?xml version="1.0" encoding="UTF-8"?>
<!--
  Submitted to Google Search Console as https://tavernsim.com/sitemap.xml.

  Three URLs, because three URLs is the entire PUBLIC site: the landing page, the
  game itself, and the static about/FAQ page. `lastmod` is a hint, not a promise —
  bump it when a page's CONTENT changes, not on every deploy, because a lastmod
  that moves for unrelated reasons is one Google learns to ignore.

  /library.html is NOT listed and must not be. It is a dev-only surface that the
  public build deletes (LIBRARY_DEV_ONLY_OUTPUTS in web-v5/vite.config.ts), so it
  is a 404 in production; submitting it would just earn a Search Console error.

  Five URLs now, not three. The landing page and the game still share ONE URL
  per language — they switch locale client-side, so there is nothing for
  hreflang to point at there. /about.html is the exception: it is static and
  script-free (that is its whole purpose — the answer-engine crawlers do not run
  JS), so serving it in Chinese means separate DOCUMENTS, and separate documents
  mean separate URLs (issue #223).

  Each of the three about URLs carries the full xhtml:link alternate set,
  including a self-reference and x-default. That is the format's requirement, not
  a style: an alternate group where one member omits the set is read as
  unrelated duplicate content. The set here must stay in step with the <link
  rel="alternate"> tags in the three documents themselves.
-->
<!-- The xhtml namespace is REQUIRED for the <xhtml:link> alternates below; without
     it the document is not well-formed XML and Search Console rejects the whole file. -->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://tavernsim.com/</loc>
    <lastmod>2026-08-05</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://tavernsim.com/tavern.html</loc>
    <lastmod>2026-08-05</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://tavernsim.com/about.html</loc>
    <lastmod>2026-08-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <xhtml:link rel="alternate" hreflang="en" href="https://tavernsim.com/about.html"/>
    <xhtml:link rel="alternate" hreflang="zh-CN" href="https://tavernsim.com/about.zh-CN.html"/>
    <xhtml:link rel="alternate" hreflang="zh-TW" href="https://tavernsim.com/about.zh-TW.html"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://tavernsim.com/about.html"/>
  </url>
  <url>
    <loc>https://tavernsim.com/about.zh-CN.html</loc>
    <lastmod>2026-08-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <xhtml:link rel="alternate" hreflang="en" href="https://tavernsim.com/about.html"/>
    <xhtml:link rel="alternate" hreflang="zh-CN" href="https://tavernsim.com/about.zh-CN.html"/>
    <xhtml:link rel="alternate" hreflang="zh-TW" href="https://tavernsim.com/about.zh-TW.html"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://tavernsim.com/about.html"/>
  </url>
  <url>
    <loc>https://tavernsim.com/about.zh-TW.html</loc>
    <lastmod>2026-08-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <xhtml:link rel="alternate" hreflang="en" href="https://tavernsim.com/about.html"/>
    <xhtml:link rel="alternate" hreflang="zh-CN" href="https://tavernsim.com/about.zh-CN.html"/>
    <xhtml:link rel="alternate" hreflang="zh-TW" href="https://tavernsim.com/about.zh-TW.html"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://tavernsim.com/about.html"/>
  </url>
</urlset>
