1. RPG in a Box
  2. News

RPG in a Box News

Release Notes for v0.6.3.0

New Features/Changes:
  • Added the ability to copy and paste voxels in the Voxel Editor (via Ctrl+C and Ctrl+V or the "Copy" and "Paste" buttons on the Model Tools panel)
  • Added ability to combine items into a stack and to split item stacks by holding Ctrl key to grab one at a time
  • Added "Inventory Widget" property in the Voxel Editor for specifying a custom widget to use for the character's inventory
  • Added "Container Widget" property in the Map Editor for specifying a custom widget to use for an object configured as an item container
  • Added gameplay mechanic setting to the Game Configuration dialog for adjusting the fog of war distance
  • Added setting to widgets for displaying an "X" close button in the titlebar (configurable from the Widget Properties panel when the titlebar is enabled)
  • Added tooltip and hover graphics functionality for widget item slots (storage slots, equipment slots, and crafting input slots)
  • Added preliminary built-in widget for Equipment with a player model element and slots for the default slot IDs of "head", "left_hand", and "right_hand"
  • Added "Capture Image to File" functionality to the Map Editor for capturing a region of the viewport to a PNG file (similar to Voxel Editor)
  • Added "Embark Script" option for objects configured as vehicles in the Map Editor (triggers when the player character enters the vehicle)
  • Added lock icons next to the built-in widgets in the Widget Editor toolbar dropdown to indicate that they can't be edited
  • Added option to the Main Main Editor for specifying whether or not NPCs are allowed to move around when the Main Menu uses a background map
  • Added Steam rich presence value for "Game Configuration" that will display while in the game config dialog
  • Added "General" section to the Combat Editor with initial options for changing the default damage sound effect and toggling the damage shake/flash effect
  • Added editor setting for selection color to the Voxel Editor section and changed the default color to #DFFF00
  • Added placeholder "Screens" tab to the UI Editor in preparation for future functionality (currently this tab only displays a preview of the management screen)
  • Converted the built-in inventory and item container windows over to the new widget system to allow for easier customization in the future
  • Improved keyboard and gamepad movement to be more fluid when controlling the player character (should require less releasing/pressing to continue moving)
  • Changed item quick slot controls to use left-clicking for item usage and right-clicking for clearing the quick slot
  • Updated Widget Editor to allow built-in widgets (inventory, item container, and quick slot bar) to be duplicated into a custom widget
  • Updated item quick slots to display hover graphics and hand interaction cursor when appropriate
  • Updated shop item slots to show an item tooltip upon hovering (including the cost of the item set in the Item Editor)
  • Updated in-game cursor to display how many of an item is currently being held when transferring stacked items
  • Updated "Show Toolbar" and "Hide Toolbar" scripting functions to only work when the Management Screen is enabled
  • Updated turn-based battles to display a health bar over the main player character instead of only over the other party members
  • Updated health bar in the lower left corner to display the active party member's health during turn-based battles (and to be hidden during an enemy's turn)
  • Updated turn-based battle interface to hide the "End Turn" text while the Management Screen is open
  • Updated vehicle interaction to require the "Walk and Interact" path type between the player character's tile and the vehicle's tile
  • Updated Management Screen in-game to remember any custom widgets that were opened when closing then re-opening the Management Screen
  • Moved "Management Screen" options to the "User Interface" section of the Game Configuration dialog (which is now enabled by default)
  • Moved script settings for "Trigger When" and "Triggerable by NPCs" below the source code area on the Entity Properties panel of the Map Editor
  • Enabled caret blinking functionality for various text fields throughout the editor interface
  • Changed default cursor color to #A040FF and default surface edge color to #FF0080 in the Voxel Editor


