GithubHelp home page GithubHelp logo

Comments (9)

BahamutDragon avatar BahamutDragon commented on August 20, 2024

TCoE has no requirements for any additional sources. The artificer class is standalone, though if you load other sources, you do need to select which source of Artificer you are using. The bug is the selection is not available. I can fix that.

from pcgen.

BahamutDragon avatar BahamutDragon commented on August 20, 2024

Fixed the lack of selection. Class should now function correctly.

from pcgen.

CodePhase avatar CodePhase commented on August 20, 2024

I'm not sure if I'm doing something wrong, but even after I implement this change when I select the Artificer class with only the Core 5e book and TCoE sources loaded, then try to add a level to the character in pcgen, I get this error:

16:37:43.857 INFO AWT-EventQueue-0 CharacterFacadeImpl:808 Unnamed 1: Adding level 1 in class Artificer
16:37:43.932 SEVERE AWT-EventQueue-0 Main:484 Uncaught error - ignoring
java.lang.IllegalStateException: Cannot ask for contains: pcgen.core.Ability Reference Artificer Tool Proficiency ~ Thieves' Tools has not been resolved
        at pcgen.cdom.reference.CDOMSimpleSingleRef.getContainedObjects(CDOMSimpleSingleRef.java:237)
        at pcgen.core.PlayerCharacter.processAbilityList(PlayerCharacter.java:8085)
        at pcgen.core.PlayerCharacter.processAbilityListsOnAdd(PlayerCharacter.java:8074)
        at pcgen.core.PlayerCharacter.processAddition(PlayerCharacter.java:9026)
        at pcgen.cdom.facet.ObjectAdditionFacet.dataAdded(ObjectAdditionFacet.java:59)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.add(CDOMObjectConsolidationFacet.java:70)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.dataAdded(CDOMObjectConsolidationFacet.java:135)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CharacterConsolidationFacet.dataAdded(CharacterConsolidationFacet.java:64)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractListFacet.add(AbstractListFacet.java:71)
        at pcgen.cdom.facet.model.SimpleAbilityFacet.dataAdded(SimpleAbilityFacet.java:34)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractCNASEnforcingFacet.add(AbstractCNASEnforcingFacet.java:64)
        at pcgen.cdom.facet.base.AbstractCNASEnforcingFacet.dataAdded(AbstractCNASEnforcingFacet.java:176)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractCNASEnforcingFacet.add(AbstractCNASEnforcingFacet.java:64)
        at pcgen.core.PlayerCharacter.applyAbility(PlayerCharacter.java:8143)
        at pcgen.core.PlayerCharacter.processAbilityList(PlayerCharacter.java:8126)
        at pcgen.core.PlayerCharacter.processAbilityListsOnAdd(PlayerCharacter.java:8074)
        at pcgen.core.PlayerCharacter.processAddition(PlayerCharacter.java:9026)
        at pcgen.cdom.facet.ObjectAdditionFacet.dataAdded(ObjectAdditionFacet.java:59)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.add(CDOMObjectConsolidationFacet.java:70)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.dataAdded(CDOMObjectConsolidationFacet.java:135)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CharacterConsolidationFacet.dataAdded(CharacterConsolidationFacet.java:64)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.ClassLevelChangeFacet.update(ClassLevelChangeFacet.java:64)
        at pcgen.cdom.facet.ClassLevelChangeFacet.levelChanged(ClassLevelChangeFacet.java:89)
        at pcgen.cdom.facet.model.ClassFacet$ClassLevelChangeSupport.fireClassLevelChangeEvent(ClassFacet.java:821)
        at pcgen.cdom.facet.model.ClassFacet.setLevel(ClassFacet.java:330)
        at pcgen.core.PlayerCharacter.setLevelWithoutConsequence(PlayerCharacter.java:8977)
        at pcgen.core.PCClass.addLevel(PCClass.java:852)
        at pcgen.core.PlayerCharacter.incrementClassLevel(PlayerCharacter.java:6849)
        at pcgen.core.PlayerCharacter.incrementClassLevel(PlayerCharacter.java:6748)
        at pcgen.core.PlayerCharacter.incrementClassLevel(PlayerCharacter.java:5421)
        at pcgen.gui2.facade.CharacterFacadeImpl.addCharacterLevels(CharacterFacadeImpl.java:810)
        at pcgen.gui2.tabs.SummaryInfoTab$AddLevelsAction.actionPerformed(SummaryInfoTab.java:1366)
        at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)
        at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313)
        at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
        at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
        at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
        at java.desktop/java.awt.Component.processMouseEvent(Component.java:6626)
        at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3389)
        at java.desktop/java.awt.Component.processEvent(Component.java:6391)
        at java.desktop/java.awt.Container.processEvent(Container.java:2266)
        at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5001)
        at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833)
        at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
        at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575)
        at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
        at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
        at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
        at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
        at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

