1. RPG in a Box
  2. News

RPG in a Box News

Release Notes for v0.6.0.4

  • Added placeholder for the upcoming quickslot bar to the dropdown on the UI Properties panel of the Widgets Editor
  • Added "Code Highlighting" section to the Editor Settings for changing the syntax colors of code displayed in the Script Editor, Quick Script Builder, and other editor text fields
  • Added debug console message that will display when the game attempts to execute a script that doesn't exist (e.g. a tile/object script that has been deleted)
  • Added startup tip about double-clicking within the source code area of the Script Editor to unlock it for editing
  • Added startup tip about changing navigation between two tiles using the "Navigation/Interaction" submenu on the right-click context menu while in "Edit" mode
  • Added syntax highlighting to the command line of the in-game debug console (for coloring of script code manually entered into the text field)
  • Added "BLK NEO" 46-color palette (created by BlackedIRL) to the Voxel Editor's built-in set of palettes
  • Changed default syntax highlighting colors for code displayed in the Script Editor, Quick Script Builder, and other editor text fields
  • Changed font for Script Editor and Quick Script Builder to use a better monospaced version of Noto Sans
  • Fixed issue with collision detection on attached objects not working properly (will now detect mouse input and pass it to the parent entity)
  • Fixed issue where model changes (and potentially other properties) were being lost after using "Set Entity Model", then saving a game, loading, and saving again
  • Fixed issue where specifying the target entity by just its ID as a standalone string was not working properly for the "Attach Object" or "Detach Object" scripting functions
  • Fixed several display issues that would occur in the Map Editor when deleting a script that was currently assigned to an entity in the map
  • Fixed issue with undoing deletion of frames in the Voxel Editor where the old current frame was not being hidden and could cause frames to appear overlapped
  • Fixed issue with vehicle settings incorrectly displaying for tiles and characters in the Map Editor (instead of only for objects)
  • Fixed issue with terrain type of "All" not working properly when selected for a vehicle in the Map Editor
  • Fixed issue with parsing of conditional expressions when combining a "contains" expression with another Boolean expression via "and"/"or"
  • Fixed issue with the "Assign Value" template code not including the "$" prefix on "my_variable" when added to a script
  • Fixed issue with the minimum value of the "Z Offset" slider being too low for attach points in the Voxel Editor
  • Fixed issue with some Polish characters not displaying when typed into text fields in the editor
  • Fixed issue with Russian localization for in-game text missing the translations for "Yes" and "No"
  • Fixed issue with incorrect Obsidian theme colors for the Behavior Settings header of the Entity Properties panel in the Map Editor
  • Fixed issue in the Widget Editor where the inventory/item container window textures would not be pixel perfect at certain application window sizes
  • Documentation: Updated "Script Syntax" built-in docs to use the new "$" prefix syntax for variable names
  • Documentation: Updated images and linked various text for "Override Animation", "Play Sound", "Play Animation", "Play Group Animation", "Put Entity", and "Put Player" built-in docs
  • Localization: Added Russian translations for "Add To Group", "Ambient Light", "Animation", and "Animation Types" documentation
  • Localization: Added French translations for "Add To Group" documentation

Release Notes for v0.6.0.3

  • Added ability to rename attach points in the Voxel Editor (either for all frames of the model or for the current frame only)
  • Fixed issue where the terrain type property was not carrying over to tiles already placed within existing maps (tiles will need to be saved again in the Voxel Editor)
  • Fixed issue with evaluation of coordinates in scripts not properly catching null/invalid X, Y, and Z values, error is now logged to the in-game debug console
  • Fixed issue with evaluation of colors in scripts not properly catching null/invalid hex codes, error is now logged to the in-game debug console
  • Fixed issue with "Add Object" scripting function not properly catching null value for tile ID/coordinate, error is now logged to the in-game debug console

Release Notes for v0.6.0.2

