Unable to load Modern Character

Description

16:00:26.604 SEVERE AWT-EventQueue-0 CharacterManager:189 Unable to load character D:\pcgen\pcgen_dev\Trunk\Ilyana Romanov 6.pcg
java.lang.IllegalArgumentException: Level cannot be returned for Class Strong which is not in the PC
at pcgen.cdom.facet.model.ClassFacet$ClassInfo.getClassLevel(ClassFacet.java:529)
at pcgen.cdom.facet.model.ClassFacet.setClassLevel(ClassFacet.java:112)
at pcgen.core.PlayerCharacter.reInheritClassLevels(PlayerCharacter.java:10689)
at pcgen.core.analysis.SubClassApplication.setSubClassKey(SubClassApplication.java:212)
at pcgen.io.PCGVer2Parser.parseClassLine(PCGVer2Parser.java:2237)
at pcgen.io.PCGVer2Parser.parseCachedLines(PCGVer2Parser.java:983)
at pcgen.io.PCGVer2Parser.parsePCG(PCGVer2Parser.java:226)
at pcgen.io.PCGIOHandler.read(PCGIOHandler.java:222)
at pcgen.io.IOHandler.internalRead(IOHandler.java:83)
at pcgen.io.IOHandler.read(IOHandler.java:58)
at pcgen.system.CharacterManager.openCharacter(CharacterManager.java:159)
at pcgen.gui2.PCGenFrame.loadCharacterFromFile(PCGenFrame.java:1151)
at pcgen.gui2.PCGenFrame.showOpenCharacterChooser(PCGenFrame.java:1022)
at pcgen.gui2.PCGenActionMap$OpenAction.actionPerformed(PCGenActionMap.java:539)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$400(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

Environment

  1. Character Class(es)
    CLASS:Tough|SUBCLASS:Tough Hero|LEVEL:3|SKILLPOOL:0
    CLASS:Strong|SUBCLASS:Strong Hero|LEVEL:3|SKILLPOOL:0
    CLASSABILITIESLEVEL:Tough=1|HITPOINTS:10|SKILLSGAINED:12|SKILLSREMAINING:0
    CLASSABILITIESLEVEL:Tough=2|HITPOINTS:8|SKILLSGAINED:3|SKILLSREMAINING:0
    CLASSABILITIESLEVEL:Strong=1|HITPOINTS:6|SKILLSGAINED:3|SKILLSREMAINING:0
    CLASSABILITIESLEVEL:Strong=2|HITPOINTS:3|PRESTAT:CON=1|SKILLSGAINED:3|SKILLSREMAINING:0
    CLASSABILITIESLEVEL:Tough=3|HITPOINTS:6|SKILLSGAINED:3|SKILLSREMAINING:0
    CLASSABILITIESLEVEL:Strong=3|HITPOINTS:6|SKILLSGAINED:3|SKILLSREMAINING:0

Activity

Show:
Andrew Maitland
February 14, 2013, 7:08 PM

This actually breaks ALL characters for this gamemode.

Tried making a fresh character and the same error on trying to load them up.

Andrew Maitland
February 14, 2013, 7:17 PM

Further research, this is only applying when a character has TWO different class levels taken.

Andrew Maitland
February 14, 2013, 8:22 PM

I suspect it's related to the subclass. I'm unable to replicate this in rsrd.

Dave Griffin
February 15, 2013, 5:03 AM

Works fine in 6.0.0 BTW.

James Dempsey
March 18, 2013, 12:23 AM

Was an order of operations issue when loading characters with sub classes first occurring at levels later than the first.

Fixed

Assignee

James Dempsey

Reporter

Andrew Maitland

Labels

None

Theme

None

Epic/Theme

None

Pending User Input

None

Fix versions

Affects versions

Priority

Blocker
Configure