Snap

a visual programming language inspired by Scratch

AGPL-3.0 License

Stars
1.5K
Committers
103

Bot releases are hidden (Show)

Snap - v5.2.2

Published by jmoenig almost 5 years ago

  • more optimizations for collision detection
  • Catalan translation update
Snap - v5.2.1

Published by jmoenig almost 5 years ago

optimized collision detection

Snap - v5.2.0

Published by jmoenig almost 5 years ago

v5.2.0:

  • New Features:
    • new media creation primitives:
    • new primitive in "looks": NEW COSTUME from a list of pixels and dimensions, allowing CURRENT
    • new primitive in "sound": NEW SOUND from a list of samples
    • added selectors for sprites' and the stage's bounding box (LEFT, RIGHT, TOP, BOTTOM) to MY dropdown
    • new experimental entry for "green flag pressed" in the BROADCAST block's dropdown when the shift key is pressed
  • Notable Changes:
    • running STOP ALL now also toggles (pauses and resumes) all generic WHEN hat blocks (just like pressing the stop button)
    • changed default name for new costumes created with STRETCH etc. to localized 'costume'
  • Notable Fixes:
    • loading a project that fires STOP ALL from a WHEN hat block no longer "hangs" Snap
    • fixed pixel-manipulation distortions on newly imported hi-res images
    • assert that dimensions given for STRETCH are finite numbers (avoid crash)
    • disabled direct editing of list watchers for non-literal typed lists (such as costumes, avoids unloadable projects)
    • fixed occasional "dead clicks" on buttons and menu items
  • Translation Updates:
    • English
    • German
Snap - v5.1.1

Published by jmoenig about 5 years ago