Hi everyone! Release v0.6.0.2 contains mostly bug fixes, but there is a change relating to the syntax of local variables that I wanted to call out specifically: going forward, local variable names must now begin with a dollar sign ($). This is to help distinguish variables in scripts and to prevent their names from conflicting with reserved words. Scripts that are already parsed will not be affected, however if you edit a script or create a new one, the parser will give an error when a variable name is missing the "$" prefix. As I understand it may be tedious to fix existing scripts, I am more than happy to help update them for anyone if you have large scripts using a lot of local variables (or even many small ones).​

  • Changed syntax for local variables to require a dollar sign ($) prefix in front of the variable name (e.g. $my_var = 10), updated parser to display appropriate error message
  • Added "duplicate" function for duplicating an array or JSON data (e.g. $array_copy = duplicate($my_array) or $data_copy = duplicate(data["my_file"]))
  • Added "break" keyword to the scripting language for breaking out of either a "for" loop or a "while" loop
  • Added startup tip about holding the right mouse button down to look around freely while in first-person games
  • Added ability to drag and drop script functions into the source code area of the Script Editor (similar to Quick Script Builder)
  • Added error popup that displays when attempting to save a visual script containing variables without the "$" prefix (editor will also revalidate all visual node fields)
  • Updated drag and drop of script functions to insert the source code after the line over which the function is dropped (instead of always at the end of the script)
  • Updated expression builder dialogs in the Script Editor to display error message about the "$" variable name prefix for the exclamation icon's tooltip
  • Updated direct entry fields on visual script nodes to display error message about the "$" variable name prefix for the exclamation icon's tooltip
  • Updated "Attach Object" scripting function to support an additional parameter so the target entity's attach point ID can be different than that of the object's (e.g. attach_object("sword", player, "handle", "right_hand"))
  • Fixed issue with attach points where attaching an object to an attach point was not first removing the existing object on that same attach point
  • Fixed issue with the Dialogue Editor where dialogue text would sometimes be missing when using the default built-in RPG in a Box theme
  • Fixed issue where built-in translations for the game UI would not display when specifying a default locale other than "en"
  • Fixed issue with the game configuration setting for fallback locale not working properly in-game
  • Fixed camera clipping issue that could occur when using orthogonal projection for the default type then loading a map after the previous one used a "Standard" override
  • Fixed issue where using "Reset Camera" functions after the camera was locked and another map had been loaded could result in unexpected behavior (may need to add a "Lock Camera" to some existing scripts)
  • Fixed issue with the "null" keyword not being included in the syntax highlighting logic for scripts
  • Fixed issue with variable name validation on "For Loop" and "Assign Value" visual script nodes where the name would remain invalid when erasing and then re-entering the same text
  • Fixed issue with dialogue/battle marker icons not displaying in the Map Editor when an NPC had the "When Next to Player" behavior setting assigned
  • Fixed error that displays in the console window when capturing a thumbnail for a model in the Voxel Editor
  • Fixed issue where the movement interval values for NPC behavior settings were not being applied properly and would not trigger a change
  • Fixed issue with the "Add Waypoint" function not applying properly in the visual script when manually entered into a script's source code
  • Fixed issue with scripts not parsing correctly when using a local variable for the left operand of a "contains" conditional expression
  • Fixed issue with incorrect line being marked by the script parser when there were syntax errors with "elseif" conditions
  • Fixed error that would occur when manually entering an "elseif" block without any statements into the Script Editor
  • Fixed issue with incorrect Obsidian theme colors for the wizard info box on builder dialogs in the Script Editor (Conditional Expression Builder, etc.)
  • Fixed "is_vehicle" error that would occur when the player clicked on a non-adjacent character to interact (error was displayed upon interaction)
  • Fixed "move_interval" error that would occur in certain scenarios while an NPC's movement behavior was being processed
  • Fixed "marching_cubes" function error that would sometimes display in the console window when saving a model in the Voxel Editor

Release Notes for v0.6.0.1

  • Updated "Duplicate Frame" functionality in the Voxel Editor to include attach points when copying the frame
  • Fixed issue with Linux and MacOS binaries where an A* error would cause games to get stuck after loading a map
  • Fixed issue with choosing a language in the game options menu if the language currently stored in the user's settings file was no longer an available option
  • Fixed issue where custom font settings were not being applied to the Options Menu or Pause Menu if the Main Menu was disabled in the game's configuration
  • Fixed issue where the "Attach Point" tool button would stay highlighted after switching to another voxel tool
  • Fixed issue in the Game Configuration dialog where the "Preset" dropdown was not being disabled when "Custom" was selected for the gameplay type
  • Fixed issue in the Game Configuration dialog where the camera projection dropdown was not being disabled when a built-in gameplay preset was selected
  • Fixed issue where using the "Reset Map" function to reset the current map could result in the script getting stuck or the game crashing
  • Fixed issue where attach points could sometimes not be added at certain heights (validation logic was incorrectly switching grid depth and grid height values)
  • Fixed issue where using the "Detach Object" function and then immediately using "Attach Object" for the same attach point ID would result in the new object disappearing
  • Localization: Added Russian translations for the startup tips shown on the Game Manager dialog

