All notable changes to this package are documented in this file.
[1.0.0] – 2026-09-09
Initial release.
Added
- Procedural generation —
AquariumRandomPuzzleGeneratorbuilds unique, solvable boards of any size from 5×5 up to 30×30, with a time budget and an optional targetAquariumPuzzleDifficulty(Easy/Medium/Hard, best effort). - Generate from a sprite — the Editor workbench turns a solution texture (plus an optional region texture) into a full puzzle: water mask from pixel luminance, regions either sampled from the region texture or built automatically around the water.
- Full-color final layout — paint a final pixel-art solution (
FinalPaintMask/FinalPaintColors) that’s automatically revealed once the player completes the puzzle. - Solver —
AquariumPuzzleSolvervalidates a board and checks uniqueness/solvability. - Interactive play logic —
AquariumPuzzlePlayField, a dependency-free model for pouring water, marking crosses, checking mistakes, and detecting completion — no view code, render it however you like. - Puzzle assets —
AquariumPuzzleAssetScriptableObjects store authored levels. - Collections & registry —
AquariumLevelCollection/AquariumLevelCollectionRegistry
organise levelsByTheme,BySize, orByDifficulty. ABySizecollection can link its size to anAquariumGameConfigcategory instead of a fixed width/height, so the two can’t drift apart when the config changes. AquariumGameConfig— one config for a game’s puzzle rules: board-size categories with per-size economy (LaunchCost/WinReward), shared by authored and random levels alike, plus a Random Generation section layered on top.TryResolveWinRewardresolves an authored level’s reward the same way a random one’s is — by matching board size, with the level’s ownCustomCompletionRewardas an override.- Editor tools — an authoring workbench (manual region/water painting, sprite-based generation, water-based region generation, final-state picture painting), a mini-preview, a content validator, collection/registry editors, and Project Setup tools to create or sync a project’s config and registry assets.
- Demo sample — a dependency-free IMGUI showcase scene plus a UGUI demo scene using standard Unity UI, with example 6×6 letter-puzzle content and collections.
- No-Code Integration sample — two pre-wired, playable starter scenes (menu + gameplay, already connected) demonstrating a full generate/select/play/complete loop wired entirely through the Inspector, no C# required. Includes reusable components for level selection with filters, scene handoff, progress tracking, and board auto-fit — see the sample’s
SceneSetup.mdfor the full walkthrough. - No external dependencies — the runtime assembly references nothing outside Unity itself; drop it into any Built-in / URP / HDRP project.