The only way I can work around this is to (still) also load the UA Artificer class. At least then I can add levels, but I still can't select the Armorer specialty at level 3 like I can when using the Rising from the Last War source Artificer class.

from pcgen.

chainria avatar chainria commented on August 20, 2024

I'm not sure if I'm doing something wrong, but even after I implement this change when I select the Artificer class with only the Core 5e book and TCoE sources loaded, then try to add a level to the character in pcgen, I get this error:

(snip)

The only way I can work around this is to (still) also load the UA Artificer class. At least then I can add levels, but I still can't select the Armorer specialty at level 3 like I can when using the Rising from the Last War source Artificer class.

I can absolutely second that. Happens for me as well and goes away if UA is loaded.

from pcgen.

CodePhase avatar CodePhase commented on August 20, 2024

Unfortunately, using your latest commit from master, I still get the error for the Thieves' Tools:

17:31:57.523 INFO AWT-EventQueue-0 CharacterFacadeImpl:808 test: Adding level 1 in class Artificer
17:31:57.611 SEVERE AWT-EventQueue-0 Main:484 Uncaught error - ignoring
java.lang.IllegalStateException: Cannot ask for contains: pcgen.core.Ability Reference Artificer Tool Proficiency ~ Thieves' Tools has not been resolved
        at pcgen.cdom.reference.CDOMSimpleSingleRef.getContainedObjects(CDOMSimpleSingleRef.java:237)
        at pcgen.core.PlayerCharacter.processAbilityList(PlayerCharacter.java:8085)
        at pcgen.core.PlayerCharacter.processAbilityListsOnAdd(PlayerCharacter.java:8074)
        at pcgen.core.PlayerCharacter.processAddition(PlayerCharacter.java:9026)
        at pcgen.cdom.facet.ObjectAdditionFacet.dataAdded(ObjectAdditionFacet.java:59)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.add(CDOMObjectConsolidationFacet.java:70)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.dataAdded(CDOMObjectConsolidationFacet.java:135)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CharacterConsolidationFacet.dataAdded(CharacterConsolidationFacet.java:64)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.model.TemplateFacet.dataAdded(TemplateFacet.java:56)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractListFacet.add(AbstractListFacet.java:71)
        at pcgen.cdom.facet.input.TemplateInputFacet.directAdd(TemplateInputFacet.java:111)
        at pcgen.cdom.facet.input.TemplateInputFacet.add(TemplateInputFacet.java:58)
        at pcgen.core.PlayerCharacter.addTemplate(PlayerCharacter.java:4592)
        at pcgen.cdom.facet.AddedTemplateFacet.dataAdded(AddedTemplateFacet.java:244)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.add(CDOMObjectConsolidationFacet.java:70)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.dataAdded(CDOMObjectConsolidationFacet.java:135)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CharacterConsolidationFacet.dataAdded(CharacterConsolidationFacet.java:64)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.model.TemplateFacet.dataAdded(TemplateFacet.java:56)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractListFacet.add(AbstractListFacet.java:71)
        at pcgen.cdom.facet.input.TemplateInputFacet.directAdd(TemplateInputFacet.java:111)
        at pcgen.cdom.facet.input.TemplateInputFacet.add(TemplateInputFacet.java:58)
        at pcgen.core.PlayerCharacter.addTemplate(PlayerCharacter.java:4592)
        at pcgen.core.PlayerCharacter.addTemplatesIfMissing(PlayerCharacter.java:8153)
        at pcgen.core.PlayerCharacter.processAddition(PlayerCharacter.java:9022)
        at pcgen.cdom.facet.ObjectAdditionFacet.dataAdded(ObjectAdditionFacet.java:59)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.add(CDOMObjectConsolidationFacet.java:70)
        at pcgen.cdom.facet.CDOMObjectConsolidationFacet.dataAdded(CDOMObjectConsolidationFacet.java:135)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractSourcedListFacet.add(AbstractSourcedListFacet.java:96)
        at pcgen.cdom.facet.CharacterConsolidationFacet.dataAdded(CharacterConsolidationFacet.java:64)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractListFacet.add(AbstractListFacet.java:71)
        at pcgen.cdom.facet.model.SimpleAbilityFacet.dataAdded(SimpleAbilityFacet.java:34)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractCNASEnforcingFacet.add(AbstractCNASEnforcingFacet.java:64)
        at pcgen.cdom.facet.base.AbstractCNASEnforcingFacet.dataAdded(AbstractCNASEnforcingFacet.java:176)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:247)
        at pcgen.cdom.facet.base.AbstractDataFacet.fireDataFacetChangeEvent(AbstractDataFacet.java:194)
        at pcgen.cdom.facet.base.AbstractListFacet.add(AbstractListFacet.java:71)
        at pcgen.cdom.facet.ConditionallyGrantedAbilityFacet.update(ConditionallyGrantedAbilityFacet.java:81)
        at pcgen.core.PlayerCharacter.setLevelWithoutConsequence(PlayerCharacter.java:8978)
        at pcgen.core.PCClass.addLevel(PCClass.java:852)
        at pcgen.core.PlayerCharacter.incrementClassLevel(PlayerCharacter.java:6849)
        at pcgen.core.PlayerCharacter.incrementClassLevel(PlayerCharacter.java:6748)
        at pcgen.core.PlayerCharacter.incrementClassLevel(PlayerCharacter.java:5421)
        at pcgen.gui2.facade.CharacterFacadeImpl.addCharacterLevels(CharacterFacadeImpl.java:810)
        at pcgen.gui2.tabs.SummaryInfoTab$AddLevelsAction.actionPerformed(SummaryInfoTab.java:1366)
        at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)
        at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313)
        at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
        at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
        at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
        at java.desktop/java.awt.Component.processMouseEvent(Component.java:6626)
        at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3389)
        at java.desktop/java.awt.Component.processEvent(Component.java:6391)
        at java.desktop/java.awt.Container.processEvent(Container.java:2266)
        at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5001)
        at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833)
        at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
        at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575)
        at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
        at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
        at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
        at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
        at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