v5.1.1:

  • New Features:
    • new cloud-menu entry: "Open in Community Site", thanks, Michael!
    • accept a list of pixels in the SWITCH TO COSTUME block
    • URLs in dialog boxes are now clickable and can open new browser tabs, thanks, Brian Broll!
  • Notable Changes:
    • made "i" upvar inside FOR loop's C-Shape slot mutable by user script
    • prevent switching to another sprite if a block editor is open (so local blocks of different sprites don't mix)
    • display a permanent warning when using IE
  • Notable Fixes:
    • typing strings into the search-field again shows relevant blocks (regression from IME)
    • fixed project dialog's search-field behevior (regression from IME)
    • morphic collision detection off-by-1 fix, thanks, Dariusz!
    • fixed MY PARTS so mutating the result list has no effect
    • fixed a typo in the OF-reporter's help screen, thanks, @jasonappah
    • enable costumes created in the vector editor to be stretchable in Firefox, thanks, @coproc
  • Translation Updates:
    • Catalan
    • Ukrainian, thanks,
    • Galician, thanks, Bernat
    • Turkish, thanks, Turgut!
    • German
Snap - v5.1.0

Published by jmoenig about 5 years ago

  • New Features:
    • new "paste on" block in the pen category, prints a sprite onto another one
    • new "r-g-b-a" option in "(aspect) AT (location)" sensing reporter, returns a 4-item list of values from 0-255 (same as pixels from a costume)
    • "temporary?" attribute is now programmatically settable (in the SET->my... block)
  • Notable Changes:
    • generated costumes that are not in the wardrobe are now made persistent in the project (saved & restored)
  • Notable Fixes:
    • fixed tainted audio context for auto-playing projects when the user interacts, thanks, Bernat!
    • saved clones no longer forget if they inherit the "costume #" attribute
  • Translation Updates:
    • German
    • Galician, thanks, Miguel!
Snap - v5.0.9

Published by jmoenig about 5 years ago

maintenance release

  • New Feature:
    • new experimental "paste on" block in the "pen" category, currently hidden in dev mode
  • Notable Fixes:
    • resolved scroll bar conflicts (allow vertical scrolling past horizontal scroll bar), thanks, Michael!
    • support for importing OGG audio files, thanks, Bernat!
  • Translation Update:
    • Chinese, thanks, Simon!
Snap - v5.0.8

Published by jmoenig about 5 years ago

maintenance release

Notable Fix:

  • fixed default names for 'script variables' block
Snap - v5.0.7

Published by jmoenig about 5 years ago

maintenance release

Notable Fix:

  • fixed #2041
Snap - v5.0.6

Published by jmoenig about 5 years ago

Notable Fix:
* IME text editing support, thanks, Zhenlei Jia @swiperthefox!

Snap - v5.0.5

Published by jmoenig over 5 years ago

maintenance release

  • Notable Fix:
    • fixed cloud project collection support, thanks Bernat!
Snap - v5.0.4

Published by jmoenig over 5 years ago

maintenance release

Notable Fixes:
* fixed a glitch when running a generic WHEN hat block with a literal Boolean input
* fixed a bug in the SHOW PICTURE block of the "Pixels" library
* tweaked "messages" menu for custom blocks

Snap - v5.0.3

Published by jmoenig over 5 years ago

maintenance release:

Notable Change:

  • CSV-parsing auto-detects the most likely delimiter among comma, semi-colon, pipe and tab
Snap - v5.0.2

Published by jmoenig over 5 years ago

minor maintenance release:

  • New Features:
    • experimental tolerant color collision detection (in dev mode)
  • Notable Fixes:
    • fixed a layout glitch for variadic C-shaped input slots, thanks, Bernat, for reporting it!
    • updated the manual for the new WRITE block, thanks, Brian!
Snap - v5.0.1

Published by jmoenig over 5 years ago

minor maintenance release:

  • Notable Changes:
    • gliding animation when inserting blocks using the keyboard
    • optimized collision detection
  • Notable Fixes:
    • show "browser" source option in project dialog when (deprecated) locally stored projects still exist
    • list watchers occasionally didn't show cells after reassigning a changed list to a variable
    • FOREACH over a linked list failed for scripts mutating it
    • eliminated an occasional empty label line when variadic inputs wrap as a whole, thanks, Mary, for reporting this bug!
Snap - v5

Published by jmoenig over 5 years ago

  • New Features:
    • the "tools" library has been integrated as primitives
    • export 1- /2- dimensional lists with atomic data as CSV
    • export n-dimensional lists with atomic data as JSON
    • import CSV, Text, or JSON via drag & drop
    • option to import CSV etc. as "raw data", i.e. unparsed
    • parse JSON using the SPLIT reporter
    • new "aspect AT location" reporter in Sensing category for sniffing colors and sprites
    • new blocks for setting and changing the stage's background color
    • new "microphone" reporter in Sensing for getting volume, note, pitch signals and frequencies
    • new experimental live audio-scripting support
    • new video capturing and video-motion detection support, thanks, Josep!
    • new "object" reporter in the Sensing category for getting a sprite by its name
    • blocks for changing and querying the "flat line ends" setting
    • selectors for changing and querying "draggable" and "rotation style" settings
    • new sound + music "volume" feature + blocks
    • new sound + music stereo "panning" feature + blocks
    • new sound attribute getter reporter
    • new "play sound at sample rate" command
    • accept lists and lists of lists as inputs to all sound primitives
    • new "play frequency" commands in the Sounds category
    • pixel access primitives for bitmap and vector (!) graphics
    • new "stretch" primitive for costumes, also for flipping
    • new "get graphic effect" reporter
    • new "get pen attribute" reporter
    • new "pen down?" predicate
    • new "shown?" predicate
    • new "write" command in pen category (used to be "label" in tools)
    • new "numbers", "is empty", "map","keep", "find", "combine" and "for each" primitives in list category
    • 2 optional formal inputs for rings in MAP, KEEP, FIND, COMBINE: index and source list
    • new JIT-compiler "blitz-HOF" primitives for "map", "keep", "find" & "combine" via "compile"
    • new "for" loop and "if then else" reporter primitives in the Control category
    • added "neg", "lg" (log2) and "2^" selectors to monadic function reporter in Operators
    • added "^" reporter (power of) in the Operators category
    • added "width" and "height" to the MY blocks dropdown
    • added "width" and "height" as attribute selectors of the OF primitive
    • added "costume" selector to the MY attributes dropdown
    • added plus (+) and minus (-) keys to sensing and key hat
    • special context-aware drop-downs for custom blocks
    • new "stick to" submenu in the sprite context menu where applicable
    • multi-line and monospaced "code" input slots for custom blocks
    • new "string" library, thanks, Brian
    • new "text costumes" library for generating costumes from letters or words of text
    • new "World Map" extension and library for interactive maps
    • graphic effects and sound attributes can now be animated with easing functions
    • enhanced support for embedding Snap in other website, thanks, Bernat!
    • export sounds
  • Notable Changes:
    • added third hsv dimension to pen colors, changed SET and CHANGE pen blocks
    • added transparency (alpha) to pen colors
    • new drop-down options for sprite-layer control ("GO TO front/back")
    • "loop arrow" symbol for primitive loops, also available for custom blocks
    • optimized in-project storage of atomic-data lists (more efficient, less space)
    • remove all clones when the Green Flag is clicked
    • adjust bottom of STOP block to reflect the menu selection (show / hide bottom notch)
    • enable dropping commands into all rings
    • colors in the vector editor are now named "Edge color" and "Fill color", thanks, Brian!
    • renamed "whitespace" option in SPLIT to "word"
    • made the "name" attribute programmatically settable
    • made the "temporary?" attribute readable
    • deprecated storing projects in the browser's localStorage
    • deprecated some (useless) graphic effects
    • additional "publish / unpublish" buttons in the project dialog
    • buttons for saving & loading projects to disk in the project dialog
    • more language options for the Text2Speech library, thanks Joan!
  • Notable Fixes:
    • predicates inside generic WHEN hat blocks can now pass upvars
    • eliminated "clicks" when playing music notes
    • "relabel" blocks with translated drop-down choices
    • transforming arrayed to linked lists without losing the last element
    • using "inherit" no longer un-hides the palette in presentation mode
    • relabelling custom blocks with empty numerical input slots no longer fills in zeroes
    • the language menu now has a "globe" icon (so it can be found in any language)
    • accept a number as input for a sound - interpret as index
    • fixed many costume sizes, thanks, Brian!
  • Translation Updates:
    • Chinese, thanks, Simon!
    • Turkish, thanks, Turgut!
    • Indonesian, thanks, Emanuella!
    • Greek, thanks, Alexandros!
    • Catalan, thanks, Joan!
    • Portuguese, thanks, Manuel!
    • Spanish
    • German
    • French
Snap - 4.2.2.9

Published by jmoenig almost 6 years ago

maintenance release:

  • significantly sped up and optimized collision detection between sprites and pen trails
  • enabled importing of CSV, XML, JSON etc. datasets for Windows users
  • added "open anyway" option for binary datasets
  • changes for embedding Snap! into the upcoming social website
Snap - 4.2.2.8

Published by jmoenig almost 6 years ago

minor maintenance release:

  • Tools library: Fixed LABEL block to again allow printing both text and numbers
  • Frequency Distribution Analysis library: Added histogram and plot blocks
Snap - 4.2.2.7

Published by jmoenig almost 6 years ago

minor maintenance release

  • fixed a bunch of minor glitches, including #2250 and #2260,
  • fixed #2251: support loading project files that have been corrupted by IE (don't use IE anymore, please!)
  • added "pipe" and "lower case" blocks to Frequency Distribution Analysis library
Snap - 4.2.2.6

Published by jmoenig almost 6 years ago

minor maintenance release:

  • fixed a scope issue introduced in v4.2.2.4
  • custom blocks: enabled "duplicate block definition" in the palette
  • updated German translation
Snap - 4.2.2.5

Published by jmoenig almost 6 years ago

minor maintenance release:

  • new library: Frequency Distribution Analysis, separated from "Bigger Data"
  • avoid a JS error when trying to render graphic effects for zero-extent canvasses