paperoom

供开发者和智能体使用

可在你的设备上运行的确定性接口。网页生成器调用的正是这套代码。

JSON Schema · v1 · JSON examples · JSON result · ES module

使用方法

在浏览器中导入公开的 ES 模块,或一起下载 api.mjs、generators.mjs 和 locales.mjs,在支持 Intl.Segmenter 的 JavaScript 环境中使用。生成游戏无需密钥、账号、付费人工智能或服务器请求。

import {generate} from '/assets/api.mjs';
const result = generate({
  tool: 'word-search', language: 'en', seed: 'garden-42',
  settings: {text: 'GARDEN\nFLOWER\nTREE', size: 12,
    difficulty: 'easy', includeKey: true}
});
console.log(result.pack.grid, result.pack.placements);

输入与输出

tool:bingo、tombala、word-search 或 cards。language:en、es、ar、pt、zh 或 fr。seed:1–64 个字符。settings:可选设置,详见模式和示例。数字可使用 JSON 数字;布尔值必须为 true/false。默认内容按语言提供。结果包含设置、固定编号和 pack:cards/caller 或 grid/placements/words。r、c 从零开始;dr、dc 是行列方向步长。GameError 提供 code、data。无效输入会报错,不会悄悄删去词语。

可重复性与稳定链接

相同 v1 代码、种子、语言和设置会产生相同结果。请保存版本和输入;未来算法版本可能改变结果。链接只接受 seed 和简单设置。自定义词语无需放入网址,可使用 JSON 设置文件。接口与表单使用相同限制。

BINGO · seed=paperoom-demo

本地导出 PDF

在浏览器中,从 /assets/pdf.mjs 导入 createPDF,从 /assets/locales.mjs 导入 locales。传入 {pack:result.pack, current:{...result.settings,id:result.id}, tool:result.tool,t:locales[result.language]},再调用 doc.save("games.pdf")。所需代码和字体按需从本站下载,不会发送游戏内容。打印与 PDF 使用同一套数据,分别排版。

全部可打印游戏

同一个 generate() 调用涵盖网站上的每一款游戏。tools 列出全部游戏,fields(tool) 返回某款游戏的设置,text(tool, language) 返回其标签。除最初的四个生成器外,所有游戏的 layout(result) 都会以毫米为单位返回矢量页面,toSVG(page) 可将其中一页绘制为 SVG。

bingo, tombala, word-search, cards, alquerque, battleship, bulls-and-cows, checkers, crossword, dice-scores, dominoes, dots-and-boxes, exquisite-corpse, fortune-teller, gomoku, goose, hangman, hex, letter-grid, loteria, ludo, mancala, maze, memory, nine-mens-morris, nonogram, paper-dice, paper-soccer, raffle-tickets, royal-ur, scavenger-hunt, score-sheets, secret-code, snakes-and-ladders, stop, sudoku, telephone, tic-tac-toe, word-scramble, xiangqi

import {tools, fields, generate, layout, toSVG} from '/assets/api.mjs';
const result = generate({tool: 'sudoku', language: 'fr', seed: 'demo', settings: {size: 9, difficulty: 'hard'}});
const pages = layout(result);           // [{w, h, items}] in millimetres
document.body.innerHTML = toSVG(pages[0]);

所有游戏的机器可读目录,包括分类、地区以及六种语言的页面,位于 /api/games.json。面向语言模型的纯文本指南位于 /llms.txt 和 /llms-full.txt,每个页面的头部都链接到 Markdown 版本(index.md)。

/api/games.json · /llms.txt · /llms-full.txt