Stuff You Didn’t Know Was Possible in HeroMachine

[Panner is not only a fantastic troubleshooter and critique-giver, but he's also an expert digital archaeologist, uncovering hidden gems of knowledge when using HeroMachine 3. He was nice enough to put together some of his findings here to share with the rest of the community, for which I'm very thankful. Enjoy! -- Jeff]

HeroMachine has changed a lot over these latest months. In a short time we have seen the debut of a beautiful interface, extremely useful features, dozens of items to work with, and a forum for sharing creations. I don't think anyone will contest that these changes have made the HeroMachine experience a lot more pleasant and a lot less exhausting.

Since HeroMachine is currently in alpha stage, there are a few oddities that can be exploited to reach results that are unavailable when using the program as intended. Here I present three such exploits that all produce results you might have thought were impossible. I hope this will be educational or at least entertaining!

Bigger Items

Item scaling was recently changed to allow scale up to 999%, compared to the old maximum of 200%. However, some items are naturally really small, like eyes, and even 999% might not be enough if you want them as background elements. Not to worry, you can make the eyes as big as you want!

The restriction on scale is only in the GUI, the program can handle items that are extremely large. We can get such items into the system by loading an edited text file, which bypasses many safeguards.

Figure 1 shows an eye at 999% X scale and Y scale, the GUI maximum.

Figure 1: 999% scale eye

To embiggen the eye, press the save button and go to the 'Text' tab. Scroll down until you find the lines '9.99' and '9.99'. These are the lines we want to edit. Figure 2 shows what this looks like.

Figure 2: Finding the lines to edit

Erase the value '9.99' and write '30' in its place. This represents 3000% scaling. Do this for both lines, and the result should look like in figure 3.

Figure 3: Edited scale lines

