Another sneak preview of GB Studio 4 now with more bug fixes! Everything still subject to change, so make sure you keep plenty of backups of your projects.
If you have any issues with your music not sounding the same, there is a migrator tool available at https://chrismaltby.github.io/gbs-uge-migrator/ (backup before using this too!)
[4.0.0-beta2]
Added
- Add ability for variables to be used for X/Y coordinates in replace tile events
Changed
- Updated Japanese localisation. @tomo666
- Allow event plugins to require("shared/lib/scriptValue/helpers") to access script value helpers
Fixed
- Fix issue migrating "Engine Field Update" events
- Fix issue where shift key no longer allowed line drawing for collisions and tile painting modes
- Fix issue where using recursive scripts could cause UI to lock up while calculating scene sprite tile count and when building game.
- Fix issue where custom scripts parameters were not always updating as parameters were updated
- Fix issue where "If Variable Has Flag" was always false @pau-tomas
- Fix issue where selecting effect column in music editor tracker would cause application to freeze @pau-tomas
- Fix issue preventing documentation being accessed from splash window
[4.0.0-beta1]
Added
- Add ability to launch projectiles at a target actor @patrickmollohan @pau-tomas
- Add angle selector input showing degrees for GBVM angle values @pau-tomas
- Add support for atan2 function in math expressions @pau-tomas
- Add magnitude field to camera shake event @patrickmollohan
- Add checkbox to toggle if new animation should loop when using Set Actor Animation State event @pau-tomas
- Add shortcut to search scenes when in world mode by pressing
/
- Add support from adding sound effects to a project by dragging files into project window (to match how this works for other asset types)
- Add native support for Macs with Apple silicon without needing Rosetta
- Add support for
<<
and>>
operators in math expressions @pau-tomas - Add script debugger pane to World view, when game is run while this is open allows inspecting currently running scripts, setting breakpoints and updating live variable values
- Add 'Color Only' mode. Roughly doubles the amount of tiles available for backgrounds and sprites though game will no longer run on original GB (DMG) hardware
- Add event "Replace Tile At Position" and "Replace Tile From Sequence" to update background tiles, calling "Replace Tile From Sequence" repeatedly will cycle through animation frames
- Add new asset folder "Tilesets" for use in "Replace Tile" events
- Add ability for plugins to define additional scene types by including defined types (e.g.
"sceneTypes": [{"key": "RACING", "label": "Racing 2D"}]
) inengine.json
@pau-tomas - Add ability for
Actor Move Relative
,Actor Set Position Relative
andIf Actor At Position
to use variables as coordinate inputs - Add ability for almost every script event input that supports variables to use advanced values, click the button to the left of the value input to select value types, and combine them with math operators
- Add ability to use variables within Menu and Choice events @pau-tomas
- Add stack preview mode to debugger
- Add ability to set common tilesets between scenes, the common tiles will always be loaded in a consistent order between scenes sharing the same common tileset
- Add ability to set Fade Speed as "Instant" when switching scenes, combine this with use of common tilesets in both scenes to enable seamless scene switching
- Add ability to use variables, advanced values and expressions for coordinates in Change Scene event
- Add ability to "Preview as Monochrome" when using mixed color mode by toggling button at bottom left of World view
- Add ability to provide color PNGs for backgrounds and extract palettes automatically by either clicking "Auto Color" button in brush toolbar or using dropdown on Scene sidebar next to "Background Palettes" label
- Add ability to override tile data for auto colored backgrounds by providing a matching *.mono.png in your assets/backgrounds folder containing a monochrome version of the background. When provided this file will be used for tiles data and the regular image will be used to extract the color palettes (useful for mixed color mode games when auto palettes isn't creating tile data as you'd like automatically)
- Add ability to edit waveforms in music editor using keyboard with ability to copy/paste @pau-tomas
- Add ability to restore scene's default palettes in "Set Background Palettes" (especially useful when using auto palettes)
- Add ability to set filename when creating a new song in music editor
- Add context menus when right clicking on list items, or on scenes/actors/triggers in world view, or tiles on sprite editor view allowing renaming/deleting
- Add ability to multi select scenes by shift click + dragging on world view or shift clicking in scenes list. When multiple scenes are selected they can be moved at the same time
- Add ability to multi select script events by shift clicking the event's header. When multiple events are selected they can be moved, copied, grouped or deleted at the same time
- Add ability for scenes, scripts, palettes and image/music assets to be organised into folders by naming them with path separators (
/
or\
supported) e.g naming a sceneui/menu/Inventory
will place it in a folderui/menu
- Generate
game_globals.h
at compile time allowing access to global variables from C code @pau-tomas - Add support for using random numbers in GBVM RPN instructions @untoxa
- Add
Set Camera Position
event which can be used before scene fade in to instantly move camera to a new location - Add
Script Lock
andScript Unlock
events allowing pausing other scripts and scene updates until the script is completed or unlocked - Add
Build Options
to "Settings" section with option to toggle if "Build Log" should be opened automatically on warnings - Add
Show Navigator
button to World toolbar if navigator is closed - Add ability to rename flags in Variable Flags Add/Clear/Set events @pau-tomas
Changed
- Updated Polish localisation. @ReptiIe
- Updated to latest GBVM
- Updated code generation to reduce access to stack @pau-tomas
- Update Variable Uses sidebar to include any uses within Scripts @pau-tomas
- Improved organisation of "Add Event" menu by grouping related event types
- Updated German localisation. @gonzoMD
- Add Event Menu highlights matching text when searching
- Updated to latest GBDK-2020
- Dragging scenes now snaps to an 8px grid allowing easier alignment of scenes
- Camera speed events updated to use pixels per frame values like actor movement, allowing more precise speed control and speeds faster than 1px per frame
- Build information and warnings moved to "Build Log" section of Debugger
Fixed
- Fix localisation for default names of scenes, actors and triggers, new entities no longer hard coded to use English names
- Fix issue where clicking on a scene would sometimes not cause it to become selected
- Fix issue where dragging World using middle mouse button and releasing button with cursor outside of window would cause scrolling to still be enabled
- Fix issue where double clicking scene search input would cause window to become maximised on macOS
- Fix issue where pasting a "Call Script" event could sometimes incorrectly say script has been modified if project hadn't been saved and reloaded first
- Fix issue where creating a new pattern in music editor would sometimes cause the other patterns in the song to play at a lower octave
- Fix issue where variables in Dialogue and Math inputs could appear above script tabs
- Fix calculation of last parallax layer height in editor input @pau-tomas
- Fix compiler warning when using some unary operators in While loop @pau-tomas
- Fix issue where fonts referenced from plugins were not always being included in compiled game
- Fix issue where navigator split sizes would update every time a project was opened, causing unnecessary changes when project stored in version control system
- Fix issue where some slower camera speeds weren't actually slower
- Fix issue where setting "Show Connections" to "None" would prevent Player start position from being visible/draggable
- Fix issue where note lengths for wave instruments in .uge files were not being stored according to file specification. This may cause some .uge files created with older builds of GB Studio to not sound correct. If you need to fix any .uge files, you can use this migrator tool
- Fix issue where navigator sidebar could sometimes not be wide enough to show Add and Search buttons in section headers
- Fix issue where document wasn't being flagged as modified until first change after migrating a project
Removed
- Removed "Build & Run" section, all previous functionality is now available in "Build Log" section of Debugger