RPG in a Box - Ol' Smaug
  • Added ability to copy and paste properties between entities in the Map Editor (via right-click context menu in Edit mode)
  • Added initial "for" loop support to scripting language for iterating over entities within a group (example: for e in group["xyz"] do play_animation(e, "open") end)
  • Added syntax to scripting language for getting all entities within a group (e.g. group["xyz"], for usage with "for" loops)
  • Updated "contains" operator in scripting language to support minimum item count (e.g. player.inventory contains[3] "ITEM_0001" to check that the player has at least 3 of ITEM_0001, any scripts using "contains" may need to be edited and re-saved)
  • Updated Variable Expression Builder dialog to include entity coordinate references as options to select from
  • Changed A/Z shortcut keys in Map Editor (raise/lower tile placement grid) to require modifier keys and allow jumping in increments similar to scroll wheel (Shift + A/Z to adjust by one voxel, Shift + Ctrl + A/Z to adjust by increment)
  • Fixed issue where certain functions referencing a newly added entity could potentially fail when used directly after "Add Tile", "Add Object", or "Add Character"
  • Fixed issue with post-load scripts for maps not triggering properly in-game
  • Fixed issue with mesh generation where texture image file could potentially run out of space for larger, more complex models
  • Fixed issue where using WASD/arrow controls would interrupt the player's current animation when player movement is locked
  • Localization: Added localization for Simplified Chinese (selectable from the general editor settings)
  • Documentation: Added built-in documentation for the "Add Object" scripting function
  • Documentation: Added built-in documentation for the "Hide Group" scripting function
  • Documentation: Added built-in documentation for the "Show Group" scripting function
  • Documentation: Added built-in documentation for the "Hide Inventory" scripting function
  • Documentation: Added built-in documentation for the "Print To Console" scripting function
  • Documentation: Added built-in documentation for the "Execute Script" scripting function
  • Documentation: Brought the "Wait" built-in documentation up to date for any changes from v0.4 to v0.5
RPG in a Box - Ol' Smaug
  • Added "Default Camera" setting for the Map Editor to allow selection of a default camera type (Standard, Free, or Isometric) accessible from the Editor Settings dialog
  • Added antialiasing setting (MSAA 2x, 4x, 8x, 16x) to the Editor Settings dialog for the Map Editor and Voxel Editor and to the in-game options menu
  • Added ability to set the initial frame of an entity's model after placed into a map (via the Entity Properties panel or -/= shortcut keys while selected in Edit mode)
  • Added support to scripting language for setting global and entity properties via direct assignment (e.g. global.property["xyz"] = 10)
  • Added support to scripting language for using "and"/"or" to connect multiple expressions within a condition (e.g. if player.inventory contains "ITEM_0001" and random(1, 20) > 15 then...)
  • Added support to scripting language for Cyrillic characters within strings (e.g. for the "Display Message" function)
  • Added support to scripting language for assigning behavior presets to characters (e.g. entity["slime01"].behavior = "Hostile Slime")
  • Added logic to update model collision used for mouse detection when an animation has stopped on a new frame (e.g. a clamped animation for an opening door)
  • Added support for using OGG files for sound effects (Game Explorer will now show .wav and .ogg extensions for sound resources)
  • Added ability to zoom in and out in the Map Editor using Ctrl + Middle Mouse Button + Drag Up/Down
  • Added line numbers to script source code fields in the Script Editor and Quick Script Builder dialog
  • Added ability to enter source code editing mode in the Script Editor by double-clicking within the source code's text area box
  • Added ability to rotate the camera in Map Editor free cam mode by holding Space in addition to the middle mouse button
  • Added backslash (\) as an alternate key for opening the in-game debug console
  • Improved performance of parser for scripting language (parsing time of scripts should now be significantly faster)
  • Updated "Play Sound" function to support inclusion of file extension (if none specified, the game will first look for a *.wav and then a *.ogg for backwards compatibility)
  • Updated "Import Dropped Files" dialog to allow selection of either "Music" or "Sound" for the resource type when importing an OGG file
  • Updated auto-connect functionality in Script Editor to only take effect if closest unused output is within a certain distance (to minimize unwanted connections)
  • Updated icon for "Speed Multiplier" tile property on the Model Properties panel to match that of the "Speed" property for characters
  • Documentation: Brought the "Model Properties" built-in documentation up to date for any changes from v0.4 to v0.5
  • Documentation: Brought the "Add Character" built-in documentation up to date for any changes from v0.4 to v0.5
  • Documentation: Brought the "Add Tile" built-in documentation up to date for any changes from v0.4 to v0.5
  • Fixed issue where the editor would freeze up when attempting to export a model to a previously existing file that was locked by another application (e.g. after importing the file into Goxel)
  • Fixed issue where inventory would have unexpected behavior after loading a map where the player character was overridden