Bug Fixes:
  • Fixed issue where "Craft Item by ID" widget buttons were not working properly when a recipe required more than one of a particular item
  • Fixed widget element errors that would fill the console when changing the player character's model using the "Set Entity Model" function
  • Fixed issue with 3D model widget elements not being updated when the player character's model was changed
  • Fixed issue with the player's minimap position not being updated in widgets after the player's character model was changed
  • Fixed issue with the indicator for the player's position displaying in the incorrect location in minimap widget elements
  • Fixed issue where items equipped to the player via scripts would not be reflected in 3D model widget elements (when configured with attach points)
  • Fixed issue with item tooltips not being hidden when using the "I" key to close the inventory
  • Fixed issue with entity tooltips not being hidden when using the "I" key to open the inventory
  • Fixed issue with item slot hover graphic not being cleared when using the "I" key to close the inventory
  • Fixed issue where the game cursor and entity tooltip were not being properly cleared when the mouse cursor moved into a widget
  • Fixed issue with positioning of fixed (i.e. non-draggable) widgets when the game was fullscreen or using a window size greater than 1280x720
  • Fixed issue with dialogues failing to start when they were triggered from a button's script within a widget
  • Fixed issue with the frame image not showing properly for newly created widgets (showed as solid blue background instead of the default graphics with rounded borders)
  • Fixed issue with moving an element onto an invalid position in the Widget Editor (element will now revert to its original position instead of being removed)
  • Fixed issue where a element's type icon would inadvertently reappear after moving the element when type icons were disabled on the Widget Editor toolbar
  • Fixed issue where a newly duplicated widget sometimes couldn't be selected from the dropdown in the Widget Editor until re-opening the project
  • Fixed issue with entity references in scripts not being properly converted to strings before being concatenated with another value and displayed
  • Fixed some cases where a script or dialogue could fail when the built-in "self" variable referenced an entity that was previously removed from the scene
  • Fixed issue where items couldn't be equipped to equipment slots if the project did not yet have a "stats.json" file
  • Fixed issue where the matrix dropdown was not being hidden when first importing a QB model into the Voxel Editor and then selecting a VOX file to import
  • Fixed issue where the maximum value for "Initial Frame" was not being properly set in the Map Editor based on the selected entity
  • Fixed issue where "Initial Frame" was not being applied to the model in the Map Editor until focusing another field or selecting another entity
  • Fixed error that occurred in the Map Editor when selecting an item container containing an item that no longer exists
  • Fixed issue where item containers would display with an empty slot in-game when an item in the container had been removed from the item database
  • Fixed surface edge issues that could occur when importing a VOX model with multiple frames into the Voxel Editor
  • Fixed issue where pressing the Enter key in direct entry fields of visual script nodes would insert a line break
  • Fixed issue where the properties tab would incorrectly display Widget Properties when a project was first opened
  • Fixed issue with changes to item costs not working properly in the Item Editor and costs inadvertently defaulting to 15 in-game
  • Fixed wording on "Terrain Types" dialog when setting the terrain types for a vehicle in the Map Editor (changed "character" to "vehicle")


Documentation:
  • Added initial version of built-in docs for "Vehicles" and "Terrain Types"

Copying and Pasting!

Finally implementing a commonly requested feature: copying and pasting in the Voxel Editor! Coming in v0.6.3! :)

Release Notes for v0.6.2.0

Hi, I hope everyone is doing well! Apologies for the amount of time it took to get this release out, but it will fortunately lay some important groundwork for the widget system (and the game interface in general). For now I should be getting back to more frequent updates. Please keep in mind that this is an early first pass of the new widget elements and related features, so there will be bugs and missing functionality. As always, I appreciate everyone's patience and continued support! :)

The new Widget Editor documentation is available both within the editor and online here: https://www.rpginabox.com/docs/doku.php?id=widget_editor

