1. RPG in a Box
  2. News

RPG in a Box News

Free Ranged Combat (Third-Person)

Hitscan weapons aren't only supported in first-person free movement - you can use them in third-person as well! Right now, as of the latest update! 🥳🙌

[previewyoutube][/previewyoutube]

Release Notes for v1.0.7.3

RPG in a Box v1.0.7.3 is out! This release brings hitscan weapons to free movement! 🥳

Check out this game clip from community member thomas - so cool to see it in action already! 😍

[previewyoutube][/previewyoutube]
View the full release notes below:

Free Movement Updates:
  • Added initial support for hitscan ranged weapons to free movement (instant/direct damage weapons, with projectile weapons coming later)
  • Added "sprint" as a predefined animation name that will automatically play whenever the player character is sprinting
  • Added "Fire Mode" option to the Combat Editor to set the default method by which the player's attacks can be triggered (single vs. automatic)
  • Added "Fire Mode" option to the Item Editor to set the method by which a weapon item can be triggered when used (single vs. automatic)
  • Added "Collision Override" option for characters in the Voxel Editor to allow use of the new collision shape functionality
  • Added "Collision Debugging" setting to the "Quick Play" section of the Editor Settings dialog for displaying collision shapes in-game
  • Added support for "player.direction" to allow setting of the player character's direction via script (e.g. player.direction = NORTH)
  • Added button to the Voxel Editor toolbar for toggling the display of collision shapes when the model is using a custom collision override
  • Updated camera smoothing in third-person free movement to be snappier when tracking the player character's movements
  • Fixed issue where the player character would walk in place if holding multiple movement keys at once that should cancel each other out
  • Fixed issue where the attack animation override for a weapon wasn't being applied unless the player was directly attacking an enemy
  • Fixed issue where collision wasn't being properly created for characters added via enemy spawns or the "Add Character" scripting function
  • Fixed issue where characters configured as passable were colliding with the player character instead of letting them pass through
  • Fixed issue where the mouse cursor was not being hidden after opening and then closing the pause menu while in first-person mode
  • Fixed issue with the "jump" debug console command no longer working and changed the expected velocity value to be in voxels/second to match the editor
New Features/Changes:
  • Added "Attack Cooldown" setting to the Voxel Editor for customizing the cooldown per character ("Default" uses the global cooldown configured in the Combat Editor)
  • Added "Attack Cooldown" setting to the Item Editor for customizing the cooldown of a specific weapon item (can use global default, character default, or custom value)
  • Added "Object Model (View Model)" setting to the Item Editor for specifying the object to attach to the view model (if present) when the item is equipped
  • Added "Spawn Script" setting for enemy spawns in the Combat Editor that's triggered whenever an enemy is generated ("self" will contain a reference to the character)
  • Added "On Open Script" setting for item containers that will run before the container UI is displayed to the player (available on the Entity Properties tab)
  • Added "When Player Collides" behavior setting for NPCs that's triggered when the player collides with the NPC (with initial option to run a script)
  • Added ability to customize the font and font size for widget titlebars (available on the Widget Properties tab below the "Titlebar Text" setting)
  • Updated model animation functionality to automatically play the same animation for any objects attached to that model when one is triggered
