1. RPG in a Box
  2. News

RPG in a Box News

Release Notes for v1.0.8.6

New Features/Changes:
  • Added initial implementation of ranged enemy projectiles in free movement (i.e. projectiles will no longer track the player when fired in free movement)
  • Added initial support for using skills during tactical turn-based battles (via the "Use Skill" action if the active character has any available skills)
  • Added initial support for using skills during menu-driven turn-based battles (via the "Use Skill" menu if the active character has any available skills)
  • Added "Cooldown (Turn-Based)" setting to the Skills section of the Stats Editor for specifying a skill's cooldown when used during turn-based battles
  • Added "Usable in combat" setting to the Skills section of the Stats Editor for indicating whether or not a skill is able to be used during battles
  • Added "Tick On Apply" setting for "Healing/Damage Over Time" status effects to indicate if the effect should tick when first applied to a character
  • Added "Duration (Turn-Based)" and "Duration (Roguelike)" settings for the temporary stat buff and debuff skill effects in the Stats Editor
  • Added "Party" as a target option for skills in the Stats Editor (when using a script as an effect, the $target variable will contain an array of members)
  • Added "VHS/CRT Monitor Effect" feature to the Map Editor for enabling the effect on a per map basis, with settings for customizing its appearance
  • Added ability to assign placeholder images to storage, equipment, and crafting slots (i.e. an image that will be displayed whenever the slot is empty)
  • Added ability to use custom currencies for an item's cost in the Item Editor (used by widget shop slots when the player buys an item from the slot)
  • Added new "Select Attach Point" mode for the attach point tool in the Voxel Editor for selecting and deleting attach points via the 3D viewport
  • Added ability to cut, copy, and paste single objects and characters in the Map Editor via the Ctrl + X, Ctrl + C, and Ctrl + V shortcut keys
  • Added support for removing enemies and party members via script during tactical turn-based battles, either via damage or the "Remove Entity" function
  • Updated Stats Editor to prevent a custom stat from being removed if it's tied to a custom currency (an informational dialog will display indicating this)
  • Updated free movement disclaimer dialog to indicate that bugs can now be submitted and that the use of free movement should be noted in the bug report
  • Updated About dialog to include credit to Peter Höglund of Godot Shaders for the VHS/CRT monitor effect used by the Map Editor and in-game functionality
