Update spell memory usage

Description

Current design of capturing available spells processes ALL spell and domain lists regardless of the spellcasting capabilities of the PC. Given that large loads of data (e.g. eclipse has 24 levels of spells), it may be useful to have the MasterAvailableSpellInitializationFacet not do a brute force load on a per-PC basis. Rather it should maintain a master list of information and only load the data necessary for a PC (when the PC has the given lists).

The model used in skill costs (MasterSkillFacet) with a private (thus reused across PlayerCharacters) map that feeds into facets as necessary may be a better model.

(heap dump from a full DMG, PH, PH2, eclipse, etc. load shows >50MB of data driven by spells due to the loading of 140+ spellcasting class lists into the facet chain... for the example data loaded, the spells represented well over 50% of the total size of the PC in memory)

Environment

None

Activity

Show:
Tom Parker
April 6, 2014, 1:24 PM

Committed revision 23595.

Assignee

Unassigned

Reporter

Tom Parker

Labels

None

Theme

None

Epic/Theme

None

Pending User Input

None

Components

Fix versions

Affects versions

Priority

Minor
Configure