Archive | September, 2012

Dev Journal: User data entry systems (feat builder, monster builder)

10 Sep

It is past time to share some of the things in the works for Monster Advancer. While none of these come with any estimates of release I figured it would be worth it for the few interested souls who care what “might” be coming down the pipeline eventually.

Prelude: Before I could ever get to the point of properly handling the complexity of user-entered content I needed to update the code-base with all the lessons I have learned so far programming for D&D 3.5 and Pathfinder (3.75). I am happy to report that the code-base conversion is nearly complete at its heart with only a few peripheral issues not already duplicating the functionality of the original system. This is of course the back-end code. The front end UIs each will need to be re-imagined to take full advantage of the advances I have made. In any case, the underlying purpose of the rewrite was to create a code-base that would be easy to adapt to the user entering of feats, special abilities, classes, equipment, templates and of course, monsters. For all intents and purposes the rewrite has been a phenomenal success. The new code-base indeed makes it far easier to plug in new UIs and feature sets with a keen emphasis on data coming from the UI can being translated straight into the database.

Current Work: With the rewrite complete I put together the basic new interface for creature “advancement”. This of course will just serve as the testing tools for any of the data we add via the new “builder” interfaces. I started with the feat builder because it seemed to be the most likely to be relatively simple. In short order, I had cobbled together a nice little interface that handled simple use cases as well as even some of the tricky ones.

Feat Builder - Feat Descriptions

Feats can have various types of descriptions.

With that worked out and the feats that I created able to be saved upon submission into the database, I decided to tackle the true beast…the monster builder…

While the Monster Builder won’t be able to be fully completed until we have a feat builder and special ability builder at the least, I figured starting on this would help direct my efforts on what else might need to be adjusted in the code to accommodate the challenge that is user-entered creatures.

Diving right in, I built through monster builder pieces that would allow hit dice, armor class, challenge rating, size, type, alignment, feats and special abilities. All while making sure everything would still flow through the current monster generation process. This ensures all the data will work in whatever the current state was (partially complete, incorrect, finished, etc.). The live previewing function made this easy to see at a glance as changes I made to the monster could be seen right away on the monster stat block.

All the work that went into this was enormously helpful in identifying places where the code still needed more flexibility to capture all the data that is potentially needed from the user to build a monster from scratch. All in all, the progress so far is encouraging and I am looking forward to the day that some of this sees release…and I hope you are too.

Monster Builder with live preview

Monster Builder with live preview


Monster Builder in action

Monster Builder in action

Here are several more screen shots of the interfaces so far:

This slideshow requires JavaScript.

Advertisements