Release Notes for v0.6

New Features/Changes:
  • Added Marching Cubes as a mesh option to the Voxel Editor (group areas of voxels to mesh them separately from others, uncheck "Apply at grid boundaries" to not apply smoothing at grid boundaries)
  • Added ability to define terrain types for tiles (e.g. "water", set from the Model Properties panel in the Voxel Editor)
  • Added ability to define terrain types for characters (options of "All", "Prohibited From", and "Restricted To", set from the Model Properties panel in the Voxel Editor)
  • Added initial functionality for vehicles (select an object in the Map Editor and toggle the "Vehicle" button from its properties - includes options for speed, terrain types, and disembark script)
  • Added game controls for disembarking from a vehicle (Ctrl + Left Click on an adjacent tile, or Ctrl + Arrow Key in the direction of the tile)
  • Added initial functionality for attach points (to add an attach point for a frame, use the new tool with the "link" icon and click a voxel - position/rotation can be adjusted from the Model Properties panel)
  • Added new default editor theme (Obsidian) and ability to change themes from the editor settings (with original Godot theme as an option)
  • Added support for groups to the Voxel Editor, select voxels and press "G" to add to a group (currently only used with Marching Cubes option to allow for separate meshing of voxel groups)
  • Added camera projection option to the Gameplay settings for choosing between perspective and orthogonal when using the standard camera
  • Added new scripting function "Attach Object" for attaching an object to an entity's attach point (e.g. attach_object("axe", player, "right_hand") or attach_object("torch", entity["wall_01"], "decoration"))
  • Added new scripting function "Detach Object" for detaching an object from an entity's attach point (e.g. detach_object(player, "right_hand") or detach_object(entity["wall_01"], "decoration"))
  • Added new scripting function "Reset Map" for resetting a map to its original state
  • Added new scripting function "Create Platform" for configuring a tile as a moving platform and assigning its speed (e.g. create_platform(tile_entity, 20))
  • Added new scripting function "Add Waypoint" for adding a waypoint to a platform tile (e.g. add_waypoint(tile_entity, "waypoint_01", coord[1, 2, 3]))
  • Added function to scripting language for converting a value to a string, for example to append a numeric value to some text (e.g. "123" + str(2
  • 2) will return the string "1234")
  • Added function to scripting language for converting a value to a number (e.g. num("17") will return 17 as a numeric value)
  • Added "round" math function to the scripting language for rounding numeric values (e.g. round(16.8) will return 17)
  • Added "mod" math function to the scripting language for performing modulo operations (e.g. mod(8, 3) will return 2)
  • Added "pow" math function to the scripting language for performing "power of" operations (e.g. pow(2, 5) will return 32)
  • Added "sqrt" math function to the scripting language for calculating square roots (e.g. sqrt(16) will return 4)
  • Added ability to change an entity's interaction cursor via scripts using the syntax .interact_cursor (e.g. entity["dungeon_entrance"].interact_cursor = "stairs")
  • Added ability to set a value within an array by index using assignment statements (e.g. my_array[0] = 10 will set the first value in the array to 10)
  • Added grouping functionality to the Voxel Editor for defining groups of voxels for each frame (select voxels and press "G", defined groups are displayed on the Model Tools panel)
  • Added button at bottom of the Tiles/Objects/Characters model tabs for quickly adding a new resource of that type
  • Added button to grid height control panel in the Map Editor for locking the tile placement grid at its current height
  • Added language dropdown to the built-in documentation viewer to select from the available translations for the current tab
  • Added toolbar button to the Voxel Editor for toggling display of ambient occlusion in the 3D viewport
  • Added size info to the Image Editor when editing UI images (displays the actual pixel dimensions of the file generated when saved)
  • Added startup tip about configuring model animations to play in reverse frame order
  • Added startup tip about importing custom palettes from Lospec.com (PNG Image or Hex File)
  • Added startup tip about the "Apply Palette" tool in the Voxel Editor for fitting a model's colors to a specific palette
  • Added startup tip about the "Preview Game Mesh" button on the Voxel Editor toolbar
  • Added support for the isometric camera to the "Camera Orientation" map setting to indicate its initial direction
  • Added "Widgets" tab to the UI Editor in preparation for future functionality (only for display purposes at this time, specifically to view the built-in inventory and item container windows)
  • Added dropdown to the Item Properties section of the Item Editor for assigning an object model to an item (used for equipment attach points and other future functionality)
  • Updated pathfinding logic to consider terrain types of tiles and the character's allowed terrain types
  • Updated Dialogue Editor to use font and font size from the theme that's currently set as default for text in the NPC, Player, and Message nodes
  • Updated "data" scripting syntax to allow reading of external JSON files within the game folder (via a relative path, e.g. "files/my_file.json")
  • Updated Voxel Editor to allow a maximum of 999 frames per voxel model instead of 99
  • Changed lower limit of the standard camera's pitch to zero in the Game Configuration's gameplay settings
  • Changed icon for button that opens the online wiki version of a documentation page
  • Updated documentation for scripting functions to not use syntax highlighting in the "Signature" code block
  • Tweaked color of "Voxel Outlines" and "Surface Edges" buttons on the Voxel Editor toolbar to stand out more from some of the other icons
  • Title of currently opened game project is now displayed in the application window's titlebar
