Jump to content
sentry0

HERO System Mobile 2.0

Recommended Posts

I've been mulling over a major change to the app; I want to do away with the export template and read directly from the .hdc files HERODesigner uses.  Far and away, the most common support question I get is from people trying to read from their .hdc file directly.  My rationale for using a custom XML export template was originally to provide the app insulation from upstream XML changes Dan Simon may introduce... after having seen it in action for the last year and a bit, I don't think it's worth the trouble.  This would be a breaking change once it goes live, so a major point increase makes sense

 

Below is a collection of random thoughts going through my head right now.  Please feel free to chime in with any comments and suggestions.

 

Features I want to implement:

  • Character portraits
  • Opening multiple characters at once
  • tablet support
    • This doesn't mean writing separate UI for iPads/Tablets, this is only to scale the app properly

 

Things possibly on the chopping block:

  • The H.E.R.O. tool (remove or upgrade to 6th edition)
    • People get confused and think the app is only for 5th edition because of this tool
  • The "Library" docs
    • They bloat the app size
  • The overall look and feel of the app
    • Anyone interested in helping is welcome

 

Stuff for nerds:

  • I'm contemplating open sourcing the code, any interest?
    • The app is written using the React-Native framework (JavaScript based, non-negotiable)
    • There's some messy corners that could need some love
  • I am in bad need of unit tests, note to self...stop slacking
  • Need to switch the storage system to use a proper DB in order to house all the data for images/characters
  • Should probably look for a good image scaling lib for portraits
  • Switching to reading a .hdc file directly would be a huge impact
    • We would gain better granularity than we have now in terms of powers, skills, etc
    • Would open up more possibilities for the app in the long run 

 

At any rate, I'm soliciting feedback, so have it.

Share this post


Link to post
Share on other sites
6 hours ago, Duke Bushido said:

Does the current / will the new version offer a way to read sheets without HD?

 

That's a good question, one that comes up indirectly often. 

 

Theoretically, you could write the XML document that HD creates by hand (or some other means) and the app would read it in just fine.  The app will only care about a subset of the data that's available through a HD file, which means you could write a trimmed down version of the full file.  That's still a daunting task... one fraught with error and frustration, I suspect.

 

Given that Hero Designer...

  1. Exists
  2. Does what it's supposed to do
  3. Is actively maintained and supported
  4. Is the defacto, officially sanctioned tool to make a character 

... it doesn't make a lot of sense to not use it as a basis for the app.

 

People ask from time to time for the app to allow you to build and modify characters directly... to be clear, I have NO intention of going down that road given all the previously mentioned points regarding the state of Hero Designer.

Share this post


Link to post
Share on other sites
1 minute ago, Scott Ruggels said:

Please don’t get rid of 5th ed support. I have a number of old characters, and have not made the jump to 6th ed. 

 

I plan on always supporting whatever HD supports so there is no worries there.

Share this post


Link to post
Share on other sites
9 minutes ago, Scott Ruggels said:

However the new interface is much smoother. Very clean. Suggestion. Have any function associated strictly with 5th ed. displayed with 5th ed. ‘s green color, while the rest remains 6th ed. blue. 

 

What about this: hide 5th edition actions unless you turn on the "Use 5th edition rules?" flag in Settings? 

 

I kinda like that, it's consistent with how other parts of the app work when that flag is on.

 

Share this post


Link to post
Share on other sites
3 minutes ago, sentry0 said:

 

What about this: hide 5th edition actions unless you turn on the "Use 5th edition rules?" flag in Settings? 

 

I kinda like that, it's consistent with how other parts of the app work when that flag is on.

 

Flag switch turning it green or blue as a visual cue as to what edition is being used. 

 

Ive had to do interface design for video games. Not my favorite task but had to be done so I am aware of the concerns. 

Share this post


Link to post
Share on other sites
5 minutes ago, Scott Ruggels said:

Flag switch turning it green or blue as a visual cue as to what edition is being used. 

 

Ive had to do interface design for video games. Not my favorite task but had to be done so I am aware of the concerns. 

 

I like that idea, I'll use green for 5th and blue for 6th... do you think it would be a bit much to change all the buttons/inputs colors depending on the edition?

 

I kind of like having a visual distinction like that... it's obvious which ruleset you're using.

Share this post


Link to post
Share on other sites
2 minutes ago, sentry0 said:

 

I like that idea, I'll use green for 5th and blue for 6th... do you think it would be a bit much to change all the buttons/inputs colors depending on the edition?

 

I kind of like having a visual distinction like that... it's obvious which ruleset you're using.

System buttons should probably remain black or white. Also pick subdued shade of the blue and green for invalid options. 

Share this post


Link to post
Share on other sites
23 minutes ago, ScottishFox said:

Loving the new look and feel.

 

Can you condense the stats a bit to get the big six (str,dex,con,int,ego,pre) on a single page though?

 

I'll see what I can do.  The challenge there is that devices have different dimensions.  I primarily test on a Pixel 3XL which has more real estate than the regular Pixel 3, for example.  I also try to support all the way down to an iPhone 5 which is quite small and is unlikely to support the big six being displayed without it becoming difficult to read.

Share this post


Link to post
Share on other sites

Hmmm, looking at the UI what I could do to save some space is hide the Base and Cost fields until the plus button is pressed.  I don't think people generally need to know that info at a glance so there's really no need to clutter the main display with it.

Share this post


Link to post
Share on other sites
9 minutes ago, dmjalund said:

I don;t think we need that much precision for height and weight - you could theoretically put them on the same line

 

Thanks, that reminds me that I need to convert that to feet/lbs.  I should probably add a setting to let people use metric measurements too.

Share this post


Link to post
Share on other sites

Here's the skill screen...I assigned a skill some miscellaneous Advantages/Limitations just for testing.  The Martial Arts, Perks, Talents, and Powers screens will likely be quite similar... a lot of the work at this point is foundational as I build out classes and components to process and display the character.

 

Points to whoever spots the easter egg Simon put in :)

 

Note that the math doesn't work right now so ignore the Cost.

 

spacer.png

Share this post


Link to post
Share on other sites

I will be releasing the app with support for both types of characters.  Just reading in a HD character still leaves a lot of work on my plate to do things like calculate costs, totaling modifiers, calculating STR damage, etc.  The end result is that there are a lot of things that I have to code for.  Which means more bugs.

 

What I'll end up doing is provide people with messages to inform them that they're either using a deprecated character format (the XML export) or the experimental HD format when they load a character.  This will keep people  informed about upcoming changes to the app in regards to loading characters and provide a fallback if you come across a bad bug in the new format.

 

Not that it means much to people but I will be bumping the version number to 1.3.0 when I release this feature.  This will include a deprecation message for users of the export template.  At some point in the future (once the bugs are worked out) I will remove support for the export format entirely and do a 2.0.0 release.

Share this post


Link to post
Share on other sites

I'm looking for people interested in helping me test out that app.  I can provide periodic builds via Google Drive for Android users and instructions on how to install the app.  It should be pretty straightforward for Android users.

 

I'm not sure how to do this for iOS but will look into it.

 

If you're interested in helping out please DM me through this site or shoot me a message at phil.guinchard@gmail.com and we'll work something out.

 

 

Share this post


Link to post
Share on other sites

I did some research today and it looks like I have much more sophisticated tools available to me via the Play and App stores for testing.  Both stores offer mechanisms to invite users to participate in the testing process which means the test app will be distributed via the regular channels.  So I won't be distributing an APK from my Google Drive account after all 😂

 

Same rules apply: DM me on these boards or at phil.guinchard@gmail.com to get into the tests.

Share this post


Link to post
Share on other sites

It's been awhile since I gave an update on the app so I figured I would stop by and give one.

 

I've been working diligently on reading in the HeroDesigner files and have made good progress so far.  Reading in the file is easy, what I'm finding is time consuming is writing code to calculate and display powers.  On an export template you simply get tags to do these things for you but when reading a template directly you have to perform the calculations yourself and handle the display of odd powers.  It's time consuming but I have a solid design pattern which I'm using to make my life easier (I'm using the decorator pattern for you nerds).

 

At any rate, I've knocked out Characteristics, Skills, Perks, Talents, Martial Arts, and Complications completely.  Powers have proven to be the most time consuming because unlike the other areas they tend to be unique and require the most custom coding.  I'm currently finished with the "F" powers and am working my way down the list.

 

I've baked in some goodies that I thought I would share...here's one:

spacer.png

 

Strength now shows you how much damage you can do, how much you can lift, and gives you an example of what you could lift.  Strength between 0-999 will tell you exactly how much you can lift and show you the closest example of what you could lift.  The example kind of falls apart the farther you get from 100 STR as that's the last entry in the table.

 

The other fun thing I worked in was your total km/h for movement abilities... have a look at the screenshot below:

spacer.png

 

The "Max Combat" and "Max Non-Combat" speeds are calculated based on your characters SPEED attribute and is an accurate number AFAIK.  If anyone wants to check my math it would be appreciated.  The formula I'm using is:

 

meters per phase * SPD * 5 * 60 / 1000

There is still a metric tonne of crap left to do but my plan is to try and knock out the powers and then get a test build up for all you folks who have signed up for testing.

 

I'm still looking for testers, if you're on the fence or maybe thought you missed the window... it's still open.  Let me know if you want in.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...