Author Archives: Armin

Two New Sheets

I’m releasing two new sheets into the wild, but won’t include them in the updater in GCA5 until they’ve been beaten about a bit. Both are v1, and I think they make a great start on what they are, but you can let me know if you agree or not.

The two sheets are the Spring Bandit Sheet and the NPC Record Card. You can download them from my Patreon post here: https://www.patreon.com/posts/58514865 (this is a public post–available to all!), and that post links back to those pages I just linked above, which have the explanations and sample images.

GCA Beta Preview, Release FOUR, now available

The fourth release of the GURPS Character Assistant 5 Beta Preview is now available.

The first release was announced in this post, which has more details.

This release fixes all the reported bugs so far, and includes some updates and other fixes, as detailed in the various build notes posted on this blog.

You can find the installer available for download here:

https://www.sjgames.com/gurps/characterassistant/gca5beta/gca5betapreview.zip

If you want to validate the ZIP after download, there is a PAR2 file here:

https://www.sjgames.com/gurps/characterassistant/gca5beta/gca5betapreview.zip.par2

The GCA5 installer is within the ZIP file. If you already have the previous Beta Preview release installed, this should install smoothly over the top in the same location. Once installed, this should be version 5.0.163.1. (The previous release was 5.0.157.1.)

Please refer to the original announcement for more details and links to the Google Group where we are handling the related discussions. We’d love to have your feedback, suggestions, and (of course!) bug reports.

Barely bits (b163)

b163

In Sheet Options, when the options are contained within option boxes, doing a Reset To Defaults would wipe out all the box titles. That is now fixed.

Fixed a rogue indent pusher that was causing some status messages to end up displaying as if they had blank lines ahead of them.

Two bits (b162)

b162

Adjusted the way chosen attributes, skills, and spells are displayed in a MultiType Select() dialog (that is, when more than one type of trait may be chosen in the same selection dialog, such as selecting between various Attributes and Skills). This change should now allow for displaying the current score or skill level with the name of the trait in the Character list, instead of that information not being available when in a mixed selection dialog.

I’ve added a right-click menu to the Edit Modes grid. This should help smooth out copying and pasting entire modes since it’s easy to forget the shortcut keys for that. I’ve also added the option to duplicate the currently selected mode.

Bits selected and directed (b161)

b161

Fixed a bug in addsorincreases() handling that would stop handling the list of items upon finding one that wasn’t an actual trait (such as an empty slot caused by an extra comma), instead of just moving on to the next item, which is what it does now.

Fixed a bug in #BuildLibraryItemList.

I’ve created a couple new objects and a couple functions to consolidate/replace the handling of the standard trait selection by tag syntax ( where [ is | isnot | includes | excludes | listincludes | listexcludes ] ). I am now using this new code to handle the selecting of character or library traits from #BuildSelectList, #BuildCharItemList, and #BuildLibraryItemList. This consolidation allows for cleaner code in routines using the syntax and allows for updating the code in a single place when changes or upgrades my be needed. I’ll update any other places that may use the syntax as needed in the future.

I disabled what should be a redundant call to recalculate character values when checking a character tag. I think things are already robust enough to not have any calculation issues as a result, but having that call there left the door open to stack overflows when trying to get the value for a character tag (which triggered calculation of the character tags, which triggered calculation of traits that referenced character tags, and so on forever).

* SelectX()/Select()

Added some support for using attributes in a Select. You can use the %score variable in #codes() for list items that are attributes to reflect the current score of the trait. If you’re limiting upto and/or downto, you’ll have to be explicit about the downto having a floor of the current %score, otherwise GCA will allow lowering the attribute below the pre-existing score (if the trait itself allows that). So, to allow a score to be increased one level only, you’d use #codes(upto %score+1, downto %score). You can *not* currently limit attributes by points using #codes().

* Package Updater (Now v.1.0.4)

Reading font values from the instructions file now caps the font size to 0 on the small end ( < 8.25; zero means no scaling is performed) or 24 on the large end (> 24).

Surprise regional bit (b160)

b160

* Region & Culture Issues

When GCA5 was ‘fixed’ to always use decimal points and thousands separators in the US fashion (periods as decimal points and commas as thousands separators) back in b154, I suspected that some oddities may pop up somewhere. One popped up in an unexpected place, which was the interaction between GCA and the Updater system. The PackageUpdater wasn’t adjusted in the same way, so the one numeric value it cared about, font size (to support zoom modes), was being affected in an unexpected way, which made the font size jump into the hundreds or thousands. That’s huge, and mostly made the Updater window appear to be empty.

I have adjusted the reading and writing of the instructions file to write the fontsize as an integer (font size * 100) which is then read in and converted back to a single (read value / 100). That should fix this miscommunication and make sure that zooming can still be honored.

* Package Updater (Now v.1.0.3)

Updated as mentioned above.

Smarter bits (b159)

b159

GCA should be a little smarter about handling situations with portraits when the portrait is embedded in the character file and may not actually exist as a file on the disk. Notably, the Portrait window should no longer clear the portrait in such situations, and now has an expanded warning about it.

I think I have made gains bonuses slightly smarter without breaking anything.

I’ve added ‘level’ and ‘score’ to the tags that GCACharacter.TagItem() will return a value for, and in this case that value is always 1.

