Character region cannot be changed after loading saved character.

Description

I cannot change the region on a character if the character is loaded from a pcg, but it works fine if I change the region at first creation of the character.

My homebrew code (test code below, previously used to demonstrate a different issue), fires a chooser when the race is selected, which in turn fires a template to set the region for the character.
If I create a new character and set the race, this works just fine.
However, if I create a character and DO NOT select the race, then save the character (zero'th level), when I subsequently restart pcgen, load the character and then set the race, the template fires (is appropriately added to character) but does NOT set the region.

I admin this is not a usual situation, but I was trying to simplify some debugging of the chooser and race definition, and wanted to use the stats, alignment and name for my character, without having to manually re-enter them each time.

Behaviour should be consistent regardless of whether a character is generated from scratch, or loaded from a file. I guess that region is null at first generation, so the template works to set it, but at save its output as 'none' if still null, and thus at load its set to 'none' rather than null which changes the way the template affects it ? (or some other un-initialised variable...)

Created using this code:

>test.pcc
CAMPAIGN:test
GAMEMODE:35e
RANK:5
TYPE:Test
SOURCELONG:test
SOURCESHORT:test
TEMPLATE:test_template.lst
RACE:test_race.ls

>test_race.lst
SOURCELONG:Test
SOURCESHORT:Test

test race LANGBONUS:Gnome TEMPLATE:CHOOSE:Test

>test_template.lst
SOURCELONG:test
SOURCESHORT:test

Test1 VISIBLE:YES TEMPLATE:CHOOSE:Test2
Test2 VISIBLE:NO LANGBONUS:Orc REGION:YES

Create a character, define anything on the summary tab
set race to: test race

  • region is set correctly

Create a character, define anything on the summary tab, but do not select a race (or class)
Save character
restart pcgen
load character
set race to: test race

  • no region set.

Environment

None

Activity

Show:
Dave Griffin
March 13, 2012, 3:05 PM

Confirmed - deleting the line: REGION:None from the pcg file and reloading gives the expected functionality.
Implies, if Region is not set, there's no need to save it to the pcg file in the first place.

Tom Parker
March 18, 2012, 9:39 AM

Committed revision 16512.

Fixed

Assignee

Tom Parker

Reporter

Dave Griffin

Labels

None

Theme

None

Epic/Theme

None

Pending User Input

None

Fix versions

Affects versions

Priority

Minor
Configure