Bug Fixes:
  • Fixed pathfinding issue where the Z value of tile coordinates was being used in the cost calculations, which would cause some tiles to be improperly avoided in certain scenarios
  • Fixed some issues that could occur in the Voxel Editor when selecting voxels in a frame with others in another frame still selected
  • Fixed issue where the collision override setting for tiles was not overriding the collision area for mouse detection (only the terrain height values)
  • Fixed issue where tile size warning icons were not being refreshed after replacing a map's missing dependencies
  • Fixed issue where using "Save As" to save a 32x32 object as a tile would improperly offset and crop the model
  • Fixed issue that could occur in-game when loading a map having a player override of the same model as the current character
  • Fixed issue with the "Camera Orientation" map setting not working when camera rotation was disabled in the gameplay settings
  • Fixed issue where code blocks within documentation pages could be typed into if focused via the Tab key
  • Fixed error that would occur when an NPC was set to seek out the player and was standing on the same tile as the player
  • Fixed navigation issue that could occur when clicking to interact with an item container while standing on the same tile as the container
  • Fixed issue where the isometric camera override option was not using the proper angle when the game's default camera was set to standard with rotation disabled
  • Fixed camera clipping that would sometimes occur on high/distant objects when using the isometric camera
  • Fixed "remove_from_group" errors that could occur in certain scenarios when loading a map
  • Fixed issue where scripts could become stuck when using the "Hide Group" function to hide a group that was already hidden
  • Fixed issue with the Theme Editor not remembering the currently selected theme when returning to the tab
  • Fixed issue where theme changes were sometimes being lost after switching to another tab and then back to the Theme Editor or after saving and restarting
  • Fixed issue where the "When Next To" settings weren't being checked if an NPC's behavior was changed while next to the player
  • Fixed issue where double quotes in an item's name or description were not being escaped and would prevent the item database from loading
  • Fixed character interaction errors that would sometimes display after calling the "Show Credits" function
Documentation:
  • Updated images and linked various text for "Quick Script", "Quick Script Builder", "Replace Navigation", "Remove Entity", "Recent Files", and "Random Number" built-in docs
  • Added built-in docs for the new "Reset Map" scripting function
  • Added Japanese translations for "Add Character" and "Map" documentation
  • Added French translations for "Add Character", "Add Item To Container", "Add Object", "Add Party Member", and "Add Tile" documentation
  • Added Russian translations for "Add Character", "Add Item To Container", "Add Object", "Add Party Member", and "Add Tile" documentation