1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. While the majority of active discourse on D20PRO has moved to our Discord Channels, this forum is still active and checked-in on regularly by our staff. However, for the very latest information, conversation and/or immediate support, please join us on Discord here: http://discord.gg/Ph38ckM
    Dismiss Notice

3.9.X Release

Discussion in 'Announcements' started by Wesley Gorby, Jul 26, 2020.

Thread Status:
Not open for further replies.
  1. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
  2. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    Q: What do I need to know if I'm upgrading from a previous version of D20PRO to the new 3.9 release?

    A: Three key things for installing 3.9 when an older version was in use prior.

    1) Install 3.9 into a new folder so as to not overwrite your original version. This is to ensure you can access campaign data in the original version in the event auto-conversion doesn't work 100% with your previous version.

    The older the previous version the harder the conversion to 3.9 is for us to manage automagically!

    v.3.9 does represent a significant bump in the capabilities and data D20PRO is managing. this does mean some of the core data structures had to change to make the new system and ensure we can continue improving it.

    2) When migrating an old campaign to 3.9: We advise opening your previous version of D20PRO and closing all the maps. This will save all creatures, markers, and other map objects into a clean state in the library. You can either save the map over the original library object or save a copy with the current state, your choice.

    Then close the campaign and copy the campaign folder to the new install location.

    Alternately, you can export the maps and creatures from the old version, so long as they are not encrypted. Then import them into a new fresh campaign built-in 3.9. This can be a bit more time consuming than moving things forward by copying the folder, so we advise you try the folder copy first.

    3) Lights have received a major overhaul and the image size used for lights is optimized in 3.9. If you have lights from a map build prior to 3.9, you'll want to go through the map and remove the light and re-add it using the 3.9 lighting mechanic. Alternatively, you can open the Draw Tools->Fog of War->Lights and go through each one and edit the light.

    Editing a light and saving it with a minor change will force the system to rebuild the light image and dramatically improve speed, performance as well as the appearance of the lights!
     
  3. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    Q: Some of my players are seeing Lock icons instead of map art. How do I fix this?

    A: This is resolvable by having the player close their session and restart. When they restart the application, double-check the memory setting at the bottom of the launcher. The Player should have a memory setting that matches the GM's memory setting. For example, if the GM has 2GB of RAM allocated to the game, then the players should all be running with 2GB RAM settings.

    As a group, you may need to set your RAM settings to match the lowest common memory size. We advise a minimum setting of 2GB with 4GB or more being particularly nice to have.

    In the case that the memory settings are fine, a reconnect may also resolve the issue and is worth trying before starting down a network connection speed investigation path! If you suspect that networking is involved. reach out to us in the Tech Support channel for further assistance.
     
  4. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    Q: Why did my spell casting classes lose their spell tabs after upgrading to 3.9 and how do I get them back?

    A: First, don't panic. The 3.9 update includes a massive number of changes to how spellcasting works. This required some changes at the most fundamental levels and may require that you remove your spellcasting class from a creature and re-add it. If you've followed the advice regarding upgrading, you should be able to open the campaign in the previous version and note any spell selections.

    To cleanup update, the spellcasting for a caster who's not providing a spells tab simply remove the class, then Apply the changes. Open the creature to edit again, then add the class back to the creature and set it to the appropriate level.

    Note, the spell selections will be reset during this process, so again, you can reference the previously installed version to recover the list or just make the selections again.

    The new mechanic is designed to be much more versatile going forward so as to avoid this kind of issue with future updates.
     
  5. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    Q: My firewall is setup correctly but we still cannot connect for some reason. Any ideas?

    A: Yes indeed! Both Windows and OSX have a file AND firewall permissions system that were extended in recent updates. If you are not automatically prompted to add exceptions for these elements, you'll need to add the exception manually.

    For OSX, this is done via the Security Panel and you can tell it to allow read/write access to the D20PRO directory. For Windows, you want to open the Windows Security panel and add exceptions to the Firewall & Network protection area as well as the App & Browser control options.

    Please reach out to us in the #technical-support channel if you need assistance or check the guide for hosting a game instructions here:

    http://guide.d20pro.com/gs_hosting_a_game.html
     
  6. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    There is a 3.9.3 Beta.
    This has some of the fixes towards connectivity and log msg echoing.

    http://pubs.d20pro.com/?dir=Public_Beta/3.9.3

    upload_2020-11-5_12-6-33.png

    ### *** v.3.9.3
    * Found and fixed issue with realtime movement update process which was causing an update loop. This call was occurring during initial login sync as well as during any move action -- compounding the problem.
    * Minor update to the dice/roller to fix an overflow problem with the 3d dice renderer.
    * Updated the player connection failure message on initial connection attempts to provide more details feedback and some possible suggestions to resolve common problems.
    * Deprecated the SocketIO connection mechanic as it is being replaced with a NIO/Netty solution in the longer term.
    * Cleaned up some of the options panels which had logic from previous editions lingering and unused.
    * Minor pass over the PC/GM Bridge logic to ensure that calls which return results are listening for the results. This avoids errors about unhandled data.
    * Added the start of an optional verbose logging option in App. Under Options->Developer there is an option to "Enable additional logging". This option currently provides feedback regarding movement actions as per the change listed above. Over time. the flag will be used to provide more detailed feedback about what the system is doing at any given point. The purpose of this will be to allow community to see more details in the log regarding various actions and events. Over time, this option will become more granular and allow for detailed view of the logs for scripting as well as network and other elements individually.
    * Includes a minor fix to the domain spells per level counter to fix a mismatch with the spell slots to domain spells by level.
     
    #6 Wesley Gorby, Nov 5, 2020
    Last edited: Nov 5, 2020
  7. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    The 3.9.4 Beta is out.
    http://pubs.d20pro.com/?dir=Public_Beta/3.9.4


    ### *** v.3.9.4
    * Fix and library update to support the recent Windows 10 20H2 mega-update. This update caused several cache related
    conflicts with the chromium layer used for the script editor.
    * Updated the built in help for Map Markers available on the Map Marker Editors Help tab.
    * Renamed Links to Triggers in the Map Marker Editor. This change is to restore the concept and intended function of
    providing a URI trigger mechanic to markers. This is designed to allow external application trigger to be called from
    components in D20PRO. That being said, URL triggers should result in the running system opening a the URL in an the
    preferred external browser. Keep in mind, URL's can also be opened from url's in the description, however, this
    content will open in the D20PRO Map Marker viewer context window.
    * Changed the system for selection groups and Ownership for map markers from an obtuse text area to a combo box. The
    possible states of the ownership combo are GM, Public, or Player: <player name>. In order to set a marker to player
    owned, the target player does need to be connected to the game at the time of ownership assignment. However, once
    assigned, the ownership will persist until it is changed.
    * Found and fixed the bug which was preventing Map Marker icons from updating after selection. With the fix in place,
    selecting a new icon for a Map Marker will update the editor view with the new icon immediately. The map view of the
    marker is not updated until after the editor is closed/saved.
     
  8. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    The 3.9.5 Beta is out.
    http://pubs.d20pro.com/?dir=Public_Beta/3.9.5

    ### *** v.3.9.5
    * Updated the options for posting action results before or after the Action Sentence when using a feature effect or
    spell. This includes the new gamelog method gamelog.addToEntryQueue(<entry>). To take advantage of the new method,
    a rewrite of the default addEntry() script would replace the existing addEntry(text, type) method and add a new on as
    follows:

    function addEntry(text, type) {
    var entry = gamelog.createEntry(text, type);
    gamelog.addToEntryQueue(entry);
    }

    function addEntryBefore(text, type) {
    var entry = gamelog.createEntry(text, type);
    gamelog.addEntry(entry);
    channels.sendGameLogEntry(entry);
    }

    The first addEntry queues any log entries for display after the feature is applied and calculated. Keep in mind any
    values pushed to the game log must be calculated prior to pushing the statement to the log or log queue.

    The second method, addEntryBefore(text, type), displays game log data as it is processed in the feature. This is handy
    for any flavor text or dialog you want to present before the action is committed. Additionally, this is useful for
    debugging as the log entries will process during execution and only fail to display if the calling component also
    fails.N

    * Fixed and updated disconnect button on host's Player List in the Game Log. A forced disconnect by the GM is not final
    immediately upon approval of the popup confirmation. This is particularly useful when a client is having an issue syncing
    files and seems to be stuck in a persistent loop. The GM can boot the client and have them reconnect to resume the sync.

    * Fixed issue with CreatureClassTemplate decoding where some values on creatures could be stored as Null but we were
    expecting a numerical value on decode. Decoding now assumes null values as numerical zeros for the purpose of decoding
    these fields.

    * Added fix for legacy creatures who might exist outside the array of creatures on a given map. This can occur if the map
    was created and opened in a campaign prior to the recent versions and the map has not been open/closed. Note, open/close
    of a map runs a sanity check on the map which cleans up any previously formatted data and updates objects to the latest
    versions.

    * Migrated Skill usage to be part of the Actions system allowing for direct skill use, targeted skill use, challenged
    skill use, as well as on the fly skill mods with dice or flat bonus.

    * New Skills UI with Persistent (Active) effects, skill challenges, targeted skills, and more.
     
  9. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    D20PRO 3.9.7 is out.
    http://pubs.d20pro.com/?dir=Public_Beta/3.9.7


    upload_2021-1-2_12-42-24.png

    ### *** v.3.9.7
    * Fixed issue with map/item import from legacy content which used an older ID mechanic. These are not properly converted
    when there is an import ID collision.
    * Fixed an issue with markers which was preventing map markers from self updating to the new map marker data model.
    * Added temporary work-around for UTF8 to ISO 8859-1 character format in relation to apostrophe's and m-dash characters
    in marketplace Map Markers. This fix will be applied broadly to other text areas after some additional testing (items,
    spells, features, etc.)
    * Added an option on asset import to replace Markers and/or Status icons entirely. This resolves some database related
    problems with older content or content which uses an entirely different set of icons then the "Default" set.
    * Enhanced the "ManuallySpecified" folder cleanup routine on campaign launch.
    * Updated the color and dialog for the content import warning message.
    * Updated the blankness default text to inform on the Campaign Template import procedure.
    * Fixed a bug introduced with the new skills system that was preventing a new creature from being edited.
    * Added OverrideCasterLevel array option to Creature Class Templates.

    This allows for PF1 Paladins with caster level progressions such as:
    OverrideCasterLevel=0|0|0|0|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17
     
  10. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    D20PRO 3.9.9 is out.
    http://pubs.d20pro.com/?dir=Public_Beta/3.9.9

    upload_2021-2-6_11-5-6.png

    There have been some changes to the flow editor allowing for Special Abilities (static abilities that effect a range of items on a character at once) to be attached to effect nodes. These honor saves, duration, and targets of the parent effect node -- including triggers for making traps, rolling effects, and the like.

    ### *** v.3.9.9
    * Fixed additional issues with exploration layer causing screen delays in the previous build. For now, use cautiously as this feature is very experimental.
    * Fixed several issues involving marketplace sync for publishers
    * Fixed an SRD related bug which was causing unusual behavior in the application launcher. If no SRD is selected, the default Guide SRD is provided
    * Updated all of the html editors to store their data in a byte array and to convert back to text on demand. This is in place to resolve a server storage bug which was preventing us from using PF2 exclusive fonts and other UTF8/UTF16 character codes. The new system is 100% UTF16 compliant.
    * Added a new node to the flow system which allows for Legacy Special Features to be applied similarly to Features to Run. The new node is available off of the Effect node (3rd from the top).
    * Node connectors have been re-organized to provide a cleaner visual representation when opening a busy feature flow. Additionally, Effect node connectors have been organized by function above and below the modify target node.
    * Found and fixed an issue caused by a missing library which was impacting some people during marketplace download. Some downloads are still slow to process (5e PHB) but this fix improves the overall performance.
    * Update the Flow node editor with a split screen view allowing for viewing the description and flow simultaneously.
     
  11. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    D20PRO 3.9.11 Beta is out.
    http://pubs.d20pro.com/?dir=Public_Beta/3.9.11


    One update in this build, but one that impacts game play fairly significantly, please use this in place of 3.9.8 - 3.9.10 builds (if you have one of those installed)

    ### *** v.3.9.11
    * Fixed byte array serialization and deserialization for GenericTraits.

    ### *** v.3.9.10
    * Found and fixed a critical error in the feature script manager's dice handler.
    * Fix for importing creatures created with ability arrays not equivalent to the current system.
     
  12. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    3.9.12 Beta is out.
    http://pubs.d20pro.com/?dir=Public_Beta/3.9.12


    ### *** v.3.9.12
    * Found and fixed a bug related to Map Marker serialization and context editing.
    * Updated JxBrowser to 7.12.2 and applied the updated license values
    * Created a base implementation of a dockable Panel System for the updated D20PRO UI. This still has a long way to go
    and the current implementation breaks several key UI elements such as the Action Panel system.

    In addition. as part of the UI overhaul, this build has a preview available through the developer panel. Here is an image of the kind of layout possible:

    [​IMG]

    Panels can be created, moved and docked to the application in various ways. Some elements are still attached to the map view, such as the Actions Panel and Decision panel. Decisions will be deprecated as they are migrated into the Actions system over time so they will not be moved to the new dockable UI.

    While a lot of the functionality dockable UI functionality is available right away, I would like to point out that the default spawn location for panels is not well sorted yet.

    Additionally, if you want to use this system, please CLOSE all of the open panels after you have selected the Dockable UI option from the developer tab, then close D20PRO and reopen it. When you open it back up, you'll be in dockable panel mode.

    To open new tabs, the Map View has to be maximized or the D20PRO menu does not work. I haven't figure out why that is yet, but will resolve that as i continue working on it.

    Panels can be docked or un-docked and moved between monitors. they can also be attached to the top, sides or bottom in a minimized fashion as well.

    Panel layouts are saved to the campaigns Prefs folder in docks.dat. If you want to clear your docked panels, you can manually delete the desktop.dat and docks.dat from the prefs folder in your campaign folder and this will reset your selections.

    There is a video on Discord (#Beta-News) showing the basic behaviors (and a current bug with panel scaling)
     
    #12 Wesley Gorby, Feb 12, 2021
    Last edited: Feb 12, 2021
  13. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
  14. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    D20PRO 3.9.16 Beta is out.
    http://pubs.d20pro.com/?dir=Public_Beta/3.9.16

    upload_2021-3-10_11-16-5.png

    ### *** v.3.9.16 (Library Updates)
    * Found and fixed an issue preventing players from accessing and editing the saving throw details for owned tokens.
    * Added a Tags array to all features, UI pending. This will allow any feature based rule (Features or Spells) to be
    tagged with things like Spell School, Material Components, or what other details we want to use for a game system.
    * Updated feature usage to correctly handle secondary effects on feature usage.
    * Overhauled the game log output so feature usage reports correctly for primary and sub-effects.
    * Updated the legacy Special Ability log entries so they more closely match the style of the new feature based effect
    logs.
    * Added a two new javascript accessible utility managers and a global java<->javascript helper class which can be
    addressed internally to D20PRO. In addition, several other GM helper nuggets have been exposed as well. Here's the
    breakdown:

    (Javascript) => (Java)
    'abstractApp' => D20PRO application context
    'maps' => Array of open maps
    'classBinder' => native collection of CreatureClassTemplates (complex object)
    'traitBinder' => native collection of FeatureTriggers (Feats and Traits) (complex object)
    'skillBinder' => native collection of GenericSkills (complex object)
    'spellBinder' => native collection of GenericSpells (complex object)
    'statusBinder' => native collection of Status Icons (complex objects)
    'd20proUtilities' => static helper class with various utilities to move data between javascript and java more easily

    >> CreatureClassTemplate = d20proUtilities.accessCreatureClassTemplate(String className);

    className is a string class name.
    returns a CreatureClassTemplate from the binder if it is available, otherwise it creates a new template with default
    values and the name specified in the call.

    >> GenericCreatureClass = d20proUtilities.generateGenericCreatureClass(String className);

    className is a string class name.
    return a GenericCreatureClass converted from the binder using the above generateGenericCreatureClass call.

    >> GenericTrait = d20proUtilities.generateGenericTrait(String name, String level, String source, String tab, String longDescription)

    name is the trait name
    level is the level the trait is awarded/available
    source is the book or resource providing the trait
    tab is the tab to be sorted onto in the character's trait view
    longDescription is the text used to describe the trait -- this text can be html but consider it always being inside a
    pre-built body tag set.

    >> GenericSpell = d20proUtilities.generateSpell(String name, String level)

    name is the spell name to generate
    level is the spell level (not the class level) of the spell

    * In addition to the above, we've also added a PDFManager and a stub for an HTMLManager javascript object set which allows
    for parsing and consuming content from the associated sources using scripts.

    The initial work being done is focused on the 'pdfManager' class and provides tools for reading text and form data from
    PDF sources then allowing for various actions to be performed to parse this data into useful in-app content.

    The PDFManager is based on the Apache PDFBox project while the HTMLManager is based on JSoup.

    Neither system is fully functional in this build so I'll refrain from deep diving into the methods of each class for now.

    This build will include an example parser and a sample character sheet. Please note the sample uses DNDBeyond as a source
    however, DNDBeyond's export utility for PDF produces broken PDF forms. In order to repair this form, I've had to convert
    the source to a PDF/A format using a paid resource on ILovePDF.com. When the parser script is proofed for skills and spells
    the plan is to take a look at auto detecting the broken form and attempting to repair it in code native to D20PRO.
    * Fixed a bug with light visibility for privately owned lights.
    * Added a stub feature to enable verbose game log output for skill rolls. This is a proof of concept and will not remain
    in the state it is in currently. While you can use this feature now, I advise waiting for the full feature before adopting
    this function. Additionally, the full feature will apply to the range of automated dice roll events, not just skills.
    * Lists Library stub created and code work has begun to create a library of List objects to house spell lists, skill lists,
    gear lists, and much more.
    * Library updates!

    ### *** v.3.9.15
    * Fixed duplicate painting issue for creatures who are marked Visible or Owned.
    * Fixed issue with legacy feat import where the legacy feat does not contain a description of any sort (really old ones)
    * Fixed issue with the Hero Lab Classic importer. This is the importer that takes HLD20Pro formatted files.
    * Added auto-connect requests on initial player connection. If Auto-broadcast is enabled, these requests are auto
    approved with very fast timers.
    * Fixed issue with Main Menu access in various window modes when using the Dockable UI.
    * Found and fixed an issue with the Map Marker icon selector when using the Dockable UI.
    * Fixed issue with the Image Chooser for Map Marker's appearing behind the Map Marker editor.

    ### *** v.3.9.14
    * Set a default feature flow editor window size relative to the current map view size.
    * Updated initiative to properly honor system dice choices
    * Reworked visibility to allow for massive numbers of tokens to exist simultaneously.
    * Updated skills UI and Game options to allow for auto-approval of skill checks
    * Added an auto-approve button to the right most position of the skill resolver. Using this option by passes final host
    approval of game log text.
    * Found and fixed an issue with feature effect cancel application.
    * Found and fixed an issue with initiative modifier and ability score calculations
    * Added initiative roll total (combined result) to the mouse over text of owned creatures
    * Modified the ShadowRenderer class to be instanced allowing for persistent calculations on any given map
     
Thread Status:
Not open for further replies.

Share This Page