As a result, these libraries are supplied in their own JAR files, located in the "extras-libs" folder.
The program will automatically (and dynamically) discover and load these files if they are available, so no active participation is required on your part. Plus, as an added benefit, if we upgrade these libraries in the future, a full program download will not be required.
Highlights in this Version |
---|
A few minor fixes. |
Additions / New Features |
---|
None |
Fixes |
---|
The "Parties" node in the Campaign Tree was not being added correctly. |
Modifications |
---|
None |
Highlights in this Version |
---|
Bug fixes. |
Additions / New Features |
---|
None |
Fixes |
---|
Start-up issues on Windows. |
Lockups caused by undocked Dice Panels. |
Modifications |
---|
None |
Highlights in this Version |
---|
None |
Additions / New Features |
---|
None |
Fixes |
---|
Starting in "Master" mode without a Preferences folder would cause issues. |
Modifications |
---|
None |
Highlights in this Version |
---|
Major underlying changes to kLoOge.Tokenizer. |
Long overdue bug fixes. |
Additions / New Features |
---|
Added keyboard shortcuts to more precisely adjust Map grid scale and offset. Please refer to the tutorial video on the subject for more information. |
Added a few new temporary modifiers to the "4e" definition and scripts. These allow you to specify a hit point adjustment at the end of an Icon's turn (as opposed to the start) and to issue a chat message from the Icon at either the start or end of its turn. |
Added a new health bar display option in Preferences: "Health bar circles." This renders the traditional health "bar" as a "pie," with wedges being removed as "health" declines. Also, the colors that the program uses to denote the various stages of "healthiness" can now be themed. |
You can now copy/paste between "Multi-List" tables (i.e., the kind used for "powers," "weapons, etc.). Simply select one or more rows, press Ctrl-C (or use the "Copy" item from the drop-down or pop-up menus), then go to the table where you would like to paste the items and select "Paste" or Ctrl-V. Note that this works across character sheets, but you can not paste rows to tables that are not the same type of table that the rows were copied from (i.e., you can't copy a row from the "Powers" table and paste it into the "Weapons" table, even if the tables have the same number of columns). |
Fixes |
---|
Dice expressions were not evaluating to the maximum number of die sides. |
Tables whose first row was something other than a String would result in the entire table being set to the class of that row. |
"treat-data-as-modifier" not being set was not being honored. |
Performing multiple sequences of controlling and releasing an Icon would result in the Player being disconnected from the Master. |
Addressed a number of issues that were pointed out in the forums. |
Modifications |
---|
Tweaked the "4e" scripts/definition to include creating Icon Effects based on Power descriptions. This is not guaranteed to work (if it works at all), but should give you an idea of how to accomplish something similar, should you care to. |
Support for non-XML content (exported Icons, Maps, Adventures, Campaigns) has (finally) been removed. We introduced XML file storage with 2.9.5 and it finally became too much of a burden supporting the old file format to carry it any further. If you, by some chance, have any content in this old format, from 3.4.2 on, that content will not load. If you would like to continue to use it, import it into a version of the program prior to 3.4.2, then export it. This will convert your content to XML. |
"Auto-target" has been changed slightly to only modify targets after you finish dragging an Icon (instead of adding and removing them as the Icon being dragged passes near other Icons). This should give better behavior. |
Minor change to kLoOge.Tokenizer - the preview area has been removed, since, now, the composition area provides a preview, complete with gloss, threshold and color mix. |
Tokenizer no longer uses "dual alpha" images. Instead, it uses a main image and a "mask" image. Please refer to the tutorial video on the subject for more information. |
Highlights in this Version |
---|
Mostly fixes, but a few new things thrown in for fun. |
Definition / Scripting |
---|
Additions / New Features |
---|
None |
Fixes |
---|
The "4e" definition was not supplying "weapon group" to the underlying script for attacks with a weapon (as opposed to a "power"). |
The "skill_check.kws" script for "4e" was adding modifiers multiple times if an Effect had more than one modifier. |
Modifications |
---|
"Flanking" for 4e has been adjusted to better follow the rules. |
Eye Candy |
---|
Additions / New Features |
---|
You can now specify an "overlay" image for a Map. Use a small tiling texture or a full image to be overlayed on the the entire Map image. Please refer to the tutorial video for more information. |
Added a number of new overlays for kLoOge.Tokenizer. |
Fixes |
---|
None |
Modifications |
---|
None |
Functional |
---|
Additions / New Features |
---|
None |
Fixes |
---|
If you had "heal-from-zero" set in the definition and, during combat, used the "hit point history" to reverse a hit point adjustment for a dead Icon, the reversal would use the "heal-from-zero" setting, giving the Icon more hit points than it should have received. |
Setting the "sound file" on a Character Sheet resulted in an error. |
Controlling an Icon resulted in Player disconnect and subsequent problems with editing an Icon's character sheet. |
Loading a Campaign that contained an Icon with an Effect for "light radius" would cause an error if that Icon was not on a Map. |
Dragging a table row to change the order could result in an error. |
Hit/Miss sounds were not being played if the "Attack FX" column was blank. |
Non-square light radius, combined with "fog-of-war," would lead to the program slowing down and exhausting all memory. After installing 3.4.1, please toggle off, then on, "Player Obscurement" on any Map using these features to reset the "Player Obscurement" layer. |
Players could not toggle the "active" setting for Icon Effects. |
When using "special Icon Effect handling," having an Icon Effect that expired at the end of an Icon's turn might not expire under certain conditions. This should now be handled more correctly. |
Modifications |
---|
Made a few modifications to kLoOge.MonsterBuilder. These include fixes for dialog not opening properly. Also introduced a system property, "kLoOge.mm3" that, when set, will open the program with a slightly updated user interface for transcribing monsters from the "Monster Manual 3" (which introduced a different stat block layout). |
Scripting |
---|
Additions / New Features |
---|
Added scripting method, "measureTargetDistance()" which measures the distance between to Icons not center-to-center, but edge-to-edge (just as the program calculates distances when targeting. |
A new version of the scripting method "visualEffect" has been added (along with a couple of scripts to illustrate the change). This version does not center the Visual Effect on an Icon, but, instead, centers it wherever you click on the Map. This may be handy when you simply want a Visual Effect to happen (like when there's an explosion that isn't caused by a roll). |
Added a new scripting method to determine whether a Map has "grid snap" enabled. |
Fixes |
---|
None |
Modifications |
---|
None |
Scripts |
---|
Additions / New Features |
---|
None |
Fixes |
---|
The "glowy" script was referencing an unknown variable (thanks to a typo). |
Modifications |
---|
None |
User Interface |
---|
Additions / New Features |
---|
Added a Preference option to disable the Icon background that was introduced in 3.4.0. |
Fixes |
---|
Using the "icon name boxes" Preferences setting caused the boxes to be drawn incorrectly. |
Modifications |
---|
None |
Miscellaneous |
---|
Additions / New Features |
---|
None |
Fixes |
---|
None |
Modifications |
---|
None |
Highlights in this Version |
---|
Lots of functional, structural and performance enhancements. |
New 24-bit animated Visual Effects. |
Numerous improvements to the "4e" definition and scripts. |
Many new scripting methods to access even more data from character sheets. |
Completely re-engineered the "auto-reconnect" process for Players. |
New "Master Mode" gives the power of the Master to a Player. |
Icon in Inventory can now adjust the stats of the carrying Icon. |
A new program, kLoOge.ItemBuilder, for "4e" users. |
Links to the Tutorial videos directly from the program. |
Base Functionality |
---|
Additions / New Features |
---|
A new mode has been introduced: Master Mode. With this mode you, as the Master, can grant pseudo-Master powers to Players. Simply right-click on the Player's node in the Campaign tree and select "Enable Master mode." The Player will be notified that the mode is available to them and can toggle the mode on and off from their "View" menu. When enabled, this mode allows the Player to see the Map as the Master sees it -- obscured areas are transparent, invisible Icons are visible, NPC stats are available and the Player can even roll for hostile NPCs. While not intended for the general populace, this mode makes a poor man's "Tournament" play possible. For more information, please refer to the tutorial video on the subject. |
Item Icons contained in the inventory of other Icons can now contribute their properties to the carrying Icon. Please refer to the tutorial video on the subject for more information. |
Added an item in the "Help" menu called "Tutorials." Selecting this brings up a dialog that allows you to search, download and play tutorial videos directly within the program. As an ironic twist, refer to the tutorial video on the subject for more information. |
The Calendar now has a new "date picker" that allows you to quickly jump to another date. Simply right-click on the Calendar and select "Pick date" from the popup menu. |
Fixes |
---|
If you had an improperly created data location (one that was missing the "campaigns" folder), and attempted to start the program as a Master, the program would issue an error and the demo campaign would not load. |
If a Player manually added an Icon to the Icon Toolbar, his preferences file would become corrupted. |
Importing an Item Icon, or loading a Campaign containing an Item Icon that has any entries in the "equipment" table ("4e" or "3rd Edition" definitions) would cause the import/campaign load to fail. |
Toggling "grid snapping" on a Map with Players connected did not send the changed setting. |
Modifications |
---|
If you have "auto-apply damage" turned on in Preferences, and the program detects that an Icon has something that reduces damage, the reduction will be automatically taken when the damage is applied. Previously, the program did not assume that this was your intention and, even if you had "auto-apply damage" turned on, would not apply damage automatically if a possible reduction was present. |
The Internet, while a wonderful thing, can be less than completely reliable. Knowing this, we have long had a Preferences option to automatically reconnect to the Master should your Player connection go bad. Unfortunately, this option was turned off by default, and, even when it was turned on, it did not work all that well. In this version, we have made some fairly major changes to the way auto-reconnect works and, we hope, you will find the experience...unnoticable. You see, the program will now, transparently, attempt to re-establish its connection to the Master, without throwing away any data that it has. What's more, the Master will retain information destined for the Player during the reconnection process and forward the queued messages as soon as the Player reconnects. Give the improved option a try and, if it ends up not working as advertised, you can always disable it again in Preferences. |
As promised some time ago, the "traditional" (old-style) Dice Panels have been removed. The disparity between the functionality of the "new" Dice Panels and the "old" simply became too great to maintain the outdated version. |
Another change to the communication system now takes us to a single connection between Master and Player (there used to be two) and a 60% reduction in the number of running threads to maintain communication. This should reduce resource usage on both the Master and the Player, but should especially help in instances where there are a large number of Players connected to a Master. |
Definition |
---|
Additions / New Features |
---|
Buttons that appear in the Dice Dialogs can now be marked as "dm-only" in the definition. To illustrate this, the "4e" definition now has a button called "Recharge" that is only available to the Master. This button runs a new script that will roll a "d6" for every rechargeable NPC "power" and, if the roll succeeds, will make that "power" available again. |
Added a definition file hook into the program's handling of Icon Effects that adjust an Icon's hit points. Defined in the "base-rules" section (see the "4e" definition for an example), this tag, "adjust-hp-script," allows you to specify a script that will be executed before an Icon Effect that adjusts hit points is evaluated. By doing this, the script has the power to alter the amount of the hit point adjustment before it is made. |
Added a definition tag, "read-only-alterable." This acts the same as "read-only," except that you are telling the program that something (a script, for example) may alter the field's value, so even though it's read-only, its contents should be saved. Normally, "read-only" fields are not saved, since their values can't be changed through the program's interface. For an example of where this new tag might be useful, please see the "4e" definition. |
Added a new definition file tag, "desc-css," that allows you to specify a file that contains CSS tags that will be added to all descriptions. For an example of how to format this file, please refer to the "style_example.css" file included in the distribution and the "4e" definition. |
Added a new tag to the "base-rules" section of the definition file: "light-is-square." If set, then light radius will be considered a "square" and not a "circle." Refer to the "4e" definition for an example. |
Added a new tag to the "init-def" section of the definition file called "init-script." This tag allows you to define a script that will be called whenever initiative changes in the normal fashion (moving "forward"). Refer to the "4e" definition for an example of how this might be used. |
Added a new tag to the "base-rules" section: "cache-font." On some systems, the initial load of a font can take a long time (on the order of hundreds of milliseconds), so if you use a custom font in, say, your Dice Dialogs, you might want to use this tag to avoid a delay when opening the first Dice Dialog (again, on certain systems). |
A new tag has been added to the definition file -- icon-scale. You can use this tag to tell the program where to get Icon scaling information from on the character sheet. Icon scaling is an integer scaling factor for rendering an Icon within its size. For example, if an Icon has a size of five feet, but you would like its image to render smaller, you can set the "Icon Scale" field to something less than 100 and the Icon's image will be reduced. Refer to the "4e" definition for an example of how this tag can be used and also refer to the tutorial video on the subject on our website. |
Added to the "4e" definition a new temporary modifier ("SKOTM") that allows you to create an Icon Effect that modifies the roll for a specific "skill" check. The script that makes "skill" rolls for "4e" has also been modified to look for this temporary modifier. To use this, the modifier for the skill must be specified in the following manner: "SkillName ModValue." For example, if you would like to apply a "+3" to an Icon's "Athletics" check, you would define the modifier as "Athletics 3" (a plus sign is not required). |
Fixes |
---|
Not defining an "npc-dead-point" clause in the definition when "hps-count-up" is set would result in NPCs always being considered to be "dead." |
The "d10" definition could not display character sheets. |
Modifications |
---|
Various changes to the "4E" definition to better bring it into line with the rules. Also, added an XSL to transform XML "4E" character sheets into HTML (contributed by James Wertz). |
Added a column to the "4e powers" table allowing you to specify a post-attack visual effect. |
The "4e" scripts for attack/damage with a weapon (as opposed to a "power") now properly include any "magic bonus" conferred by the weapon. This means that if you had previously specified the magic bonus in any other column, you should remove it from those columns, or else the bonus will be added twice. |
The "4e" definition and scripts have been updated to account for classes/races introduced in the "Player's Handbook 2." Particularly, these changes affect special properties of the "Sorcerer" class. |
Added a "speed" temporary modifier to the "4e" definition. |
Added a definition tag, "stowed," to indicate to the program where it can find information about items that are "stowed." Having an item "stowed" means that it is still in its proper table, but expressions derived from it won't appear in the Dice Panel. The "4e" definition illustrates the usage of this tag in the "weapons" and "implements" tables. |
Lots more "4e" modifications to the definition and scripts. Among the changes: broke out ability scores to make them more readable, fixed a problem with read-only columns/rows and default values, added script handling for some feats in PHB2 and much more. |
Tooltips defined for rows in the "temporary modifier table" will now be available when you add the modifier to the Icon through the "edit Icon effects" dialog. This allows you to convey information about what a modifier does (since its effect may not be obvious from its description) during play. The "4e" definition uses this feature to differentiate some of the modifiers that it uses. |
The "4e" definition and scripts have been further brought into line with the rules. Now, every feat, class feature and racial trait in the "PHB1" and "PHB2" that can logically modify an attack or damage roll has been added to the scripts. Feats that grant highly circumstantial bonuses must still be handled manually, but the majority of adjustments are now handled automatically. |
Added a "high crit" check box to the "Weapons" table of the "4e" definition and adjusted the scripts to look for this check box to be set. When selected, the weapon's damage die will be added to the expression on a critical hit (according to the "4e" rules, taking the Icon's level into account). |
Definition Scripting |
---|
Additions / New Features |
---|
Added a "4E" script, "change_level.kws," that allows the Master to change the level of NPCs. Simply select the Icons in question and enter the level delta ("2" to increase the level by two, "-2" to decrease the level by two, for example) and the script adjusts all the NPC's information (attacks, defense scores, hit points, etc.). |
The "4e" definition has gained temporary modifiers to ability checks. These allow you to specify a modifier to an ability roll without impacting the Icon's stat bonuses. The underlying script handles all of the details. |
Added a "level up" script for the "4e" definition. This script handles the very basics of doing a "level up:" adjusting hit points and a number of other text fields. Please refer to the video "Handy-Scripts" for more information. |
Added a new column to Icon Effects, "Save," which allows you to indicate that the Effect should not be removed until further action is taken (for example, rolling a "saving throw"). The program will display a special badge on Icons that have this field selected, visually indicating that further action is required. Additionally, a new script has been created for the "4e" definition that looks at this field and uses it to roll "saving throws" for all Effects that require them. Please refer to the new tutorial video for a detailed description of all of the recent enhancements to Icon Effects. |
Added a "4e" script called "arbitrary_attack.kws." This script allows you to roll an arbitrary attack against the selected Icons. This is useful for those situations where some nebulous force that does not have an Icon makes an attack against a character and it is easier to simply enter a modifier and select the appropriate defense and let the program figure out if the roll is a hit or miss. |
Fixes |
---|
None |
Modifications |
---|
A few modifications to "4e" scripts: the "stabilize" script now refers to itself as "Death Saving Throw" (to go along with the rules) and indicates in its label the number of times that the save has been failed (if it has been failed); the "healing surge" script did not reset the "death saving throw" counter correctly. |
Several improvements have been made to the "4e" support scripts to better handle conditions during combat. While these changes are still driven by an Icon having Icon Effects to indicate the presence of these conditions, you should no longer add attack/defense modifiers to these Effects (since the scripts should handle them appropriately). |
The "4e" definition and scripts have been modified to include the ability to define Icon Effects that confer resistance / vulnerabilities to an Icon. In order for this to work properly, you must add an Icon Effect with the "Resistance" modifier and specify the resistance in the following format: "Type Value Keyword." For example, to temporarily give an Icon resistance of five to "fire" damage, you would specify the modifier as "Resist 5 Fire." The scripts will see this and act accordingly (including reducing resistance on the target if the attacking Icon is of the "Sorcerer" class). |
The "4e" "special damage" script now allows you to enter tokens in the "resist val" field. This allows you to specify things like "5+($L/2)," which comes into play for some of the new classes. |
Numerous minor changes to the "4e" definition scripts, including the addition of the "additional_damage.kws" script (which allows you to roll an expression and set its damage keyword). |
The "4e" scripts have also been modified to take "marked" status into account. If an Icon has an Effect with a description such as "Marked by Hero" and and the target of the attack is not "Hero," then the attack will incur a -2 penalty. Note, however, that the Effect description must contain the EXACT name of the marking Icon, or else the comparison will fail. |
Icon Effects |
---|
Additions / New Features |
---|
Added the ability to commit the sorting of the Icon Effects table. Simply right-click on a row and, from the pop-up menu, select "Commit sort" and your current sorting selection will be applied. |
When editing an Icon's Effects as the Master, you can now right-click on an Effect and select "Copy to global effects" to quickly add the selected Effect to the global list of Effects. |
Fixes |
---|
Icon Effects employing the "Damage Reduction (reducible) " modifier have always had a problem where the reduced amount was not tied back into the Effect. Thus, if the amount was reduced, but you edited the Icon's effects, the reduction would be lost and the amount would be reset to the original value. Now, the amount is also reduced, so everything should stay in sync. |
Modifications |
---|
A new column has been added to Icon Effects, "End," which allows you to set when an Effect with a duration of one round actually ends. This only impacts definitions that have been set to have special handling of these types of Effects already. |
A new column has been added to the Icon Effects setup dialog -- Remove. This column allows you to specify that the Effect should be deleted once it has expired, thereby allowing you to keep an Icon's Effects more clean. Note that this option is only considered for Effects with a positive duration (unending effects, since they never end, can never be automatically removed). |
Icon Effect modifiers that are marked as "reduce-on-use" in the definition will now delete the Icon Effect from the Icon when their modifier reaches zero so long as the Icon Effect is marked for removal after expiration and they are the only thing providing modification in their Icon Effect. |
"Glow" Icon Effects now support a "blur" setting that will apply a Gaussian blur to the edges of the Effect. |
The drop-down lists for defining Icon Effects have been replaced by buttons that open up searchable dialogs, which should make it easier and faster to locate Icon Effects when you have many of them. |
Interface Appearance |
---|
Additions / New Features |
---|
None |
Fixes |
---|
None |
Modifications |
---|
Updated the default button images for rolls and added a new button type: "powerattack." |
Interface Functionality |
---|
Additions / New Features |
---|
You can now press and hold the TAB key while a single Icon is selected, or on a Map during combat with no Icons selected, and all other Icons on the Map will be ghosted, except for the selected Icon (or the Icon whose initiative it is) and any Icons that are targeted by the Icon. This allows you to quickly see which Icons a particular Icon targets, which can be especially useful when Icons are clumped together too closely to see targeting lines. When you release the TAB key, all the Icons will return to their properly rendered state. |
There is a new "line of sight" indicator that you can use for game systems that are more strict about what you can/can't see during combat. To access it, select an Icon that is targeting another Icon, hold down the "shift" key and click on the small targeting icon in the column of buttons that appears next to the selected Icon. The program will draw lines from the upper-left hand-corner of the selected Icon to the four corners of the targeted Icon. Continue holding down "shift" and click the targeting button again to shift the lines from the upper-left to upper-right corner, and so on. For a visual demonstration, please refer to the tutorial video on the subject on our website. |
If you're running Java 1.6 or later you now have a close button on Character Sheet tabs to quickly close a character sheet. |
Fixes |
---|
Centering a square effect left the effect mode set for squares, resulting in the inability to center circular effects afterwards. |
Roll "balloons" next to Icons were not being removed properly for successive rolls. |
Creating an ImageIcon would not update its Icon until the campaign was re-loaded. |
Scripts associated with Icons would not be available if the Icon was not "friendly." |
It appears that switching from Control/Command to initiate freehand reveals to ALT confused Java's interpretation of just which mouse buttons were being pressed, so it's back to the original way. |
Using the Dice Dialog to append a value to the roll did not trim white space from the entered value, which could result in erroneous parsing if, for example, someone simply entered a space in either of the fields. |
If a PC Icon went invisible, it would be removed from the Icon Toolbar and would not be added back in when the PC became visible. Now the PC Icon is not removed from the Icon Toolbar and, instead, it is simply rendered as invisible (and rendered correctly when it becomes visible again). |
Invisible Icons making rolls would send the roll sound to Players. |
Emotes, were not being translated properly when rendered next to an Icon. |
Duplicating an Icon with a "~" or "!" at the beginning of its name, and having "prepend numbers" turned on, would stick the number before the "~"/"!," thereby obviating their being there. |
If you had "animate dice panels" turned on (in Preferences) and then quickly opened and closed a Dice Panel repeatedly, the program could get confused about the state of the Dice Panel. |
If you selected, for example, "halve roll" from a Dice Panel, and also appended a value to the roll, the appended value would be the only thing halved. |
On a Map with grid snap enabled, non-square Icons would not be centered correctly on the grid. |
Modifications |
---|
When measuring in "squares" is enabled, diagonal movement now counts as a single "square" (as opposed to the actual distance, as would be derived from a real-world measurement). |
Double-clicking on a Folder in the Campaign Tree that resides within a Map and contains playable Icons (like NPCs) will now not only expand the folder, but center the Map display on all the Icons contained in the Folder. This way, if you use Folders to organize encounters on a large Map, you can quickly zoom in on a particular encounter. |
The "pickup item" feature has been enhanced to allow you to not only pick up Items, but also NPCs. |
Keyboard Shortcuts |
---|
Additions / New Features |
---|
Added a keyboard shortcut (Control-/Cmd-I) to start combat. |
Fixes |
---|
None |
Modifications |
---|
None |
MonsterBuilder |
---|
Additions / New Features |
---|
None |
Fixes |
---|
None |
Modifications |
---|
MonsterBuilder has had a few interface tweaks, including the ability to define multiple "auras." |
Various minor enhancements to aid in constructing monsters. |
Generated Icons will now have Icon Effects created for "auras" and "regeneration." For "regeneration" to be parsed correctly, it should be entered in the following format: "Regeneration: ##." |
Converted "minion" from a role to a "role modifier," as per MM2. |
Preferences |
---|
Additions / New Features |
---|
Added a Preference item, "Players can edit Icon Effects," which controls whether Players are able to edit the Icon Effects for friendly/controlled Icons. By default, this option is enabled to preserve the behavior of previous versions of the program. |
Added a Preferences setting, "Auto-select current target." When selected (the default, which matches the behavior before this option existed), the program will attempt to automatically adjust an Icon's "current target," based on actions that you take during combat. When disabled, the program will not change an Icon's "current target," leaving it entirely up to you. |
Added a Preferences item, "Sticky target from button," that, when enabled (not the default), makes the small targeting button next to an Icon behave as if you had right-clicked on the Icon and selected "target" from the pop-up menu (in other words, the targeting operation remains in effect until you cancel it by right-clicking on the Map). When not enabled, the targeting button behaves as it has in the past. |
Added a Preferences item for Players to control the number of seconds that are allowed to elapse without a message from the Master before starting a reconnect. This option works in conjunction with "auto-reconnect," so if "auto-reconnect" is not enabled, this setting is ignored. Essentially, the default behavior before was to wait for sixty seconds without a message from the Master before considering the connection to be "bad" and starting the reconnect procedure. This, generally, works well for Internet games, but is a very long time when playing over a LAN. By making the setting configurable, you can tweak how long to wait to better suit your playing environment. For LAN play, try a shorter period. For Internet play, depending on your Internet connection, a longer period may be more appropriate (you'll have to experiment). Just keep in mind that a very short period for Internet games is probably not a good idea, since it's possible that you will experience a continual drop-connect-drop-reconnect loop due to the nature of Internet gaming. |
Added Preferences items for "Hide unavailable rolls" and "Hide stowed items." These provide default settings for whether unavailable rolls and stowed items appear in Dice Panels. You can still override this default on a per-Dice Panel basis. Also, the program used to save the state of these "hide" variables, but no longer does because the logic was flawed -- the Master's decision was forced onto Players. |
Fixes |
---|
None |
Modifications |
---|
The Preferences dialog has been given a slight make-over. Instead of having two separate sections, one for "toggle" options and the other for everything else, we've consolidated everything into a single section. The main benefit to this is that the "search" box will now filter all options instead of just the "toggle" variety. This should make it easier to find the things you are looking for. |
Rendering |
---|
Additions / New Features |
---|
None |
Fixes |
---|
None |
Modifications |
---|
Changed the way that the names of Drawn Items are rendered, taking advantage of the font scaling algorithm in use for Icon names. |
Several enhancements have been made to improve rendering performance. Depending on your system and what you are doing, rendering speed can be more than 50% faster than previously. |
Scripting |
---|
Additions / New Features |
---|
Added scripting methods, "isNPC()" and "isPC()" to quickly determine the nature of an Icon. |
Added a scripting method, "logDebuggingInfo," that allows scripts to output messages to the Java Output console for debugging purposes. Note that this method is intended for script developers while they test script changes -- output generated by this method should not be sent to us, since we do not have your scripts and thus cannot debug your scripts for you. |
Added scripting method to determine if the program is running in Player mode. |
Added a new script, called "teleport.kws," that allows you to "teleport" an Icon from one spot on a Map to another. |
Added a number of scripting methods that give scripts access to parsing results that internal expressions have (thereby allowing scripts to display their results consistently with how the program displays them). For an example of their use, see the "additional_damage.kws" script for the "4e" definition. |
Added a scripting method, "getHpAdjustments()" to allow scripts to go through the program's standard path to retrieve modifications to a hit point adjustment (due, for example, to resistance or vulnerabilities). |
You can now add/modify Icon Effects for things like glows and rings. A script, "glowy.kws" has been added to illustrate how this can be done. |
Added a few convenience accessors to the scripting module to make adding Icon Effects a tad easier to read and more reliable. |
Fixes |
---|
Scripts were not being given accurate information about modified character sheet fields in all circumstances. This should be much more reliable now. |
Modifications |
---|
None |
Visual Effects |
---|
Additions / New Features |
---|
Added a few new built-in Visual Effect images for your enjoyment. |
Added the ability to use image sequences (as opposed to animated GIFs) for visual effects. Please refer to the tutorial video on the subject for an in-depth explanation. There are two things regarding image sequences that you should always keep in mind. First, due to their size, they are not transmitted to Players, so, in order for Players to see them, they must have them installed on their machines. Second, the main reason for using image sequences is to allow you to have 24-bit color with 8-bit transparency (as opposed to 8-bit color and 1-bit transparency in animated GIFs). As a result of this, image sequences can consume an order of magnitude more memory than a GIF, so be aware that your memory usage may spike rather severely if you use a lot of them. |
Fixes |
---|
None |
Modifications |
---|
None |
Miscellaneous |
---|
Additions / New Features |
---|
A new program, kLoOge.ItemBuilder has been added. You can use this (simple) program to create "4e" Items quickly. |
Fixes |
---|
Resolved a potential deadlock when deleting a Drawn Item. |
Fixed a memory leak associated with chat messages that appear next to Icons. |
Modifications |
---|
None |
Highlights in this Version |
---|
Fixes and minor enhancements. |
Additions / New Features |
---|
A "grab" button has been added to the "Pick" drop-down of the "4e" definition. |
Added "range" temporary modifiers (for both "powers" and "weapons") to the "4e" definition file. |
Tokenizer - the concept of "gloss profiles" has been added. The idea here is that instead of embedding a gloss effect into every overlay shape, you can instead create separate "gloss" images and then apply them to any number of overlays. By creating tokens in this fashion, you avoid the problem where the transparency of the gloss embedded in the overlay causes the background image to become transparent where you don't really want it to be. A number of sample gloss images and overlays without embedded gloss have been added to give you an idea of how to go about creating these images. It is probably worth mentioning that the order that these layers are applied is as follows: background color, background image, gloss profile and, finally, the overlay. |
Tokenizer - Added the ability to apply a color tint to the overlay, granting even more flexibility when creating tokens. |
Added the ability for the Master to import Master and Player notes from a different campaign into the current campaign. This allows you to easily transfer notes between campaign files in much the same way that you can transfer PC Icons between campaigns. |
Fixes |
---|
Under certain circumstances, with a definition that has "treat-data-as-modifiers" enabled, not all positive modifiers would receive a leading "+". |
Scripts called from the definition that, in turn, called other expressions, would not take the "append to roll" settings in the rolling Icon's dice dialog into account. |
The "new" Dice Dialogs did not honor the "place tab on left" Preferences setting. |
Attempting to evaluate a dice expression where the left-hand side of the expression was zero would generate a NaN (Not A Number) result. |
Editing the campaign greeting did not mark the campaign as having been modified. |
The XML parser could be confused by valid tags that were actually commented out. |
Importing an older Icon would result in the program not properly finding its image after the import. |
The "powers" script for "4e" did not take a weapon's magic bonus into effect when building the attack and damage expressions. Also, if a weapon did multiple dice of damage and the power granted damage of, for example, "[3W]," the multiplication was not being done correctly. |
Loading a campaign containing Icons with pending damage, when the pending damage fields no longer exist in the definition caused the campaign to fail to load. Now, if this is encountered, the pending damage is simply discarded (and a note about the action is placed in the debugging output to inform you about what happened). |
Modifications |
---|
An Icon's "current target" will now be cleared after its initiative has passed. |
the "isFlanking" script for "4e" now takes into account Icon Effects that might make flanking impossible. |
Added a close button to the Icon Quick Stat window (which is themeable). |
Tokenizer - Added a few new overlays to work better with "gloss profiles" and now Tokenizer's window will remember its size/location between invocations (when run as a stand-alone application). |
Tokenizer - Updated the program icon and now allow you to put your "overlays" and "gloss_profiles" folders into the application bundle on OS X. |
Changed the default color for selecting areas on a Map from red to white and, while at it, made the selection color themeable. |
Moved the "failed stabilization check" information in the "4e" definition from the scripts keeping track to the hidden "combat" table on the character sheet. This allows different people to make the check without the program getting confused about how many checks have been failed. |
Setting a Map's scale when using "squares" now requires you to enter the distance in terms of "squares" instead of feet (or meters), thereby avoiding you needing to do the conversion between feet and "squares" yourself. |
The "multi-list" table type now exports its contents into an XML file (instead of a tab-delimited text file). It will still import previously exported text files, but XML is preferred. By moving to XML, as long as the names of the table's columns don't change, the order (and number) of the columns no longer matters. This should make it easier to use, for instance, data files between mostly identical, but slightly different, definition files. |
The "new" Dice Dialogs have received some tweaks -- the "close" button is now on the left; the title area is now drawn with a background color reflective of the Icon's hostility; "combo" elements (as defined in the definition) now use the same "pop-down" list as those in "multi-lists" (to reduce screen real estate). |
Highlights in this Version |
---|
Better handling of "Resist / Vulnerable / Immune" for "4e." |
Fixes. |
Additions / New Features |
---|
Preferences items have been added to control the hiding of the program's toolbar, the campaign tree and the Icon Toolbar. Previously, you could only toggle the viewable state of these items with keyboard shortcuts. Now, if one should disappear on you, you can get it back via Preferences. |
Added an option to a Map's pop-up menu to allow you to select all the Icons currently visible in the section of the Map that you are looking at. This is handy when you have a Map that contains several encounters and would like to quickly select all the Icons in a particular area for, say, rolling initiative. |
MonsterBuilder: Added fields to support the new "Resist / Vulnerable" table and keywords on "Powers." |
Added a definition file tag, "special-icon-effect-handling," which is demonstrated in the "4e" definition. This tag gives special meaning to Icon Effects with a duration of one round. Essentially, when the Icon Effect is created during combat, the ID of the Icon whose initiative it is will be recorded with the Icon Effect. When this Icon's initiative comes around in the sequence again, the Effect will be expired. This makes it easier to have Effects that last for a single round, no matter how many Icons are added to or removed from the Initiative sequence. |
A new Master feature has been added. If you're a Player and not a GM, then you should look away now. Seriously, you probably already think that the GM has too much power and this feature will only give you nightmares if you stare at it too long. You have been warned. Since the beginning of Werks, GMs have had the ability to fake the rolls they make. They have not, however, had any way of faking rolls made by players...until now. As the GM, you have access to a popup menu item called "Set pending fake roll" in the "Roll Dice" sub-menu of an Icon. If you select this, you will be presented with a dialog that allows you to specify the desired result for that Icon's next roll. You don't have to know which roll and you don't even have to know who will be making the roll -- the next time a dice expression is evaluated for the Icon, the result you supplied will be used instead of the dice portion of that expression. This, obviously, imbues you with considerable power -- and considerable risk for botching things. Since you generally don't know what roll is really going to be made, care must be taken with the results you supply (or else your Players will quickly become wise to your game). Used judiciously, this feature should allow you to subtly nudge an encounter in the direction of your choosing. Good luck. |
Added two new items (and supporting scripting) to the "Pick" drop-down in the "4e" definition for "escape" rolls. |
Fixes |
---|
Using the "filter" in the Icon Effects dialog could result in the drop-down list of Icon selections ceasing to function. |
Rotated Icons caused a rendering error where they would continually shrink. |
Rolls with a visual effect and a sound would play the sound twice: at the beginning of the roll and again at the end. |
Discarding damage left the hit point adjustment pane in the DiceDialog. |
An extra chat message was being issued when Players entered a chat message that was not associated with an Icon. |
Making changes to initiative when "group attacks" is not turned on should behave a little more reliably. |
Loading characters into a campaign from another campaign did not properly create the Icons' party (or parties). |
An invalid "grid stroke" value would prevent the "Map Options" dialog from opening. |
Modifications |
---|
The "4e" definition has gained an entry in the "Pick" drop-down for "Bull Rush." Also, a number of less-than-frequently-used entries in this list have been commented out. If you find yourself missing them, feel free to return them to active duty. |
The "4e" definition has been given a new column in the "Powers" table -- Keywords. Also, a "Resist / Vulnerable" table has been added. When used in conjunction, a script will attempt to determine if a target requires special handling and will adjust the damage accordingly. |
The "mini" combat tracker has always supported the notion of allowing you to click on an Icon's name in the display and having the program center on that Icon. This is not, however, always the desired result. Now, when you click a single time, if the Icon is already in the view area that you are looking at it will be flashed, but not centered on. If the Icon is not in view, then it will be centered on. Double-clicking on the Icon's name will provide the same behavior as before -- whether the Icon is in view or not, it will be centered on. |
In the "4e" definition, "Power" keywords were not being issued in the chat message for martial damage. |
You can use the keyboard shortcut Alt-N on the Campaign tree to create a new Folder. |
The "4e" defition has received a number of small tweaks to better bring it into line with the rules. |
Data displayed on the character sheet will no longer be preceded with a "+" if the number is positive. The "+" will still be added to expressions as expected, but, in an effort to clean up the display a bit, it is no longer displayed. |
Highlights in this Version |
---|
Three new tutorial videos |
Many enhancements to the "4e" definition |
XP awards revamped |
Many fixes |
Additions / New Features |
---|
A new tag is now recognized in a description (used in the description file): "dm-only." By adding this to a description, the description will be available only to the Master. |
You can now load PC Icons from a previously saved campaign into your current campaign by choosing "File->Load Campaign Characters." This allows you to quickly and easily "migrate" PCs from one campaign to another without having to export/import them. |
A new theme element, "LevelUpImage" has been added. This ties into the new animation that occurs when an Icon is awarded enough experience to go up a level. This, of course, depends on the data for such a determination being present on the Icon's character sheet. |
A new Preferences item, "Automatically award XP," has been added. If selected (not the default), the program will automatically award, or divide amongst party members, the XP value of a slain NPC. Setting this option overrides the "Ask for XP award" setting. Note that you must have your campaign data properly configured, in coordination with your definition, to allow this setting have have any practical meaning. |
A new tag has been added to the "base-rules" section of the definition file: "level-up-sound." This specifies the default sound to play when a "level up" situation is detected. Refer to the "3rd Edition" or "4e" definitions for examples of how this tag is used. |
Added a scripting method, "setRollModified," to allow you to inform the program whether the roll has been modified. See the scripting documentation for more information. |
A new Preferences item has been added: "Allow drag-and-drop on Icons." If set (not the default), then dropping an Icon onto another Icon using drag-and-drop will place the dropped icon into the inventory of the other Icon. If not set, the dropped Icon will, instead, be deposited on the Map. Not having this option set should make it much more difficult to accidentally place Icons into the inventory of other Icons. |
Added a default sound for awarding experience. |
When dragging a rectangular region on a Map, the width and height of the rectangle are now displayed in a floating label, just as distances are. Additionally, holding down the "shift" key while dragging the mouse will constrain the rectangle to be a square. |
Added a pop-up menu item for Maps called "Select all Icons." This will select all the PC and NPC Icons on the currently loaded map, making it that much easier for the Master to, for example, select all the Icons and roll initiative for them without having to zoom out and select them all manually. |
Added Preferences item, "Square threatened area." If selected (not the default), threatened areas will be drawn using a square instead of a circle. |
Two new Icon effects have been added: "Glow (square)" and "Square" (as opposed to "Ring"). These behave exactly as their circular counterparts, except that they render squares instead of circles. |
Auto-targeting has been added. If enabled in Preferences (not the default), dragging an Icon into or out of "threatened range" of another Icon will cause the program to add/remove that Icon as a target of the dragged Icon. This feature has received little testing, so use it with caution (you can always turn it off in Preferences and return to normal operation). |
Added definition file clause "npc-dead-point" to allow you to set up settings for NPCs that are different from those for PCs. In the past, the program simply silently treated NPCs differently, but not you can explicitly define when an NPC is considered to be "dead." If this clause is not present in your definition, note that the settings for PCs will be used and, effectively, there will no longer be special handling of NPCs. |
Added a few new scripting methods and a new "4e" script, "gather_equipment.kws" to illustrate them. Also made "one shot" script accessible from a Map's popup menu (instead of having to go into the Script Manager to run them). |
Added a Preferences option, "Chat on Map" that, when selected (the default) places chat messages on the Map. This has been the default behavior since the beginning, but by making it optional, you now have the choice of not seeing chat messages on the Map, but still taking advantage of "Show rolls next to Icons," which now will display all chat messages associated with an Icon next to that Icon. You can also use the "Chat removal delay" option to govern how long these messages appear next to the Icon, without having to have chat messages on the Map if you don't want them there. |
A Preferences item has been added, "Chat on top," that, when selected (not the default) will place the Chat history window on top of all other program windows. Note that this item only takes effect when the Chat history window is created, so if you change it with Chat history open, close the window and re-open it. |
Player status indicators have been added to the Player nodes in the campaign tree. If a Player has sent a message to the Master less than five minutes ago (a message is just about anything -- chat, rolling dice, moving an Icon, etc.), then the Player's status is green. If no messages have been received in more than five minutes, then the Player's status changes to yellow. After eight minutes, the Player's status goes red. This gives everyone an easy indicator of just who is (and is not) participating in the game. Also, the status indicator badges can be themed, if you like. |
Added a "hidden" flag to the definition file for Pages, Sections, Tables, Notes and Fields. Specifying this flag for any of these types will cause the item to never appear on a character sheet. Why on earth would you want to do that? Well, maybe you want to set up a table that doesn't take up space on a character sheet, but contains default information that you would like referenced by a set of scripts. This flag allows you to do just that. |
Added scripts and a button to the "4e" definition (found in the "Pick" drop-down list) to handle rolls for using the "bluff" check to establish "combat advantage" over an opponent. |
A definition tag, "filter" has been added to the "expression-tab" clause of the definition file (see the "4e" definition for an example). Using this tag will add a filter/search field to the expression tab it appears in, allowing the user to hide dice expressions that do not match a partial title that they type. This works similarly to typing part of an expression's name and having the Dice Panel scroll to the first matching expression, except with the stronger visual impact of hiding expressions that don't match (and being able to see what you've typed). |
Added theme elements for buttons to give you greater control over how some buttons are rendered (depending on the look-and-feel of your operating system). |
A new scripting method, "createDrawnItem" has been added that allows scripts to create basic DrawnItems (either circular or square DrawnItems). Please refer to the "4e" "attack_post_ex.kws" script for an example of how this new method might be used. |
A Preferences item, "Show exact measurement," has been added. If enabled (the default), then the program will continue to behave as it always has: distances will be displayed as feet/meters. If disabled, along with "Show measure squares" being enabled, then only measure squares will be displayed. For people/systems that only want to deal with distances in terms of grid units, then this option makes things that much easier for them. |
Holding down the "shift" key when pressing the "Import/Load" button on a character sheet now allows you to load special character sheet "fragments." What this really means is that instead of replacing all the character sheet data with the data loaded, holding down the "shift" key will cause the contents of the new file to be added to the existing character sheet. The intention here is that you might want to create mini-sheets for things like magic items or the like (with entries for "powers" and "armor" and such), which can then be loaded into an existing character's sheet to quickly make the item available. |
A new Icon "state" has been added - "blurry." When this state is set, an Icon's image will be rendered with a slight blur. You can set this state through an Icon Effect or directly by right-clicking on the Icon and accessing the "Options" item from the popup menu. |
Fixes |
---|
Changing a Map's scale interactively (using Modify->Set scale from the popup menu) did not properly adjust the Map's grid size to reflect the new scale. |
Specifying a parse-script in a die definition would override a "parse-script-ex" defined in the expression (which it should not have done). |
"Square" calculation did not work correctly in conjunction with SI units. |
Dragging an Icon from a well in the campaign tree would incorrectly re-order the Icon nodes. |
Using the "absorb damage" temporary modifier in the "3rd Edition" and "4e" definitions could lead to the character sheet data for that field becoming confused. While the current solution isn't perfect, it should be, at least, a little more predictable. |
Encounter Icons were not being saved correctly. |
The "recent file list" wasn't being updated correctly under certain circumstances on Windows. |
Corrections to the definition file documentation. |
The stacking order of Drawn Items was being inverted on campaign load. |
Using the "old-style" built-in theme resulted in some color mismatches. |
The Master was not properly handling Icons transitioning between "hidden" states during combat. |
Adding a very long chat message could result in the chat history dialog (if open) pausing unnecessarily. |
Using a field's value to define the number of dice to use in the expression failed to take into account modifiers to the field. |
Exporting a Campaign did not save targeting information. |
Exporting a campaign with a greeting image/sound did not de-reference the file names correctly. Also, Players would pause during the connection process until they dismissed the greeting (now the greeting is displayed in a non-modal state). |
Duplicating a newly created Icon Effect resulted in the duplicate's "duration" and "remaining" being reset to "1." |
The Icon Browser had a few lingering problems: using the "Add" button and then using drag-and-drop to re-located the newly created Icon did not work unless the program was restarted. Also, pressing "Add" more than once for the same Icon would not result in the Icon being added multiple times. |
The "H" keyboard shortcut was enabled when an Icon was not showing in the campaign tree -- it should not have been. |
Modifications |
---|
Minor things -- tweaked the "square" display and calculation and added a temporary modifier for "threatened area" (which was missing from the "4e" definition). |
The "Select Target" dialog now has a toggle button allowing you to instruct the program that multiple rolls should be made if multiple targets are selected. By default, with multiple targets selected, only a single roll is made, then applied to each target. By selecting this check box, you are telling the program to roll for each target individually (which some game systems require for certain roll types). |
MonsterBuilder - added a field in the "powers" dialog for entering action conditions and tied it into the character sheet generation. |
The "4e" definition has been modified slightly. The "armor" table has lost its "magic" column (which was really an artifact of "3rd Edition") and gained columns for entering bonuses to "fort," "ref" and "will." The "mod_script.kws" script behind this table has also been adjusted to take advantage of the new columns. |
MonsterBuilder - a monster's "size" wasn't being used to set the Icon's size. |
The "Ask for XP award" option has been re-worked slightly. In addition to getting an updated user interface, it now can take a "party" into account and displays an option to divide the award between all the members of a party. Additionally, you now have the option of applying the award immediately, or simply adding it in the "pending" state (which was your only option previously). |
Further enhancements to the "4e" definition. This time we've added a column to the "Armor" table for entering the "check penalty" associated with wearing the armor and a column to the "skills" table for specifying the skill's related ability. Tying these together is a new script, "skill_check.kws" that looks for worn armor and applies the penalties, based on the ability associated with the skill. |
Still further changes to the "4e" definition. Now we have an "Implement" table that ties into the "Powers" table (and scripts), allowing you to grant bonuses to power attacks/damage through the use of an "implement." |
The "4e" definition's "armor" table now has a "speed penalty" column that ties into the "speed" field to automatically keep speed adjusted based on what armor is worn. |
MonsterBuilder - you can now (provisionally) import a previously saved KWI file into MonsterBuilder by dragging and dropping the file on the "Icon Image" area. MonsterBuilder will do its best to un-parse the Icon file, but no guarantees are made to the accuracy of this parsing (i.e., don't be surprised that it fails under certain circumstances, like trying to import an Icon that was not created by MonsterBuilder). |
The "4e" definition has been modified further to change the way that "powers" are available. Previously, a combination of "number remaining" and the "available" check-box controlled whether the "power's" roll was available. This worked, but for "powers" that should become unavailable after use, relied on the user unchecking the "available" box before the roll became unavailable. Now the logic has been changed to mark rolls unavailable more automatically. The only real problem with this solution is for "powers" that are "reliable" -- they will be marked unavailable and require the user to change their roll quantity manually as necessary. Fortunately there are far fewer of these types of "powers," so the issue should not come up overly often (and far less often than players forgetting to mark "powers" as unavailable). |
Previously, you were limited to integers for the "cost" of expressions. Now you can specify a decimal number for the "cost." Why would you want to do that? Well, this is handy (see the "4e" definition's "powers" table for an example) when something allows multiple attacks and you don't want it to become unavailable after the first evaluation. So, for something that allows two attacks, set the cost to "0.5" and each evaluation will deduct "0.5" from the remaining, allowing you to roll two attacks before the expression becomes unavailable. |
After starting to drag out a rectangular region on a Map, holding the control/Command key will constrain the rectangle to whole units (either feet or meters, depending on the measurement system used). Additionally, if you have the Preferences item "Show measure squares" turned on, the rectangle will be further constrained to whole grid units. |
Players making changes to a character sheet's Notes could result in a very, very, long chat message being issued (as the entire Note would be contained in the message). Now, only the fact that the Notes were changed is reported. |
Changing an Icon's initiative during combat now issues a chat message showing the old initiative and the new initiative (to better track down and recover from those instances where someone unintentionally re-rolls initiative during combat. |
If you un-dock the DicePanels, their size and location will be remembered between program sessions. |
More squares everywhere. You can now "center a square" effect (in addition to "circular" effects). Also, if you hold down "shift" when pressing "r" (reveal) or "c" (conceal) you will reveal/conceal a square region instead of a circular one. |
The "4e" "power" script has been modified to take the "armor" table into account when looking for "implements" (since armor can also bestow bonuses and powers). |
If you have the Preferences item that places roll messages next to the Icons that they are associated with enabled, you will also see chat messages issued from the Icon appear next to the Icon. This, in some ways, approximates a "chat balloon," making it a little more apparent when an Icon says something. |
The "4e" script, "reset_powers.kws" has been modified to also reset "action points" when "daily" powers are being reset. |
A little more visual flair has been added: messages that appear next to an Icon now scale up into view instead of simply popping into existence. |
Previously, if you created a Folder in the NPC Well of the Campaign Tree, you could not use drag-and-drop to copy the NPCs contained in the Folder to the current Map -- now you can. This makes it easy to set up "semi-random" encounter "blocks" of NPCs and simply drag them onto the Map when they are needed. |
Map rendering while dragging an Icon with "threatened areas" turned on has been improved four-fold. |
Added checking for "fighter weapon talent" to the "4e" scripts. While not perfect, if you have something like "Fighter Weapon Talent: +1 with one-handed weapons" in the "Racial / Class Traits" table, the scripts should be able to pick it up correctly. |
More "4e" changes: Added a "Special" column to the "Armor" table and now include the "Weapons" table when searching for "power" implements. |
In an effort to avoid issues of lost character sheet updates, we are now checking the editing state of character sheets whenever you change focus to something else (either by hiding the character sheet or clicking in another window when the character sheet is not docked). When this happens, your edits to the sheet will be committed, just as if you had clicked on the "Commit" button. It has never been a good idea to leave a character sheet locked for editing, but this is especially true when playing systems such as "4e," which makes extensive and unpredictable changes to the character sheet. |
Highlights in this Version |
---|
None |
Additions / New Features |
---|
None |
Fixes |
---|
Image Icons could not be displayed correctly by Players (this time, fixed for sure...we hope). |
Modifications |
---|
None |
Highlights in this Version |
---|
None |
Additions / New Features |
---|
Added definition tags "heal-sound" and "harm-sound" to the "base-rules" section of the definition file to specify the default sounds to play for hit point adjustments. |
A default "heal" sound has, apparently, been missing from the distribution for a couple of years now (not sure how *that* happened), so it has been added back in. |
Fixes |
---|
MonsterBuilder - the "add" button in the "Powers" dialog had become broken. |
Modifications |
---|
Made the "scale" fields of the Map options dialog a little wider to better display values with more than four digits. |
Enabled "static label script" for all button types in Dice Dialogs. As an example, see the "4e" definition, which uses this for the "second wind" script to now indicate whether the "second wind" is available for use. |
You could not previously use drag-and-drop in the campaign tree to move a Map from an Adventure back to the "Maps" well -- now you can. |
The "Award party experience" process has been adjusted slightly. To begin with, the dialog has been re-worked to make it more accessible. Secondly, the dialog gives you the option of awarding the entire amount to each member of the party, or dividing the amount equally between party members. Finally, once the dialog is accepted, the experience award will be immediately applied to the party members (as opposed to being added as a "pending" award). |
Highlights in this Version |
---|
Fixes and minor enhancements. |
Additions / New Features |
---|
Tokenizer - added system properties "kLoOge.watchFolder" and "kLoOge.watchPattern." If specified, the stand-alone version of kLoOge.Tokenizer will monitor the specified folder for files with names that start with the pattern. If it finds any added to the folder, it will load the file as the background image and delete the original. This is handy for people using, for example, a screen capture utility to grab images for use as Icon images while keeping the monitored folder tidy. |
Fixes |
---|
Differing intersecting threatened areas were not being computed correctly. |
Dragging multiple Icons with "snap to grid" turned on could result in some of the Icons being improperly positioned. |
Using the mouse to reorder the rows in the "Edit Icon Effects" dialog caused a number of program errors. |
Duplicating an "Icon Effect" could result in the original's modifiers being replaced by the modifiers of the duplicate. |
Image Icons were not being loaded properly by Players (resulting in a crash when they were accessed). |
The "disconnect player" dialog was displaying an incorrect message its dialog. |
Modifications |
---|
Changed the way that the "Edit Icon Effects" dialog is built to make it more efficient. You can also now hide the help text to save space. |
MonsterBuilder - further refinement to the "auto-complete" behavior. |
MonsterBuilder - pressing "enter" in the "Power info" field will now add the power (saving having to press TAB three more times). |
Changes to the "4e" definition and scripts to better support "prone" targets and temporary modifiers to attack/damage rolls. |
Highlights in this Version |
---|
None |
Additions / New Features |
---|
None |
Fixes |
---|
Sorting the list of Icon Effect modifiers was improperly implemented and has been removed. |
Modifications |
---|
MonsterBuilder - Made some changes to the what the "autocomplete" works. |
Highlights in this Version |
---|
A "4e" demo campaign has been added. |
Licensed Masters can now load/save the demo campaigns. |
Improvements to Master / Player communication. |
Added kLoOge.MonsterBuilder - an application for creating "4e" monsters. |
Chat messages now fully support HTML. |
Additions / New Features |
---|
A "4e" demo campaign has been added. Additionally, the "3rd Edition" demo has been updated slightly. |
Previously, once you bought a license you could no longer view/load the demo campaign. Now, as a Master, you can load any of the demo campaigns at any time and save/modify them to your heart's content. |
Two new tags have been added to the definition file: "armed-sound" and "disarmed-sound." If set, the program will play the appropriate sound when a weapon is armed/disarmed. Refer to the "3rd Edition" or "4th Edition" definitions for example usages. |
Added five more Tokenizer overlays. |
A new definition tag, "static-label-script-ex," has been added, along with its related support files. Essentially, this tag allows you to specify a script to generate the label for an expression. See the "4th Edition" definition for an example of how this tag and script might be used. |
Added a scripting method, "getWorkingFolder()" so scripts can retrieve, in a platform-independent fashion, where the program looks for supplemental information. |
Created a new program called "MonsterBuilder" to (maybe) help entering/creating monsters. See the tutorial video for more information. |
Fixes |
---|
Launching a script from the Script Manager might cause the script to be unable to retrieve character sheet data. |
Not all methods of setting an Icon's size would animate the size change. |
Specifying an empty "default-value" in the definition caused the program to incorrectly handle multi-roll increments. |
Scripts that adjusted hit points could cause the Master to miss the adjustment if they also changed other things on the character sheet. |
Icon Effects of a boolean type ("Incapacitated," "Held," for example) were not being written to the campaign file correctly, leading to them not being loaded correctly. |
You could not rename a campaign in the campaign tree. |
Modifications |
---|
Removed the hit point difference display when "hps-count-up" is specified (since it didn't make much sense). |
Removed the "critical-miss" setting from the "4e" definition (since it didn't apply). |
The "4e" definition has been adjusted with some new columns. Expect that this definition will be in flux for a number of months, since it's so new. |
While the program has always seemed to support HTML chat text, it never really did. Now we really do use HTML in chat so the world opens up in all sorts of interesting ways for chat messages. |
Mouse-drag-reordering of tables in the program has been instituted. In most instances, this augments the existing reordering behavior. However, for "list-panel" tables, the "up" and "down" buttons have been removed to give more space to the text entry field. |
In addition to using any HTML tag you like in chat text, you can also use them in character sheet table data. Be advised, however, that this ability is intended to be used only for visual impact when looking at a character sheet or in roll titles in Dice Dialogs -- interspersing HTML tags within an expression (between the curly braces) will cause the expression to fail during evaluation. |
Holding the shift key while using the Icon Quick Stat window to remove a target will remove all targets for the Icon. |
Removed the "reset_hs.kws" script ("reset healing surges") and bundled the functionality into the "reset_powers.kws" script (where it should have been in the first place). |
Highlights in this Version |
---|
Important fixes. |
Additions / New Features |
---|
None |
Fixes |
---|
Setting "icon drag delay" to zero actually left the measurment labels on the screen forever. |
Adjusting hit point fields at maximum when "hps count up" is specified ignored the adjustments. |
The "dangling operator" fix ended up being implemented incorrectly. This fix should correct both issues. |
Modifications |
---|
None |
Highlights in this Version |
---|
Fixes and more fixes. |
Additions / New Features |
---|
None |
Fixes |
---|
Using a "data list" with a table containing a boolean field would cause the program to fail. |
"Following" did not work correctly. |
"Emote" chat text color was not honored on the Master. |
Maybe fixed out-of-range values in the "adjust hit points" dialogs/panels. |
The last row of a "list-pair" with an expression was being dropped. |
Dangling operators in expressions were not being handled as well as they could be. |
Modifications |
---|
The "set Icon rotation" mini-dialog no longer closes as soon as you let go of the slider. Instead, you can press "ESC" or use the "x-out" button to dismiss the dialog. |
Highlights in this Version |
---|
Still more fixes. |
Additions / New Features |
---|
None |
Fixes |
---|
The "plain chat history" option was not being loaded from the config file correctly. |
The "modifier-negative" definition tag did not interact properly in combination with the "treat-data-as-modifiers" tag. |
Specifying "DM notes" caused a campaign to fail to load. |
Saving chat history with a campaign could result in Players not receiving the full history when they connected. |
Modifications |
---|
None |
Highlights in this Version |
---|
More little fixes. |
Additions / New Features |
---|
Added a Preferences option, "Plain chat history," to render chat history text plainly. If selected (not the default), the border and highlights normally rendered in chat history to match Map chat messages will be omitted. |
Fixes |
---|
None |
Modifications |
---|
Made the "name" tag of the "expression-tab" clause required so it can be used to identify which tab is being referred to when "edit source table(s)" is used. When specifying a name for an "expression-tab," be sure that each tab has a unique name, or else you could still end up confusing the program. |
Highlights in this Version |
---|
Fix for editing source tables. |
Additions / New Features |
---|
None |
Fixes |
---|
The previous "fix" for editing source tables actually broke the functionality. We've reverted back to the previous behavior. |
Modifications |
---|
None |
Highlights in this Version |
---|
Fixes. |
Additions / New Features |
---|
None |
Fixes |
---|
Editing the source table for an "expression-tab" could lead to editing the incorrect table. We're not 100% sure that this fix actually addresses the issue, so please let us know if it doesn't! |
Chat icons/avatars were not being properly decoded from chat history when Players connected (resulting in the images not being displayed). |
Editing combat tracker "events" would incorrectly instruct the combat tracker for Players to reposition the current round. |
Modifications |
---|
Using the mouse wheel to scroll chat history will now activate the "pause" button when you scroll back and deactivate the "pause" button when you scroll back to the bottom. |
Highlights in this Version |
---|
Map grid opacity. |
More fixes. |
Additions / New Features |
---|
You can now specify an opacity for Map grids. This allows you to use "snap to grid" but, still, not actually see the grid (if you set the opacity to zero). Also, you make grids even more subtle by decreasing their opacity. |
Fixes |
---|
Avatars were not being sent properly to Players. |
If you specified a grid offset (either horizontal or vertical) and had "snap Icons to grid" turned on, the Icons would not actually snap to the grid. |
"Chat as" did not function properly. |
A number of errors existed in the "4e" scripts. |
The "away from keyboard" message was not being issued correctly. |
Editing an NPC Icon with a "special note" would remove the note. |
Under very rare circumstances, exporting Icons could lead to incorrect campaign saving. |
Modifications |
---|
Removed the "read-only" qualifier to the armor class fields. |
Made a slight rearrangement to the "defenses" table in the "4e" definition to better account for undefined defenses. |
Added the "target defense" to a roll panel's title. |
Improvements to chat panel refresh and Icon drag measurement refresh. |
Highlights in this Version |
---|
More fixes. |
Additions / New Features |
---|
A scripting method, "getScriptFolder," has been added that allows scripts to retrieve the location where the program loads scripts from. |
Fixes |
---|
An error that did not really affect operation could occur while reading the list of definition files on start-up. |
Adding a game from a Player's "Open Connection" dialog caused an error. |
If an Icon did not have any data contained in its hit point sources, the "Set" button on the Dice Panel should have been removed, but, instead, was left to cause an error if pressed. |
The "max roll" feature stopped at the first die, not the first dice expression, as it should have. |
Certain changes on a character sheet with the Icon's Dice Panel visible could cause the Dice Panel to become "disconnected," leaving invalid copies behind on the Map. |
The "power.kws" script was not parsing weapon damage correctly. |
There were a number of problems with "Folders" in campaigns. Drag-and-drop to them and loading a campaign with Maps contained in Folders caused the program to lock in a busy-loop. |
Applying damage in a multiple hit point definition did not actually apply the damage. |
The "kw.sh" program launch script for Linux wasn't setting a property that it needed to. |
Modifications |
---|
Since the "auto-relaunch-on-update" feature seems to be flakey on Windows Vista, it has been removed for that operating system. |
We are now taking advantage of a feature that has long been in the scripting library that we use to break common functionality out of scripts and place them in a single location for easy reference. Check out the "4e" script folder and scripts for examples of how this is being done. |
Highlights in this Version |
---|
None |
Additions / New Features |
---|
None |
Fixes |
---|
The "StatTracker" plugin had some image issues. |
Various issues involving deadlocks and invalid pointers. |
The chat history dialog's "Pick" drop-down list was incorrectly calling various output methods. |
Password protected Icons where bing overly aggressive in asking for their passwords. |
Still problems with Linux installs. |
The chat history dialog was not refreshing properly. |
Switching between undocked and docked chat history as a Player resulted in the chat history dialog being left open. |
Modifications |
---|
None |
Highlights in this Version |
---|
More fixes. |
Additions / New Features |
---|
Added the ability to send debugging output without always seeing the confirmation dialog. |
Fixes |
---|
There remained a problem with proper sound playing when "hps-count-up." |
Older versions of Java on OS X appear to continue having obfuscation issues when finding the "Preferences" and "Quit" items. Hopefully, this change will fix things. |
Switching campaign definitions with Players connected did not work correctly. |
Definitions with multiple hit point sources would reset dice panels after each adjustment, which discarded all the adjustments other than the one associated with the "Set" button pressed. The solution is to have a single "Set" button that will apply all the adjustments in one pass. |
Modifications |
---|
None |
Highlights in this Version |
---|
Fixes galore! |
Note for Linux users: Do NOT install from an update. Since the location of some libraries has changed, please download the full version and do a complete re-install. |
Additions / New Features |
---|
None |
Fixes |
---|
Lots of things that showed up on the first day of 3.1.0 being released. Most are attributable to obfuscation, but a few are other minor things. |
Starting combat resulted in an error for Players. |
The "kw.sh" script and install locations for libraries wasn't correct for Linux. |
The sound played for heal/harm was reversed when "hps-count-up" was specified in the definition. |
Reveal/conceal of non-rectangular and non-circular regions were not being conveyed to Players. |
Modifications |
---|
Added the expression bonuses to the popup menu of roll buttons when multiple rolls are defined. |
3.1.0 can not be installed into the same location where a previous version of kLoOge.Werks is installed. Instead, install it in a completely different location. This allows you to keep your previous version intact in case you encounter problems with 3.1.0. The installer offers an option of migrating your settings to 3.1.0, so please use it!
Highlights in this Version |
---|
Nearly two hours of new tutorial videos. |
Completely new Dice Panels. |
Maps can now have definable borders. |
Icon Effects have been vastly improved. |
Easier Preferences management. |
Bonjour "zero config" networking for local games. |
Improved measurement. |
Faster dice/expression parser. |
Improved "dead" Icon rendering. |
Complete definition file documentation. |
Many more scripting methods for accessing/modifying much more data. |
Dozens of new themeable elements have been added. |
Initiative handling has been greatly improved. |
Targeting and Icon Quick Stat improvements. |
Better grids with adjustable offsets. |
Improved campaign backup procedure that should eliminate corrupted campaign files. |
New "wizard" to make entering licenses easier. |
On Windows, the program is now launched from an EXE (instead of using a BAT or JAR). |
More than a dozen new kLoOge.Tokenizer overlays have been added. |
Avatars for the Master and Players. |
Polygonal regions can now be defined. |
Reference "4th Edition" definition and scripts. |
Additions / New Features |
---|
Added theme elements for various things. Refer to the bottom of the "demo/theme.xml" file for the newest tags. |
A new Preferences item, "Auto-open dice panel" (defaults to being selected), allows you to control whether an Icon's Dice Panel opens when its first target is added. |
Added theme element for multi-roll indication color. |
Map borders allow you to specify a percentage of the Map's physical dimensions as a border or "gutter" around the edge of the Map. This border acts as an extension of the Map's image, allowing you to place Icons there and otherwise treat it as if the Map's image extends beyond its physical size. |
Added an image overlay for Icons that have an Effect applied to them. This makes it easy to see, at a glance, that an Icon is effected by something. |
A new Preferences item, "Auto-hide Map items," has been added. If enabled (the default), then when you begin dragging an Icon, all overlay items on the Map (chat text, Dice Panels, the mini-battlebar, etc.) will become hidden. Once you release the Icon, the overlay items will return. This gives you a quick and thought-free way of clearing the map when you are moving Icons around. |
A new option has been added for players: "Purge cache." This feature is located under the program's "File" menu and allows players (when not connected to a Master) to delete a game session's cached files from within the program. This ability is handy in certain circumstances when the player's cache becomes invalid. |
Added a Preferences option to allow you to invert the mouse wheel Map zooming behavior. Since expected mouse wheel behavior is quite subjective, you can now decide for yourself how you'd like it to behave. |
Added a filter control to the "general" options tab of Preferences. You can use this filter to type in part of an option's name (or part of an option's help text) and if an option does not contain the text you enter, it will be hidden. This makes finding a particular option in the ever-growing list a little bit easier. |
Added a theme element, "PlayerOptionColor" to control what color is used to display player-related options in Preferences. |
Added "Bonjour" (zero config) networking support. If enabled, the program will use Bonjour to establish connections and advertise games on your local area network. This frees you from needing to define primary, secondary and multicast port numbers. In order to be used under Windows, you must first install Bonjour, which is available from Apple. On Mac OS X, you do not have to do anything, since all the necessary software is already installed. Please see the tutorial video availble on our website for more information. |
Semi-experimental. Added a Preferences item to govern Icon drag throttling. The idea here is that some machines (and some Java implementations on various operating systems) are slower than others and that the user of said machines should be able to decide for themselves between data accuracy and perceived performance. So, if you have a very fast machine with a good video card, you may want to experiment with setting this value lower than the default of fifty milliseconds. If, on the other hand, you suffer from having a slower machine and/or graphics card (or a poor Java implementation), you may want to boost this value higher. The result of changing this value is that the program will ignore Icon drag messages if too many of them come in during the setting's time interval. |
Added Preference item, "Allow grouped attacks," to allow you to override the program's default behavior to not roll multiple identical attack/damage rolls. If you decide to allow this to happen, be aware that, from time to time, you may see additional, unexpected, rolls, depending on which Icons are selected when the roll is made. |
A new Icon Effect modifier has been added: "Current Image." This Effect modifier allows you to change an Icon's current image via an Effect. There are, however, a few caveats. First, since this modifier does not exist on the character sheet, there is no way for the program to know which image was current for the Icon when the Effect took effect. As a result, when the Effect expires, the Icon will have its current image reset to the first image. Secondly, the first image is image number zero, not image number one. This is a programming thing, that arrays start at index zero and not one, so keep it in mind. Third, if you specify an index that is invalid, you will not see an error or other misbehavior -- the invalid input will simply be ignored. |
Added a new scripting method, "zoomTo" that takes a higher precision Rectangle2D for computing the zoom area. The original "zoomTo" is still available, which takes a Rectangle instead of a Rectangle2D. |
An option for Icons has been added: "Remove when dead." If this option is selected (the default), the Icon will be removed from initiative and hidden on the Map when its health reaches the point of death. If not selected, the Icon will remain on the Map and in initiative until the GM manually removes it. |
Field data can now be identified as containing a double precision value ("double-value"). This is primarily used in the "Temporary Modifier Table" to indicate to the program that a double precision value is acceptable. The default "3rd Edition" definition has been modified to specify this value for the "Size" temporary modifier. Additionally, you can now enter "+value" in the modifier fields if you like (the "+" will be dropped, but it no longer is treated as an invalid character). |
Previously, when an Icon "died," it would disappear off the Map after a reasonable number of seconds (unless, of course, you have "Auto-hide Icons" turned off in Preferences). While handy for keeping down the amount of Map clutter during a large battle, this really gives a false indication of the "battle conditions." Now, when an Icon "dies" and disappears, it will leave a barely visible "impression" of its image on the Map. This "impression" can't be edited or interacted with, but allows you to see just where the bodies are piling up. |
A new tag has been added to the definition rules: "local-data-files." If declared in the "base-rules" section, then the master will not send Table data files to players. By setting this flag you are telling the program that players already have their own copy of the Table data files, which they should load instead of receiving live copies from the master. If you do not expect your players to already have their own Table data files, then do not set this flag in your definition! On the other hand, if you make extensive use of Table data files, you will probably see a dramatic improvement to client connection times if the master does not need to send over the Table data. For an example of what this tag looks like, please refer to the "3rd Edition" definition. |
You can now right-click on a Drawn Item and, if the Map has obscurement turned on, reveal or conceal the area contained by the Drawn Item. This opens a number of oportunities to reveal/conceal shapes that would otherwise be difficult (or impossible) to accomplish. |
Made Icon drop shadows semi-official. You can now toggle them on or off via the "Options->Drop shadow" menu item, or through the "Edit Icon" dialog. Note that "locked" Icons do not get a drop shadow and things like angle and spread are not available (yet...). Also note that pressing shift+1 or shift+2 when the Map has focus will change the distance of the drop shadows for all Icons on that Map (shift+1 decreases and shift+2 increases the distance). |
You can now specify "parse-script" and "post-script" tags in a "die" clause of a definition file. This allows you to create "default" scripts to be executed when an expression using the die is rolled. You can still define "parse-" and "post-scripts" in an expression, which will override any default scripts defined in the die. |
A new tag has been added to the Expression clause of the definition file: "desc-label." This tag should be used to remove ambiguity in an Expression's name so that a description can be located. Please refer to the "3rdEdition.xml" definition for an example of how this tag can be used. |
The "Icon Quick Stat" display window now contains a section that contains all the targets that the select Icon has. Aside from displaying this potentially useful information, you can also use the display to remove targets and to select the "current" target. When a "current" target is selected, the "Select Target" dialog will not open when multiple targets are selected, instead deferring to your selection (which is retained between rolls, regardless of which Icons are selected at the time of the roll). |
There are two new optional tags for the definition file: quick-stat-size-x and quick-stat-size-y. These must both be specified to be recognized and reside in the base-rules block (see the "3rd Edition" definition for an example). These tags allow you to specify to the program the preferred size of the Icon Quick Stat window. This allows you to, for example, force the window to be narrower or shorter than it would like to be, adding a scrollbar to reveal the otherwise hidden contents. The rationale behind this is that some information in the Quick Stat window, while important, is less important than other information. By giving the program a hinted size to use, you can keep less important information hidden by the scroll area, thereby reducing the overall size of the Quick Stat window. |
Added the ability to edit the tables that make up a Dice Dialog expression tab directly from the Dice Dialog. If you right-click on one of the tab headings of a Dice Dialog (both old and new), you will be presented with a pop-up menu that, if selected, will open the tables that make up the expression tab in a dialog. From this dialog you can make whatever changes to the tables that you like -- change fields, add rows, delete rows, etc. When you finish, click on "OK" and your changes will be saved to the character sheet (if you click "Cancel," your edits will be lost). |
A new table button has been added that, when clicked, will commit the current sorting of the table. This allows you to visually sort the table (as you always could), but only commit your sorting changes if you choose to do so (by clicking the button). The image for this new button is, of course, themeable (StampIcon). |
You can now right-click on a row of a character sheet table and select "Duplicate" from the popup menu to make a copy of the row. |
When players add or remove Icons from their Icon Toolbar, their changes will be recorded in their configuration file. This allows their preference for which Icons appear in the Toolbar to be preserved between gaming sessions. Previously, players would lose their included/excluded Icons as soon as they disconnected from the master. |
A new element has been added to the "expression-tab" clause of the definition file: "combo." By using this element (see the "3rd Edition" definition for an example) you can collect a number of "button" elements into a combo-box (or, "drop down list" as it is sometimes called) to conserve space on the Dice Panel. Only "buttons" can be added to a "combo" at this time. |
Grids now have a few more options to help you line them up with Map images that have existing grid lines. These options are: "Horizontal offset," "Vertical offset" and "Stroke compensation." Horizontal and vertical offsets are specified as a portion of the grid size. For example, if you have a grid size of five feet, you can specify an offset anywhere between negative five feet and positive five feet. "Stroke compensation" is specified as a fraction of the stroke size used to render the grid. This setting allows you to tweak the way the grid is rendered to compensate for the rendering itself. By judicious use of grid size, horizontal offset, vertical offset, grid stroke and stroke compensation, you should be able to match the grid to a much larger number of Map images than previously possible. This is not to say, however, that we encourage you to use Map images with pre-drawn grid lines -- it's best and easier for you if you can use images without such lines. |
When converting Icons from one type to another, you now have the option of not only changing their type, but their disposition. For example, when starting with a hostile NPC you now have the option of converting it to a PC or a friendly NPC. Converting from hostile to friendly (or vice-versa) does not really change the Icon's type, but makes it easy to flip an Icon's disposition in a single operation. |
Notes on the middle mouse button: if double-clicked on a Map, the Icon Toolbar will be displayed. If double-clicked on an Icon in the Icon Toolbar, that Icon's character sheet will be toggled. If pressed and then dragged over an unselected Icon, the Icon will become selected and all other Icons that the mouse passes over in the Toolbar will become selected. Similarly, pressing and dragging over a selected Icon will deselect the Icon and deselect any other selected Icons that the mouse passes over in the Toolbar. |
Added the scripting function "getModifiedFieldData()" to retrieve the fully resolved value of a character sheet field. |
There is a new "zoom to" function that allows you to zoom the Map to a level where all Icons in initiative are visible. This feature is available only during combat and is activated by pressing "a" (lowercase "A") on the Map. |
You can now save a Note to a text file. |
Added a more powerful and flexible "post-script" tag to the definition file: "post-script-ex." See the "3rd Edition" definition for an example. Basically, this new tag allows you to specify multiple "post-script" scripts and pass arguments to them directly from the definition file. This makes it possible to have a single script perform multiple duties and can also break a script's ties to a particular table. Handy stuff, for those interested in such things. |
Added a "Special Damage" column (and associated DC/Save/Save Multiplier columns) to the "Weapons" table of the "3rd Edition" definition to allow you to define an in-line expression for special weapons that deal special damage (like poisoned daggers, etc.). Putting the columns into the "Weapons" table allows the expression to appear right next to the "Attack" and "Damage" buttons of the Dice Dialog, making the special roll easily accessable during play. |
"Multi-List" tables now support columns that honor the "bool-value" tag. If specified, the column will be treated as containing a boolean instead of a String. This new value type is used in the "3rd Edition" defintion to set the "No Damage" flag on various expressions (especially spells) to indicate to scripts that the expression never deals damage. |
A new tag, "no-damage," has been added to the "expression" clause of the definition file. This tag allows you to specify which field governs whether or not an expression is capable of delivering damage. This is essentially here for completeness -- if you use a script to determine damage (as the "3rd Edition" definition does), then there is no reason to also specify this tag for an expression. However, if you do not use scripts, then this tag allows you to achieve similar results (see the "3rd Edition" definition for an example). |
A new tag has been added to the definition file: "read-only." You can use this tag to specify that a ListPair or MultiList table is read only. When a table is read only, everyone can see the table and what it contains, but can not edit it. What's the point of that? Well, if you look at the "3rd Edition" definition, you'll notice that we use this tag for the "Temporary Modifiers" table. This was done to encourage people to use Icon Effects rather than directly editing this table. Which should lead you to conclude that setting a table to "read-only" doesn't really prevent all editing of the table: it only prevents editing the table from the character sheet -- any other programmatic modification to a table is allowed (which is why Icon Effects continue to work and why pressing "t" also still works). So, if your game system supports something like temporary modifiers that should really not be edited from the character sheet, you now have a way of restricting access. |
Added a "skull & crossbones" image to overlay Icon images when they die. It is themeable ("DeadIcon"). |
Added a new script, "round_robin_attack.kws," that will roll an attack (and damage, if the attack hits) against all the Icons targeted by the selected Icon. This illustrates some new scripting routines, which is why it's here. |
Switching the current image of an Icon now transitions with a fading effect instead of simply "popping" between images. A new script, "cycle_icon_images.kws," has been added to illustrate the effect. |
Added a scripting method to clear pending damage from an Icon. |
kLoOge.Tokenizer will now store threshold values using the standard Java Preferences facility. This makes it so that once you set an overlay's threshold, the program will remember it between invocations. |
Added a scripting function, "getTabButtons()" that allows you to retrieve any additional buttons that appear on the current tab of the rolling Icon's Dice Dialog. See the script "attack_check_test.kws" and the JavaDocs for more information on using this function. |
Three new tags have been added to the "expression" clause of the definition file. They are: "discard-remainder," "remainder-round-down" and "remainder-round-up." By specifying any one of these inside the definition for an expression, you can control how the program handles remainders. Since the new dice parser deals exclusively with double precision numbers, and since game systems are sometimes "free" with when a value should be rounded up, down or truncated, this allows you to, on a per-expression basis, handle these varying cases (thus avoiding the program making assumptions for you). The "3rd Edition" definition uses the "discard-remainder" tag for "skill" rolls as an example. |
Added an "Ammunition" table to the "3rd Edition" definition. This changes the behavior of the "Num Remaining" column of the "Weapons" table, so it's important to take note. Now, "Num Remaining" behaves more like a spell-caster's spells -- you define a category (row) of ammunition in the "Ammunition" table ("Arrows," or "Quiver1" or whatever you like) along with how many of that ammunition type you have available. In the "Num Remaining" column of the "Weapons" table you then use the ammunition name you previously defined instead of an actual number (for example, "Arrows" instead of "50"). This way, if you have multiple weapons that each draw from the same stash of ammunition, you can accurately keep track of your ammunition stores across all the weapons that use them. Of course, this does make it a little more trouble to set up a weapon that uses ammunition, since you need to create an entry in the "Ammunition" table before the "Weapons" table will count usage against it, but the benefits of having a common pool should outweigh this small inconvenience. |
A new clause has been added to the "base-rules" section of the definition file. This is called "array" and allows you to define a fixed array of Strings that can be used in any table in the character sheet. Please refer to the "3rd Edition" definition for examples of how this feature may be employed. |
A new tag has been added to the "field" clause of the definition file. This is the "array-list" tag, which allows you to specify the source of a list of values to populate a drop-down list in the table. Please refer to the "3rd Edition" definition for examples of how to use this new feature. |
Added an optional tag to the "base-rules" clause of the definition file called "no-special-initiative-handling." By specifying this tag you instruct the program to not apply any special handling to expressions of type "init." |
A new IconEffect type has been added: Glow. This IconEffect acts similarly to the new "Ring" effect in that you specify a radius, color and opacity. A "Glow," however, fills in the area of the effect instead of drawing a ring. This can be useful for simulating lighting or other special effects. Additionally, lights, rings and glows have been enhanced to better deal with their parents being carried in another Icon's inventory. |
Added a new scripting function to retrieve the "current" target of an Icon. Please refer to the scripting documentation for more information. |
Added a few theme elements to govern color choices for things like targeting lines, measuring labels, threatened circles, etc. The "demo" theme contains all the valid tokens, with the latest appearing at the bottom of the file. |
The concept of expression "quantities" has been introduced (the "3rd Edition" definition contains an example). Essentially, this allows you have the program roll an expression multiple times, but only deduct one cost. As an example, think of the "3rd Edition" spell "Magic Missile" -- with it you cast one spell, but create multiple "missiles," each of which might be targeted to a different opponent. Previously, there was no way for the program to correctly handle this situation, but "quantity" allows you to do it. Please refer to the tutorial video on our website for a more complete example of using this field. |
A new field has been added to the "expression" clause of the definition file -- "hand." This field can be used to give a hint to the program about what to display in a Dice Dialog's roll panels for an expression. By specifying this and not in the "static-label," you allow the program to make a more informed decision about what to display (ie, if "hand" is blank on the character sheet, then nothing is displayed, instead of empty parenthesis). See the "3rd Edition" definition for an example of using this field. |
Added a progress dialog for loading campaigns. This existed previously for the old, non-XML, campaign files, but was lacking for XML campaign files. |
The notion of players "browsing" Icons has been added. This one is hard to describe, so I strongly suggest you watch the tutorial video that is available on the website. In a nutshell, this feature allows the GM to set up a campaign such that, when players connect, they can browse through a list of available Character Icons and select the one(s) they would like to play. When they pick an Icon, it is moved to the current map, ready to be used (and disappears from the lists for other players). |
Added a script and expression to the "3rd Edition" definition for performing a "turning check" (which is, perhaps, the most confusing action a character can perform in "3rd Edition"). The script handles all the details, so all you need to do is click the "Turning Check" button on the "Spells" tab of the Dice Panel. |
Master / Player "avatars" have been added. The way this works is for the Master to accumulate a collection of "avatar" images in his "avatars" folder (within his data location). You can then select "Edit->Avatar" from the program's menu to open a dialog that will display each installed avatar, from which you select the one you would like to use. From that point forward, chat messages that you make will be tagged with your avatar. Players can also select avatars in the same fashion. Note, though, that the avatars have to be on the Master for the Players to see them (if Players want to supply their own avatar images, they must upload them to the Master in some fashion first). The program keeps track of which avatar you've selected for which Master, so you can have different images based on different gaming sessions. |
Tokenizer - Added controls to flip images on the X and/or Y axis and "grabby hand" cursors. Also improved mouse handling when the image is rotated and/or flipped. |
Added an example script called "stabilization_check.kws" that does a semi-random stabilization. It can be accessed from the "Dice" combo of the "3rd Edition" definition. Also moved the "grapple" check into this combo as well. |
A couple of new options have been added to (hopefully) give you more flexibility in improving character sheet readability. First, you can specify a "color" tag in the "table-row" section of a "list-pair" in a definition file. Specifying a "color" allows you to control the foreground color of the label and value of the table row. You can see an example of this in the "3rd Edition" definition, which uses the feature to make certain fields of various "list-pairs" stand out. Secondly, there is a new Preferences option, "Use stripes for table rows," that, if selected (the default) will render alternating rows of tables in a lighter color than the normal table row color. Depending on the background color of your tables, this can improve differentiation of rows in tables (of course, if your background color is already white, then you won't see any difference, since there's no color considered to be brighter than white). |
Added a few scripting methods related to controlling Icons. |
An Icon's controller will now appear in the IconQuickStat window and the Icon's tooltip. |
A new Preferences item, "Require unique player names" (defaults to being selected) has been added. This option allows the Master to require that all connecting Players have a unique name. If a Player with a duplicate name attempts to connect, he will be told to change his session name (in Preferences) and then re-connect. This is basically a sanity option for the Master so he can better keep track of Players and the Icons they potentially control. Note that this option is only checked when Players initially connect -- changing it while Players are connected will not drop Players with non-unique names. |
While targeting, if the mouse pointer crosses into either a Dice Dialog or Icon Quick Stat window, the effect will be the same as if you had pressed the back-slash key -- that is, the Icon Quic Stat window, Map chat and Dice Dialog will be hidden. When the mouse leaves the bounds of the item that it entered, the hidden items will return. This makes it easier to not worry about where at potential target is located when targeting begins, since most things on the Map will move out of the way when you pass over them with the mouse. |
Two special new tokens have been added to the definition file: "${PEX}" and "${/PEX}." These tokens, like "${V}" and "${R}," have special meaning when they are encountered an expression definition. In this case, they allow you to define a block that should be excluded from what Players see when the expression is evaluated. As an example, the "3rd Edition" definition includes this token to hide a weapon's magic bonus from Players when an attack or damage is rolled. |
Documentation for the definition file format has been added. |
Added a new tag to the "button" clause: "rep-expr." You can use this tag to replace the base portion of an expression with whatever is contained in this tag. This can only be used with buttons of type "toggle." See the "3rd Edition" definition for an example of this tag's usage. |
A new button and script has been added to the "3rd Edition" definition: reset spells. This button/script combination is intended only for "sorcerer-type" casters and will reset their "current" spell alotment to their "maximum" for every spell level. The intention is to make it that much easier for players to reset their sorcerer characters at the begining of a day. |
A new tag has been added to the "button" clause of the definition file: "max-roll." If specified, this will force the dice parser to maximize any dice expressions during evaluation. Note that this option only really makes sense when defined in a "toggle" button type (since, otherwise, the expression's dice would always be maximized). The "3rd Edition" definition has an example using this new tag, but it is commented out (since it doesn't really apply to "3rd Edition" rules). |
A new Icon Effect has been added: Adjust HP (token "HP"). This Effect is different from all other effects in that its modifier is only applied when the Icon's initiative comes up (as opposed to being applied with each tick of time). What this effect does is apply its modifier against an Icon's current hit points. When setting up the Effect, you have the option of selecting which hit point source to deduct from (if your definition supports multiple hit point sources). The intention behind this Effect is to allow you to easily control so-called "ongoing damage," which a number of game systems support. |
A new tag has been added to the "expression" clause of the definition file: "type-for-button." This tag allows you to specify an alternate type for an expression that will be used when selecting the expression's button in the Dice Dialog. Why would you want to do this? Because, maybe, you've set up a "custom" expression, but instead of using the default "custom expression" button image, you'd like the expression to appear as an "attack," or as a "spell." |
A new tag has been added to the "button" clause: "add-to-roll." This tag allows you to define a value to be added to a subsequent roll. Note that this tag is only honored when the button is a "toggle." The "3rd Edition" definition adds a couple of toggle buttons that utilize this new tag as an example. |
Tags, theme elements and program support has been added for the concept of being "bloodied." What "bloodied" means depends on how it is defined in the definition file (see the "3rd Edition" definition for one possible example), but when an Icon is "bloodied" the theme element "BloodiedIcon" will be used to paint over the Icon's image to indicate the state. |
Added script methods "killIcon" and "healIcon" to, respectively, instantly reduce an Icon's health to the "dead point" and increase an Icon's health to its maximum. |
Two scripting methods, "isIconDisabled" and "isIconBloodied," have been added to check these states. |
A new tag has been added to the "expression" clause of the definition file: "armed." Setting this tag to the ID of another field on the character sheet allows you to inform the program of the "armed" state of the expression. When used with the new Preferences item, "Force armed to roll," you can ensure that an item be "armed" before it is used. See the "3rd Edition" definition for an example of using this tag. |
Two new tags have been added to the "base-rules" section of the definition file: "always-round-down" and "always-round-up." By specifying one of these flags, you tell the program how to handle all remainders that are not otherwise handled by a more specific flag. |
The "die" clause of the definition file has gained a new tag: "add-to-roll." You can specify any valid arithmetic in this tag (including tokens) and the value will be expanded and appended to the die when evaluated. For example, if you wanted to add "$L/2" to every roll of a particular die, you could use the "add-to-roll" tag to do just that. |
A new theme element, "RollTitleColor" allows you to specify the color to use for roll titles in the "new style" Dice Dialogs. |
A "read-only" flag has been added to the MultiList and ListPair elements of the definition file. By setting this flag on a row/column, you can disable the editing of these fields throught the program's character sheet interface. The data can still be modified by other means (scripts or indirect manipulation). For an example of how this might be used, please refer to the "3rd Edition" definition. In this definition, the "read-only" flag is used to mark as unalterable certain "derived" fields (like the final "AC" and the final skill modifier). |
A new Map selection method has been added: polygon. Now, in addition to free-hand regions and rectangles, you can also draw out a polygon to reveal/coneal areas, select Icons, etc. You access this feature by right-clicking on the Map and selecting "Options->Polygonal region" from the popup menu or by pression period (".") on the Map when nothing else is selected. To finish the polygon, simply double-click when you have the desired shape. |
When you create a region (rectangular, freehand or polygonal), the popup menu when you complete the shape now has an added option: "Convert to Drawn Item." Selecting this menu item will convert the shape you have drawn into a Drawn Item. The created Drawn Item will be filled, locked and invisible to Players. This provides you with a very quick-and-dirty way of creating Drawn Items without going through the Drawn Item creation dialog. |
Added a Preference item, "Show measure squares," that, if selected (not the default), will add the calcualted number of "squares" to distance measurements. This is useful for some game systems, but probably not all (which is why it is turned off by default). |
Added a scripting method ("getExpr()") that retrieves the expression part of a Dice Expression. This is useful (as illustrated in the "attack_check_ex.kws" script) when a script needs to modify the expression of a roll, but would like to leave everything else in the potential output alone. |
A new scripting method, "visualEffect" allows scripts to create visual effects in the same manner that the program does for rolls. See the script "visual_effect.kws" for an example and refer to the scripting docs for an explanation of the method's parameters. |
When a Player receives a Map, he will now have a node in the Campaign tree representing the Map. For each Map received, a node will be created. These nodes can be used to jump back to any Map the Player has seen during his session, which might be handy in certain circumstances. |
Added a row to the "temporary modifiers" table of the "3rd Edition" definition for "threatened area" and linked it to the "threatened area" field of the character sheet. This allows you to specify an effect that modifies an Icon's threatened area. |
Added the ability for rolls to appear next to the Icon that made them. This feature can be toggled off (not the default) with the Preferences item "Show rolls next to Icons." |
A new table ("Equipment - Armor") has been added to the "3rd Edition" definition. This table illustrates a way of defining a table that is accessed by a script that is part of a "modifiers" clause to modify a table's data. Confusing? Yeah, we know. Essentially, what this boils down to is a table where you define armor and indicate both the bonus and whether it is worn or not. A script takes this information and builds a modifier for the "AC-FINAL" field. Useful? Perhaps. |
You now have the option of sending us your Java output directly from the program. When viewing your Java output, simply press the "Send to kLoOge.inc." button and your output file will be uploaded to us. No personal or identifiable information is sent during upload -- only the contents of the Java output is sent. Doing this helps us identify problems with the program, so you are encouraged to take advantage of this new feature. |
A new script has been added and put to use in the "3rd Edition" definition: "skill_check_ex.kws." This simple script is run after a skill check is rolled. If the skill matches one of the select few that allows an opposing roll (and the rolling Icon has a "current target" defined), then the opposing roll will be made for the target and the results reported. |
The Preference item "auto-apply hit point adjustments" has been resurrected. Additionally, a complimentary feature, "edit hit point adjustments," has also been added. This second feature allows you to go back in time to any hit point adjustment made to an Icon during combat and undo it. Please refer to the tutorial video for more information on using these two new features. |
A new, rather poorly named, Preferences item has been added: "roll from anywhere." If selected (not the default), clicking anywhere in a sub-panel within a "new" Dice Dialog will result in the first expression of the panel being rolled. This is for those people who don't want to take the time to move their mouse over to the actual button of a roll, but simply want to click anywhere in the roll's panel (which somewhat emulates the behavior of the "traditional" Dice Dialogs, where you had to click on the roll's name). Keep in mind that only the first expression in the panel will be rolled (so you will still need to move your mouse in order to, for example, roll "damage). |
You can now target multiple Icons in one action. Please refer to the tutortial video, "Multi-Targets.mov" to see how this works. |
A definition file (and associated scripts) have been added to support Fourth Edition Dungeon and Dragon rules (4e, for short). What this really amounts to is revealing enhancements to the definition file to support concepts popularized by 4e (but which also benefit other gaming systems). Please refer to the tutorial video on the subject to see just how this new definition behaves. |
Fixes |
---|
Dragging an Icon contained in a Folder would move the Icon, even if it did not have the "Only One" flag set. |
Attaching a file to a private chat message did not strip the path from the file, resulting in an incorrectly named file on the receiving end. |
"X"ing out of the Drawn Item dialog left the Map in an incorrect state. |
There were a number of problems with animating Icon size changes (some of which masked others, which is quite annoying). Icon size changes should now be handled correctly, whether the Icon is increasing in size or decreasing in size. |
The name field of a DrawnItem did not use the correct font size. |
Setting a Map's scale while players were connected and the Map had Icons on it, would result in players seeing Icons in the incorrect location. |
Certain "check-availability" and "modify-on-roll" clauses could fail if their fields were in a "list-pair" table type. |
Some grid fixes: A rounding error was causing distance measurement to be incorrect when SI units were used and an artificial limitation forcing grids to fall on pixel boundaries has been removed. |
Changing an Icon's light radius with an effect while "fog of war" was active did not properly reveal/conceal the affected area when the effect came into being or was removed. |
You could not move Notes, Movies or URLs between Maps. |
The "3rd Edition" definition failed to set "ignore-targets" for the initiative expression. |
Finally fixed an invalid tag in the "Demo 3.5" definition file. |
A longstanding flaw in Campaign saving has been identified and corrected. Previously, the assumption going into saving the Campaign was that the save would succeed. This being the case, if the save failed, a corrupt Campaign file would be created, possibly overwriting a pervious, uncorrupted, backup. Now the assumption is that the save will fail. As a result, Campaigns are now saved to a temporary file, then this temporary file is renamed only after the save completes. This should prevent any future occurance of Campaign backups becoming corrupt. |
Rotated Icons were not having their size computed correctly, resulting in their health-bar and name getting chopped off at higher zoom levels. |
You couldn't select multiple hidden Icons from the Campaign Tree. |
The definition parser allowed you to define an empty tag for tables. This should have been rejected, indicating that the definition is invalid. |
MapLink Icons were incorrectly appearing in the campaign tree. |
Invisible Icons would transmit hit point adjustments to Players, causing an adjustment animation that revealed the Icon's location. |
Modifications |
---|
Changed sound playback behavior so that all sounds do not stop when the first to finish stops. |
DicePanels can now be resized. Place your mouse on either the right- or bottom-edge, press the primary mouse button, drag and the Panel will be sized. |
When someone else drags an Icon, the dragged Icon will no longer become selected on your screen. However, the Icon's Quick Stat window will still open, allowing you to see what Icon is moving. This should avoid the potential issue of, especially, clients moving Icons while the GM is selecting Icons for his own purposes. |
Editing Icon Effects has been improved. Now editing the Effects for multiple Icons places all the Effects in the table, with the owner of the Effect in the first column. Using this first column, you can reassign an effect. You can also right-click in the table and select "Duplicate" to make a copy of the selected Effect (which you can then assign to a different Icon or all the selected Icons). |
In order to improve performance, Icon images are now scaled down when loaded if either of their dimensions exceed 256 pixels. |
Added port display to the "About" box if you're using Bonjour. |
Low memory warnings are now trimmed to being issued only once per minute (instead of continuously). |
Measurements between targets are now taken based on where on the Icon's image boundaries the target line intersects, as opposed to center-to-center. This should more accurarately correspond to threatened area circles and certain game system rules. |
In order to promote a kinder, more gentle world, "clients" have been renamed "players" everywhere that is forward-facing. |
There have been a number of changes made to initiative. Some of these have been made to improve the behavior between what the master sees and what players see. Other changes are more cosmetic. To wit, the label that pops up on initiative change (if enabled) now includes the Icon's image. Also, there is a new Preferences item, "Show invisible initiatives," that, when enabled (not the default) will, instead of completely suppressing invisible Icons from initiative on the player side, will make the invisible Icon appear as a place-holder in the player's "battle bar" when it has the current initiative (which will disappear when the initiative changes). This should avoid players having misleading information about whose turn it is, while still not giving them much more information on the number of invisible enemies they face. |
Enhanced the "Chat As" toggle button to allow you to select an Icon, then click on the button to make that Icon that Icon that you are currently chatting as. |
The "Setup Spells" button will now sort the incoming table data by the first column of the table. Note that this will, potentially, alter the organization of the table data on output, since the sort is performed in place. |
Removed some restrictions on the Icon Quick Stat window so it shows information for more Icon types (like Map Links, Encounters, etc.). |
Duplicate descriptions in a description file are no longer complained about and discarded. Instead, duplicates are concatenated so no information is lost. |
Modified the way certain dialogs are created so they are now resizable. |
Specifying multiple "alt-tags" in a definition only remembered the last one defined. Now a list of "alt-tags" is maintained. |
Improved campaign loading when files can't be found. Previously, the program assumed that anything it encountered wasn't likely to match what was being loaded. Now, the program keeps track of files that match previously replaced files and folders where matches occur and tries its best to auto-map missing files. |
Changed the licensing process to, hopefully, make it easier and more foolproof. Instead of a single dialog that displays your licenses and allows you to enter more, you now add licenses through a "wizard-type" interface that walks you through each step of entering a new license. |
Dramatic (to us, at least) improvement to the behavior of mouse-wheel zooming. Previously, when changing the Map zoom level by scrolling your mouse wheel, the Map would remain centered on the point in the center of the display. Now, the zooming action will track toward where you have your mouse pointed. This allows you to "zoom in on" an Icon or other Map detail without having to go through tedious zoom-pan-zoom-pan operations. We think you'll like it (and probably say, "why wasn't it like this in the first place?"). |
Commented out the "Attack of Opportunity" button, since it seems to be rarely used and takes up a lot of space on the screen. |
Combined the "View/Edit" buttons on the character sheet into a single button that toggles between view and edit mode. |
Made a "hidden" campaign tree be a little more hidden. Previously, resizing the program's main window could result in the campaign tree popping back into view. |
Changed the way updates are going to be handled. In the future, when you are notified of (or check for) an update, an HTML file containing the changes available in the new version will be displayed in a new "wizard-type" interface. This should make it easier to see just what's changed in the program before downloading the update. |
A few Icon Browser changes. The Browser now remembers between program sessions the last place you browsed for Icons, so the first time you bring it up it will automatically re-scan the source. |
Improved Map chat message handling so that when a barrage of messages arrive (which fill up the screen), the Map is properly refreshed to scroll off the oldest message and leave the latest messages visible. |
When editing Icon Effects, the program will now translate round duration and remaining back into day/hour/minute notation for slightly easier reading (we say "slightly" because these notations can still contain very large fractions). |
The search field will now automatically select the first matching entry in a list, potentially saving you a single keystroke. |
The hiding of unavilable rolls in the new Dice Dialog is turned on by default. You can override this behavior on a per-Icon basis by pressing period (".") while the mouse is hovered over a spell expression on the "Spell" tab and also by toggling the "Hide unavailable rolls" button on the "Setup" tab of the Dice Dialog. |
Minor improvement to slow double-click Icon renaming -- it now takes into account whether the Icon's name is being drawn or not (previously, it always assumed that the name was drawn, leading to the "clickable window" being overly tall when the name was not visible). |
The "XP Style" Preferences option has been removed. Instead, the program now automatically determines if you are using the "XP Theme" under Windows and adjusts accordingly. Also, should you decide to switch desktop themes while the program is running, the program will handle the transition much better than it would have in the past. |
Decided to replace our custom animation routines with the open source package "TimingFramework." This supplies much more robust animation that renders more smoothly than the approach that was used previously. |
Script handling has been overhauled in regards to where scripts are located. In the past, scripts held a quasi-official place in the program's heirarchy -- they were used in definitions to enhance play, but they could also simply be called upon when needed. This dichotomy could lead to a certain amount of confusion about where to put script files. Increasing the potential confusion was the fact that scripts could not be placed in organizing sub-folders. All this has changed. Scripts are now a full-fledged part of the program. As such, they are located in the "libs" folder (under Windows) and the application package (under OS X). Additionally, scripts can now be placed in sub-folders within the root "scripts" folder. This new configuration breaks scripts from the "data location" and places them in a known, consistent place where they can be updated and found easily. |
Along with the many other organizational changes to file locations that have been made, we are also moving your Preferences and License files. This is being done, primarily, for safety reasons -- by putting these files outside of the program's installation directory you will be less likely to lose or accidentally delete them. On Windows, they will be located in "C:\Documents and Settings\User\Application Data\kLoOge.inc." For OS X they will be in "/Users/User/Library/kLoOge.inc" (in both cases, replace "User" with your user name). For Linux, they will be in "~/.kLoOge.inc." There are a few considerations to take into account due to this change. First off, all Preferences and Licenses will be shared for the account that they are installed to. This note really only applies to people who run multiple, simultaneous, instances of the program from the same user account -- if you do this, then keep in mind that the first instance of the program to start up will "lock" the license file and not allow any other instance to access it. So, the moral is, if you are going to be running a "Master" and "Player" session from the same account, start the "Master" first and exit it last. The other thing to keep in mind only applies to people who have multiple license files (of which there are probably two, but just in case). Historically, it was necessary to have multiple license files due to the way licenses interacted. Years ago, however, this restriction was removed, but no simple way of consolidating license files was available. Now, the program will automatically merge license files into the single "shared" license file mentioned above. To accomplish this "automatic merging," simply launch each instance of the program (you only need to go to the "Options" screen), then exit it. Each version that runs will look for an old license file and, if its found, will merge the licenses it contains into the "shared" license file. After finishing, it will back up your previous license file to "kw.lic-bak" (just in case something goes wrong, we don't want to delete your license file!). Essentially, you should come away from these changes knowing that, for the vast majority of you, nothing will have changed -- the licenses you own still behave exactly has they have in the past -- they've just moved. If you have any questions, please let us know. |
Made kLoOge.Tokenizer's preview a little bit bigger. |
Removed the "Find" button from the Note tab of character sheets and replaced it with a "search box" (identical to what we use throughout the program). This allows for "live" searching (even when switching between Notes) without opening a dialog to interfere with your activities. |
kLoOge.Tokenizer - added images to the "zoom in/zoom out" buttons; improved mouse interaction when the background Image is rotated. |
Extended the "hide unavailable spells" notion to cover all unavailable rolls. A roll is considered to be unavailable if its expression fails all "check-availabilty" tests. This means that weapons with ammunition now fall under this category and, if "Hide unavailable rolls" is selected, will disappear from the Dice Dialog once you run out of ammunition. |
Changed the "save Map image" behavior to include labels that might be visible at the time of the capture. These label include movement and hit point adjustments. |
Unified the "threatened area" calculation to use the same measurement criteria as target distance measurement uses. This makes for a single code path (which is good) and should remove any discrepancies between the distance displayed for targeting and whether or not a "threatened area circle" is drawn. |
The "Ring" IconEffect has been enhanced to gain an opacity setting. Using this setting you can control how opaque the Rings are drawn. |
"Ring" IconEffect types now take the size of the Icon into account instead of being calculated from the Icon's center. |
Modified the "attack_check_ex.kws" script to check for shooting into melee (thanks, John). |
Modified the "spell_save_ex.kws" script (used by the "3rd Edition" definition) to give special treatment to the "Chain Lightning" spell. This is mostly illustrative -- in case intrepid script writers need an example of this type of behavior (ie, dealilng with a semi-goofy spell in a script). |
Consider this particular trigger pulled: Use of the forward slash character ("/") is no longer supported to identify multiple rolls in a character sheet. When we first released kLoOge.Werks, the use of math was very limited (actually, the first release didn't support it at all, if I remember correctly), so using the forward slash to indicate multiple attacks seemed reasonable. Then came math and division and problems. Years ago, we recommended using the vertical bar ("|") to indicate multiple attacks, but continued to support the slash character. Now, however, we've come to the point where we can no longer count on "/" meaning "multiple attack" and not division, so it has to go. The moral of the story being: if you are specifying a "multi" roll (can't really call them "multiple attacks" any more, since any kind of roll can now contain multiples), you must use the "|" character to split them into pieces. For example: "+15|+10" means "two rolls, one with a '+15' and the other with a '+10.'" |
The Calander has been changed slightly. Now, the buttons to advance/regress time have been made invisible unless you move your mouse into the area of the Calendar. This cleans up the display for the master a bit (players never see the buttons). |
The evaluation of a "spell" expression type now includes the name(s) of the targeted Icons in the output. |
Drag-and-drop operations involving the Campaign Tree now will auto-scroll when the mouse reaches the edge of the tree and expand/collapse nodes if you hover the mouse over them during a drag operation. |
Multiple expressions per table column now allowed. Previously, there was an artificial limitation that allowed only one expression clause per column in a table (as defined in the definition file). While this makes sense for most uses, there may be instances out there where you would like to have multiple expressions referring to the same row of table data defined in the same column -- so now you can. If you define multiple expressions, they will appear in the Dice Dialog in the order defined. |
DM notes are now stored using the same Note component that is used on character sheets. This gives the Master much more flexibility for creating and editing his notes. |
The program now uses one less port for communication: the "secondary port" has been eliminated. This port, it turns out, was redundant. |
The default "new-style" program theme has been updated to use new icons. |
The "receive port" has also been eliminated. Now the program only uses two ports: one for all player connections and one for multicast broadcast (for local LAN games). |
Player startup processing has been, we hope, enhanced a bit. When a Player first connects, the Master will now look at all the PC Icons in the campaign and determine the Map that contains the most of them. If it finds such a Map, the Master will automatically send it to the Player. This should speed up starting game play, since Players will no longer need to first "call up" the Map and the Master does not need to send the Player the current Map. |
A number of changes have been put in place to improve the behavior of "multiple Map loading" and "undocked Maps." These include: better drag-and-drop support between Maps; better centering; Map bounds are stored when Maps are undocked; saving a Campaign with multiple Maps open will re-open those Maps when the Campaign is loaded. There are a number of other improvements that we have in mind, but this was all we had time for in 3.1.0. |
The program toolbar button that globally disables roll broadcast has been tied to the Dice Dialog button for local (Icon) broadcast. If roll broadcasts have been globally disabled, then the Dice Panel button will also be disabled (reflecting that chaging its value would have no effect on anything). |
The program has long had a feature to "darken" a Map's background image (pressing the "minus" key when nothing else on the Map is selected). However, the method of accomplishing this was rather simplistic. We have reworked this process to do actual gamma correction on the Map's image. Essentially, the only real visual benefit to this is that you can now, in addition to darkening an image, brighten it as well. Pressing "minus" will darken (lower the gamma level), "plus" will brighten (increase the gamma level) and "equal" will return the image to its default gamma level. |
Added a "view" button to the "stand alone" character sheet panel so people can switch between "solved" and "unsolved" modifiers. Also adjusted the way scripts are handled so that they can be referenced by a player who isn't connected to a master (like when editing a "stand alone" character sheet). |
For Players, the "open connection" button's behavior has been changed. Previously, if you were connected to a Master, this button was disabled (and the menu item forced you to disconnect before opening the connection dialog). Now, even if you are currently connected to a game, you can bring up the connection dialog and see what other games might be going on. If you are connected, the game you are connected to will be displayed in a different color from the rest of the games, so you can easily identify it. Should you decide to join a different game, you can simply click on it as you normally would and your current connection will be dropped and the new connection established. |
The new "Ammunition" table has also been tied into the "Consumable magic item" table in the "3rd Edition" definition. Note that if you specify the name of an ammunition source, then that source is used. However, if you specify a number, then that number will be used instead of a source. This makes it easy to mix-and-match between ammunition and simply specifying how many of an item that the character has. |
When pasting NPC Icons when you have set your Preferences to add a number to the newly created Icon, the program will now attempt to do a better job of figuring out what number to put on the new Icon. This should help avoid the situation of ending up with Icons with names like "Bad Guy #4 #2 #3 #1." |
Switched brush size reporting from radius to diameter. It seems that while things are often expressed in terms of radius, this fact remains somewhat confusing visually, where people expect to see the full size of what they're looking at reported. |
Due to unavoidable issues with campaign saving in previous versions, unless you end combat and save your campaign in version 2.9.3, you will not be able to load your campaign into 2.9.4. We apologize for this inconvenience. If you have any questions or problems, please visit our forum or email us directly.
A low-level Java class corruption occurred between v2.9.1 and v2.9.2. The result of this corruption is that campaign files created/saved with 2.9.1 will not load with 2.9.2 or later.
There are several work-arounds for this situation.
To make your campaigns load in 2.9.2 or later, you will need to do some things to them in 2.9.1 first.
In 2.9.1, remove all Icon Effects for all Icons. Depending on your campaign file, this could be a huge undertaking. We apologize for this. If there was some other way around it, we would have done it. Unfortunately, there is no other way around it.
If you would like to preserve the effects that are applied to each Icon, you have the option of saving each list to a file. This can get tedious if you have a lot of Icons to go through, but this way you will lose absolutely no data.
If you decide to save each Icon's effects, simply bring up the Icon's "Edit Effects" dialog (select the Icon and press "e") and click on the "Save" button. Give the file you're saving a reasonable name and store it in a place where you can find it later.
After saving (or if you decide not to save the effects), right-click on any effect in the list and select "Clear" from the popup menu. This will remove all the effects for the Icon. Click on "OK" and that Icon is done.
Once you have removed all Icon Effects, go into "Edit->Effects" (this is the global list of pre-defined effects).
If you have not created any pre-defined effects, then never mind this step. Also, if you've only created one or two and don't mind losing them, then you can also skip this step.
If you want to preserve your pre-defined global effects, click on the "Save" button to export the list. Save it somewhere where you can find it later.
Save your campaign and exit the program.
Repeat this procedure for every campaign you have that needs fixing.
Now, all the definitions that we include in the distribution store global effects in a file called "kw_effects," which is in the same folder where the program is installed. Delete this file (or, if you're the cautious type, simply rename it).
After you done this, launch the current version of the program. Your campaign(s) should load correctly without any issues.
If you saved your list of global effects, you'll want to go into "Edit->Effects" and load the file you previously saved. This will bring back all of your global effects.
If you saved any effect lists for Icons, select the Icon, press "e" and load the saved effects.
And that's all there is to it (which is more than enough, I know).
Themes are a fairly well understood concept. With a "theme" you can change the look of a program without making programatic changes. In our implementation we give you the ability to change the look of nearly three hundred user interface elements. These elements are currently limited to button imagery, background textures and user interface colors (which means you can't re-arrange the interface's layout).
Creating a "theme" is simple in concept, but involved in practice. First off, to give the program any chance of seeing your theme, you need to have a "themes" folder in the location where you installed the program. Chances are, this folder was created for you when you installed, but if it isn't, you'll need to create it.
Within the "themes" folder, create a folder for each theme that you want to install. What this folder is called doesn't matter to the program -- it's just a way of keeping different themes separated. Let's say, for example, that you have a theme that you want create. You might create a folder called "themes/MyFirstTheme" (notice that I'm using the Unix path seperator -- if you're on a different system, you'll want to use the proper seperator for that system).
Now that you have a folder under your "themes" folder, you'll need to create two things: a "theme.xml" file that contains the definition of your theme and the image files that go along with your theme.
An example theme is included in the distribution (no comments on its quality, please). The "theme.xml" file in this example is fully commented and should serve as a great starting point for creating your own "theme.xml" file. Remember that there are nearly three hundred possible things for your theme to replace, so you do not want to start your "theme.xml" file from scratch!
When it comes to creating the images for your theme, you're pretty much on your own. Use GIF, JPEG or PNG images, of course, since they are all the program will recognize. Keep them consistent in size and style, or you'll end up with a user interface that looks like it passed through a circus funhouse mirror.
After creating your images and correctly setting up your "theme.xml" file, you can start the program. Your new theme should appear in the drop-down list of themes in the Preferences dialog. Select it, accept the Preferences change, shut down the program and restart.
Take special note of that last part: theme changes only take place on program start, so if you change the theme, you will need to restart the program for your change to take effect.
When the program re-starts, you should see your new theme in place.
If you've followed exactly the steps outlined so far, you'll probably also notice that there is a delay in loading the images for your theme. This delay, which can be quite annoying, is caused by the fact that your theme images, unlike the default images that are built into the program, must be loaded externally after the program is already loaded. Fear not, however, because there is a way around this.
After you have tested your theme and are sure you are happy with the way it works, you can bundle your images together into a JAR file. This makes your theme easier to distribute and also makes your theme images load just as quickly as the images built into the program.
To make a JAR file, you will need the Java SDK installed on your computer. Generally, this comes from the same place that you got the Java runtime (ie, Sun Microsystems). For Mac users, you already have the Java SDK, so you don't need to download/install anything extra.
Assuming you've got the Java SDK and the "jar" utility, you can use it to place all of your images into a single file. Open a command window (or terminal, or xterm, depending on your system), and change to your themes folder ("themes/MyFirstTheme" in the example from above).
Once there, issue the command "jar cvf images.jar *.gif *.jpg *.png." If you know you're not using one of these image formats, feel free to drop it from the command line.
Assuming no problems, running the above command will create a file called "images.jar." To check that it contains everything you intended (and, additionally, a "MANIFEST.MF" file that you don't need to worry about), you can issue the command "jar tvf images.jar" to print out the contents of the file.
Once you're satisfied that your JAR file is correct, you can delete/move the original images out of the way. The program won't mind them being there, but it's best to be tidy (the program gives preference to JAR files and will ignore image files once a JAR file has been found).
If you want to get fancy by placing images in their own sub-folders, you can feel free to do so. It's up to you to figure out how to get them into a JAR file, though (hint: you can do it, it's just too advanced a topic for this discussion).
And that's about all there is to it. Enjoy!
Chief among these new features is the ability to enter text with bold, italic and underline attributes. To do this, simply use Ctrl-/Apple-B/I/U to toggle the attribute on or off.
Additionally, Notes now support undo/redo, using the standard keyboard shortcuts of Ctrl-/Apple-U/Y.
The XSL file for "3rd Edition" has been updated to preserve these new attributes, so printing your character sheets (or looking at them in a browser) will have added depth.
Finally, the background color of Notes should be more consistent now, accurately reflecting whether the Note is editable or not.
To do this, simply preceed your message with a forward slash ("/") and part of the person's name that you would like to whisper to. This "part of the person's name" is important -- it can't contain spaces and it must be unique enough to identify the person you are trying to whisper to.
For instance, if two clients are connected and one has the name "Client1" and the other has the name "Client2," you would need to fully type the name of the client you want to whisper to.
On the other hand, if the two other people have set their names to "Joe the Client" and "Charlie the Other Client," you'd only have to type "/joe" or "/charlie" to properly direct your whisper (or even "/j" and "/c" if you're really lazy).
You can also use "/master" or "/gm" or "/dm" to quickly reference the Master.
Note that these private messages are not stored anywhere but your chat history (unlike private messages with the Message button). So, if you want to preserve them, you'll have to save your chat history.
Being "Neutral" basically means that the Icon is not considered threatening to either "Hostile" or "Friendly" Icons.
A "Folder" is very much like a folder in your operating system: it's a place where you can place other things. A Folder can hold any type of Icon that you can place on a Map. It can also hold Maps and Adventures.
You can create Folders within any Map, Adventure or Icon well. You can also create Folders within other Folders (for even more levels of organization). Note that creating Folders only happens from the campaign tree by right-clicking on the parent node that you would like the folder to appear in.
This item allows you to import an Icon, replacing the original in the campaign.
Why? Some GMs like to export PC Icons for their players to manipulate off-line (as opposed to the players simply saving the Icon's character sheet locally). When the GM does this, and the players modify the Icon, brining the modified Icon back in has always been a hastle. The GM would need to import the Icon and delete the old copy (otherwise he would end up with multiple copies of the same Icon).
By using "Replace," he can quickly do all this in a single step.
There are, of course, a few things to keep in mind if you are going to use this feature. First off, it does an import, so everything about the Icon is replaced by what's in the KWI file except it's location (which is pulled from the Icon being replaced). That means initiative, hit points, targets, etc. are all replaced.
Also, any Items that the Icon has picked up since the last export will be lost when the replacement is imported.
For best results, use "Replace" only when you're "between" adventures if you can. "Replace" can be dangerous, and, unless you put some thought into its use, might do things that you don't expect. Please use with caution.
When un-docked, Maps will appear in their own, independent window.
There are a few things to keep in mind when you un-dock the Maps:
It does not work the way other XML parsers might work, however, so a note about syntax is in order.
To include a file you would specify the tag as follows:
<include>file_to_include</include>
So, for example, to include the file "MyBaseRules.xml" in your definition, when "MyBaseRules.xml" is located in a folder called "def_ext" (for definition extensions), you would specify:
<include>def_ext/MyBaseRules.xml</include>
If you are going to use includes, it's a good idea to keep included files somewhere other than your "defs" folder, since the program will complain about them being invalid definitions if it sees them in your "defs" folder.
Also note that everything within the "include" block will be replaced with the contents of the included file, exactly at the point where the "include" block is found.
By "anything," we mean anything. Without the password, no client will be able to select, roll for, move or display the character sheet for the Icon.
Once a client has entered an Icon's password, he will have the ability to alter the Icon for the length of his connection, or until you (the GM) changes the Icon's password (at which point his access is revoked and he must supply the new password to affect the Icon again).
Note that the only way to revoke Icon access is to change/assign a password to the Icon.
Also note that multiple clients can have access to a password protected Icon if they know the password. Only one would be able to take control of the Icon, however (as usual).
You enter an Icon's password by bringing up the "Edit Icon" dialog and filling in the "Password" field. To remove a password, simply blank it out.
When a player creates a private message to the GM, he has the option of attaching a file to the message. When the GM receives the message, he will see the message text and be presented with a check box that allows him to either accept the file transfer or reject it.
Should he accept, a file dialog will open asking him where he would like the received file to be written.
When the transfer completes, a Map chat message will appear to notify you that it has finished.
To support this new behavior, a Preferences item for the "receive file" port has been added. This port defaults to "4468." Clients do not need to set this option, since the port is sent to the clients when a transfer is accepted.
Note that file transfers happen over a new socket that is established only long enough to effect the transfer. Once the transfer completes, the socket is closed. This way, file transfers should not impact normal program activity and messages (aside from taking up available bandwidth, that is).
Also note that, at this time, the only file transfer supported is from a player to the Master. Players can not send files to other players and the Master can not send a file to any players (outside of the normal way for him to send images, documents and sounds, that is).
Now clients have the ability as well. By pressing "p" to toggle the client pointer on and off, players can indicate points of interest on a Map to the GM.
Only one client has access to the client pointer at a time (to keep the potential noise level down).
Now an Icon can have as many names as you like. Simply edit the Icon and define a list of names. To change the current name, right-click on the Icon and select "Options->Current name."
Clients can also set the current name for friendly Icons. They can't define the multiple names, however.
Now there is a Preferences item call "Maximum Client Connections." Setting this value to something greater than zero will result in clients receiving a message that your game is full if they try to connect when you already have your maximum number of allowed players.
Note that this setting only affects new connections, so if you set it lower than the number of players you currently have connected, none of them will be dropped to honor the new setting.
With this version, the special "animated" state has been removed. Instead, an Icon simply has images -- whether these images are animated or not makes no difference to the program. A still image will render un-animated and an animated image will animate.
Where you used to select "Options->Animate" to toggle on the animated state, you would now simply select the animated image from the list of images defined for the Icon (animated images even animate in the popup menu, so they're easy to identify).
If you have a campaign that uses animated images, they will be retained and added to the end of the Icon's list of images.
There is still more overhead in dealing with animated images than still images, but the amount of this overhead has been reduced by this change.
Now you (the GM) can edit either the amount or the reason for the award at any time before the pending experience is reset.
With this version you can now create your own effect images. The normal restrictions on image type are in effect (JPEG, GIF and PNG only), of course.
To use your own effect image, simply create (if it has not already been created) a folder called "effects" inside of the folder where you installed kLoOge.Werks. Since the program accesses this in a special way, it can not be located in your data location. When you go about creating visual effects, think of them as an extension to the program and not as normal content.
After making the folder, place the images you would like to use for effects in it. When you bring up the program and access "Help->Visual Effects" you will see the color and internal image definitions as you always did, but before the internal images you will also see your added spell effect images.
Note how your custom effects are named, since this is very important. If you added an image called, for example, "sun-burst.gif" to your "effects" folder, you would see it displayed as "effects/sun-burst.gif." To use this image in an effect, you must specify it exactly as it appears in the dialog.
That's about all there is to it. Visual effect images that you create can be used anywhere where a spell effect is used. The images need not be located on your players machines, since they will be sent when needed.
Your custom effect images are also availble to your players in the same way that the built-in ones are.
To overcome this, we have added the "Icon Browser." Simply right-click on either the "NPC" or "Item" well of the campaign tree and you will find a new "Browse" item. Select this and the Icon Browser dialog will open.
Click on the "Set" button and select a directory that contains exported Icons (".kwi" files). The directory will be read and all valid Icons contained within will appear in the list on the left side of the Icon Browser dialog.
Select one of the names in the list and the Icon's image and stats will appear to the right of the list. From there you can simply drag-and-drop the Icon (using the Icon's image to the right of the list) to the current Map or your campaign tree, instantly adding it.
You can also use the "Add" button to add the selected Icon directly to the campaign tree (which may be easier than dragging-and-dropping for some people).
You can also display and edit the Icon's character sheet by selecting the "Show character sheet" toggle button. If you edit an Icon's character sheet in this way, the changes you make apply only to that instance of the Icon and any copies you create -- they are not written back out to disk.
The benefit of the Icon Browser is that you can have a lot of Icon resources, but not include them in your campaign until you need them (thereby keeping your campaign file smaller and your memory usage lower).
As a result, a "safe" version of the chat history can be transmitted to clients when they connect to a game (since this version will not contain any private GM messages).
You can also save this "client" chat history as HTML by right-clicking on the chat history area (either in the docked chat history or in the chat history dialog) and selecting "Save Client HTML" from the popup menu.
Enter the "Enable Icon tool tips" Preferences item. If selected (the default), Icons on a Map will display a tool tip when you hover your mouse over them (which is consistant with past behavior).
If not selected, Icons on a Map will not display tool tips.
Note that this option only governs Icons on a Map. Icons in the Icon Toolbar and in the campaign tree will continue to display tool tips as they did before.
Also note that there is a keyboard shortcut for toggling this option: Ctrl-/ (control forward slash).
To accomodate this, there is a new tag, called "minimum" that you can add to an expression in the definition file. This will keep the roll (no matter what modifiers are added to it) from resulting in something less than this minimum.
To see an example, look at the "3rd Edition" definition, in the "damage" expression definition.
To help remind him, we've added a Preferences option that will add a "dummy" initiative into the combat sequence that goes before anyone else.
This option is defaulted to being turned on, just so you can see it and experiment with using it. You can always turn it off if you find it annoying by unchecking "Use round separator" in the Preferences dialog.
If you decide you want to change this option while combat is going on, you will need to toggle the "Accept initiative rolls" button of the "battle bar" on and off (without making any other changes) to reset the behavior.
With it you can control how transparent the health bar is drawn over the Icon's image. Note that lower values of opacity make the health bar very hard to see.
Printing character sheets has never been directly supported by kLoOge.Werks, but we certainly don't want to go out of our way to make it difficult.
If you have ever tried printing a character sheet using a browser and XSL file, then you know that they print pretty much as they look, with fields of "$S+3" and "+10+2+3+5."
To get around this, you can now click the "Save for print" button on the character sheet. This will translate all the data on the character sheet to its simplest terms, just as it looks when you are viewing the sheet. Thus, if you have "Always solve modifiers" turned on (explained below), you will get "+5" and "+20" instead of the un-tokenized values.
A very strong word of caution is in order before you start using this feature. A file saved with "Save for print" is functionally identical to one saved normally. This means that it can be loaded back into the program just like a normal character sheet.
What's so bad about that? Well, if you've painstakenly placed tokens in your character sheet, then save it for print and then load that saved version, all of your tokens will be gone. This is probably not what you would want, so don't do it! Save it for print, print it, then delete it.
However, it has always been considered that the GM must know exactly what goes into a modified roll, and simply displaying "+5" is not enough information for him.
As a compromise, there is a new Preferences item called "Always solve modifiers," which defaults to being selected. With this turned on, looking at a character sheet in "View" mode will display the summed total of a field instead of its constituant parts. The parts are still displayed in the roll and in the Dice Panel, but for simply viewing the sheet, a total is probably pretty useful.
Special Note: With the advent of this tag, we have changed the way in which you should specify multiple attacks. Previously, you separated attacks with the forward slash character ("/"). Since this character is also used in mathmatical calculations (to express division), if you use it and have "Always solve modifiers" enabled, your multiple attacks will look like a single attack (since the parser will solve the division).
To avoid this, use the vertical bar ("|") character instead to seperate multiple attacks. The slash will continue to function, but it will make your character sheets look strange and misleading with "Always solve modifiers" enabled.
Finally, don't mix-and-match "/" and "|" in the same field. You won't like what happens.
This will allow Clients to award experience just as you would, creating an item in the Pending XP list for the icon(s) with an amount and a reason. You still need to "reset" experience in order for the pending award(s) to be added to the experience total.
Note that when a player awards experience, a chat message is issued with the icon name, amount and reason for the award.
Not all game systems require something like this, but those that do will find the tag useful. Also note that it has been added to the "3rdEdition" definition file (since this definition does make use of it).
You'll find the field in the "Combat" table of the "Attributes" page.
Now you can define as many "conditions" clauses as you like (giving them different source fields, of course) in your definition. The application for this is systems that have multiple hit point sources. For those systems, it is nice to have different condition messages issued, based on the source.
This allows you, for instance, to have an Effect that lasts for five and a half minutes ("5.5m") or an Effect that lasts for only a fraction of a round (".2").
This should make it easier to support game systems that have Effects that last for less than a full round.
We thought so, too. So now when you drag an Icon that is targeting something, the new target distance is displayed in a tool tip next to the targeted Icon.
You can also right-click on a Note or Doc Icon and select "Speak note" (or "Speak doc" for Doc Icons) from the popup menu to issue the text of the note as a chat message.
Note that HTML Docs are not supported (since HTML entry in the chat field is not supported) and will not be processed correctly. You can, however, use drag-and-drop (as described below) to access HTML Docs.
You can also drag text from applications outside of kLoOge.Werks and drop it on Icons and the Map (or in the chat entry fields) to speak it. Which applications support this feature depends on your operating system, so try a few to see which work and which don't (most web browsers, for example, support dragging text into Java applications).
Using this feature you can easily create Notes or Docs that contain text that is meant to be spoken by various NPCs and quickly extract and speak it during play.
With or without the thumnail in the Icon Toolbar, you can now bring up a small copy of the thumbnail directly on the current map by pressing "q" or "'" (single quote).
This allows you to quickly bring up the map thumbnail, change zoom or move to a new area, then dismiss it just as quickly.
You dismiss this window either by pressing "q" or "'" again, or by clicking outside of the window on the Map or an Icon.
This dialog gives you a drop-down list of all the descriptions contained in your description file and allows you to find any one you like for display.
An example of how this would be entered is:
<expression>
<type>attrib</type>
<raw-label>STR</raw-label>
<button-label>STR (${V})</button-label>
<pre-roll>STR check:</pre-roll>
<die-to-use>d20</die-to-use>
<color>FF9900</color>
</expression>
As you can see, the color is specified as an RGB triplet in hexadecimal. Entering the color in any other way will result in a parsing error.
With a "modifiers" clause to a field you supply "modifier" tags to indicate which field(s) modify the value of the field when it is referenced.
Now you can also include "modifier-positive" and/or "modifier-negative" to the "modifiers" clause. These tags force the value of the identified field to be either postive or negative, depending on the tag used, no matter what the sign of the data actually is.
For example, let's say you have a field called "MOD_FIELD" and the user has entered a value of "3" in it. Now you have another field called "REF_FIELD" that has the following "modifiers" clause:
<modifiers>
<modifier-negative>MOD_FIELD</modifier-negative>
</modifiers>
When the field "REF_FIELD" is used in an expression, it's value will be modified to include a "-3."
In this way, you can have fields whose value is forced to be either positive or negative, depending on how you are intending to use it.
There are probably very few instances where this need will arise, and it will often be easier to simply force a sign change by modifying the expression directly, but for those times that fall into the cracks, this will make life much easier for you.
Note that in only a select few instances will the program actually be able to re-establish a dropped connection. Still, it's probably better to at least try.
By adding a "reduced-by" clause to the "check-hit" clause, you can now specify a list of fields on the target's character sheet to reduce the roll by. An example of this would look like:
<check-hit>
<ac-type>AC-FINAL</ac-type>
<ac-type>TOUCH-AC</ac-type>
<ac-type>FLAT-FOOTED-AC</ac-type>
<reduced-by>
<field>AC-FINAL</field>
</reduced-by>
</check-hit>
If the resulting reduced roll is greater than zero, it is considered to be a hit. Otherwise, it is considered to be a miss.
You can, of course, specify multiple "reduced-by" clauses and fields that have modifiers to them will be calculated correctly.
All the functionality of the character sheet editor is now built directly into the program. When you start the program there are two new menu items under the "File" menu: "New character sheet" and "Open character sheet." You can use these, logically enough, to create a new, blank, character sheet or open an existing character sheet.
No matter what mode the program is in (Master or Client), these features are always availble.
Creating a new character sheet will prompt you to select which definition file you would like the sheet to be associated with. A new sheet will then be created and placed in the "map" area of the program's interface.
Loading an existing character sheet will load the file from your local hard drive. This is true whether you are running as a Master or as a Client (whether connected to a Master or not). Let us say that again: Loading (or creating) a character sheet will always take place on your (and only your) machine.
After either creating or loading a character sheet, you can modify it in exactly the same way as you would an online character sheet. When you save your changes, of course, they will be saved locally.
Once saved, you can import them into an Icon just as you would before.
Keep in mind that when doing this as a Master, the character sheets you edit or create are not associated with any Icon. If you would like to associate them with an Icon, one must either be created or the sheet must be imported/loaded into an existing Icon.
In regards to the campaign converter, since 2.x has been out for nearly a year, it seemed rather pointless to continue distributing it. If you find that you need to convert a 1.x campaign, email us and we will send you the converter.
Now, by default, a Dice Panel will come up with only the tabs defined by the definition file. If you would like to access the other fields, simply click on this button and the Dice Panel will expand to reveal them. Clicking the button again returns the Panel to its "collapsed" state.
Also, the "Close" button has been changed to remove the text and include only a small image, which also takes up less space.
The first is the addition of the "*" character to the beginning of the list. By adding "*" (an asterisk) to the beginning of a result list, you can suppress the dice result from the expression result. For example, given the following result list:
{d20[<10="Better luck next time";>9="Good going!"]}
You might get a result that looks something like:
[Master] (d20) [18] 18 -- Good going!
But by changing the result list to look like this:
{d20[*<10="Better luck next time";>9="Good going!"]}
Would change the result to:
[Master] Good going!
As you can see, this is much cleaner and allows you to do things like, for instance, generate random chat text that doesn't look like random chat text.
The second change allows you to specify an Effect to be applied to targeted Icons when the expression is evaluated. This can be quite powerful, since the result list can still output a chat message or sound when it is evaluated.
Taking our previous example as a starting point, let's modify it to apply an Effect, based on the roll:
{d20[<10="Better luck next time#Poison";>9="Good going!#Bless"]}
This means that a roll of less than "10" will issue the chat message "Better luck next time" and apply the Effect "Poison" to any targeted icons. A roll above "9" will issue the "Good going!" chat message and apply the "Bless" effect to targeted icons.
As you can see, anything after the "#" (pound/number sign) is treated as the name of an Effect. This name must match exactly the name that is defined in the Master's global Effect list in order to be used.
Keep in mind, though, that issuing a chat message along with the Effect is completely optional. You could, for instance, simply specify the list as such:
{d20[<10="#Poison";>9="#Bless"]}
Which will apply the Effect without any additional commentary.
As you can probably guess, adding an Effect to a result list that generates a sound is just as easy:
{d20[<10=@"Hurt.wav#Poison";>9=@"Heal.wav#Bless"]}
The third new addition to results lists came as a result of adding the Effect specification. It seemed that, since Effects could now be added, along with an associated chat message (if desired), then it would be nice if sounds could be played as well.
Which brings us to this:
{d20[<10="Better luck next time@Hurt.wav#Poison";>9="Good going!@Heal.wav#Bless"]}
You can place the sound and Effect in either order, but if you are going to issue a chat message, that needs to come first (as illustrated).
You can also have a sound without an Effect (of course).
The first, and probably most noticable, change is that when you are viewing a character sheet the buttons for a "multi-list" will be removed from the sheet.
This results in a more compact display of the character sheet, where "multi-list" tables will only take up as much room as necessary. When you switch to "edit" mode the buttons will be added to the sheet so you can make use of them.
The other, more subtle change, is that if you use character sheet tokens in any of the table fields of the character sheet, they will be translated to their values when you view the sheet and translated back into their tokens when you edit the sheet.
For example, let's say you have a table field where you have specified "$S+4" as the value. Normally, this would be displayed as "$S+4" when you were viewing the sheet. Now, however, the "$S" will be translated and, when viewing the sheet, you will see "+3+4" (assuming that "$S" happens to translate to "+3," of course).
This should make it a lot easier to see just what modifiers are in use, but still give you the ease of specifying tokens that automatically update when their parent changes.
A tag called "data-file" has been added to the "multi-list" table clause of the definition file. This tag allows you to specify a file that contains information to be used as a data source for the table.
What does that mean? It means that you can create a file of, say, spells (all spells or a select few) and that file will supply its contents to the table.
Great, but so what? Well, with this kind of information available, the program will add a new button to the table. This button is called the "Add from data file" button. If you go to a character sheet and press this button you will get a new dialog that contains all the information contained in the data file.
From this dialog you can search the data list, click on entries to see what they contain (it will even bring up the item's description if it has one) and add them to the table.
Continuing with the spell example, lets say that you've created a character with every spell known to man in his spell table. If you export this table from the character sheet it will be saved in a tab-delimited text file. Coincidentaly, this is exactly the format used for table data files.
Once you have this exported file, you can specify it in your definition and, from then on, if you want to add a spell to some other character's character sheet, you don't have to go to some other program to get it -- it'll be right there for you.
Now take this one step further -- you can have data files for most of the tables in the character sheet. That's right, weapons, goods, feats, and skills, to name a few. Suddenly, most of the information needed to create a character is right there for you.
Of course, the game system rules for which feats (or whatever) are available to which character are still the perview of the game system book(s) you've purchased.
Another interesting thing about table data files is that you can specify as many of them for a table as you like. Going back to spells, suppose you want to separate the spells by level. You could create files like "Arcane_Spells_1" and "Arcane_Spells_2," etc. and the program will display a drop-down list of all the applicable files.
We've included an example data file that's referenced from the "3rd Edition" definition file. Simply create a "3rd Edition" campaign (if you don't already have one), create a new PC or NPC (again, if you don't already have one), go to the "Equipment" tab of its character sheet, edit the sheet and click on the "Add item(s) from data list" button in the "Equipment" table. There isn't much there, but it should give you an idea of how the process works.
Then you can check the "3rd Edition" definition file and the "docs/Example_Equipment" file to see how it all works together.
Each chat message is now placed in its own box to better differentiate individual messages. Additionally, if the chat message originated from an Icon, that Icon's image will be placed in the box along with the message.
You can control the size of the Icon's image through the Preferences item "Chat icon size."
Chat history (either in the Chat History dialog or the Docked chat history) is unaffected by these changes. However, we have moved some of the buttons in the chat history to give the text display more space.
To illustrate, let's say you have three fields in your character sheet definition. Let's call them field "A," "B" and "C." Let's further say that fields "A" and "B" have tokens defined as "$A" and "$B," respectively.
Now let's assume that the user has entered "+3" into field "A." He then goes on to enter "$A" into field "B." This, he understands, means to fill in the value of "B" with whatever is in "A" (in this case, "+3").
Feeling cheeky, the user then proceeds to field "C," where he enters "$B." Based on his experience with field "B," he would assume that the value of "C" would also be filled with the value of "A" (since "$B" points back to "$A").
Prior to this version, that assumption would be wrong. Such a setup has a token depth greater than one ("C" points to "$B" which points to "$A," so that a depth of two).
Now, however, you can have tokens recurse as deeply as twenty levels (beyond that and the program will think it has encountered an incident of infinite recursion and stop, returning a warning message). It is suggested, though, that you limit the depth of your recursion as much as possible, if only to improve the readability of character sheets.
This mini-manual is intended to help new users of kLoOge.Werks get acclimated to the software in as short a period of time as possible so they can get up and running quickly.
In no way is the Quick Start Guide intended to be a full manual. As such, experienced users will probably find it next to useless.
For new users, however, the Quick Start Guide covers entering licenses, the main parts of the interface, creating a campaign, managing combat, rolling dice and a number of other important concepts.
Instead, they accumulate wounds until you reach a maximum (at which point you become disabled or dead or worse).
To accomodate these systems, we've added the "hps-count-up" flag. If you place this flag in the "base-rules" section of your definition file, your hit points will be assumed to count up.
Hit points counting up means that damage will be a positive number (so healing will have to generate a negative number), the "conditions" section will have to have its order flipped and the disabled/dead points will also need to be looked at.
Other than that, the program should behave as expected, no matter which direction your hit points are counted in.
For example, if you have an expression that is entirely defined in the "pre-"/"post-" roll clauses, maybe you don't want the value of the column/field containing the expression to be included in the expression.
Previously, you could not specify this (you always got the value of the column/field). Now, however, you can include the "
Specifying this tag excludes the value of the column/field when building the expression.
This could cause chat text to hang around for quite a long time.
Now, by default, the "chat removal delay" is applied to all the chat text, no matter how many lines there are. Using our previous example, a ten second "chat removal delay" with ten lines of chat text will now be removed in about twenty seconds (10 second delay before lines are removed + 10 lines X 1 second per line = 20 seconds to remove all lines).
To explain further, after a chat message is issued, the program begins counting down the "chat removal delay." After this count reaches zero, it begins removing chat lines at a rate of one per second. This "one per second" delay is there so that all chat text doesn't simply disappear at once.
This new behavior should, when your "chat removal delay" is set appropriately, give you ample time to read new chat messages, and, at the same time, not clutter the Map for extended periods of time with messages that you no longer need.
Experiment with the "chat removal delay." You will probably find that your current setting is too short with this new policy in place.
If you find that you don't like the new behavior, you can always revert back to the original by unselecting the "Fast chat removal" Preferences item.
If selected (the default), then dice panels will appear/disappear as they have since their inception (by scrolling up/off the screen).
If not selected, then the panels will simply fade on/off.
If selected (the default), then a small window with the current initiative and the name of the Icon going on that initiative will appear briefly in the center of the map.
After about a second, this window will fade away.
If selected (not the default), then Clients will have a small red button on their combat tracker. If a friendly PC/NPC has initiative, Clients can push this button to signal that they are done. Initiative will then automatically increment, without the GM having to press the "next initiative" button.
If you use the "control icon" feature, then only the person controlling the Icon will be able to press the "done" button on that Icon's initiative.
If selected (not the default), then invisible Icons will be drawn as being "grayed out" instead of with the hashing pattern that we've been using for ages.
Which you use is entirely a personal preferences decision, but the grayed images do take up a bit more memory.
Now you (the GM) can right-click on the Icon and select "Modify->Reset paste count." This will set the Icon's counter back to zero.
You get at this setting by editing the Map's options, on the "Grid" tab. This is a floating point number, so you can get pretty specific about how thick you want your grids.
Since each map can have its own Grid Stroke setting, you can customize grids based on the underlying image.
For complete documentation on the current scripting interface, refer to the following document: scripting_docs/index.html.
Example scripts can be found in the "scripts" folder.
Now you can natively select and use MP3 or OGG files anywhere where audio files are used. This includes dice sounds, attack and damage sounds, ect.
You can also, of course, use them in your "Sounds" list and as Icons on maps.
Well, now it is.
With a "spell-setup" block defined (see the 2nd and 3rd Edition definitions for examples) you will get a button on each character sheet that allows you to quickly and easily set up spells for characters that need to memorize spells daily (like clerics and wizards).
Simply select the spell level in the table at the top of the dialog and all of the spells of that level will fill the bottom table. Select the "plus" button to memorize a spell, "minus" for purge a spell from memory.
The program keeps track of how many spells of a given level you have already memorized, ghosting out items when appropriate, so you no longer have to do mental math to keep everything straight.
When you click on the "OK" button the character sheet is updated with all the changes you made.
To activate painting on a map you (the GM) select "Options->Paint tools" from a Map's popup menu (or press Ctrl-P on the Map). This turns on a small floating palette with painting tools. While this palette has no visible decoration, you can move it by clicking and dragging any blank area of the palette.
The painting tools include a brush (to paint with), an eraser (to erase with), a button to make the brush smaller (the "[" and "," keys also work for this), a button to make the brush larger (the "]" and "." work here as well), a button to set the paint color and a button to enable/disable the paint layer.
In order to paint, you (again, the GM) must first enable the paint layer. This allocates a bitmap that has the same dimensions as the underlying Map image. Keep this in mind: if you are going to use the paint layer, the bigger your Map image is, the bigger the paint layer image will be. So, essentially, enabling the paint layer on a Map will double the amount of memory the Map requires. It is for this reason that a Map's paint layer is disabled by default. Only activate the paint layer if/when you need it and disable it as soon as you can get rid of it.
To paint, select your paint color, click on the brush button and paint away. Erasing works the same as painting, except that it clears the paint layer, allowing the map image to show through.
To make painting/erasing easier, when the paint tools dialog is open you can use the "b" key to toggle paint mode and the "e" key to toggle erase mode (these keyboard shortcuts are also documented in the "Keyboard Shortcuts" file).
For those concerned about bandwidth and memory usage, as we said previously, enabling the painting layer doubles the memory usage for a Map. This is true for the Master and all Clients viewing the Map. The program only sends the paint layer as an image when Clients initially receive the Map, so the time taken to transmit the paint layer is invisibly added to the time it takes to receive a Map.
Paint strokes are not sent as image data, so they happen in real time very quickly. You should find that painting on the Map is actually one of the most responsive operations of the program.
Allowing Clients to paint can, of course, lead to abuse, so enable this option with care.
To do this, use the tag "C=" in your chat message. For example:
This is <C=FF0000>red</C> text.
There are, of course, some conditions to follow when using this tag. The first is: you must not include spaces in the tag.
The second is that the color must be specified as a six digit hexadecimal value (just like you would in HTML, only without the "#" symbol). Thus, to specify black the value would be "000000" and for white it would be "FFFFFF".
You can put this tag into any chat message, and even include it in your definition file (probably as part of an expression's "pre-" and "post-" roll tags).
This item allows you to set a global expression color that will be applied only to the evaluated expression.
Check the "use" box and try it out. You may find it makes seeing rolls that much easier amidst the chat message.
The only way to create a MapLink Icon is to drag a Map from the Campaign Tree and drop it onto the current Map.
The idea is that you would define a field on the character sheet where the user would enter the name of an effect. This name must match an effect that the GM has defined in his list of global effects.
Once defined and entered, when the expression is evaluated, the effect will be applied to the targeted Icons.
This might be handy for casting spells, or with weapons that cause special effects when they hit.
For more information, and an example of how to set this up, see the comments in the 3rd Edition definition file.
You set up calendar events by right-clicking on the calendar and selecting "Edit events" from the popup menu.
This presents you with a dialog that contains an explanation of how events are defined. Briefly, a calendar event has a start day/date/time, a duration and a description. Any of the first two settings can be randomized to lend a quality of chance to the event.
When the event is triggered, the discription is sent as a chat message.
With changes to the way that Icon movement is handled internally, it has become safe for this restriction to be removed.
This does not mean that if multiple people try moving the same Icon the program will prevent it. Instead, the Icon will simply jump back and forth between the two different locations (which will be quite annoying to watch, I assure you).
So, as always, cooperation is required.
Assuming that you have this cooperation, clients being able to move multiple Icons is quite a boon for the GM, especially when the PCs are moving around as a party.
For a client to be able to select multiple Icons, he must hold down the "shift" key and click on them. He can also drag a banding box and from the popup menu select "Select all."
It was pointed out that this assumption was not necessarily always correct.
As a result, now when an Icon "dies" it will be removed from combat, but its initiative number will not be reset. This change should not adversely affect anyone, while at the same time, it allows Icons to jump back into combat with their previous initiative rank.
To get around this situation somewhat, we've added the "actionable-def" tag. This tag provides a hint to the program about how many distinct clauses (things enclosed by "{" and "}") an expression is expected to contain and which one of these clauses it should use for damage.
Using the 3rd Edition definition as an example (see the definition file to see how this is done) we see that a spell generally contains three clauses: damage, DC and spell failure check. With this information in mind, we can tell the program, through the "actionable-def" block that we expect there to be three clauses and that the first clause is the important one.
In this way, if an expression contains less than three clauses, no damage will be deducted when the expression is evaluated.
This is still not a perfect system, but it should help out in the general case.
BE STRONGLY WARNED: movies tend to be large, which directly translates to long transfer times. If you use movies, consider being on a LAN, keeping them very short or only sending them to select people (by keeping them in the campaign tree and not placing them on a map). Having movies in your campaign will also make exported campaigns very large, since the movies will be part of the export.
Movie playback can be handled in either of two ways: by your default browser (the default) or by a movie player (see below for more information).
For your default browswer to play a movie, the movie must be something that Quicktime(R) understands. When using some other type of player, the movie must, obviously, be something that the player will be able to handle.
To set your default, click on the "Set" button, navigate to the program that will be playing your movies and select it. The full path and program name will be stored, so if you ever, for some reason, move your movie player, you will need to update your preferences.
On the Mac, the Quicktime(R) player does a fine job of playing most media files (including MP3s, should you prefer to use it over the integrated MP3 playback).
On the PC, Windows Media Player(R) is probably a good choice.
Things are more complicated on Linux, but if you're using Linux, you probably already know which media player(s) you like. We do not have any better suggestions for you.
Previously, when you dragged an Icon from a campaign tree well, it was moved (not copied) from the well to the current map. This was good for some things, like "known NPCs," (like "Hans the Butcher"), but not very useful for generic NPC "templates" (like Orcs or Goblins, etc.).
Now, unless an Icon is specified as "Only one," dragging it from the campaign well will place a copy of the Icon on the map, leaving the original in the well.
"Only one" defaults to being off, so if you have NPCs in your campaign that you would like to move when dragged, be sure to set this option for them.
Also note that this feature only applies to Icons that are in a campaign well (i.e., they are not on a map). Dragging an Icon from one map to another will move that icon, just as it did before.
Note that this replacement will only occur if the existing effect has expired -- if it is ongoing, then the new effect will be added to the list instead of replacing the old one.
This works in conjunction with the new indication of whether a published game is online or not.
If you set this value to zero (the default), then within a minute of your game going offline, your game's entry will be removed from our servers.
Setting it to some other positive number (up to and including thirty, which is the maximum) will make our server hold onto your game's information for that amount of time.
Using this along with your game description should give you the ability to announce and direct people to your games easily and in advance of when you are actually going to play (so long as your IP address doesn't change, that is).
Defining this ID has two major benefits. First, instead of using your IP address as the basis for file caching, clients will use the ID. This means that, so long as you don't change your ID, no matter what your IP address is, your clients will always have an accurate cache. This can dramatically improve "cache hits" between sessions, avoiding the unnecessary sending of files that the client really has.
Secondly, setting an ID allows you to "pre" cache files for your clients. To do this, you would, ideally, start a client on the same machine where your game is running. Send this client all the maps in your campaign and then have the client disconnect.
You can then take this client's cache folder, archive it (using whatever compression program you like) and make it available to your real players (by either emailing it to them, posting it to a website or even burning it to CD and mailing it to them).
Once your player has the archive, they extract to their kLoOge.Werks installation folder and will not need to download any files when online with you (assuming that you don't add or change any image files without sending them offline, of course).
Now many of the keyboard shortcuts appear next to their items in popup menus to reinforce what they are.
This message (which is only sent to the GM) looks something like this:
[Player1 (to GM only)] Character sheet for Darhelm modified: Personal Information - Experience:: CHANGED: 14500 (12500).
Decoded, this message is telling us that in the "Personal Information" section, the field "Experience" was changed (as opposed to being added or deleted) to "14500" from "12500."
When set correctly, the resulting roll will identify whether or not it succeeded. For instance:
[Player1] Darhelm: Will save: (d20+1+1) [15+1+1] 17 - ROLL SUCCEEDED against 10!!
To use this ability, the person doing the rolling must enter the target value not as a number, but as a "greater than" or "less than" quantity. This is very important and easy to forget!
If the target is ten (10), then it must be entered as ">10," assuming that higher than the target succeeds. If lower succeeds, then it would be "<10."
This information is contained in the field's tooltip, so check there for a refresher should you forget.
To help alleviate this, we've added the (optional) "icon quick stat" display. When enabled (via the "Use icon quick stats" Preferences item), selecting any icon will open a small panel in the current map's upper right corner.
This panel contains the icon's image and all the stats normally contained in the tooltip. It stays up as long as the icon is selected, so you don't have to worry about it disappearing before you finish reading it.
To get around this, the program now takes the dice panel into account and will not draw chat text behind it.
Depending on your screen resolution, this may have a new adverse effect -- you may see fewer total lines of chat text due to the space occupied by the dice panel.
With this new color scheme, you now can.
For players, they can now see if characters are visible or not as well.
Previously, you could not then return to what you had been typing -- it was lost forever. Now, the program preserves your partial message to you can come back to it after perusing your chat history.
Previously, the program could not tell which text went with which fields, since there was no logical organization. As a result, if a field was not defined on a character sheet, it would be filled in with "N/A" in the tooltip.
While not horrendous, this had a way to taking up lots more space than was strictly necessary.
By organizing the parts of a tooltip into blocks, you are telling the program that, if a field isn't filled it, the entire block can be dropped from the tooltip. This allows for much more succinct (and space efficient) tooltips.
If you happen to like empty fields to show up with "N/A" then you are free to remove/not add the "block" tags from the definition file, which will cause the program to revert back to the original behavior.
This compacts everything, but gives us about forty more pixels to devote to the map.
In this fashion, players will have no idea that they are affected by something unless the GM deems that they should know.
This way, you can more quickly "blank out" a particular damage without affecting any of the other damages.
When enabled, as soon as you make a roll, the dice panel will close, thereby allowing you to quickly return to the map.
As nice as this usually is, there are certainly going to be times when you need to make multiple rolls in a row. Having to re-open the dice panel between each roll would be quite tedious (not to mention quite annoying).
To make multiple rolls with "Close after roll" enabled, hold down the SHIFT key when making the roll. The program will see that SHIFT is down and override the "close panel" command, thus leaving the panel open for more rolls.
So long as you are holding down the SHIFT key while rolling, the panel will not close.
Note that the default description will only be used if you do not provide a description in the Preferences panel. That is, if you would like to use the default provided by the definition file, you must blank out the description in Preferences.
Pressing the back quote key (`) will toggle the visibility of the Icon Toolbar's dialog. This allows you to bring up the Icon Toolbar when you need it, and dismiss it from view when you don't.
Note that this keyboard shortcut only works if the Icon Toolbar is not docked.
As a result, we have elminated the need to press "next initiative" in order to being combat.
This may take some getting used to for experienced players, who automatically know to click "next" to begin, but we hope you'll adapt quickly to having less work to do.
That this could not be done previously was simply an oversight. Now you can.
In addition to this, you can now press the left mouse button, then press the right mouse button (with the left mouse button still depressed) and the tab will close without a popup menu. This simply cuts out a step when wanting to close tabs.
To facilitate this, you can now place the "dm-only" tag into the definition for a page, section, table or field (but not a row/column of a table) to exclude that entity from players.
You will be able to see and modify the "dm-only" entity, but players can do neither.
Since this is a definition level restriction, there is no way to "toggle" it on or off during play. If you have GM remorse (whatever that is) and decide to make something you'd previously hidden visible to your players, you'll need to edit the definition and restart the program.
Note that this is a boolean tag, so you would enter it as: <dm-only/>.
The following is a list of things that have been changed or added to the program since the Introduction Videos were made.