New features

  • Add support for original DS1 REPEAT command. Example: REPEAT 4 TAB
  • View mode /view/ endpoint can be used to automatically route to /pro/ or /community/ based on authentication
  • View mode now displays device mode and payload name
  • Update Packet Squirrel syntax highlighting and autocomplete

Fixes & Improvements

  • Fix an issue where MAN_ PROD_ data values could collide with user variables at compile time
  • Fix an issue in the compiler where lines that contained STRING or STRINGLN could cause undefined behavior due to lack of preprocessing
  • Fix an issue in autocomplete where IF_DEFINED_TRUE would incorrectly be suggested as IF_DEFINE_TRUED
  • Fix an issue with ATTACKMODE syntax highlighting affecting the next line
  • Importing payload via URL now sets the current filename
  • Fix highlighting issue with HOLD

New features

  • Add support for O.MG Logo O.MG devices
  • Add View Mode - view payloads (via URL) with full syntax highlighting
  • Pro Edition
    View Mode - Ducky live error checking (if enabled) providing all info,warning and error annotations
  • Pro Edition
    View Mode - Import payload directly into editing session
  • Pro Edition
    Add additional support for over 160 languages. Mode detected automatically via file extension
  • Pro Edition
    Add sublime inspired scroll view for code navigation
  • Pro Edition
    Change Quick Action Toolbar layout to vertical to prevent overlapping code for a better experience
  • Pro Edition
    Added cursor + line info to bottom right of editor with Payload Size
  • Pro Edition
    Added Editor Full screen mode (Quick Action Toolbar) and Mobile Full Screen (Tools)
  • Pro Edition
    Added link to BETA
  • Pro Edition
    Added customizable print margin width
  • Pro Edition
    Add compiler option to treat STRING blocks as HEREDOC
  • Add new STRING_ and STRINGLN_ block commands to support embedded language editor modes (both inline or block format) Supported embedded language commands:
    • STRING_POWERSHELL & STRINGLN_POWERSHELL
    • STRING_BASH & STRINGLN_BASH
    • STRING_BATCH & STRINGLN_BATCH
    • STRING_JAVASCRIPT & STRINGLN_JAVASCRIPT
    • STRING_HTML & STRINGLN_HTML
    • STRING_RUBY & STRINGLN_RUBY
    • STRING_PYTHON & STRINGLN_PYTHON
  • Pro Edition
    Embedded language STRING_ and STRINGLN_ commands enable full syntax highlighting and autocomplete for the specified language
  • Add support for KEYCODE command for directly injecting keycodes
  • Make 0x optional for commands that exclusively take HEX as arguments
  • Annotate lines modified by DEFINE
    • Pro Edition Configurable in Compiler Options
  • Add new preprocessor directives to include/exclude code at compile time:
    • IF_DEFINED_TRUE
    • IF_NOT_DEFINED_TRUE
    • ELSE_DEFINED
    • END_IF_DEFINED
  • Add REM_BLOCK...END_REM syntax to support comment blocks
  • INJECT_MOD command can now be used inline
  • Add INJECT_VAR for injecting DuckyScript 3 variables that contain keycodes
  • Add new internal variables
    • $_RANDOM_LOWER_LETTER_KEYCODE
    • $_RANDOM_UPPER_LETTER_KEYCODE
    • $_RANDOM_LETTER_KEYCODE
    • $_RANDOM_NUMBER_KEYCODE
    • $_RANDOM_SPECIAL_KEYCODE
    • $_RANDOM_CHAR_KEYCODE
  • Update Ducky extensions
  • Extensions automatically insert as folded when added from auto-complete menu
  • Errors and warnings now highlight the entire line accordingly
  • Info, warning and error annotations now appear inline when clicked in the gutter or via the counts above editor.
  • Add Full Screen button to Tools menu for mobile devices for improved layout and scrolling experience
  • Add print margin width option
  • DEFINE with labels that start with # will now expand inline even when touching other words
    example:
    DEFINE #URL example.com
    STRING https://#URL?param=1
  • Only Allow DuckyScript 1 option automatically disables DELAY optimization that would produce DuckyScript 3 encoding
  • $_RANDOM_INT can now be used as a parameter to DELAY
  • Added spinner to indicate on change processing to breadcrumbs
  • Added link to PayloadStudio documentation within Help
  • Links for Shop, Docs, Payloads and GitHub are now all device specific

Fixes & Improvements

  • Fix UI inconsistencies and clarify settings labels + tooltips
  • Fix an issue where compiler mistakenly misidentified complex RETURN statements as variable declarations causing it to throw an error
  • Fix a 2 byte inaccuracy in compiled payload size calculations that resulted in post-processed empty payloads not being detected as empty
  • Fix a bug where characters not found in keymap would not provide a useful error
  • Fix zoom on mobile zooming entire app
  • Fix zoom keyboard shortcuts not passing through to focused editor
  • Fix blurry text for animated elements
  • Fix issue where certain dialogs did not display properly
  • Fix issue where less important annotations clobbered more important ones
  • Update and improve DuckyScript highlighting and autocomplete across all devices
  • Remove UI elements from device modes they do not apply to
  • Improve DuckyScript error detection and messages
  • Various improvements to editor and performance.
  • Rename Logout button to Log in for community edition to match its functionality
  • Improve doc scrolling and height update mechanisms
  • DELAY with invalid parameter will now throw an error
  • STRING without parameter will now throw an error
  • Missing END_BUTTON for a BUTTON_DEF will now throw an error
  • Duplicate DEFINEs now throw errors
  • Remove Editor Height setting (no longer used)