Bug Fixes:
  • Fixed issue where the "Interval (Turn-Based)" setting for status effects in the Stats Editor was not being properly saved when modified
  • Fixed issue where using the "Put Player" function in first-person free movement mode could cause the orientation of the player model to become out of sync
  • Fixed issue where any skills assigned to a character were lost when their model was changed using the "Set Entity Model" scripting function
  • Fixed issue where the "Effect Details" section was incorrectly displaying when the selected skill in the Stats Editor didn't have any effects assigned to it
  • Fixed issue where custom stats added in the Stats Editor would not show in the "Associated Stat" dropdown for currencies until the project was reopened
  • Fixed issue where the mouse cursor wasn't being hidden/shown when using the "Change Camera" function to switch between camera types in free movement
  • Fixed issue where the player was unable to seamlessly transition into strafing left/right in first-person grid-based mode when holding down a strafe key
  • Fixed issue where dragging an item outside of a widget could cause the item to disappear when using free movement with the management screen disabled
  • Fixed issue where defeated enemies could still move in roguelike mode if they had a "death" animation and the "Remove Defeated Enemies" setting was disabled
  • Fixed issue where a battle could fail to start if it was the first one created in the Combat Editor without changing maps and no "combat.json" file existed yet
  • Fixed issue where the built-in player health bar would display during tactical turn-based battles even with the "Show Player Health" setting disabled
  • Fixed issue where floating health bars were not being properly removed when using "Remove Entity" to remove a character or a tile occupied by characters
  • Fixed issue where any existing floating health bars for the current map were not being hidden when transitioning to a turn-based battle
  • Fixed issue where widgets were not being updated when a skill with a stat buff/debuff effect was used (e.g. text labels displaying the stat)
  • Fixed issue where the main player character would disappear after transitioning from a free movement map to another map for a menu-driven turn-based battle
  • Fixed issue where the camera could become incorrectly offset after transitioning between free movement maps (camera is now reset when loading a free movement map)
  • Fixed issue where the dialogue window would remain visible if the "Restart Game" scripting function was called while the window was being displayed
  • Fixed issue where the dialogue window would remain visible if the "Load Map" scripting function was called while the window was being displayed
  • Fixed issue where entity tooltips would remain visible if the "Restart Game" scripting function was called while the tooltip was being shown for an entity
  • Fixed issue where entity tooltips would remain visible if the "Load Map" scripting function was called while the tooltip was being shown for an entity
  • Fixed issue where the "death" sound effect would play after finishing a tactical turn-based battle then damaging an enemy in free movement
  • Fixed issue where enemy spawns containing a character stored within a subfolder could cause the spawn to break when killing an enemy or loading a save
  • Fixed issue where the "Character Collides" trigger event for objects was incorrectly triggering in free mment mode when the player entered the object's tile
  • Fixed issue where the "When Player Collides" NPC behavior was incorrectly triggering in free movement mode when the player entered the NPC's tile
  • Fixed issue where the "Interact" control icon/text was not being hidden whenever a dialogue or message was being shown in free movement mode
  • Fixed issue where dialogue couldn't be progressed by clicking the left mouse button (only using the space bar) if the screen was currently faded out
  • Fixed issue where entities could no longer be interacted with by the mouse cursor if a clamped or one-time animation was played followed by a looping animation
  • Fixed issue where a "Remove Entity" error would sometimes display in the debug console after the player character had been defeated by a projectile
  • Fixed issue where deleting an entity in the Map Editor then undoing the action would not properly add the entity's ID back to the map's entity ID lookup
  • Fixed issue where the eyedropper tool in the Map Editor would not always select the proper model if there were multiple with the same name within subfolders
  • Fixed issue where undo/redo actions were not being created when assigning an entity ID to an entity from the Map Properties tab in the Map Editor
  • Fixed issue where the Voxel Editor would be marked as having changes when switching to an attach point with scale values differing from the previously selected one
  • Fixed issue where cancelling out of the "New Attach Point" dialog then changing to the "Attach Voxels" tool could cause the cursor to inadvertently add voxels
  • Fixed issue where conditional expressions in the Dialogue Editor would show the default expression in compact mode after saving and reopening the dialogue
  • Fixed issue where duplicating a "Display Choices" node in the Script Editor would use the "Assign Value" node for the copy instead of "Display Choices"
  • Fixed issue where compound operators (+=, -=,
  • =, /=) were not working properly when used to modify the value of a custom numeric item property
  • Fixed issue where built-in entity properties were not being accepted when used with a local variable and the "==" operator in a conditional expression
  • Fixed issue where names for items assigned to a container in the Map Editor would display as blank if a translations file didn't exist for the default locale

Release Notes for v1.0.8.5

  • Added ability to swap out items in equipment slots without first needing to remove any existing item that's currently assigned to the equipment slot
  • Updated icon for skill slots in the Widget Editor to use the new "spell" icon in place of the "jump" icon (which is now used for free movement/physics)
  • Fixed issue where dragging an existing skill slot in the Widget Editor to move it to a different position would cause the skill slot to disappear
  • Fixed issue where the "!contains" conditional operator was returning the incorrect result when checking that a codex didn't contain the specified key
  • Fixed issue where the "Assign Value" visual script node wasn't properly accepting some expressions as valid when entered into the "Variable or Property" field
  • Fixed issue where the "Interact" control icon/text was incorrectly remaining visible in the bottom right corner after a turn-based battle was started
  • Fixed issue where the "Attack" control icon/text was not properly showing during tactical turn-based battles if the player turned to face an adjacent enemy
  • Fixed issue where the icon for the item held with the cursor would sometimes incorrectly display a count of 0 when grabbing an item from an equipment slot
  • Fixed issue where changing the action for an existing input binding in the Game Configuration dialog was not being properly applied to the binding

Release Notes for v1.0.8.4

New Features/Changes:
  • Added "Disable Action" and "Enable Action" scripting functions for disabling/enabling input actions via script (e.g. "move_up", "jump", "zoom_camera_in", etc.)
  • Added "Floating Health Bars" setting to "General" section of the Stats Editor for toggling the bars shown during battles or when a character has lost health
  • Added "Damage/Healing Popups" setting to "General" section of the Stats Editor for toggling the popups shown when a character is damaged or healed
  • Added "Level/XP Popups" setting to the "General" section of the Stats Editor for toggling the popups shown when a character receives XP or levels up
  • Added ability to assign custom equipment slot configurations (created in the Stats Editor) per character from the Model Properties tab in the Voxel Editor
  • Added ability to customize or disable the default "death" sound effect in the Combat Editor (played whenever a character has been defeated)
  • Added "Strafe Left" and "Strafe Right" as bindable actions to the Game Configuration dialog (default of Q/E keys, only applicable to first-person grid-based)
  • Added "End Turn" scripting function for ending the active character's turn during turn-based battles or ending/passing a turn for the roguelike action system
  • Added "Change Player" to the "Available Functions" list in the Script Editor (uses a "Source Code" node until a visual node is implemented in a future release)
  • Updated "End Turn" input action ("T" key by default) to also work while the roguelike action system is active (will end/pass a turn for the player)
  • Updated management screen to store separate layouts per character in order to maintain widget positioning/visibility when swapping between player characters
  • Updated real-time health bars in grid movement to only display once a character is hit by a projectile, rather than displaying as soon as the projectile was fired
  • Updated dialog for changing an input binding's action with icons indicating when an action is restricted to certain modes (first/third-person, grid/free movement)
  • Updated "noclip" debugging feature so its movement controls will now work with the new input binding system (free movement uses jump/crouch for up/down)
  • Updated "Change Player" scripting function to throw an error to the debug console when used in free movement mode until it can be properly implemented
