← All products← Все продукты
Dots icon
Web · Android · macOSВеб · Android · macOSv1.0.1

DotsТочки

The classic territory game — precise rules, modern controls, serious AI.Классическая игра на захват территории — точные правила, современное управление, серьёзный ИИ.

ClassicКлассикаcapture & house rulesправила захвата и домов
AI ×4ИИ ×4Easy to Expertот простого до экспертного
PWAoffline browser playофлайн-игра в браузере

Product UIИнтерфейс игры

Verified product captures.Проверенные снимки продукта.

Verified captures from the official Dots 1.0.1 RuStore asset set. The images are resized for the web; the product UI itself is unchanged.Проверенные снимки из официального набора материалов RuStore для Dots 1.0.1. Для сайта изображения только уменьшены; сам интерфейс продукта не изменён.

The gameИгра

Surround. Capture. Control the board.Окружайте. Захватывайте. Контролируйте поле.

◇

Full territory logicПолная логика территории

The implementation covers houses, capture-of-capture, release and dynamic scoring rather than reducing Dots to a simple enclosure demo.Реализованы дома, захват захвата, освобождение и динамический счёт — это полноценная логика «Точек», а не упрощённая демонстрация окружения.

AIИИ

Four deterministic AI levelsЧетыре детерминированных уровня ИИ

Easy, Normal, Hard and Expert share the same authoritative rules and deterministic decision model. Local two-player play remains available.Лёгкий, обычный, сложный и экспертный уровни используют одни и те же авторитетные правила и детерминированную модель решений. Локальная игра вдвоём также доступна.

⌖

Built for real boardsУправление для больших партий

Pan, zoom, pinch, keyboard navigation, snapped placement preview, Fit game and latest-move markers keep dense positions manageable.Перемещение, масштабирование, жест щипка, клавиатура, предпросмотр точки с привязкой к сетке, подгонка поля под игру и маркер последнего хода помогают работать с плотными позициями.

ArchitectureАрхитектура

One authoritative Rust core.Одно авторитетное Rust-ядро.

Version 0.9.4 completed a major internal consolidation: move legality, capture and house topology, release/scoring, replay validation and deterministic AI search now live in one shared Rust game-core.В версии 0.9.4 завершено крупное внутреннее объединение: допустимость ходов, топология захватов и домов, освобождение и счёт, проверка повторов и детерминированный поиск ИИ теперь живут в одном общем Rust-ядре game-core.

The web/PWA build runs that core through optimized WebAssembly; native Tauri builds link the same crate directly. TypeScript is intentionally limited to session, persistence, worker and UI orchestration — fewer duplicated rules means fewer ways for platforms to disagree.Браузерная PWA запускает это ядро через оптимизированный WebAssembly, а нативные Tauri-сборки подключают тот же Rust-модуль напрямую. TypeScript намеренно ограничен сессией, хранением, Web Worker и управлением интерфейсом — меньше дублирования правил означает меньше возможностей для расхождения платформ.

Player experienceИгровой опыт

A classic game without a classic-software feel.Классическая игра без ощущения старого софта.

↔

Responsive AIОтзывчивый ИИ

Computer search runs off the browser UI thread and can be cancelled by Undo, New game or changed settings without stale work taking over the session.Расчёт ИИ вынесен из потока интерфейса браузера и может быть отменён командой отмены хода, новой игрой или сменой настроек без риска, что устаревший результат перехватит сессию.

◎

Clear board feedbackПонятная обратная связь

Latest-move emphasis, invalid-placement feedback, capture feedback and an exact snap preview make every action easier to read.Выделение последнего хода, подсказка недопустимой точки, обратная связь захвата и точный предпросмотр с привязкой к сетке делают каждое действие понятнее.

?

Start, help & local soundСтарт, помощь и локальный звук

The localized start menu offers Continue, Vs computer, Two players, Help and About, with native Exit and a persistent sound toggle; lightweight move, capture, invalid-move and Undo cues are synthesized locally without network access.Локализованное стартовое меню предлагает продолжение, игру с компьютером, игру вдвоём, справку и сведения о приложении, а в нативной версии — выход и постоянный переключатель звука; сигналы ходов, захвата, недопустимого хода и отмены синтезируются локально без доступа к сети.

Recent changelogПоследние изменения

Stable 1.0 after correctness, cross-platform hardening and release-provenance work.Стабильная версия 1.0 после работы над точностью, кроссплатформенной защитой и происхождением релизов.

