games.moddable.tools/moddable-games-tools

Moddable Games Tools

15 tools for chess variant analysis, hex map generation, and board game utilities

1.1.0
Version
remote
Transport
89
Tools

Security review

Review passed

Reviewed 1h ago.

  • tools: 89 tools scanned
  • metadata: scanned

No findings.

Tools (89)

  • chess_generate_puzzle

    Get a random chess puzzle. Filter by variant, difficulty or theme. Not every variant puzzle carries themes; use chess_list_puzzle_types to see what the pool holds.

  • chess_list_puzzle_types

    List available puzzle variants, themes, and per-variant counts from the puzzle pool

  • chess_list_variants

    [DEPRECATED — use play_list_variants] List chess variants. Removal: v1.0.0.

  • chess_get_legal_moves

    [DEPRECATED — use play_create_game + play_get_moves] Get legal moves for a chess position. Removal: v1.0.0.

  • chess_analyze_position

    [DEPRECATED — use play_suggest_move] Analyse a chess position. Removal: v1.0.0.

  • chess_make_move

    [DEPRECATED — use play_apply_move] Apply a move to a chess game. Removal: v1.0.0.

  • chess_validate_move

    [DEPRECATED — use play_validate_move] Check if a chess move is legal. Removal: v1.0.0.

  • chess_get_status

    [DEPRECATED — use play_check_status] Get chess game status. Removal: v1.0.0.

  • chess_render_svg

    [DEPRECATED — use play_render_board] Render a chess position as SVG. Removal: v1.0.0.

  • chess_make_moves

    [DEPRECATED — use play_make_moves] Apply a sequence of chess moves. Removal: v1.0.0.

  • chess_get_opening_book

    [REMOVED — engine#98] Opening book resolution is broken in Worker context. No replacement.

  • hex_list_games

    List all available hex map game types with configuration options

  • hex_generate_map

    Generate a hex map for a specific game and player count

  • hex_export_svg

    Generate a hex map and export as SVG

  • hex_get_info

    Get info about a specific hex coordinate (terrain, neighbours, distance)

  • hex_compute_fov

    Compute field of view from a hex position

  • hex_pathfind

    Find shortest path between two hex coordinates

  • play_list_families

    List all playable game families supported by the engine (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game, backgammon, standard-52, bavarian-32, flower-48, double-six-dominoes, mahjong, standard-dice, agon, asalto, chaupar, dou-shou-qi, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl)

  • play_list_variants

    List available variants for a game family. Each variant can be passed to play_create_game. Variants with flags (e.g. +random) can be requested as "slug+flag".

  • play_get_definition

    Get the full engine definition (topology, render config, pieces, setup FEN) for a game variant. Returns the resolved frontmatter used to render and play the game.

  • play_create_game

    Create a new game instance for a given family. Returns initial state to pass to subsequent calls. Variant can include flags like "grand+random" or "standard+drops".

  • play_get_moves

    Get all legal moves for the current position. Requires state from play_create_game or play_apply_move.

  • play_apply_move

    Apply a move to the game and return the new state. Pass the move object exactly as returned by play_get_moves (format varies by family: chess uses {from,to}, go uses {coord} or {action:"pass"}).

  • play_check_status

    Check the current game status: whose turn it is, whether the game is over, and who won.

  • play_suggest_move

    Use AI to analyse the position and suggest the best move. Supports 5 difficulty levels across all 30 playable families.

  • play_render_board

    Render the current board position as SVG for any playable family (chess, draughts, go, reversi, shogi, xiangqi, mancala, morris, hex, landlords-game, backgammon, standard-52, bavarian-32, flower-48, double-six-dominoes, mahjong, standard-dice, agon, asalto, chaupar, dou-shou-qi, fanorona, halma, nyout, pachisi, royal-ur, senet, stern-halma, surakarta, tafl).

  • play_export_fen

    Export the current board position as a FEN-style setup string, in the form the variant's own frontmatter declares its starting position. Card, tile and dice games have no board position to export.

  • play_load_fen

    Create a game from a FEN-style setup string, as returned by play_export_fen. Pass the same variant the position was exported from.

  • play_validate_move

    Check whether a move is legal in the current position without applying it. Pass the move object in the same format as play_get_moves returns.

  • play_make_moves

    Apply a sequence of moves to a game and return the final state. Stops at the first illegal move. Move objects must match play_get_moves format.

  • rules_list_games

    List all available game rulebooks with metadata (players, duration, complexity, mechanics). Filterable by type, complexity, and mechanics.

  • rules_get_game

    Get full rulebook content for a specific game (markdown). For metadata only, use rules_get_game_meta instead.

  • rules_get_game_meta

    Get structured metadata for a game: players, duration, complexity, mechanics, how_to_play, variant list, page list, related games. Lightweight alternative to fetching the full rulebook.

  • rules_get_page

    Get a specific page/section from a game rulebook (e.g. character creation, combat rules, marketplace). Use rules_get_game_meta to see available pages.

  • rules_get_variant_list

    List all variants for a game with structured metadata (players, board, playable status, topology, engine config). Much richer than parsing the rulebook.

  • rules_get_diagram

    Get board diagram SVG URL for a game variant. Returns the diagram path, topology, and rendering metadata.

  • rules_get_variant

    Get rules for a specific game variant

  • rules_search

    Full-text search across all published rulebooks. Returns section-typed results with deep-link anchors.

  • rules_random

    Get a random game suggestion from the library

  • board_gallery_search

    Search the board gallery (335 rendered board layouts across 34 game families)

  • board_gallery_get

    Get details of a specific board layout by ID

  • tile_gallery_search

    Search hex tile sets by name, game, or terrain type

  • tile_gallery_get

    Get details of a specific tile set with all tile types

  • tile_gallery_stats

    Get statistics about available tile sets

  • board_gallery_stats

    Get statistics about the board gallery (total boards, families, topologies)

  • piece_gallery_search

    Search the piece set gallery by name, style, or game type

  • piece_gallery_get_set

    Get full details and piece list for a specific set

  • piece_gallery_stats

    Get statistics about the piece gallery (total sets, styles, authors, game families)

  • oracle_list_games

    List all supported RPG systems with oracle tables and entity data availability

  • rpg_chargen

    Generate a random character for an RPG system (D&D 5e, Pathfinder, Ironsworn, Cairn, Knave, etc)

  • oracle_roll

    Roll on a random oracle table (Ironsworn, Starforged, Maze Rats, etc)

  • oracle_list_tables

    List available oracle tables for a system

  • oracle_ask

    Ask the oracle a yes/no question with likelihood modifier

  • oracle_scene

    Generate a scene using oracle tables. With a recipe, rolls each table in the recipe, resolves cross-references, and composes a narrative sentence. Without, picks random tables.

  • rpg_search_entities

    Search RPG entities (spells, monsters, classes, items) across all systems

  • rpg_get_entity

    Get full details of a specific RPG entity by name

  • rpg_random_encounter

    Generate a random encounter for a system and difficulty level

  • rpg_browse_category

    Browse entities by category with pagination

  • rpg_loot

    Generate random loot/treasure for a system and tier

  • oracle_list_recipes

    List all predefined scene recipes — curated multi-table compositions that produce coherent narrative prompts

  • oracle_interpret

    Resolve oracle cross-references. Given a result like "Action + Theme", follows references and returns expanded results

  • oracle_table_view

    View the complete contents of an oracle table — all entries with roll ranges

  • oracle_encounter

    Generate a tabletop RPG encounter with CR-appropriate monsters, terrain, and loot (D&D 5e or Pathfinder 1e)

  • rpg_list_categories

    List entity categories for an RPG system (spells, monsters, classes, equipment, etc)

  • rpg_random

    Get random entities from an RPG system for inspiration or encounter prep

  • ti4_random_factions

    Generate random faction assignments for Twilight Imperium 4th Edition

  • ti4_draft_factions

    Milty-style TI4 draft with pick pools per player

  • ti4_list_factions

    List all TI4 factions with colors, flags, and expansion info

  • ti4_draw_objectives

    Draw random public objectives for TI4

  • ti4_draw_agendas

    Draw random agenda cards for TI4 political phase

  • nukes_setup_generator

    Generate random territory/resource setup for a Nukes game

  • game_nukes_combat

    Resolve a Nukes combat encounter between units

  • colony_dice_odds

    Calculate settlement dice probability for Colony/Catan-style resource numbers

  • game_deck_create

    Create, shuffle, and optionally draw/deal from a card deck

  • game_deck_list_types

    List all available deck types with metadata

  • game_deck_deal

    Shuffle and deal a custom deck of arbitrary named cards

  • game_score_tracker

    Track scores for players in any game

  • talisman_draw_characters

    Draw random characters from the Talisman 4e (revised) base set for a character lottery

  • talisman_draw_encounter

    Draw a random encounter for a Talisman ring (outer, middle, inner, crown)

  • jam_status

    Get the current Mod Jam status (active jam, deadline, submissions)

  • jam_timer

    Get time remaining in the current Mod Jam

  • jam_vote

    Get voting status for the current Mod Jam

  • dice_roll

    Roll dice using standard notation (e.g. 2d6+3, 4d8, d20). Supports comma-separated pools and keep-high/low (4d6kh3).

  • coin_flip

    Flip one or more coins, or pick from a list of choices

  • team_split

    Randomly divide players into teams

  • random_player_order

    Randomise turn order for a list of players

  • timer_suggest

    Suggest time controls for a game based on player count and complexity

  • game_jam_theme

    Generate a random game jam theme combining mechanics and themes

  • dice_odds

    Calculate probability of meeting a target with a dice expression. Supports keep-high/low (4d6kh3).