The only way I can get it to work is to still also add the UA Artificer source. Also unfortunately, this patch still does not fix the inability to select an Artificer's Specialty at level 3. I am selecting 'Artificer (Tashas Cauldron of Everything)' as the 'Artificer Selection' under Feats & Abilities -> Character in pcgen.

from pcgen.

CodePhase avatar CodePhase commented on August 20, 2024

Good progress! With the latest changes I now can use the Artificer class from TCoE without the UA Artificer source. However, a number of issues still remain. I was focusing on just the Artificer's Specialty ability but it turns out there are a number of others that are available at level 3 with the Rising from the Last Way source:

RftLW:
Artificer Cantrip
Artificer Infusion
Artificer Skill Proficiency
Artificer Specialist

TCoE:
Artificer Selection

I tried using both sources at once but it didn't help; I was missing all of the abilities from RftLW

from pcgen.

CodePhase avatar CodePhase commented on August 20, 2024

@BahamutDragon is there a way I can help? Maybe we can make this source dependent on RftLW's artificer implementation and have it as an extension to add the Armorer option to the Artificer Specialist list from RftLW? I don't know how to make the change but would be willing to give it a shot.

from pcgen.

BahamutDragon avatar BahamutDragon commented on August 20, 2024

Scope creep is never a good thing. Let us try to keep issues isolated and one item per ticket. Otherwise, instead of one fix per ticket you get mega tickets where progress never feels accomplished.

The fix here was focused on the Tasha's Cauldron of Everything. It appears that is pretty much fixed except the selection piece. I will investigate the issue there and see why that isn't working.

Now, as to the dependency, I would say that Tasha's source is agnostic to campaign settings therefore we should not tie an artificer from Tasha's to requiring a campaign setting. One of my groups is not in Eberron and has an artificer character. We keep dependencies out when they don't need to exist.

from pcgen.

BahamutDragon avatar BahamutDragon commented on August 20, 2024

Okay, loads error-free and operates as expected with core + TCoE. Closing this as completed.

from pcgen.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.