Bug Fixes:
  • Fixed issue where the player would continue moving in free movement after certain events like starting dialogue, opening item containers, dying, etc.
  • Fixed issue where the player was incorrectly starting at coordinate (0, 0, 0) when loading a game in free movement (camera would also be out of sync in third-person)
  • Fixed issue where the first-person camera's vertical mouse look limits could become out of sync after loading another map while the view was off-center
  • Fixed issue where pressing the movement keys in free movement during dialogue would cause the player character's walk animation to start playing
  • Fixed issue where the visual movement squares for tactical turn-based battles were shown on tiles even if they were a prohibited terrain type for that character
  • Fixed issue where the enemy counter text was not updating at the very start of an enemy's turn during tactical battles, only after they had started moving
  • Fixed issue where real-time health bars were not displaying for characters when damaged by projectiles in free movement, only by melee weapons
  • Fixed issue where the player's XP and Level Up popups in free movement were incorrectly displaying at the map's origin instead of the player's current position
  • Fixed issue where the "Request Entity" function was not working properly when used with first-person free movement (cursor for selecting an entity wouldn't appear)
  • Fixed issue where entity tooltips ("Tooltip" setting in the Map Editor) were not displaying in free movement when hovering over the entity with the mouse cursor
  • Fixed issue where the "death" sound effect was not playing when characters were killed by a status effect in real-time or via the "Damage Entity" function
  • Fixed issue where the equipment widget would no longer function properly after using "Set Entity Model" to change the model of the player character
  • Fixed issue where the "Attack Cooldown", "Real-Time Fire Mode", and "Min/Max Range" settings for weapons were not being applied when used as default equipment
  • Fixed issue where using the "Change Player" function was not properly updating the management screen's equipment widget to reflect the active character's equipment
  • Fixed issue where a duplicate of the original player character would be present after using "Change Player" to switch to an NPC then restarting the game
  • Fixed issue where the inventory widget would incorrectly display when first opening the management screen even with the inventory toolbar button disabled
  • Fixed issue where equipment widgets weren't properly updating when switching between player characters in real-time via the "Change Player" function
  • Fixed issue where widgets that had been displayed via script were not being hidden when quitting to the title screen or restarting the game
  • Fixed issue where the player could still zoom the camera in and out even when the binding actions for "Wheel Up" and "Wheel Down" were set to "None"
  • Fixed issue where the equipment slot configurations in the Stats Editor were not being properly cleared out when closing a project then opening another
  • Fixed issue where placeholder expressions in widget text elements would show the literal expression instead of the evaluated result after restarting a game

Release Notes for v1.0.8.3

  • Added initial support for enemies to use ranged weapons in tactical turn-based combat (weapon will be automatically used when given and equipped)
  • Added initial support for status effects to tactical and menu-driven turn-based combat (status effects will tick at the beginning of a character's turn)
  • Added "Interval (Turn-Based)" setting to the Stats Editor for configuring how often an applicable status effect will tick when applied during turn-based battles
  • Added "Default Equipment" section for characters to the Voxel Editor's Model Properties tab (items will be automatically given and equipped on startup)
  • Updated standard camera functionality for tactical turn-based combat to now track enemy characters during their turn instead of only party members
  • Updated limit for the camera zoom's maximum value in the Game Configuration dialog to 1000 voxel units instead of the previous limit of 300
  • Updated "Attach Effect" failure message from an error to a warning when attempting to attach an effect to an entity without the specified attach point
  • Updated signature hints used by the Script Editor and debug console's auto-complete to bring it up to date (37 event functions, 18 utility functions)
  • Fixed issue where "On Hit" scripts were not being properly triggered when enemies equipped with melee weapons would attack a player character
  • Fixed issue where real-time health bars were not displayed or updated for characters that were being damaged by a "Damage Over Time" status effect
  • Fixed issue where a status effect's image and description were inadvertently cleared out in the Stats Editor when the "Effect Type" setting was changed
  • Fixed issue where the "Interval (Roguelike)" setting in the Stats Editor was not being hidden for status effects of type "Stat Buff" or "Stat Debuff"
  • Fixed issue where enemies with the "Attackable in Real-Time" setting enabled were able to attack player characters in real-time during tactical turn-based battles
  • Fixed issue where enemies that had spawned via an enemy spawn could not be attacked with the left mouse button after saving then loading a game
  • Fixed issue where current counts for enemy spawns were not being stored when saving a game, causing the spawn limit to potentially be exceeded when loading
  • Fixed issue where a player character's idle animation wouldn't trigger after having attacked an enemy with a ranged weapon then stopping on a tile
  • Fixed issue where the "Two-Dimensional" setting in the Voxel Editor was not properly preventing characters from rotating towards their movement direction
  • Fixed issue where the "Character Stops on Tile" event (global and per tile) was not being triggered when an NPC was moved via "Put Entity" (only the player)
  • Fixed issue where widget element properties (.text, .script, etc.) were not properly being allowed as operands in conditional expressions
  • Fixed issue where shop item slots were being inadvertently cleared out if the game was restarted instead of being reset to their original state
  • Fixed issue where an input binding could not be added back again after being removed unless it was also removed from the other keyboard layout first

Release Notes for v1.0.8.2

  • Added support to free movement for the "Request Coordinate" and "Request Entity" scripting functions (previously would only work when used in grid movement mode)
  • Added support to free movement for interacting with items that have been dropped onto the ground (via the "Interact (Adjacent)" action, "E" key by default)
  • Added "Message Log Timeout" setting to the Game Configuration's UI section (duration to wait before clearing messages logged via the "Log Message" function, 0 = never clear)
  • Added "Insert Expression" button to the Element Properties tab for easily adding placeholder expressions to text labels and text fields via the Expression Builder dialog
  • Added "Player Stat", "Party Member Stat", "Entity Stat", "Player Direction", "Entity Direction", and "Initiator" to the Expression Builder in the Script Editor
  • Updated new input bindings system so the "Interact (Cursor)" action will work with custom controls for interacting with items that are dropped onto the ground
  • Fixed issue where the "Character is Damaged" and "Character's Health Changes" global event scripts were not being triggered during menu-driven combat
  • Fixed issue where characters were not being properly defeated when reduced to zero health from a status effect that applied damage over time
  • Fixed issue where changing the action for a built-in binding on the Input Bindings tab wouldn't save properly the first time and would need to be assigned again
  • Fixed issue where text labels and images on widgets were no longer allowing mouse input to pass through the widget when the "Mouse Input Pass-Through" setting was enabled
  • Fixed issue where widget skill slots were not being properly cleared out when assigning null or an empty string to the slot's "skill" property
  • Fixed issue where the default scale was not being applied to auto-attached objects in the Voxel Editor (only the scale of the attach point itself was applied)
  • Fixed issue where items that had been dropped onto the ground could no longer be picked up in grid movement (player would walk to the tile instead)
  • Fixed issue where the "Request Entity" scripting function was no longer allowing the selection of an entity when triggered from grid movement mode
  • Fixed issue where an invalid coordinate could potentially be selected via the "Request Coordinate" function when quickly clicking the mouse multiple times in a row
  • Fixed issue where collision was not being properly set up for tiles that were added in-game in free movement mode using the "Add Tile" scripting function
  • Fixed issue where the player could inadvertently perform actions like move, jump, and crouch while the management screen was open in free movement mode
  • Fixed issue where the player would keep moving forward when attempting to interact with an object from a distance while in first-person grid movement
  • Fixed issue where the player could still move with the left mouse button in first-person grid movement even if mouse movement was disabled in the Game Configuration
  • Fixed issue where a quick script assigned as a default script for a tile or object was not being applied in-game when using the "Add Tile" or "Add Object" function
  • Fixed issue where the "Modify Navigation" and "Replace Navigation" scripting functions would not accept an explicit numeric value for the navigation type parameter
  • Fixed issue where the Pause Menu wouldn't open if the widget assigned as the player character's custom inventory widget was currently visible
  • Fixed issue where the "map.name" built-in variable (containing the current map's name) was not properly being allowed as an operand in conditional expressions
  • Fixed issue where the right operand was inadvertently being converted to an integer when modifying a character's "speed" stat with a compound operator