XaiJu
ster
ster

patreon


The Time Consuming Parts

I don't have as much done with Myriad as I thought I would have by now, but that's because I severely underestimated how complicated some simple changes would be. I've bounced around between a few different areas of focus, but this one thing has taken the large majority of my time and is essential to do well before moving forward with anything else. It's the framework for generating weapons and abilities.

When a random weapon is rolled it is necessary to create the macro on the players token who found it so that it is completely functional, has a coherent description, and includes the wide variety of randomness that made it worth rolling as a random item in the first place. As a result, a web of separate lines of code must be assembled as the weapon is randomly generated. Generating an 'Axe' is not just an 'Axe', it is the many pieces that make up what an Axe needs to be. This is a long tedious process to make sure all of these things line up correctly to make the item while also attempting to future-proof the framework in case of wanting to add more things down the line. It was mostly done, until I decided to mix things up a little.

Along with having diagonal movement removed for players, I have always wanted each weapon to really feel and attack completely differently. I've only really had the technical knowledge of how to accomplish how to do this recently, though. I knew it would be a lot of work, but I feel the tactical implications and unique feeling for each weapon type will be absolutely worth it.  

Spears are the easiest example; You choose the direction you are attacking rather than the target you are attacking. It attacks and damages all targets within your reach in that direction, instead of one single target. I've always had a way to do that built into the system somewhere, but it required the player to make sperate attacks for each available target. When a player has to do an extra step themselves, they stop to ask if they are doing it right. Its not a confusing concept, but it can be when you try to remember exactly how every single other weapon attacks if they are all different. It also gets very tedious fast if your spear has increased range.

The current system never had a way to target more than 1 target at a time. Any area of effect abilities that did not originate from the caster required DM intervention. It was tricky enough to convert many weapons over to a new targeting system that attacked multiple targets based on a list of coordinates depending on which direction a weapon attacked, but the truly complicated layer comes in when you randomly generate these weapons. 

Randomly generated items have to be assembled as mentioned earlier, but now each weapon can act so differently that this needs to be extremely flexible. A weapon effect that heals you on hit suddenly has to consider that 'on hit' might actually mean 6 hits. That makes 'on attack' and 'on hit' completely different concepts where before they were roughly the same thing.  Tiny adjustments like that are all over the place that have forced design to change subtly. As another example, I decided it would be better in the case of a spear hitting multiple enemies to have the roll for chance to hit be the same for all targets. If you hit one, you hit them all...unless one target has more defense. This is entirely different for daggers, which attack one target within range twice and roll separately for each hit. Despite how different those are, every randomly rolled modifier is made to make sure it works for any weapon type. This even brings into question how attack of opportunity should work, when each weapon targets very specific different areas. A question I'm still not completely sold on my current answer to.

This extends to spell/ability usage as well. They can easily take advantage of the weapon targeting types and are also assembled from various lines of code each time they are added to a character token. This isn't because ability choices are randomly generated even though that honestly wouldn't be a hard thing to add at this point because of how it is set up. It is more about how MapTools creates macros on tokens and the ease of setting up a framework for creating similar things over and over again. This has also just created a huge air of uncertainty and caution when moving forward. If I do want to add a big feature to this process, it is best that I do it now before I have generated a campaign full of tokens using the current methods. I recently realized how easy it would be to add Elemental damage types within this and I'm glad I realized it now rather than later. I'd have to go back and assign an element to every ability that was already generated, as well as the fragments of code waiting to be assembled the next time the same ability is created -- which can sometimes even be when a weapon is equipped, tying these two things together.

This of course ignores all of the other problems and technical limitations I've run into trying to make this work. Yes, this is the part where you get to tell me to learn to program in another engine, start over, and remake everything that I have already made even though it is already taking too long for most interested people. 

The first time I targeted multiple tokens with an attack, MapTools simply crashed. I finally pushed it too far. The other complications are so pointlessly complicated that I'd really like to not even try to explain why they have to be done the way that they were and how it makes every step of the process an absolutely weird implementation of quotes within quotes that define variables to be quotes because when macros are passed down they lose 1 layer of quotes. This should also go without saying how much all of this continues to change what was the expected balance of how much damage things should do, etc... The time not spent making it is spent thinking about what should be made. This also goes without saying how much of a shit show real life has been, but I tend to not complain, get things done, and then everyone thinks they were easy to do when they see them finished.

The end of this is part of the process is somewhat in sight, but may still take a week or two. It'll be nice to have the framework for all of this working flawlessly, because that results in something that should actually be interesting enough to stream: Throwing together these components quickly enough to have a weapon type, spell, or ability come to life within the shortest amount of time possible. That ties in yet another aspect of all of this; making sure players can select and assign skills to create their own characters and automatically create the macros for their skill selections on their token.



Comments

Wow, I barely understand macros on Foundry VTT so trying to process what you're building makes me feel exhausted just to think about. But man, that system does sound really cool. Power on ster_!


More Creators