This is an (incomplete) retrospective timeline of the features added to the the [Kudamono Editor], mostly for self-reference. For a prospective timeline, refer to the [plans]. [Paper Puzzle] are mentioned when newly added and also near changes that benefit them significantly. People may be mentioned if they are related to particular change. 2023 #### September #=#=#=# New genres & variants: - Alcazar by @Jerome - Foreshadow by @Wen - Simple Loop (directions) by @Millay - Masyu (pentomino, snake, snake-ortho) by @Takmu Kudamono Highlighter V3: - adds flexibility by separating each rule in two parts: - styling aspects now belong to the ´´glow´´ property, whereas - filtering aspects now belong to one of three related properties: - ´´consfilters´´ (staying constant) - ´´monofilters´´ (moving focus to a deeper or related aspect) - ´´polyfilters´´ (splitting a single focus into multiple independent foci) Font: - changed the default font for: - consistency across devices, between mobile and desktop - solving an bug reported by @donnythenuts API: - it's now possible to distribute symbols to separate encoding meshes via the ´´symbol.encosuffix´´ property, which will be added to the url parameters ´´LI-´´ and ´´LS-´´ (expansions of ´´L´´ and ´´LF´´ respectively) - 3-digit positive integers are now allowed (@Wen) - Multi-line encoding via the ´´SI´´ and ´´SS´´ parameters Interoperability: - Puzz-link import now tolerates variant urls (those containing the string ´´v:/´´) - Penpa batch import: - tile types: shaded/absent, ice ^^[Parrot loop], [Ice dance pair] etc...^^ - autodetect genre from puzzle title (beta) - new url types: tinyurl.com - arrows and selected letters (S, G, F) Page: - dragging different puzzle urls (within the same genre) to the desktop now produces distinctly titled links, no longer overwriting them, so it's easier to save puzzle drafts - easier navigation between puzzles of the same page, via next/previous buttons (@AndreaGilbert) - changestreams integrated with the homepage - variant information was added to the [new puzzle page|kudamono/new] and also to the page of each genre, in a more automated way (@Yuyuki) Cursors: - streamlined the cursor / cursor prediction modules - the cursor now shows in all occasions (@Menderbug) Internal: - multi-letter fruits added to harvest - rules refactoring: - rule bank split into smaller modules - Multi-lines update: - segments moved to a new data structure named ´´supraforest´´ (solve lines) and ´´infraforest´´ (given lines). This will enable genres mixing different line types (e.g center vs edge, knight vs orthogonal, different colours, etc...). - for consistency, pencil aux marks (sketches) moved to an equivalent structure ´´sketvest´´ August #=#=#=# Collaborations: - new genres: [flexible-counters], [redemption], [dance-and-dance] - @kuchiwo broadcasted a series of seven Kudamono Livestreams: [1|KLV?g98NMJiTSuo], [2|KLV?Duueh1wiC7I], [3|KLV?YPCs6CK9QrE], [4|KLV?S5rUrz2C-Y0], [5|KLV?5Aq0om3AEHI], [6|KLV?ynDZbv1BqlM] and [7|KLV?1feS2GmoFf4] (uncovering several improvement opportunities) API Changes: - lexicographic encoding is no longer used (except on legacy puzzles); replaced by standard numeric encoding (@semiexp) - board size now reflects the number of cells accurately via the W=´´1x2x3´´ parameter - ´´1x1 ´´ and ´´nx1 ´´ boards now allowed as the official minimum Interoperability: - [Myopia] and [Ant Mill] puzzles can also now be [imported directly|../p.html] from **puzz.link**-style urls, so all genres common to both platforms are covered. - Penpa batch import page created, with support for: - numeric genres (1 number/question mark per cell) ^^[Soulmates],...^^ - black and white pearls ^^[Masyu],...^^ UI: - redesigned the restart button [[restart]] to make it more distinct: [[reset]] (@Kays) Miscellaneous Bug fixes: - fixed an issue with auto-mode ignoring lines (@Kuchiwo) - fixed an issue with some error styles being shaded by previous styles (@Kuchiwo) - url can now be shared as well (@MonokuroGreen) - 404 page was not displaying (@dohz, @Direkrow) - Safari bugs: -bookshelf displays each book at full width -puzzle miniatures patched so they at least are easily selectable (@AndreaGilbert) Internal: - added the ´´&LI, LIA, LIB...´´ family of encodings which can be used internally to encode e.g. differently-placed symbols each in its own mesh to avoid the need to reencode if placements are added/removed - removed property ´´geometry.tilesymboled´´. All symbols use the tile centre as a reference from now on, their precise placement is determined by the ´´symbol.placements´´ property. - removed property ´´geometry.tilelined´´. All lines use the tile centre as a reference from now on, their precise placement is determined by the ´´symbol.placements´´ property: - in addition to standard numeric placements, ´´tile-corner-mid´´ and ´´tile-edge´´ as geometry-aware placements - refactoring of the module loader - the unit testing system was extended to any variants KLV?:=https://www.youtube.com/watch?v= July #=#=#=# Collaborations: - New Genres ^^[Trizone], [Curve Sums], [Barbed Wire], [Nurikabe-loop], [Reachability]^^ - First remixes of two distinct genres: ^^RB Masyu, Nurikabe Loop Masyu^^, under [Masyu] Interoperability: - [Brownies], [Square Jam], Simple Loop, [Masyu] puzzles can now be [imported directly|../p.html] from **puzz.link**-style urls, either by: - swapping the domain directly by **site.domain** - limitations: board sizes up to 9x9 only; numbers up to 16 only // Link previews: // - sharing a paper puzzle link will now display the associated puzzle metadata within the link preview (for more effective sharing on social media) // - a genre-specific (but not yet puzzle-specific) picture is also now displayed UI: - board rotation and mirroring: (@MartinEnder) - has interface buttons available [[rotate-clockwise]], [[mirror-right]], for mobile - mirror shortcuts updated to the combo [[m shift, shift right]] - takes ´´symbol.placement´´ into account ^[Crosswall] and works on grids of variable dimension, such as rectagular or irregular hexagonal - takes directional symbols into account, such as arrows ^[X-sums], even on hex grids ^[RGB Loop] - via properties ´´symbol.rotagroup´´ and ´´symbol.orientation´´ - dragging: - symbol dragging now has a simpler drawing mode, different from line dragging (@Menderbug) - more control of the dragging area via the ´´dimension.dragpadding´´ property - this extra padding is not included when exporting pictures, for example (@Menderbug) - dragged symbols now rendered via ´´lightor´´ property - mousewheel: - will only be used to rotate symbols if symbols are available and cursor is within the board; otherwise scroll the page normally - buttons: - symbol icons now display slightly larger, thus more easily visible (@direkrow) - aux mark keyboard shortcut tooltips added (@direkrow) - aux marking: - shortcut [[ctrl space]] now toggles aux mode (@direkrow) - right clicking in edit mode now places auto aux marks as well (@direkrow) - aux mark interference (causing marker wrongly placed in adjacent cell) no longer occurs (@direkrow) Performance: - slightly more efficient dragging: - reducing all calls to ´´UpdateState´´ to a single one at the action's end Page: - new "Make New Puzzle" button added prominently (@Menderbug) - puzzles url can be opened in edit mode via the temporary ´´&edit=1´´ parameter Miscellaneous Bug fixes: - loading hiccups fixed (text streams now read in chunks) (@Menderbug, @DireKrow); - cursor now updates instantly when a symbols is changed via keyboard (@X-sheep) - rare race condition tentatively fixed on drawing the puzzle miniatures (@direkrow) - bookshelf titles no longer slightly off-screen (@direkrow) - pulsing inexistent buttons no longer tried (@direkrow) - toggling highlighting is now instantaneous (@direkrow) June #=#=#=# Collaborations: - New Genres ^^[Tetritory], [rgb-loop], [zero-one-lines], [Achtelwenden]^^ - solver for Crosswall by @semiexp - Kudamono Editor debuts in GAPP API Changes: - symbol encoding in genres with symbols outside the board was split in two fields: - ´´LEX´´ for symbols outside (ex-) the main board - ´´L´´ for all other symbols (nothing changes in most genres) - this solved a few bugs and will make all genres future-proof in case of variants that add outside symbols, so that it won't affect past encodings - puzzles using the old encoding are redirected - standardised letter encoding for letter genres, e.g. cypher clues (uppercase) - numbers extended up to 99 (@Blaz) UI: - one can now drag away from the puzzle by clicking on the surrounding area (@DavidMillar) - UI buttons stay pressed when selected (@TwoHoleStraw) - decorations (informative highlighting that does not count as an error) can now be toggled in the share menu as well as via the [[alt shift x]] shortcut - unified mode: - appearing more often (@Menderbug) - click area for lines enlarged to include segment midpoints, so they can't be missed now (@Menderbug, @ChenhaoXu) - metadata: - difficulty stars can be inserted using asterisks (@Blaz) - tooltips added to every field (@Teal) - question marks can now also be inserted by typing [[?]] directly. - drag aborting (e.g by leaving the puzzle area or switching focus) no longer causes bugs Symbols and aux marks: - better restriction of symbols when dragging based on their slot and placement (@Suzuki) - inserted symbols can now: - erase adjacent symbols via the ´´symbol.uncompass´´ property - add adjacent symbols via the ´´symbol.polycompass´´ property - new aux marks: - triangular quarter-squares (a.k.a. shaka), with option for full (@Blaz) - double-diagonal aux marks (@MartinEnder) Variants: - multiple variants can now be added to the same page, and render correctly - consolidated the following pages (@dohz): - The ^^[Myopia]^^ page now contains the variants Full Myopia and Unequal Lengths Myopia - The ^^[Chess Snake & Variants]^^ page now contains Chess Snake asa well as Chess Path - The ^^[Square Contact]^^ page now contains Contact and Hex Contact - significantly expanded the ^^[Masyu]^^ page, now containing a myriad of atomic and combined variants for perusal, with good example puzzles (@dohz, @teal) - commas as variant separators no longer break on url export (@Teal) - variants that drop (instead of adding) certain constraints, aka. "optionals", are fully supported Internal: - generalised variegation can now be applied to any scope - both hue and lightness variegation are supported, via the [styles] ´´varihue´´ and ´´varilightness´´ - shortcut [[shift n, shift d]] can be used for decorative errors - added ´´pins´´ (´´buds´´) and ´´streaks´´ (´´segments´´) as additive highlighting options, by analogy with ´´lands´´ - removed properties ´´geometry.longed´´, ´´geometry.followfruits´´, ´´geometry.followshapes´´ and ´´segmentation´´ - property ´´orchard´´ demoted to the ´´tabula´´ only - scopes ´´segments´´, ´´segment´´, ´´longsegment´´, ´´endsegment´´, ´´longendsegment´´, ´´budsegments´´, ´´budkingdom´´ added - scope ´´letters´´ added - line width for text in compound symbols can be set separately via ´´symbol.textLineWidth´´ - added ´´state.geometry.basix´´ for a more robust usage of ´´symbol.placements´´ and split those as a submodule Page: - the bookshelf now displays the correct page titles (@dohz) - fixed a critical display bug on some miniatures (@dohz) May #=#=#=# Collaborations: New Genres ^^[Turtle Shell Loop], [Gravel], [Crosswall], [Starry Knights]^^ Variants and rule elements (API change): - variants can now be added via the field ´´&V=´´ - the old "verified by" field (formerly ´´&V=´´) was folded into the "with thanks to..." field ´´&K=´´ as this was the most common scenario - the growing list of variants is specified at the [variants] draft page - common rule elements can be added exactly the same way Interface: -menus: - [[middleclick]] now toggles between edit and play mode (@Menderbug) - derived button colours (@Menderbug) - alternative keyboard shortcuts are now possible, as the ´´symbol.shortcuts´´ property now accepts lists too - "lingering" cursor bug on mobile (@Menderbug and @Yuyuki) - aux markers: - can now be preserved upon adding lines on top, via the ´´symbol.prelined´´ property (@Deusovi) - can now be removed conditionally upon adding a symbol, via the ´´symbol.explacements´´ property (@Yuyuki) - lines: - "one cell behind" bug in line drawing (@Menderbug and others) - property ´´input.figure.halved´´ allows better line subdivision , fixing a bug ^^[Parrot Loop]^^ (@yuyuki) - obstacles are now considered via the ´´input.obstacles´´ property ^^[Pentomino Puzzles], [Tetro Stack]^^ - movement: - [Movement input mode|drawing-modes.html#movement-mode] ^^[Brownies], [Starry Knights]^^ Rendering: - small adjustment to the puzzle picture border (@Menderbug) - puzzles of multiple genres can now be rendered and load in the same page - toggling ´´mode.auxing´´ now resizes the board much like toggling ´´mode.edit´´ Internal: - support different line types (given vs input) each with a different particular style, via the ´´penbols´´ property ^^ [Turtle Shell Loop], [Magic Shape] ^^ - ´´geometry.lineverged´´ property specifies whether lines can be drawn at the verge - encoding of "absent tiles" now always with the letter "x" for consistency across all genres; the same applies to visible blocker tiles - scopes ´´unlongloops´´, ´´unlongloop´´, ´´unlongtrack´´, ´´unlongorchard´´ added (these result in separate yet well-segmented tracks) ^^ [RB Loop], [RGB Loop]^^ - scopes can now be prefiltered in all rules, by e.g.´´rule.placement´´ (affecting scopes: ´´buds´´, ´´numberedbuds´´) - added a ´´input.linemovemented´´ property for movement genres, with ´´input.linemovementedfruits´´ as a way to restrict movement to certain fruits; consequently removed the ´´figure-stepped´´ parameter Refactoring: - rules: - moved ´´depictions´´ and ´´descriptions´´ away from rules, into the ´´explanations´´ object (all genres) - property ´´rule.order´´ removed - extracted some rules into templates for reuse across genres and repurposing as live variant modifiers - drawing functions, for better testing and exposing data for visual unit tests - numeric genres, by adding the ´´numbers´´ property to replace function calls from within the genre file April #=#=#=# Collaborations: New Genres ^^[RB Loop], [Bouba Kiki Loop], [X_Sums], [Hit Points]^^ - API Changes - puzzle encoding in all numeric genres was standardised for consistency across genres, for several reasons: - facilitate development of automatic solvers, reducing the size of the"symbol dictionary" - accelerate genre porting, for the same reason - allow future expansions with larger and larger numbers, if ever needed - allow remixing of numeric genres in the upcoming Kudamono Designer - provide a means for multi-letter symbol encoding, if ever needed All changes are backward-compatible - no puzzles will be affected. - UI Changes - symbols in play mode can be coerced to stay within the board during input, even if positions outside are available in edit mode - via via the ´´geometry.exsuprasymboled´´ property (@XSheep) - grid editing buttons updated for more consistency :shrink-right: and now adapted to the diamond grid (@Menderbug) - tool selection menu: - auto-tool mode (previous behaviour) became an option, albeit the default one: - the cursor now changes in real-time to reflect the predicted action - the auto-button icon (composed of the first two actions) does not appear - when there is a conflict preventing tool inference (e.g. ^^[dream-sequence]^^) - when no more than one action is possible (e.g. ^^[bonsai]^^) - symbol and line selection buttons now appear, on a genre-by-genre basis - likewise, marker and sketch buttons appear, when in aux mode: - alphabet aux panel now appears in some genres (@fff) ^^[tricklayer]^^ - an auto marks button (:auto-mode:) appears when appropriate - numeric candidates aux marks ^^[X-sums]^^ - keyboard shortcuts to select particular aux marks - a small prompt to load a puzzlestring from clipboard now appears when pressing [[ctrl v]] - the cursor is also drawn on touch devices: - without "hover predictions" - this forces a refresh of drawing targets, thus indirectly solving an "out-of-sync" bug (@Yuyuki) - hover predictions became more focused (@Menderbug): - only the main action is predicted (dropping the alternate action) - only one tool at the time (rather than all together at once) - lines display the predicted segment alongside the (more discrete) starting point - a lingering segment is no longer drawn after undrawing a line up to the very start (@dohz) - click vs drag disambiguation via the new ´´mode.clicking´´ property - Page Changes - all text that is indirectly generated, rather than manually written, now displays with a different, **monospaced**, font, because: - it's nicer for readers to know when they are reading generated vs written text (even when generated text is based on manual data) - generated text tends to accumulate inaccuracies as new or more complex situations arise. - added aux mark keyboard shortcut tables - variant genre pages: - More complete authorship snippets under the rules text (@Dohz) - Page metadata for link previews no longer shows genre/variant authorship in the top title, because it was in many cases inaccurate. Instead it uses //Player & Editor// (@Dohz) - Rules text now: - displays a pass(:pass:)/fail(:fail:) icon, if appropriate, where available - can be copied to clipboard, via a button below, for quoting on external sites (@XSheep) - Other fixes - shading a number no longer necessarily hides it underneath (@Menderbug) - overlapping number and symbols now insertable together for more convenience ^^[dream-sequence], [flashlights-crossing]^^ Internal: - geometry: - new property ´´geometry.exmarked´´ specifies whether marks are allowed outside the board (defaults to false), by analogy with ´´geometry.exsymboled´´ property - new property ´´geometry.wholelinemesh´´ used instead of ´´geometry.linemesh´´ when the ´´geometry.linedivided´´ property creates a smaller divided mesh, not always desired - **visual** unit tests added to the test suite - ´´buds´´ (via the ´´appearance´´ property) - ´´lands´´ (via the ´´kappearance´´ property - main difference is that lands can be drawn several times in the same spot) - new scopes: - ´´frukingdom´´, ´´fruterritory´´ (keeps region within fruit specified after ´´:´´ ) - ´´unfrukingdom´´, ´´unfruterritory´´ (outside region without touching the fruit specified after ´´:´´) - ´´:number´´ and ´´:letter´´ scope filters (expanded to the actual numbers or letters present before checking) - individual scopes for a single ´´bud´´ or ´´number´´ - ´´:midpoint´´ scope for segment midpoints (for use with the adjacency rule family) - refactoring: - common line properties moved into templates such as ´´template-line-normal´´, ´´template-palette-orange´´, possibly causing slight uniformisations in the appearance of some genres - all numeric genres may no longer specify their own ´´alphabeto´´ dictionary, relying in a shared dictionary - erase ´´symbol.photoplacement´´ property and all related functions - style properties: - renamed to canonical values in all genres - are nevertheless renamed by default upon initialisation, for robustness - behaviour of ´´opacity´´ and ´´lineOpacity´´, ´´lineOpacitor´´ was fixed, in particular around grid - rule highlighting preserves original order when several errors are applied in succession in the same spot March #=#=#=# New Genres: ^^ [Zukei], [Shikaku Cut], [Chess Avoidance], [Chess Loop], [Numericlone] ^^ Kudamono Genre Designer: - playground page with: - live refreshing (whilst keeping focus) - ability to load any combination of genres and templates, and overwrite any aspect - IDE-style code editing shortcuts for a single selection: - duplicating, moving and removing line groups - opening or closing braces (multiple types), even around the selection - (de)indentation; preserving indentation on newline - etc... - basic export - ability to sync serials with code for live editing of rule examples and unit tests Features and Fixes: - Geometry: - [diamond grids|grids#diamond] are available (@Menderbug) - adaptive zoom now takes into account removed tiles (@XSheep) - hexagonal grids: - url encoding/decoding now bug-free ^^ [Zukei] ^^ - [face-down|grids#face-down] hexagonal grid tiles now rendered w/ correct size - shifting/mirroring/rotating the board no longer cause rounding errors (again), as newly added points now snap to the original mesh if sufficiently close - geometric properties in serials are initially memorised and re-added (when different from default ones) - UI Changes: - feedback button (:feedback:) within the about menu (:info:) - mobile fixes - opening the keyboard on mobile (or resizing any window) no longer locks the live parameter ui - all UI buttons were raised a little on vertical screens to avoid being covered by mobile browser menus - eraser buttons were consolidated as a single :restart: button, which: - erases solution and aux marks, when in play mode - erases everything, when in edit mode - input lag alleviated (@tluo) - Galleries: - Puzzle pictures are now rendered consistently, scaling down to fit available space (instead of being cropped) - Transcriptions sped up with the new default "batch transcribe" workflow reduces context switching - Live parameters were refined to allow more complex data entry ^^ [Zukei], [Shikaku Cut] ^^ Internal: - rendering and highlighting: - added ´´colour:"from-prebud"´´ property to style each segment colour based on the colour of the fruit it starts on - property ´´render.container´´ no longer needs a pre-dot - property ´´targetoo[layer]´´ memoises current drawing contexts for each canvas, speeding up drawing - scopes: - Negative scopes, via the ´´:!´´ operand, to specify regions not containing a fruit - ´´nets´´, ´´longnets´´, ´´net´´ and ´´longnet´´ scopes consolidated for use in tangram-like genres - ´´numbers´´ and ´´number´´ scopes - major simplification of all numeric genres - geometry: - property ´´geometry.linedivided´´ now explicitly marks when lines must be subdivided ^^ [Parrot Loop], [Flashlights] ^^ - masked symbols are excluded from the tabula by default via property ´´geometry.unmasksymbolmesh´´ - a small encoding problem with non-unit compasses was fixed - removed outdated properties ´´geometry.terriplacement´´ and ´´geometry.terrifruits´´ - scattered refactoring: - ´´Genre´´-->´´genro´´ for genre objects - more symbols are inherited, e.g ´´symbol-model´´ template for pipes, variety, etc... - removed ´´RD´´ property that was used to disable rules selectively Internal/Global: - expanded the undo module to allow infinite parallel undo/redo/restart stacks - transparent event handling using ´´false´´ as return value to signal that the default action should not be prevented Collaborations: - @Kuchiwo wrote [an article on Hempuli's puzzles|https://gomamisomix.hatenadiary.com/entry/2023/03/05/211318], listing the Kudamono Editor as the "Web Player" for many of the puzzles February #=#=#=# Collaborations: - new genres: ^^ [soulmates], [unequal length loop], [Nuri Nearest Number], [Magic Shape] ^^ - first commercial project using the [Kudamono Editor]: @fff's [Puzzle Journey|https://note.com/fffpuzzle/n/nb462648c4d3b] ^^ [tricklayer], [parrot-loop] ^^ - first solver for a Kudamono genre, by @semiexp ^^ [tricklayer]^^ - first [doppel|https://twitter.com/bayrenshu/status/1629102493799190528] [puzzles|https://twitter.com/bayrenshu/status/1629081045156114432?cxt=HHwWgMDR7Yml1JstAAAA] using the editor, by @bayrenshu ^^ [tricklayer], [clones], [soulmates]^^ Features and Fixes: - Interactive puzzle parameters - live editing of puzzle parameters in parametrisable genres ^^[Ionic Squares], [Divide and Conquer], [Tetro Stack], [Pentomino Puzzles], [Magic Shape]^^ - Aux mark improvements: - Monomino aux mark added ^^ [tetro stack], [pentomino puzzles] ^^ - Alphabet aux marks added ^^ [Tricklayer] ^^ - Diagonal aux marks added ^^ [Subway], [Subwhirl], [Tumbleweed], [That's not right], [Palindrome Path], [Field Trespass], etc... ^^ - Knight aux marks added ^^ [oddstitch], [knight Loops], [Jump Rope] ^^ - Cross marks in hex genres now rotate depending on the direction of the underlying edge ^^ [hex loop], etc... ^^ - Marks with multiple placements/forms can be dragged interchangeably ^^ [tricklayer], ... ^^ (@fff) - Marks by default no longer drawn at the puzzle verge ^^ [tricklayer], ... ^^, with option ´´geometry.markverged´´ to re-enable it where needed ^^ [subwhirl],... ^^ - Cursor fixes: - Predictive cursor display no longer active when the cursor falls outside the board (@GESAKU) - Cursor misalignment/hitbox corrected (@edderiofer) - Cursor no longer disappears on undoing back to start (@monokurogreen) - Other interface improvements: - small adjustments to the UI buttons to make them more intuitive (@MartinEnder), and more responsive - fix: returned timer to the foreground (@MartinEnder) - Symbols with multiple placements/forms can now be dragged interchangeably ^^ [Subway], [Subwhirl], [Hamiltonian Mazes] ^^ Discontinued: - //Spider input mode// for ^^ [dream sequence], [unparalleled], [zig-zag], etc... ^^ the line would be drawn freely, but it stick to any symbols, like a spider's web (this didn't work well in practice). Internal: - Finer control of co-territories, via the ´´geometry.unobstacles´´ property (specifies which fruits are "transparent") - Ability to hide certain symbols on win, via the ´´symbol.unwinned´´ property (@GESAKU) - Ability to specify other layers to erase when a symbol is added, via the ´´symbol.unlayers´´ property (@GESAKU) - Aux symbols, which are in between marks and symbols (affect error checking, but are erased via the aux ui buttons), via the ´´symbol.auxed´´ property - ´´R_unique´´ now supports multiplicities (defaults to 1) ^^ [pentomino puzzles], [tetro stack]^^ (@Karoo, @dohz) - The ´´placements´´ property for symbols/aux marks: split at the outset into single ´´placement´´ sub-symbols sharing the same ´´letter´´ - refactoring of the drag module, especially line/symbol and sketch/mark auto-modes - erasing ´´suprasegments´´ no longer erases ´´infrasegments´´ - simplified encoding for a few genres: ^^ [Subway], [Subwhirl], [Hamiltonian Mazes] ^^ (either backwards-compatible or with individual rewrite requests) - rewrite all puzzles in pages for the Kudamono [Featherdown] plugin, reducing complexity January #=#=#=# Features and Fixes: - Better image generation: - custom image sizes, in px; - correct image dimensions, including an auto-adjusting border; (@monokurogreen) - solution and aux marks can be included/excluded; - monochrome and error-free options - Aux mark improvements: - cycling (several different marks can be added added to the same spot) ^^ [brownies]^^ - arrow marks ^^ [myopia]^^ - Cursor improvements: - cursor no longer flashes - hovering the cursor previews possible actions (line drawing, add symbol, aux mark) discreetly - Full-segment input / half-segment checking ^^ [parrot-loop]^^ Collaborations: - settled on collaboration model for puzzle porting, involving puzzle authors earlier and more deeply - deepened collaboration with PuzzSq with the addition of: - new genres ^^ [brownies],[parrot loop], [clones]^^ - prior genres ^^ [2 3 mazes], [arrow loop], [full house], [rook end mazes]^^ Internals: - performance improvements when drawing - ´´"net"´´ and ´´"longnet"´´ scopes added ^^ [shape-grid]^^ ,^^ [untangram]^^ ,^^ [bricklayer]^^ - ´´R_unique´´ rule now accepts ´´points´´ ^^ [tricklayer],[pentomino-puzzles],[tetro-stack]^^ - styles: - default basic colours - global style models (stylette) - style properties ´´huor´´, ´´saturator´´, ´´lightor´´ added - ´´opacity´´ and ´´opacitor´´ behaviour fixed - separate properties for text styling, prefixed with //txt-// - Glyph-based font loading: - prevents "font flashing" upon loading - allows font deformation, e.g. so long multi-digit numbers can fit available space - Gentler error reporting - Page production: - puzzles are now recognised in [featherdown] reducing cognitive load and enabling faster page editing - refactored genre-specific text generation - long (numeric) symbol tables shortened - Print layout code simplified (generates a new window instead of modifying current one) 2022 #### December 2022 #=#=#=#=#=#=# Collaborations: - Successful support of @PuzzleSquare's Advent Calendar, with 5+1 genres: ^^ [ice-dance-pair], [tiger-in-the-woods], [pearl necklace], [ivy],[decoration-tree] plus later [shirokuro-pipe]^^ - @wand125 translated the [kudamono editor] manual to [japanese|../kudamono-editor-ja.html] - @bayrenshu added and started tracking all genres in the [Editor Dictionary|https://bay-puz.github.io/editor-dict/] - Open [plans], for easier communication and tracking Features and Fixes: -Menu improvements: - Grid transforms submenu, for easier editing - aux eraser button moved inside the aux submenu - rules button also displayed in genre pages (scrolls down, simply) - Auto-exclude solution and aux marks from exported links - alternate symbols in monochrome mode ^^ [decoration-tree]^^ - input modes: - locked compass input mode ^^ [ice-dance-pair]^^ - improved rectangular input mode ^^ [ionic squares],[rectangle]^^ - timer: - Upon solving a puzzle, a small timer will show up the elapsed time, in the format ´´MM:SS´´ (minutes, seconds). - Some players find timing essential, others may find it stressful. So a compromise was sought between making this feature available and discoverable, but also discreet. - As a bonus, clicking the time will copy it to the clipboard for e.g. easy sharing in competitive forums. - hints - added to ^[Nura Knight] (@uriyoshikiba) Internals: - Stats page for easier refactoring of the rule bank November 2022 #=#=#=#=#=#=# Collaborations: - new genres: ^^ [limbs], [fillimbs]^^ Features and Fixes: - Invisible, tiles ^^ [limbs],[fillimbs]^^ - input modes: - radial input mode ^^ [flashlights],[crossing-flashlights]^^ - "click hints" highlight some cells when others are clicked ^^ [nura-knight]^^ - Puzzle pages link to corresponding pages on alternative implementations and portals - ^^ [grids]^^ page listing all available grids Internals: - drawing order for different layers became an explicit sub-object ´´visuals.ordero´´ ^^[sneaky snakes]^^ - unit tests: - all unit tests became explicit sub-objects ´´tests.pass´´ and ´´tests.fail´´ - keyword-based filtering of genres for testing - go-to button to interact with errors quickly - tabula refactoring: - scopes can now be added easily (modular) - state sharing was improved in its reactive model Discontinued: - genre //flow// (the implementation never worked well :cry:) October 2022 #=#=#=#=#=#= Collaborations: - Started collaboration with Puzsq, via the Paper-puzzle-player page: ^^ [honey-circuit], [ice-dance-pair], [nura-knight]^^ - The first "official genre" by site author ^^ [subwhirl]^^, since it was added to: - @Puzsq, with puzzles by @fff - Eric Fox's rules New features: - Shadows below the board ^^[Limbs], [Fillimbs]^^ - Absent tiles Internals: - Rewriting all genre pages in featherdown at key places - AlphaNumbols (better support for numeric symbol generation) - split actual execution from dependency listing (pipeline), preventing duplications September 2022 #=#=#=#=#=#=#= Features and Fixes: - [Puzlog|../puzlog/index.html]: - seeing at a glance all puzzles by site.author - future-proof backup of all puzzles Internals: - Hot reloading of puzzle genres for faster style tweaking - automatic picture generation - shortcuts: - genre page - current puzzle pictures Collaborations: - [Paper puzzle masterlist] launched as a collaborative effort and starting point for future collaborations - @clickmazes spearheaded a new collaboration model, by transcribing her puzzles ^^ [Full House] ^^ August 2022 #=#=#=#=#=# Features and Fixes: - aux button in the main interface, for mobile users - line thickness scaling based on board display size fixed - mixed line/symbol input mode ^^ [Dream Sequence], [Skating]^^ Collaborations: - @EricFox made me rethink the collaboration model for porting and transcribing puzzles Internals - rule pictures can be ordered explicitly via the ´´order´´ (numeric) property July 2022 #=#=#=#=# Features and Fixes: - [Paper Puzzle page] created, listing puzzles hierarchically with an option to search them by name or author - Menus: - bookshelf, with variegation of colour - genre pages display breadcrumbs to general [paper puzzle] page - printing buttons added to the genre pages June 2022 #=#=#=#=# Features and Fixes: - Puzzle Sharing (email, link, a few social networks) - Hexagonal grid support ^^ [full hex], [hex turn], [hex end mazes], [hex loop], [hex boomerangs], [arrow loop] ^^ - Symbol Input in solver mode ^^ [chess pack], [catch 22], [tic tac toe], [chess battle],[shapeshifting] ^^ - commands and shortcuts: - numeric shortcuts now sequential - some keyboard shortcuts remapped Internal: - metadata encoding fixes Discontinued: - experiment with fetching of daily puzzles May 2022 #=#=#=#=#= New Genres: ^^ [Rosewary], [Rook end Mazes], [Venn], [Tetro Stack], [Pentomino Puzzles] ^^ Internal: - colour palettes names accept deep renaming chains April 2022 #=#=#=#=#= New Genres: ^^ [Full House], [flow] ^^ 2021 #### December 2021 #=#=#=#=#=#= Features and fixes: - Changeable puzzle parameters, in the URL, for variants ^^ [divide and conquer] ^^ via the ´´knobo´´ object - Symbol placement for error checking may differ from the placement for drawing ^^[plot twist], [hiking track] ^^, via the ´´photoplacement´´ property November 2021 #=#=#=#=#=#= Support for network-like-genres ^^[shape grid], [untangram], [unrectangles]^^ Collaborations: - Open transcription process so anyone can participate ^^ [tet colour], [pent colour], [gerrymandering] ^^ thanks @@ strangecreation, skymoo, stingby12 @@ Discontinued: - Automatically transcribing puzzles via "computer vision" October 2021 #=#=#=#=#=#= Features and fixes: - region division genres ^^ [crowded intersections], [great divide], [lohkous scattered], [vegetable garden] ^^ - Rectangular drawing mode ^^[rectangle], [chainlink]^^ - extra symbols can now be added as a result of an error ^^[total masyu]^^ Internal: - the need for a page to check all unit [tests] at once for all genres emerged September 2021 #=#=#=# Features and fixes: - arrows ^^ [pathfinder],[oddstitch]^^ - free line drawing ^^ [tricky tour],[zig zag], [non crossing]^^ Collaborations: - expand the collaborations to other authors: @Hempuli ^^[Field Trespass], [Legalese], [Oddstitch] ^^, @Chz ^^[unequaloop]^^, @NaokiInaba ^^[OX Loop]^^ August 2021 #=#=#=# Features and fixes: - emoji support ^^[roost]^^ - arbitrary placement and visualisation of errors, irrespective of their origin Collaborations: - start of the @ErichFriedman series of ports, with the help of @clickmazes ^^ [slow turn], [that's not right], [line segment], [2 3 mazes], [jump rope], [following suit], [one of each], [palindrome path], [unequal length mazes], [color mazes], [one good turn deserves another], [knight tour] ^^ June 2021 #=#=# Features and Fixes: - textual and numeric symbols (shortcuts, cursors) ^^[Subwhirl]^^ - customisation or grid guide lines and dots, based on inheritance May 2021 #=#=#=# [Subway] by @Portponky became the second port after [kudamono] Features and fixes: - symbol improvements: - layers specify drawing order - multiple symbols can be added to the same spot, and placed more precisely - reactive metadata input, in sync with the url January 2021 #=#=#=# [Bonsai] by @LeSlo became the first port after [kudamono] Features: - multiple puzzle galleries in the same page - ´´opacity´´ property in styles - grids with "overflowing" cells - board rotation - a notation for line ´´shapes´´ 2020 #### December 2020 #=#=#=#= The first [kudamono] puzzles were created, as well as the first version of the [Kudamono Editor]