Fixes

  • Fixes to language local file upload and import via URL

New features

  • Update extensions
  • Update extensions by clicking modified/out-of-date annotation

Fixes

  • Reduce change session history will prevent save

New features

  • Pro Edition
    Full DUCKY_LANG Language Editor (Syntax highlighting, Error checking, Toolbar)
  • pro edition
    Full DuckyScript Breakpoint Editor (Syntax highlighting, Autocomplete, Toolbar)
  • pro edition
    'Pin Edit' IDE Setting replaced with 'Quick Action Toolbar'
  • pro edition
    Added new actions to editor toolbars
  • pro edition
    Added 'Delete Console History on Compile' Option
  • pro edition
    Added 'Clear Console on Compile' Option
  • pro edition
    Added 'Show info, error and warning counts above editor' option
  • pro edition
    Added 'Lock compiler version to DuckyScript Version 1.0' Option
  • pro edition
    Added 'Allow DEPRECATED DuckyScript 1.0 Fallback Syntax' Option
  • pro edition
    Added 'Allow Implicit Modifiers in Key Combos' Option
  • pro edition
    Improved 'Optimize DELAY encoding' Option
  • pro edition
    Added 'Always use new DELAY encoding' Option
  • pro edition
    Added 'Show remaining payload memory below editor' Option
  • pro edition
    Added 'Annotate expensive operations' Option
  • pro edition
    Added 'Annotate payload memory usage by line' Debugging Option
  • pro edition
    Added 'Annotate Compiler Parser Details' Debugging Option
  • pro edition
    Added 'Annotate Pre-Processor Preview' Debugging Option
  • pro edition
    Added 'Annotate Compiled Bytecode for Injections' Debugging Option
  • pro edition
    Added 'Restore Source' option when payload in editor differs from last compiled version
  • pro edition
    Added Warning to BETA on load.
  • Improved DUCKY_LANG Language file experience, library pre-included, options to upload from url or file
  • Updated DuckyScript 3.0 extensions, autocomplete and syntax highlighting
  • Added automatic payload vs inject.bin change detection, payload studio will now indicate in various ways that the payload in editor differs from the last compiled version
  • Added 'Timestamp Console Messages' as an Option
  • Added 'Open Console Automatically' as an Option
  • Added Tools > Restore Default Settings
  • Further improvements to UX on mobile and non-standard screen sizes
  • Added (and replaced existing) confirmation dialogs
  • Added (and replaced existing) success / warning and errors messages throughout Payload Studio
  • Improved import by URL / upload file UX
  • Some settings moved and or renamed for clarity

Fixes

  • Fixed various default settings values.
  • Fixed a bug that affected variable references used inside of IF statements under hyper-specific naming conditions
  • Improved change detection to reduce load when Live annotation and error checking options enabled.
  • Fixed incorrect compiler warnings and errors.
  • Fixed several UI quirks
  • General stability improvements
  • Improved configuration migrations, version detection and upgrade pathing to allow for smoother transition from BETA and large version jumps

New features

  • Updated DuckyScript 3.0 extensions, autocomplete and syntax highlighting
  • Added commands available on device to Bash Bunny autocomplete.
  • Added commands available on device to Key Croc autocomplete.
  • Added 'Persist Language File' Option
  • Added 'Display DUCKY_LANG Above Editor' Option
  • Added 'Clear Console on Compile' Option
  • Added 'Persist Console' Option
  • Added 'Scroll To End', 'Maximize', 'Drag to resize' options to Console toolbar
  • Escape now will close opened menus from the main menu bar before toggling console
  • Improved Mobile Experience
  • Automatic DuckyScript Version detection
  • Improved Console and Download experience on Compile
  • Improved Console toolbar
  • Keys and modifiers can now be combined arbitrarily as long as the individual keys are defined in the language file

Fixes

  • Fixed an issue where certain STRING commands wouldn't encode
  • Fixed an issue where the encoder wrongly Sanitized/Reformatted special characters for tabbed in STRING commands
  • Fixed an issue where modifiers and combinations not explicitly defined in language file fail to encode, or failed to combine properly.
  • Fixed an issue where live lint could overwrite data from previously compiled inject.bin that had not been downloaded yet
  • Fixed many trivial UI bugs
  • Fixed excessive focus causing mobile browsers to open keyboard automatically
  • Fixed an issue where renaming your payload was difficult to trigger on mobile
  • Fixed an issue where resetting app data failed to redirect or reload
  • Fixed an issue where certain PRO only features mistakenly marked as checked but disabled in Community Edition
  • Fixed an issue where orientation change forced Device Picker menu to animate visibly

Initial Release