Refactoring Retreat

Just finished my third (and hopefully final for this year) road-trip to Atlanta and back.  Flights were crazy expensive over Memorial Weekend, so I opted to take a day off work and drive my daughter to her drum corps camp.  While there, I followed my usual practice of major refactoring (since I’ve got little else to do on Saturday).

Amongst the things I accomplished:

  • defined a MagicAugment adjunct for enhancing weapons and armor, replacing a rather loosely defined “IsDependent” property of base adjuncts
  • allowed natural weapons to be augmented (and included ability to have +0 augmentation to overcome damage reduction)
  • excluded species from the species selection list if the constructor has arguments (such as a Skeleton, which needs a source creature to work)
  • fixed some icons on menus by going through the resource manager instead of directly at the package
  • Traits became adjuncts
  • changed some magic-styles back to match OGL names
  • created an UndeadClass
  • defined BaseMonsterClass as an IPowerClass (so it can source powers)
  • removed GetTraits (which just enumerated strings)
  • did some housecleaning on power classes and fractional power dice
  • defined body cloning (for skeleton/zombie at the very least)

Since I got back, I did a few more things:

  • refactored PowerDefs and PowerSources (and their interfaces) to have non-action oriented versions in support of qualities that do not have actions associated with them (think: magical damage reduction).  My goal here is to get all power sources running as adjuncts so that anti-magic fields (and such) can shut down everything magical without having to write tons of specialized code
  • made the PickUpHandler check load limits


Finish equipment and natural weapon transfer for skeleton, follow similar pattern for zombie (possibly generalize).

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s