Now press the 'OK' button and the changes should apply. (Yes, pressing OK parses the text in the text box, essentially loading that character. Pressing X doesn't do this). The large eye can be seen in figure 4.

Figure 4: 3000% scale eye

The enlargement is quite stable and will last as long as you don't touch any of the sizing controls. You can flip the eye, rotate it, mask it, whatever. Most surprising, if you add more eyes they will inherit the large scale and the image can be saved without issues. However, if you so much as touch the size controls, the eye will revert to 999% scale and you'll need to edit the text again. Figure 5 shows which tools are unsafe.

Figure 5: Only the size tool will cause the eye to revert

Character Outline

Do you remember the old outlining feature that you probably never used? The new interface layout couldn't fit all the buttons from the old one, and outlining had to go the way of the dodo.

Or did it?!

The feature is in fact still in HeroMachine, and can be accessed fairly easily. Just go to the 'Color' tab and click on the 'Multiples' checkbox (yes, even if you already have multiples selected). Press Tab twice, followed by Space. Your character should now be outlined. The process is shown in Figure 6.

Figure 6: Instruction for outlining

You can now switch back to 'Singles' if you want to. If you want the outlining gone, just repeat the process. The outlining will not remain through any saving --- neither file save nor text save, but it will be included in exported pictures, so have fun with that! Figure 7 shows a sample character with and without outlining.

Figure 7: Before and after

Theoretically, an item can get "in the way" of your tabbing, possibly if it's far offscreen. I haven't seen this happen on any of my test characters.

Masking to two items

There is one theoretical drawing technique that I consider something of a 'holy grail' for HeroMachine, and that is masking something to two different items at the same time. That is, drawing item A only at the intersection of items B and C.

If you today, right off the bat, mask a bracer to a female arm and then mask a gradient to the bracer, the result will look like in figure 8 --- bad. The desired behavior is that the gradient is masked both to the arm and to the bracer.

Figure 8: Masking on a masked bracer

This holy grail is yet to be found, but it's not as distant now as it once was. The trick is, again, text file editing.

See, the bracer in the above example can be patterned with any pattern, and it will behave as desired. So we need to make it use a regular item as a pattern. Let's say we want the street corner from Background-Sky as pattern.

Start by opening that category, Background-Sky. If the item is not loaded, the program can't find it. Now press the save button, text tab, and scroll down to the line '', shown in figure 9.

Figure 9: Line to edit

Now type in 'BackgroundSky9' between the tags, it should look like in figure 10, and press OK.

Figure 10: Code after editing

If everything goes well, the bracer should now be patterned with the street corner background, it will look like in figure 11.

Figure 11: Background patterned to bracer masked to arm

The patterning is fairly stable and will act like a normal pattern. That is, it goes away if you pick another pattern, clear pattern, delete the item or mask something to the item. The patterning lasts through saved, but you need to load the sets manually before loading the save file.

As stated above, this is far from the goal of being able to mask an item to two different items, for two reasons.

- You can't move or resize the pattern item, it moves and sizes along with the patterned item.

- You can't change color or alpha of the pattern item. It's stuck on 40% gray for color1 (approx), 60% gray for color2 (approx), and Black for color3. All alphas are stuck on 100%.

Because of the above, this is not the most useful exploit. But, it does provide new possibilities, so I wanted to include it. For example, enjoy the sample picture in figure 12, of a quarter circle wall. It's a circle patterned with BackgroundStandard10 and then masked to a rectangle.

Figure 12: Quarter circle wall

Fun facts:

  • If you use a Font as pattern, you can still type in new text. It's not very readable though.
  • Fonts as patterns seem to use Black for colors 1-3.
  • This whole thing works a little better for patterns where you don't care much about colors 1-3. Like certain items in Companion-Humanoids which already have lots of colors.
  • Depending on how the code looks, it might even be possible to draw the buttons and widgets HeroMachine uses. I haven't been able to guess their names yet, so I can't confirm. If anyone wants to try, Jeff seems to favor camel case with no clear preference for the first letter!

16 Responses to Stuff You Didn’t Know Was Possible in HeroMachine

  1. Kaylin88100 says:

    Thanks, this is really helpful.

  2. TOOL says:

    pretty neat, a little off subject…well I just wanted to let everyone know I will be taking some time off from HM# to be with my family. Today marks the date a year ago when my daughter died and tomorrow is the 4th and one of the few holidays my family can stand to be around each other. Ill be back to check up and say hello. Any thoughts or prayers according to your beliefs is appreciated in this time. See you guys and gals in a few days.

  3. Zyp says:

    Wow, Thats cool! πŸ˜€ I definitely didn’t know that was possible! Thanks Panner!

  4. Panner, these tips are awesome! Merci beaucoup! For my part, sometimes manipulating text is easier than the GUI.

    @Tool: Sorry for your loss. Hope your holiday goes well.

  5. Panner says:

    Tool, that’s terrible, and I’m very sorry. Do whatever you need to do, and know that my prayers are with you.

  6. The Eric says:

    *tab tab space*

    *tab tab space*

    …Buddy you’re a boy make a big noise playin’ in the street gonna be a big man some day

  7. Arioch says:

    This asks for too much dedication and too less laziness that I’m able of, so I won’t use these, but this is pretty awesome nonetheless, and I thank you for sharing it with us. I’m sure it’ll be really useful to… Well, all the artistic types doing awesome stuff with HM out there πŸ˜€

  8. Gero says:

    This is pretty cool, but I’m with Arioch in that I won’t use it much. I do too much with strings of text at work to mess with it during my down-time, too…

  9. Myro says:

    Panner, that was very helpful. I’m not sure how much I’ll use anything, although that resizing thing might actually come in handy from time to time.

    Tool (2), that’s too bad. See to your family, do what you need to do. We’ll still be here when you get back.

  10. MusicAddict says:

    *palmface* Why didn’t I think of that? It’s obvious now that its been said written, but it really didn’t occur to me to play with the text.

    Panner – Thank you. I was actually wondering how to increase the size beyond 999% yesterday.

    Tool – Tool, I’m very sorry for your loss. You and your family will be in my thoughts.

  11. Tarkabarka says:

    Awesome works

  12. Hammerknight says:

    @Panner, great job, the resizing will come in handy.
    @Tool, family is the most important thing out there, the lost of a love one is very hard, you and your family are in Isia and my prays.

  13. Danny Beaty says:

    @TOOL: I’m sorry for your loss. Take care.

  14. Dan says:

    @TOOL, man I’m really sorry about your loss. Try to keep your chin up.

  15. Neon Sequitur says:

    This makes me wish I had more time to experiment flail around blindly with the text files on my own — I’m sure there are more possibilities like this. I don’t usually get into anything this technical, but it’s good to know this is possible if I need to.

    Thanx heaps for these tips.

  16. Panner says:

    There are definitely a lot of possibilities in editing text files, but many of them aren’t particularly useful. For instance, it’s possible to mask an item to itself, and other shenanigans.

    The contents of this post are really the only features I’ve found that offer new functionality.