New Features/Changes:
  • Added "Item Storage Slot" as an available element type in the Widget Editor (slot that allows the player to store items into)
  • Added "Equipment Slot" as an available element type in the Widget Editor (allows the player to equip an item to a particular slot ID)
  • Added "Crafting Input Slot" as an available element type in the Widget Editor (slot that is used along with a button having the "Craft Items" action type)
  • Added "Shop Item Slot" as an available element type in the Widget Editor (with initial settings for item and item count)
  • Added "Button" as an available element type in the Widget Editor (with settings for text and image and action options of "Run Script", "Close Widget", "Craft Items", and "Craft Item by ID")
  • Added "Text Field" as an available element type in the Widget Editor (with initial settings for font, font size, and read-only state)
  • Added "Text Label" as an available element type in the Widget Editor (with initial settings for font and font size)
  • Added "Progress Bar" as an available element type in the Widget Editor (with ability to set expressions for current value and maximum value)
  • Added "3D Model" as an available element type in the Widget Editor (initially limited to displaying the player character's model)
  • Added "Minimap" as an available element type in the Widget Editor (initially limited to the existing minimap functionality displayed within the element's area)
  • Added visual script nodes to the Script Editor for "Show Widget" and "Hide Widget" functions
  • Added "Help" button to the Widget Editor toolbar that will jump to the editor's built-in documentation
  • Added description text box and "View Full Documentation" button at the bottom of the Widget Tools panel
  • Added toolbar button to Voxel Editor for capturing an image to a file (from a region of the viewport, similar to character portrait capturing)
  • Added initial management screen functionality in-game (off by default for now, can enabled in settings via Game Configuration -> Experimental)
  • Added initial auto-tiling functionality to the Map Editor ("Single" placement mode only for now - use the new "Create Auto-Tiles" button on the Map Editor toolbar to set up a tileset)
  • Added initial functionality for multi-tile (2x2) characters (to use, set the character's "Size in Tiles" property in the Voxel Editor before placing them into a map)
  • Added options to the "Default Tab" editor setting for each specific UI Editor sub-tab (Theme, Widgets, Main Menu, and Credits)
  • Updated item references in scripting to include support for getting ID and count (for item slot widget elements: $widget.element["0001"].id)
  • Changed tag and name filtering for models in the right-hand side preview list to be case-insensitive


Bug Fixes:
  • Fixed issue with attach point scale values not being properly applied when the values differed throughout a model's animation
  • Fixed issue where attach point markers were not being hidden when capturing a portrait/thumbnail or holding back quote to hide extras in the Voxel Editor
  • Fixed issue with the default zoom level in gameplay settings being incorrectly limited to the current min/max zoom values when "Allow Zooming" was disabled
  • Fixed issue with custom speaking sounds for characters not working properly during dialogues (default would always be used instead)
  • Fixed issue with maximum margin values not being updated based on image size when an image element was selected in the Widget Editor
  • Fixed issue with the game's theme not properly reverting to default settings after ending a dialogue where the last node had a theme override
  • Fixed issue where tiles would sometimes fail to be deleted in the Map Editor and errors would be displayed in the console window when attempting to remove them
  • Fixed issue with the Widget Editor inadvertently catching "Delete" key presses while in the Map Editor, preventing the key from properly deleting tiles and objects
  • Fixed issue with turn-based battles getting stuck when an enemy character had a movement range of zero
  • Fixed issue where using the "Navigation/Interaction" context menu in the Map Editor was not creating an undo action or marking the editor as having changes
  • Fixed issue where using "Load External Image" from the Image Editor dialog would sometimes result in the loaded image becoming distorted
  • Fixed issue with selection markers not being removed in the Widget Editor after selecting an element within a widget then switching to another widget
  • Fixed issue in the Item Editor where changes to an item's details would be lost if filtering the item list without first saving the changes
  • Fixed issue where saving the Item Editor when the item list is filtered would only save the items that were currently visible in the list
  • Fixed issue where dialogues could get stuck when the NPC's model was changed or when the NPC entity was removed during the conversation
  • Fixed issue where the control variable would have an extra dollar sign prefix when duplicating "For Loop" nodes in the Script Editor


Documentation:
  • Added initial version of built-in docs for "Widget Editor", "Widget", and "Management Screen"
  • Added initial version of built-in docs for widget elements "Item Storage Slot", "Item Quick Slot", "Equipment Slot", "Shop Item Slot", and "Crafting Input Slot"
  • Added initial version of built-in docs for widget elements "Text Label", "Text Field", "Button", "Image", "Progress Bar", "3D Model", and "Minimap"
  • Added initial version of built-in docs for "Attach Points" functionality (example images to come in a future update)
  • Added built-in docs for the "Show Widget" and "Hide Widget" scripting functions
  • Updated built-in docs for "Item" to include information about accessing an item's various properties via scripting
  • Updated built-in docs for "Voxel Editor" to include info about "Create Attach Points" mode and "Display Ambient Occlusion" toolbar button
  • Updated old "Decimal" data type text and link to the "Number" data type in the "Print" function documentation

Release Notes for v0.6.1.0

New Features/Changes:
  • Added initial Quick Slot Bar functionality to the game engine (drop an item on a slot to assign it, right-click to use, grab and drop outside of the widget to unassign it)
  • Added setting to the Game Configuration's "User Interface" section for enabling/disabling the quick slot bar (currently disabled by default)
  • Added "Item Quick Slot" as an available element type in the Widget Editor (for use in widgets like the Quick Slot Bar)
  • Added "Image" as an available element type in the Widget Editor (with initial settings for image stretch mode and left, right, top, and bottom margins)
  • Added ability to select and delete elements from a widget in the Widget Editor (left click to select then Delete key to remove)
  • Added ability to move previously placed elements within a widget in the Widget Editor (hold left mouse button and drag to move)
  • Added ability to resize elements within a widget in the Widget Editor (select element then left-click and drag one of the handle squares)
  • Added ability to toggle display of the frame image and titlebar for widgets in the Widget Editor
  • Added ability to set the titlebar text of widgets from the properties panel when the titlebar is enabled
  • Added ability to set the display name of widgets from the properties panel (text displayed in the "Widgets" toolbar dropdown)
  • Added "Element Properties" tab that will display when an element within a widget is selected in the Widget Editor (double-click element to force display of its properties tab)
  • Added save button to the Widget Editor toolbar for saving changes made to custom widgets
  • Added toolbar buttons to the Widget Editor for adding new widgets, duplicating widgets, and deleting widgets
  • Added toolbar button to the Widget Editor for toggling display of element type icons (e.g. potion icon for item quick slots)
  • Added toolbar button to the Widget Editor for opening the project's "widgets" folder in the operating system's file browser
  • Added placeholder list to the Widget Tools panel for elements that will be available in the future but are not yet implemented
  • Added "Create Door" option to the right-click context menu in the Map Editor for quickly generating door scripts (door object and related tiles must first be selected)
  • Added toggle button to the Map Tools panel for disabling auto-connection of navigation paths while in Place mode
  • Added new scripting function "Show Widget" for showing a widget with the specified ID (e.g. show_widget("quick_slot_bar"), visual node to be added in future update)
  • Added new scripting function "Hide Widget" for hiding a widget with the specified ID (e.g. hide_widget("quick_slot_bar"), visual node to be added in future update)
  • Added array function for inserting a value into an array at a specific index/position (e.g. $my_array.insert(1, "A") inserts "A" into the array's second position)
  • Added array function for removing a value from an array at specific index/position (e.g. $my_array.remove(1) removes the value at the second position)
  • Added array functions for clearing an array and for getting the number of elements in the array (e.g. $my_array.clear() and $size = $my_array.size())
  • Added array functions for pushing values onto the beginning or end of an array (e.g. $my_array.push_front("A") and $my_array.push_back("Z"))
  • Added array functions for popping values off the beginning or end of an array (e.g. $first = $my_array.pop_front() and $last = $my_array.pop_back())
  • Added optional fourth parameter to the "Set Entity Script" function for setting tile scripts as triggerable by NPCs (e.g. set_entity_script("my_tile", "spikes", ENTER_TILE, true))
  • Added ability to filter tiles, objects, and characters by name (button next to filter box now lets you switch between "Tag List", "Filter by Tag", and "Filter by Name")
  • Added setting to the in-game options menu for window size (when using "Windowed" display mode), disabled manual window resizing to ensure proper aspect ratio is maintained
  • Added various helpful error messages to the in-game debug console related to invalid array and index references in scripts
  • Moved dropdown for selecting the active widget from the Widget Properties panel to the Widget Editor toolbar
  • Adjusted size of font for the in-game debug console to fix some issues with the vertical alignment of brackets
  • Updated "Duplicate Frame" functionality in the Voxel Editor to carry the frame length multiplier value over to the new frame
  • Updated "Import from External Format" dialog in the Voxel Editor to sort the matrix list alphabetically when importing from a Qubicle file
  • Changed "Random Rotation" setting on the Map Tools panel to an icon toggle button instead of a checkbox


Bug Fixes:
  • Fixed some issues related to changing the initial frame for an entity in the Map Editor when its model contained empty frames
  • Fixed some issues related to the evaluation of conditional expressions when using a relative operator with incompatible operands
  • Fixed some issues related to parsing and order of evaluation when using parentheses in arithmetic and boolean expressions
  • Fixed issue where "Wait" functions in child scripts (via "Execute Script") could inadvertently affect timing of functions in the parent script when running in parallel
  • Fixed issue with entity properties not being accepted in scripting functions where a reference to an entity was expected
  • Fixed issue with variable/group references to moving platform tiles breaking after the tile had been moved to another waypoint
  • Fixed issue with moving platform tiles not properly resuming their movement after loading a saved game
  • Fixed issue with Widget Properties not being hidden when switching to another editor with no properties to display
  • Fixed issue with custom themes not being populated in the Theme Properties panel when the UI Editor was set as the default tab
  • Fixed issue with the script parser breaking when there was an unmatched "end" in a script or the script was empty
  • Fixed issue where party members other than the main player character would sometimes not be able to move during turn-based battles
  • Fixed issue where the player could interact with tiles or objects when an item was currently being transferred with the cursor
  • Fixed issue where the "Replace Navigation" scripting function was no longer working properly with entity groups
  • Fixed issue where objects positioned on platform tiles would remain in place instead of moving along with the tile to its waypoint
  • Fixed issue where using Alt + Left Click in the Map Editor while in single placement mode will inadvertently place a tile
  • Fixed issue with loading a game when the player character was standing on a tile that had its model swapped prior to the game being saved
  • Fixed issue with disabling localization for a dialogue when the game didn't have any translations defined
  • Fixed issue with the credits getting stuck on a black screen, game will now return to the main menu after they have finished
  • Fixed issue where the dialogue window was not being hidden when the last node of the dialogue was a script (until the script had completed)
  • Fixed issue with "\n" not being properly converted to a line break when used with the "Log Message" scripting function
  • Fixed issue where entities within nested arrays would not be displayed properly when logged via the "Log Message" scripting function
  • Fixed issue where the script parser would fail to return a result when a While Loop condition contained a variable name without the dollar sign prefix
  • Fixed "signal is already connected" console errors that would sometimes display when starting a turn-based battle
  • Fixed "set_bg_music" console error when clearing the background music (i.e. setting to "None") in the Credits Editor

Release Notes for v0.6.0.5

  • Added test widget to the Widget Editor with the ability to adjust the number of columns and rows (this widget is only for testing purposes currently)
  • Added toolbar button to the Widget Editor for toggling display of the grid lines (only applicable to the test widget for now)
  • Added Widget Tools panel to the Widget Editor for dragging and dropping elements onto the test widget
  • Added usage information and a list of available commands to the in-game debug console (displayed in the console at startup)
  • Added "help" command to the in-game debug console for displaying the usage information and command list at any time
  • Added "Scale Factor" to the attach point settings in the Voxel Editor for defining how much to scale the attached object by
  • Changed "Detach Object" scripting function to not stop the script if an object couldn't be detached and instead log an error message
  • Updated Voxel Editor to automatically select newly added attach points in the Model Properties panel
  • Updated font used by the default UI theme (PixelMplus) to include Polish diacritic characters (ĄĆĘŁŃÓŚŹŻąćęłńóśźż)
  • Fixed issue where local variables within scripts were not being properly restored when loading a saved game
  • Fixed issue with "for" loops and "while" loops within scripts not resuming properly when loading a saved game
  • Fixed issue with the way entities were being stored in variables and properties, which could cause problems when using "Set Entity Model" or loading a saved game
  • Fixed issue with script parser not allowing the global property syntax where entities are expected (e.g. remove_entity(global.property["x"])
  • Fixed issue with script parser not allowing $my_variable.coord syntax to get an entity's coordinate when the entity is stored in a local variable
  • Fixed issue where deleting the first node in a visual script then undoing the deletion will not update the source code
  • Fixed issue where attach points in a model would sometimes move after opening another model of the same type
  • Fixed issue with script trigger type being lost after changing a tile's model via the "Set Entity Model" function
  • Fixed issue where printing or displaying an array containing entities would inadvertently replace the entity references with their display string
  • Fixed issue with entities not being converted properly for display as a string when inside nested arrays
  • Fixed issue with mouse input in certain editors when the "Item Container" widget was currently selected in the Widget Editor
  • Fixed issue where the Dialogue Editor was not being marked as having changes when dropping new nodes onto placeholders or adding multiple player choices
  • Fixed issue where the "Move Up" arrow button would not work properly for the last node in a series of player choices when its branch was at the bottom of the dialogue
  • Fixed issue with the "Move Up" and "Move Down" arrow buttons not appearing for new player choice nodes until the dialogue was re-opened
  • Fixed issue with the "Move Up" and "Move Down" arrow buttons getting stuck with a "pressed" appearance after being used to move a player choice within a dialogue
  • Fixed caret position error when using the up/down arrows keys to navigate through the command history of the in-game debug console