v1.0.1 · Hardened exact capture geometry at JavaScript-safe coordinate extremes and fail-closed cleanup of malformed empty saves; reduced AI/render/autosave allocation overhead, moved native Tauri AI work off the main thread and refreshed the verified toolchain and RuStore assets. Rules, scoring, AI policy, persistence schema and the offline/privacy model are unchanged.Усилена точная геометрия захватов на предельных JavaScript-safe координатах и fail-closed очистка некорректных пустых сохранений; снижены лишние аллокации ИИ, отрисовки и автосохранения, вычисления ИИ в нативном Tauri вынесены из главного потока, обновлены проверенный toolchain и материалы RuStore. Правила, счёт, политика ИИ, схема сохранений и офлайн/privacy-модель не менялись.

v1.0.0 · Promoted the fully audited and hardened codebase to stable 1.0.0 with synchronized npm, Rust, Cargo and Tauri metadata; required CI now covers locked Rust validation, Clippy warnings-as-errors, RustSec, CodeQL, Semgrep, Gitleaks, Dependency Review and immutable release provenance. Gameplay rules, save format, scoring and AI policy are unchanged.Полностью проверенная и усиленная кодовая база переведена в стабильную 1.0.0 с синхронизированными версиями npm, Rust, Cargo и Tauri; обязательный CI включает проверку зафиксированных Rust-зависимостей, Clippy с warnings-as-errors, RustSec, CodeQL, Semgrep, Gitleaks, Dependency Review и неизменяемое происхождение релизов. Правила игры, формат сохранений, счёт и политика ИИ не менялись.

v0.10.0 · Added a localized start menu with Continue / Vs computer / Two players / Help / About, compact in-game Menu and Sound controls, and optional locally synthesized move, capture, invalid-move and Undo feedback; preferences migrate to version 3 without changing rules, scoring, AI or saves.Добавлено локализованное стартовое меню с продолжением, игрой с компьютером, игрой вдвоём, справкой и сведениями о приложении, компактные кнопки «Меню» и «Звук» в партии и опциональная локальная звуковая обратная связь для ходов, захвата, недопустимого хода и отмены; настройки мигрируют на версию 3 без изменения правил, счёта, ИИ и сохранений.

v0.9.5 · Established one canonical raster artwork source and now derive the Web/PWA, Tauri, Android, macOS and RuStore product icons from it without redrawing or changing gameplay.Закреплён единый канонический растровый исходник: из него без перерисовки формируются иконки Web/PWA, Tauri, Android, macOS и RuStore; игровой процесс не менялся.

v0.9.4 · Unified production rules and AI in the shared Rust core, removed the duplicate TypeScript implementation and hardened native release artifacts.Объединил рабочие правила и ИИ в общем Rust-ядре, удалил дублирующую TypeScript-реализацию и усилил проверку нативных артефактов.

v0.9.3 · Prepared the RuStore publication package, moved Android distribution to a signed AAB flow and added reproducible store assets and release verification.Подготовил пакет публикации для RuStore, перевёл Android-дистрибуцию на подписанный AAB и добавил воспроизводимые материалы для магазина и проверку релиза.

v0.9.2 · Added the Tauri 2 native shell, localized About dialog and native Android/macOS release automation.Добавил нативную оболочку Tauri 2, локализованный диалог «О приложении» и автоматизацию релизов Android/macOS.

v0.9.0–0.9.1 · Moved AI work to a Web Worker, introduced Fit game and board feedback, then hardened coordinate validation, stale-task cancellation and PWA update recovery.Вынес ИИ в Web Worker, добавил подгонку поля под игру и обратную связь на поле, затем усилил проверку координат, отмену устаревших задач и восстановление PWA-обновлений.

Offline by designОфлайн по замыслу

The board is the product — not an account.Продукт — это игровое поле, а не аккаунт.

Game state, preferences and viewport data are local. The PWA works offline, supports controlled updates and keeps the same rules as the native builds. English and Russian are built in.Состояние партии, настройки и параметры поля хранятся локально. PWA работает офлайн, управляемо обновляется и использует те же правила, что и нативные сборки. Русский и английский встроены.

The release pipeline verifies the web build, Rust dependency graph and native artifacts, including Android 16 KB ELF alignment and universal macOS architecture checks. The technical work is deliberately aimed at preserving gameplay, not changing it for its own sake.Релизный конвейер проверяет веб-сборку, граф Rust-зависимостей и нативные артефакты, включая выравнивание ELF для страниц памяти 16 КБ на Android и универсальную архитектуру macOS. Технические изменения специально направлены на сохранение поведения игры, а не на изменение ради изменения.