Bug Fixes:
  • Fixed issue where equipment objects were not being attached to the first-person view model when equipped via the "Equip Item" scripting function
  • Fixed issue where attached objects would sometimes display in the wrong position when an animation was played for the attachment or certain offsets were used
  • Fixed issue where the default scale for billboard sprite characters was not being applied when spawned via enemy spawns or the "Add Character" scripting function
  • Fixed issue where the default scale for billboard sprite objects was not being applied when added via the "Add Object" scripting function
  • Fixed issue where the built-in player health bar was not displaying the correct value after loading a saved game where their health had changed
  • Fixed issue where enemy health bars would sometimes reappear at incorrect locations after damaging the enemies then dying and restarting the game
  • Fixed issue where enemy health bars would not display when returning to a map with previously damaged enemies until one was damaged again
  • Fixed issue where hitboxes for billboard sprites were not being adjusted to the correct size when using a scale other than the default
  • Fixed issue where the details for a loot drop item would sometimes not display after deleting an item from the loot drop in the Combat Editor
  • Fixed issue where the currency amount wouldn't display on the default inventory widget when using a custom name for the base currency
  • Fixed issue where the base currency would be missing from the list after clearing out a previously assigned custom name for the base currency
  • Fixed issue where some settings were being inadvertently changed when switching between behavior presets in the Game Configuration dialog
  • Fixed issue where the "Collision Shapes" section would sometimes not display when using the "Custom" collision override option for objects in the Voxel Editor
  • Fixed issue where the settings area for collision shapes would incorrectly stay visible after changing the collision override option from "Custom" to another option
  • Fixed issue where the collision shape color box was not updating for the currently opened object after changing the default collision color (if using default)
  • Fixed issue where modifying editor settings when a model was open that used custom collision without any shapes defined could cause an error in the console window
  • Fixed issue where mouse input from certain widget elements could potentially interfere with other UI elements (e.g. inadvertently progressing dialogue)
  • Fixed issue where the player was unable to move up and down (i.e. only left or right) when the management screen was disabled and their inventory was open
  • Fixed issue where the player was inadvertently able to move left and right and interact with objects/characters via spacebar while the management screen was open
  • Fixed issue where signal errors would sometimes display in the console window if an enemy was damaged multiple times in a row in quick succession
  • Fixed issue where the "Wait" scripting function was inadvertently displaying twice in the list of available functions in the Script Editor
  • Fixed issue with missing localization text for the skill slot description that's displayed when selecting the skill slot element on the Widget Tools tab
Documentation:
  • Added initial version of built-in docs for the "Add Waypoint" scripting function and fixed issue with its link incorrectly opening "Add To Group"
  • Updated "Give Item" and "Remove Item" built-in docs to include info about the optional parameter for specifying the target character
  • Updated "NPC Behavior" built-in docs to include the new "collide_with_player" setting that's triggered when the player collides with an NPC
  • Fixed issue with missing localization text for the "Pushing" topic that's displayed in the main index list of the documentation viewer

Free Ranged Combat (First-Person)

100% in-game footage recorded in one take - no cuts, edits, or special effects added in post. Let's go! 😎

Stay tuned for more details! 😊

[previewyoutube][/previewyoutube]

Release Notes for v1.0.7.2

Free Movement Updates:
  • Added initial implementation of free melee attacking for the player character (left mouse button to attack at any time)
  • Added ability to create custom collision shapes in the Voxel Editor for tiles and objects (using cubes and prisms, more to come)
  • Added "Collision Override" option for objects in the Voxel Editor to allow use of the new collision shape functionality
  • Added "Physics" tab to the gameplay section of the Game Configuration dialog for adjusting physics-related settings
  • Added "Jumping" and "Vertical Velocity" settings to the "Physics" tab for toggling jumping and adjusting the vertical velocity for jumping
  • Added "Sprinting" and "Speed Multiplier" settings to the "Physics" tab for toggling sprinting and adjusting the speed multiplier for sprinting
  • Updated collision functionality so that NPCs can now trigger scripts assigned to an object's "Character Collides" event when touching the object
  • Updated collision shapes for characters to be per animation frame and to be box-shaped for better collision detection
  • Updated player movement functionality to trigger "Character Enters Tile" and "Character Exits Tile" scripts
  • Updated player movement functionality so that hostile NPCs will now attempt to attack the player from adjacent tiles
  • Updated player movement functionality to properly support the auto-hiding feature (i.e. hiding groups with the "-hide" suffix)
  • Updated debug console so "self" will reference the entity within interaction range that the player is looking at while in first-person mode
  • Fixed issue where "Character Interacts" scripts could not be triggered when assigned to objects configured as passable
  • Fixed issue where damage/healing numbers were displaying at the center of the map instead of over top of the player character
  • Fixed issue where the "player.direction" variable was not returning the proper cardinal direction when referenced in a script
  • Fixed issue where maps could fail to load when they contained any passable objects configured as billboard sprites
  • Fixed issue where "self" was not returning the player entity when used in the debug console with the cursor over the player character
  • Fixed issue where the collision box for a player character with a smaller/larger default scale was not being created at the correct size
  • Fixed issue where a player character with an empty model or consisting of only attachments would cause the game to not start
New Features/Changes:
  • Added "Field of View" camera setting to the gameplay section of the Game Configuration dialog for adjusting the camera's field of view in degrees
  • Added ability to customize the default player attack cooldown and the default NPC attack cooldown from the Combat Editor's general section
  • Added ability to configure a custom "miss" sound effect in the Combat Editor (played whenever a character misses their attack)
  • Added "Line Mode" setting for text fields to indicate whether it should behave as a single-line field (e.g. for player name entry) or a multi-line field
  • Updated "Character Collides" event for object scripts so that NPCs can now trigger them upon entering the tile with that object (grid-based movement)
  • Updated first-person mode to hide any objects attached to the player character if a view model is defined in the Game Configuration
  • Updated first-person view model functionality to auto-attach an equipped item's object model to the view model if a matching attach point exists
  • Removed old "Free Movement" setting from the experimental section of the Game Configuration dialog as it's now been replaced by the new system