Traits that may reference campaign log values through char:: should now be updated more reliably.

Attack boxes weren’t drawing the Selected color with preference over the Dirty color. That is fixed.

I’ve added the Dirty color to those a user can set for the various trait types. The default is the same orange it has been, but with a darker orange border (which is usually hard to see, but helps when a lot of dirty traits are displayed in a block) and black text. This should always have been something that could be set because the defaults may not agree with some folks or with their preferred color scheme. This is most helpful when using colors that are obviously different from the standard ones. (If you aren’t aware, ‘dirty’ is when a trait has just changed, and this allows you to see traits that are affected by another trait you just changed. It’s not perfect, but it can be helpful.You can turn this feature on/off using the “Show Dirty” button (the lightning-bolt with magnifying glass icon) on the toolbar, next to the Components check button.)

Trait boxes in Unified now have a new option in their gear menu: Double-Click Opens Trait Dialog. This is *off* by default, because this is non-standard behavior. Also, since each trait box is a separate instance, if you want to turn this on, you’ll have to turn it on separately per-box. When this option is on, double-clicking the gear button will open the associated trait dialog for the traits in the box. Note that the pop-up menu will still appear for the click on the button, but will disappear after the double-click finishes.

The Campaign Log window should now be a bit smarter in how it adjusts to being zoomed, and in how it adjusts the splitter when being resized.

* Official Character Sheet

Updated to use the character portrait image from within the character, rather than loading it from the file reference. (This allows it to work with portrait images that might be saved in the character file but otherwise not found on the disk.)

* Data Files

GURPS Basic Set 4th Ed.–Characters.gdf: Modified Innate Attack (%TypeList%) and Burning Attack advantages to change “bu” to “burn” for damage types.

GURPS Magic 4e.gdf: Modified several ~Flaming and ~Lightning modifiers in to change “bu” to “burn” for damage types.

Discworld RPG.gdf: Modified several Burning Attack advantages to change “bu” to “burn” for damage types.

Fix flag bits? (b158)

b158

New characters, those just created that have NOT been loaded from a save file, were not getting their event handlers set correctly. This prevented a variety of things from working correctly, include #ChoiceList. That is now fixed.

I found that I had some code in skill level calculations related to upto() that didn’t seem to make any sense. It was applying Level limits even if only a Point limit had been set. I removed the apparently erroneous code.

At some point, the code that checked whether a trait was being mitigated, and therefore whether taboos should be checked, became broken, so that traits that *were not* being mitigated were no longer being checked for taboos at all during normal operation.

Adjusted Select windows so that the ‘green flag’ overspent points icon will display next to, not on top of, the pin icon for ‘your character has this already’.

The character sheet should now get correctly updated after you close the Protection dialog after changing Block or Parry.

The Campaign Log window’s minimum size has been increased slightly. In addition, there is now an active splitter bar between the two halves of the window, so you can size things more to your preference. Each half has a minimum size, so at the smallest window size there is very little wiggle room, but there’s a lot to work with at larger sizes.

* Green Flags

Fixed the ‘green flags on default’ issue with a super simple check of a value I shouldn’t have left out but did, damnit.

This new setting should now actually be saved/loaded with the character.

* GCA5.XSD

Added element ‘flagoverspentskills’ to GCACharacter settings block.

GCA Beta Preview, Release THREE, now available

The third release of the GURPS Character Assistant 5 Beta Preview is now available.

The first release was announced in this post, which has more details.

This release fixes all the reported bugs so far, and includes some updates and other fixes, as detailed in the various build notes posted on this blog.

You can find the installer available for download here:

https://www.sjgames.com/gurps/characterassistant/gca5beta/gca5betapreview.zip

If you want to validate the ZIP after download, there is a PAR2 file here:

https://www.sjgames.com/gurps/characterassistant/gca5beta/gca5betapreview.zip.par2

The GCA5 installer is within the ZIP file. If you already have the previous Beta Preview release installed, this should install smoothly over the top in the same location. Once installed, this should be version 5.0.157.1. (The previous release was 5.0.149.1.)

Please refer to the original announcement for more details and links to the Google Group where we are handling the related discussions. We’d love to have your feedback, suggestions, and (of course!) bug reports.

Flag fix bit (b157)

b157

As a result of the info text in the System Colors dialog not sizing correctly for larger zoom levels, I noticed an issue in the control, so I have implemented a change to the sizing code for that version of auto-sizing label. This should help ensure it sizes correctly, but if not, it may result in labels that are taller than they need to be. I haven’t seen this happen yet, but there are a lot of dialogs in GCA that may size differently based on system settings and GCA zoom settings. I suppose if that’s the case, taller is better than shorter.

GCA will now flag a skill that has more points invested than necessary for its current level. Hopefully this will help you to return to skills where extra points have been invested for additional study or training. Such skills are marked with a green flag icon on the right side of the trait list. If you don’t like this, you can turn this off in Options.

* FastLoad

I updated the FastLoad version, so unfortunately all FastLoads have to be rebuilt.

* Official Character Sheet (posted via Updater on 2021 September 20)

Included a background page for the character portrait and the description and notes stuff, plus some options to turn bits on and off. All of it is included by default (if present on the character).