I focused on doing solely design work these last weeks, and holy heck is this not the type of workflow I’m used to. Don’t get me wrong, I think it went pretty well. It’s just that in my past work, as a Technical Artist, feedback if something works or not was more immediate and clear. I have an idea, I put it in, it works. But working on designing a larger system, spending too much time on implementing every single idea wastes too much time and interrupts the workflow. So instead, in a move so incredibly unfamiliar to me, I did not touch the engine for two weeks. (lies. I couldn’t help myself, and implemented discard piles, finite decks, and disabling card decay just this morning. More on that later)
Most of the time I spent in Figma, trying to figure out three things: cards, arenas, and story.
In the picture above you can see my current result for cards. Green are cards, orange are status conditions. There are a couple of named columns of cards, which represent potential decks. One of the decks is only halfway done, since it’s for a rival party in the story, which will at first not be relevant for development. Each deck has a theme and a couple of rules on what the deck focuses on. One focuses on elemental interactions, another on pushing units around, while another messes with the player’s gameplay.
I spent a lot of time looking at other games (tactics RPGs, card games) to learn the specifics of how they vary their abilities and cards. Ultimately almost everything comes down to damage, healing, and status conditions, so the trick is in how each of them is calculated and mixed. A lot is possible, and what I’ve got so far is definitely just the start. What I’m noticing is that I’m making the game very strongly status condition reliant, meaning that’s something that has to be clearly displayed, understandable, and that ideally I build in some fun Status Condition interactions. You can already see a small chart in the image of how such interactions could look like. One thing I struggled with though, was figuring out cards that interact with the environments. That’s simply because I don’t really have much to speak of environment-wise. So, really, what I need next is to focus on figuring out what there is in battle arenas!
I spent some time detailing things that I know a battle arena can have, specially based on the one I already made. I noted that I want both terrain and environmental objects to have elements that can be drawn on, while some trigger effects that can hinder or harm a unit. I also want elemental weather that can apply and interact with specific status conditions. And then there’s one little extra that fits into the world: Magic anomalies. Randomized areas which can affect your unit negatively, but can also boost the card you use in some way. For each of those categories I wrote down everything that came to mind! Yet ultimately, the results felt rather generic and unspecific. No bad ideas, sure, but at some point I’m just putting any random thing in, and with no rules, like I had made for the decks, it becomes utterly generic. What I need is of course to work on the story and setting!
For the story I wrote down literally everything that I know about the setting on separate post-its as well as any new ideas. I made post-its detailing events that track the larger story progression. I made tables for the characters and post-its for individual traits, spreading them around as it felt right. And I made a chart for the various adventure parties that you could potentially encounter, what those groups tend to be like, and what kind of conflicts they could cause with the player party. It was all good work, but frankly, I work best having someone to ping-pong ideas back and forth with. This was apparent when my partner jumped in and helped me brainstorm traits for the first rival adventuring party. Ideas IMHO only become real once they encounter another person, and you can only build on a foundation that is real. Again, it shows how important it is for me to find my perfect team.
Even after all of this though, I have no idea if the ability cards even work and if the decks make any sense at all. What became clear is that I need to paper prototype them. Implementing them as is, will be a lot of work that delays making decisions for far too long. However, the battle arena is just as important to the gameplay, and as such, I can finally, after 12 years in the business, use my Lego for my job.
I wasn’t sure about scale, but ultimately the only reasonable size was 1 stud = 1 tile = 1m2. The next option would’ve been double the scale and that would’ve been unworkable. Though that means I can’t use minifigs, nor D&D miniatures for gameplay. Instead I have little cylinders standing in for characters. I previously had been thinking about level designing by drawing the map, but the issue is that it’s hard to convey the third dimension in a way where you can see everything. Lego doesn’t have that issue! I think this could be pretty fun to figure out some arenas with more verticality.
But as I said, designing the cards brought up new considerations for the gameplay, which I ultimately did build into the prototype. Originally I had used cards go back into the deck. I didn’t want the player’s deck to exhaust. This is at its heart a tactics RPG after all, and abilities don’t just disappear forever! That means there can’t be any fun interactions with a discard pile, and that’s just unfortunate. So now I’m testing out what it’s like if your cards get used up. That, of course, now means that decks can be finite! That has a terrible interaction with a feature I had implemented: Card decay. I wanted drawn cards to decay and go back into the deck, so that the available abilities would cycle through more often. But if they now decay and go into the discard pile instead… that’s a quick game over. To avoid that I added an option to disable decay. This of course still needs a lot of testing. I still don’t want the game to end too early just because there’s not enough cards. On the other hand, I’m excited about the idea that a player can choose to focus on their own deck’s strategy, or opt to use only the opponent’s cards to interfere with them and try to empty their deck to force them to lose.
Didn’t expect this long of a break between posts! I know several people have read the devlog lately and I’ve been told it’s an enjoyable read. Thank you :). I’ve been asked about ways to subscribe to the blog, and made sure to add a little RSS icon on the sidebar. Click it to subscribe with your favorite RSS feed manager. I also looked into newsletters, but that would be far more involved, so I’ll keep to the RSS feed for now.
So, what has kept me for three weeks? Well, let’s get into it.
Let’s go with Scramble Quest first. Time was short, but interesting. Most of all, I know I can’t make Scramble Quest on my own. And a team has to start somewhere. I put out posts calling for Programmers and Artists who are interested in founding a studio together. Not just for Scramble Quest! I intend on creating a diverse space where marginalized people get a chance to have a voice, where we can grow and learn sustainably. Where the diversity of people that I see in my life, get to see themselves in games. I’ve found some promising artists that I’m in talks with, but unfortunately I haven’t heard back from enough programmers. The limiting factor is of course that I’m looking for local people, which is a shame, since there’s some fantastic people all over the world with plenty of experience that I’d love to work with. But alas, for now it has to be people in NRW in Germany.
On the prototype itself I finally took a swing at an FX system. The worst aspect of the game right now is that you just don’t get feedback when something happens. There’s no visualization of ability impact, no visual distinction between them, and no information on status effects. I needed an FX system. But I was really scared of it. Not because it’s particularly hard for me, but rather because I know exactly what I want, and it’s far too big for a prototype! I know I can’t help myself. I know my learnings from across my career and specially from Oddsparks. I had a goal and it was too big. And it was immediately clear my fear was well founded. I started building it not from a logical starting point that you could scale up from, but right in the middle of all of it. I was building systems that wouldn’t have an immediate effect, but rather I was putting them in because I knew I WILL some day need it. They were in because that’s what the system I had envisioned required. That didn’t do at all and ground things to a halt. I reevaluated, started working on the absolute minimum, most immediate needs (impact VFX) and instead of displaying fancy VFX for the status effects I reduced it to status icons above the units, which had to happen anyway. I’m happy with it.
I also upgraded to Unreal 5.8, which as with every engine upgrade is its own whole endeavour. My favorite feature from this version? Something that was wholly unexpected for me. String tables now have a notes column! We can finally give localizers (and actors) context for each line of text directly in Unreal! Before we only had the string itself and an ID name that you couldn’t edit. This is extremely valuable to ensure localizers know everything they need to accurately translate the rows upon rows of text they get sent.
A big focus this week in particular was game design. I did a small dive into a variety of games with comparable gameplay, to see what I can learn for Scramble Quest. The thing is, Scramble Quest mixes Tactics RPGs, with card games, in a party-game like rhythm. So how do I bring together having units, with stats and very particular forms of aiming, together with the card game, where in my game your hand is always full and accessible to your opponent, and the party game, that doesn’t allow you time to check discard piles and further info beyond what the card says? Luckily almost every game I looked at, if you trace it back long enough, inherits from Dungeons & Dragons and is thus not actually as incompatible as you’d think. It’s fascinating how foundational it is to large parts of our medium.
See the icons over the units? My first attempt at displaying status effects.
I frankly was afraid Scramble Quest didn’t allow for much card variety. One issue is that both card and tactics games use different forms of targeting to create different types of abilities, while in my game targeting styles are locked to each character class. Another was that I wanted stats to drive damage calculation, meaning the cards themselves have less influence on that aspect. And I definitely wanted to avoid cards that are just straight up strictly better than others, devaluing part of the collection. So I grabbed myself a figma board, made post-its for every card idea I had, soon started making post-its for every status effect I could think of, and took notes for all the things that could be possible. Additionally, I started dividing the potential cards into themes, which could become decks, or they could just be in-universe “thematic expansion sets”. A lot of new questions came up as well. How do I want to include terrain into cards’ effects? Do I want an extra resource to build up and use to encourage different card uses at different times? What determines the damage amount of something like poison (stat, card, or a fixed value)? Can I have cards mess with the card selection phase, instead of focusing only on the combat itself? What are fun ways to interact with applied status effects? Should status effects be able to stack for a stronger effect? Suffice it to say, there’s so many options now. It’s exciting, but overwhelming.
Outside of Scramble Quest, there was a ton of learning. There was of course MGZSheroes’ insights into management methods and finances, but also “Gründertag” a trade fair for founders with exhibitors, and short talks and panels for founders and from founders about all the things you should watch out for when setting up a new business. I’ve always dreaded the harsh, cruel, opaque world of business, but I really have to commend the moderation and organizers. It was all held in a very friendly welcoming way. The moderator even had a bell he rung every time jargon was used, to make them explain a term to the audience. I think at times we really need that in games. Sure, some talks are aimed at experts, but we need a method for juniors coming in to learn the terms and acronyms we bandy about like it’s obvious. We also had a little games meetup, learning best practices for handling Gamescom through a “knowledge nugget” shared by Thomas Rössig and Wolfgang Schmitz. It’s far from my first Gamescom (my first was in 2010 a whole… 16 years!? ago. I know, thanks to the photos I took with my first and last digital photo camera!), but still really good advice, specially if you want to meet up with potential publishers and other very busy people, along with some other neat tidbits.
I also had my first mentorship (with Christoph Kohlhaas) and coaching (with Sabine Hahn) sessions. Even with things you think you already know or thought about, there’s more to know, more to think about. I’m really thankful for being able to have this kind of support. I specially appreciated being properly challenged on my convictions, forging them into something solid and resilient that I can be proud of.
Screenshot from Daring Deev’s Rootknot. Some kind of demonic entity is in the player’s way, and the only way to defeat it is to throw whatever you’ve got in your bag into the air and grab as much of it as you can to help you out.
And finally, I got to do a playtest session for Daring Deevs‘ Rootknot, a genuinely fun roguelike, that draws on middle-eastern folktales to create a dark fantasy setting, where you fight by catching objects in the air. It’s at first panic-fueled, but soon you see strategies forming to deal with a variety of combat situations. Loved it. Wishlist it and see if you can get a playtest slot yourself!
Hey everyone! Phew it’s hot, huh? What a summer this was. Glad it’s over soon. It’s- it’s not? Oh boy, I wish someone had predicted climate change, and done something about it.
So, apart from finding out I can melt, what happened this week?
Outside of the game itself, I made some calls to figure out further funding options, specially since I want to bring people in to help me on the art and programming side of things. I’m spread really thin here, and it’s slowing down development of the prototype a lot. To that effect I also had a call to get some advice on how to find good co-founders. It’s really hard finding the right match, and I hope it doesn’t take too long. I got some good advice I wanted to act on, creating some first pitch decks and more refined “call for founders” posts, but frankly this week’s heat was too much for thinky writey make words happen on the thing with th
MGZsheroes also continued. Always lovely hanging with all the other women of the program. This time was about branding! I’m not at that step yet, but it’s really great to formalize these concepts. It’s also interesting that the recommended way to speak to and catch your audience’s attention is different than what works for me. A good lesson in both that I have to learn what works for others, but also can’t disregard that there’s people out there who are like me, with different communication needs, who feel spoken to in a different way.
No screenshot this time, because it would look exactly the same as last time, despite such deep changes! One major aspect is that I can now toggle the action phase (when actions are done) to be either at the end of a round or at the end of a turn. End of turn definitely feels a lot better, the immediacy giving you much better feedback on your actions. However I hope to make end of turn actions also work, because I feel there’s some real good tactical thinking to be had there.
More importantly I introduced status effects! Aaaand for that I completely restructured how ability cards are built, which required a lot more restructuring. Quick primer on my terms: Ability card is the card you select for your unit to act on. Actions are what the units actually do. Ability cards can hold multiple actions (e.g. do damage & apply status effect). See, originally I had actions on the cards as lists of classes that I couldn’t modify. Eventually I learned about instanced objects. Essentially they’re constructed from the outset, and as such you can already change them in your data asset, instead of waiting for runtime. This was important to me, because I didn’t want to make one action per status effect. This way I can have an “apply status effect” action, where I can pick the desired status effect from a dropdown list. This changed things so much, allowing me to do things like selecting targeting on the action itself, instead of having a list for actions that target self, and a list for actions that target others. Since I was already at it, I decided to introduce “boosted actions”, a second alternate list of actions, which is used if the unit’s class matches the ability card’s class. I haven’t put anything in yet, but I’m imagining damage being doubled, or a secondary effect triggers, or something like that. Damage being doubled is less interesting, since it’s already stronger due to using a unit with more compatible stats anyway. I haven’t done any visual feedback yet though, since I’m prioritizing functionality. Though it’s getting waaay more pressing. I’ve been putting that on a backburner though, since I know that as a Tech Artist, I’ll have some specific demands and end up wanting to make too robust of a system. We’ll see.
So what status effects did I actually make? I started with a simple one: poison. All it does is do damage in the end phase and leave after a few turns. The next thing that came to mind was… wet. It doesn’t do anything. It however is my first step in attempting elemental reactions, because my final status effect is: Frozen. Like all the ice cream and drinks I currently yearn for.