RPG in a Box - Ol' Smaug
  • Added initial implementation of animating a model's light source by allowing the parameters to be set per frame by enabling the "Animated" setting
  • Added ability to use coordinates for the "Add Character" scripting function to place a character by tile coordinate in addition to entity ID
  • Added eyedropper tool for picking colors as a separate tool mode to the Voxel Editor (can still hold Alt in other modes to pick as well)
  • Added "Remove surfaces along grid boundaries" to Voxel Editor to allow for better tiling of models with transparency, e.g. water tiles that border each other
  • Added search functionality to the built-in documentation
  • Added undo/redo actions for toggling of the "Light Source" setting in the Voxel Editor
  • Added "Party Member" as an option to the Entity Expression Builder dialog in the Script Editor
  • Added initial implementation of a noise generator for creating flat tiles from a randomly generated noise texture (accessed via Voxel Editor toolbar)
  • Added Table of Contents section to the documentation viewer for quickly jumping to major sections within a page
  • Added warning dialog that's displayed when attempting to open a model in the Voxel Editor or place it in a map when it's not located in the correct project folder based on its type (tile/object/character)
  • Implemented "camera override" functionality to use specified camera type when maps are loaded (or game's default camera if none specified), added "First-Person" as option to dropdown
  • Implemented "player override" functionality to use specified character model when maps are loaded (or game's default character if none specified)
  • Documentation: Updated Documentation tab to initially show the Tutorials page by default
  • Documentation: Brought the built-in "Voxel Editor" documentation up to date for any changes from v0.4 to v0.5
  • Fixed issue where combat would get stuck when attempting to launch a battle from within a dialogue
  • Fixed issue where the primary player's health would not be restored to half if they died during combat but the remaining party members won the battle
  • Fixed issue with the undo action for frame insertion/duplication in the Voxel Editor not working properly when the model initially had only one frame
  • Fixed issue where characters placed with the "Add Character" scripting function were not being assigned their default behavior, if defined
  • Fixed issue where battles could fail to start if defined in the Combat Editor and then launched in-game without first using the dropdown to select a battle map
  • Fixed issue where documentation pages with videos in them were failing to open properly
  • Fixed issue where the default item ID ("ITEM_0001") was not enclosed in double quotes when dragging the "Give Item" function into a script in the Quick Script Builder
  • Fixed issue with Combat Editor not resetting completely (asterisk on tab and toolbar buttons) when exiting to the Game Manager with unsaved changes
  • Fixed issue where battles would fail to load when "Set Entity Model" was previously used to replace the main player's model
  • Fixed issue where tactical combat would sometimes get stuck when enemies were using directional attack animations ("attack_north", "attack_east", etc.)
  • Fixed incorrect tooltip text for "First Frame" button on the Voxel Editor's animation toolbar
RPG in a Box - Ol' Smaug
  • Added basic party system functionality (See related scripting functions below - for initial testing purposes these are only available from quick scripts. Visual script nodes coming soon!)
  • Added new scripting function "Add Party Member" which adds a character to the player's party: add_party_member("character_model", "member_id")
  • Added new scripting function "Remove Party Member" which removes a character from the player's party: remove_party_member("member_id")
  • Added new scripting function "Restore Party Member" which returns a previously removed character back to the party: restore_party_member("member_id")
  • Added new scripting function "Hide Inventory" to close the player's inventory if it's visible: hide_inventory()
  • Added "party.member" identifier to scripting language's supported entity references for accessing a party member by ID, e.g. heal_entity(party.member["id_of_member"], 5)
  • Added new scripting function "Execute Script" which launches another script in parallel with the currently running one
  • Added ability to access the X/Y/Z values of coordinates within scripts, e.g. player.coord.x, self.coord.y, entity["some_id"].coord.z, etc.
  • Added ability to use coordinates within arithemtic expressions, for example to subtract or add two coordinates together, multiply a coordinate by a number, etc.
  • Added ability to use coordinates for the "Add Object" scripting function to place an object by tile coordinate in addition to entity ID
  • Changed icon for "Show Inventory" function in the Script Editor to be more unique
  • Updated buttons in the Voxel Editor viewport (upper right) for rotating the model to become disabled when the model's grid width and depth aren't equal
  • Added informational dialog with terminal command to run (similar to that of Quick Play's) that is displayed after exporting your game on Linux or MacOS (if the game executable is updated)
  • Increased camera zoom max value from 120 to 200 in the Game Configuration dialog's gameplay section
  • Added Ultima themed assets (from Iolo's Hut map created for Demo Game Hub) to the Asset Library (tagged with "ultima")
  • Fixed issue where moving selected voxels in the Voxel Editor then undoing the action would not properly restore any overwritten voxels
  • Fixed issue where rotating selected voxels in the Voxel Editor then undoing the action would not properly restore any overwritten voxels
  • Fixed issue where the ESC key would inadvertently pause the loading screen until pressed again while loading a map
  • Fixed issue with localization credits not showing properly in the About dialog
  • Fixed issue where Alt+Tabbing out of the Voxel Editor while editing with the left mouse button pressed could result in unexpected behavior when returning to the editor
  • Fixed issue where the Sound FX Generator could potentially fail to play or save sound effects in rare cases
  • Fixed a few issues related to the IDs of newly added dialogue nodes when localization is enabled in the Dialogue Editor
  • Fixed some in-game errors that would display in the console when moving the mouse over tiles while the player was on a moving platform
  • Fixed issue with variable names within scripts not being properly parsed
  • Fixed issue where strings starting with "property" could not be used in some places within scripts
  • Fixed issue where the "Create a New Game" folder browser dialog wouldn't automatically navigate to the currently entered game path if it had been manually typed in
  • Localization: Added German translations for in-game UI text (menus, inventory interface, etc.)
  • Localization: Added Russian translations for both editor and in-game UI text and option to select it in the Editor Settings dialog
  • Localization: Fixed issue with special credits text in the About dialog being cut off in the German translation
RPG in a Box - Ol' Smaug
  • Updated Map Editor's free camera and first-person camera controls to prevent "D" from deleting navigation nodes
  • Update Voxel Editor's "Rotate Model Clockwise" button on the Model Tools panel to rotate around the current camera view's vertical axis
  • Added buttons to the Voxel Editor viewport (in panel with "Move" buttons) for rotating selected voxels clockwise or counterclockwise (or entire model if none are selected)
  • Updated logic for caching and loading model previews (should result in noticeably shorter load times when re-opening a game project after the cache has been created the first time)
  • Fixed issue where scripts were not properly resuming after a dialogue within that script had finished
  • Fixed issue where some invalid navigation data was potentially causing maps to not load in-game
  • Fixed console error that would occur upon game startup when the configured Main Menu background map didn't exist
  • Fixed issue where surface edges were not being recalculated properly when decreasing grid dimensions in the Voxel Editor then undoing the change
  • Fixed issue where voxels outside of the grid in frames other than the current one were not being properly removed when resizing the grid, then undoing and redoing the change
  • Fixed issue where a large number of error messages would sometimes display when opening a game project
  • Fixed "signal is already connected" console errors that would occur when right-clicking folders in the Game Explorer
  • Localization: Fixed issue with tile/object/character filter boxes not showing translated placeholder text properly
  • Localization: Updated translations to officially include support for Brazilian Portuguese
RPG in a Box - Ol' Smaug
  • Added ability to import palettes from an external file (PNG images (1x) or .HEX files from https://lospec.com/palette-list)
  • Added ability to define tags for items in the Item Editor (in preparation for future uses)
  • Updated "New Palette", "Duplicate Palette", and "Rename Palette" dialogs to display appropriate titlebar icon instead of default question mark icon
  • Decreased height of description box below list of scripting functions
  • Slightly increased default brightness of ambient light in newly created maps
  • Updated slime characters in the Asset Library to fix "invalid sound effect" error displayed in the debug console
  • Updated stats of slime characters in the Asset Library to be different from each other and more balanced relative to Justin's stats
  • Fixed issue with adding new palettes not working properly when at least one custom palette already existed
  • Fixed issue with decreasing then increasing an object's grid width in the Voxel Editor causing undeleted voxels' positioning to be incorrect
  • Added buttons to the About dialog for RPG in a Box's Itch.io page and Steam Community hub
  • Updated About dialog with German localization credits
  • Updated real-time enemies so they will attempt to attack if the player character is adjacent (still experimental so may be buggy)
  • Localization: Fixed issue with the window width of the "Sound FX Generator" popup dialog
  • Localization: Fixed issue with the window width of the "Create a New Game" popup dialog
  • Localization: Fixed issue with the window width of the "Edit Tags" popup dialog
Aug 13, 2019
RPG in a Box - Ol' Smaug
Hi everyone! I'm happy to announce that Early Access for RPG in a Box has started! To celebrate the launch, there will be a 10% discount for the first week. It's a bit overwhelming and hard to believe that I've finally made it to this point! There's still a long journey ahead, though, and I have a lot of cool and exciting things planned for the future! I'll be posting changelogs and development updates here, on Itch.io, and on my Discord server going forward. Thanks so much for your support! I look forward to working together with everyone and growing the community! :)
Aug 6, 2019
RPG in a Box - Ol' Smaug
Hey everyone, I made a new trailer for the upcoming Early Access launch! If you're interested, you can check it out on my Steam store page or YouTube channel!

https://youtu.be/M4OWahrBlsQ

https://store.steampowered.com/app/498310/RPG_in_a_Box/
Aug 4, 2019
RPG in a Box - Ol' Smaug
Hello again! Just a quick heads up to let everyone know that the price of RPG in a Box will be increasing slightly to $24.99 (USD) once Steam Early Access starts later this month. The launch is tentatively planned for August 12th, and there will be a 10% discount for the first week.

Also, Steam keys can now be claimed for purchases made through itch.io! A friendly reminder that I will receive a larger portion of the purchase on itch.io, and it will therefore benefit the development of RPG in a Box more. I'm very happy and appreciative of your support regardless of where the purchase is made, though! :) Thanks so much!
RPG in a Box - Ol' Smaug
  • Updated drag-and-drop logic in Script Editor to automatically connect newly added nodes to the nearest unused output
  • Added an editor setting to disable the new auto-connect functionality for the Script Editor
  • Added ability to replace colors in the Image Editor using Shift + Left Mouse Button
  • Removed obsolete connection color settings from the Dialogue Editor section of the Editor Settings dialog
  • Fixed issue where changing the visual script connection colors from the Editor Settings would not properly update any currently opened scripts
  • Fixed a few issues with the "Go To" node's Section option not working properly in the Dialogue Editor
  • Fixed issue with imported Qubicle models being offset incorrectly in certain cases
...