Bug Fixes:
  • Fixed issue where items could not be crafted in-game unless the recipe's ingredients/materials were in numerical order by item ID
  • Fixed issue where the "Move Player" scripting function would no longer work properly and would instead display an error in the debug console
  • Fixed issue where using the "Set Dialogue" function to change a spawned NPC's dialogue could affect other NPCs when both were using "Standard" behavior
  • Fixed issue where modifying the "Triggerable by NPCs" script setting would affect other entities of the same type that had a default script when added to the map
  • Fixed issue where character stats and skills were not being properly restored after loading a saved game (needs a new save to work)
  • Fixed issue where widget text elements were incorrectly showing the placeholder expression after loading a saved game (needs a new save to work)
  • Fixed issue where text fields that had been edited by the player were not being properly restored when loading a saved game (needs a new save to work)
  • Fixed issue where certain widget elements could not be clicked on with the mouse after loading a saved game where the widget was visible when saved
  • Fixed issue where mouse input was being interfered with in the editor when a widget in the active project contained a text field with scrollbars
  • Fixed issue with the stairs in the house of the Default Example Game project template being positioned one voxel too high above the floor
Documentation:
  • Updated "Import Resources" built-in docs to include info about dragging and dropping files onto the application window

Release Notes for v1.0.7.1

New Features/Changes:
  • Added ability to modify the "hostility" setting of an NPC via script (e.g. self.behavior["hostility"] = "always", see docs for all values)
  • Added ability to set an NPC's behavior to null to clear out their behavior via script (as an alternative to assigning an empty string)
  • Added ability to call global functions from the in-game debug console (i.e. those defined in the Game Configuration dialog)
  • Added ability to retrieve or modify a specific position of a string by numeric index (e.g. $x = "Text"; $x[2] = "s"; print($x); will print "Test")
  • Updated "Move Character" scripting function to add an optional third parameter (boolean) to indicate if it should pause until the movement is complete
  • Updated "Behaviors" section in the Game Configuration dialog to no longer redundantly store the name of the behavior preset within its settings
  • Removed "Experimental" from the Global Illumination setting label located on the Map Properties panel in the Map Editor
Bug Fixes:
  • Fixed issue where colors were being applied to the default texture instead of the current one when painting in the Voxel Editor with "Voxel" or "Face" mode
  • Fixed issue where quick slots with items assigned were not being properly restored after loading a saved game (needs a new save to work)
  • Fixed issue where scripts assigned to entities via "Set Entity Script" were not being properly restored after loading a saved game (needs a new save to work)
  • Fixed issue where widgets that were visible when a game was saved were not being displayed after loading (needs a new save to work)
  • Fixed issue where the visibility of elements in a widget was not being properly restored after loading a saved game (needs a new save to work)
  • Fixed issue where entities added to groups or removed from groups were not being properly restored after loading a saved game (needs a new save to work)
  • Fixed issue where entities could be added to the same group multiple times when using the "Add To Group" scripting function
  • Fixed issue where real-time enemies were not attacking the player if given a new behavior with "Attackable in Real-Time" enabled
  • Fixed issue where the "Experience Points" value wasn't being saved when editing behaviors from the Game Configuration dialog
  • Fixed issue where using the "Move Character" scripting function would cause a script to get stuck and not execute the rest of the script
  • Fixed issue where the default scale was not being applied to placed characters or objects in the Map Editor when configured as billboard sprites
  • Fixed issue where player choices would not be visible in dialogues if the "Typing Effect" game configuration setting was disabled
  • Fixed issue where the text of a widget's text field or text label was no longer being updated when modified via script
  • Fixed issue where interactions via space bar were not working for item containers without a script or objects with a character on the same tile
  • Fixed issue where the interaction controls would incorrectly display when the player was adjacent to an object with a collision script

Documentation:
  • Updated "NPC Behavior" built-in docs to include info about the "hostility" setting and its possible values
  • Updated "Move Character" and "Scripting Reference" built-in docs to include info about the optional "pause" parameter