Game-in-a-Week (July 26-Aug 2): Medieval Shuffle

I made a game in a week! Here's what I did. (All the previous blogs gathered into one)

September 11, 2016

I made a game in a week, in the final week of July 2016.

It's called "Medieval Shuffle" and you can play it here:

The King is bored, so you're given control of a Kingdom for 7 days . It's up to you to do what you want with it! Save the Kingdom or make it fall into ruin.
It's sort of a card-based management-puzzle game. I think.

I made it in a week and you can read up on the process below, as I've gathered all the bi-daily (is that a word?) blog posts down in one easy-to-access-place. It's fairly fun, I hope! Go play it first, before you read, too! That'll probably be better. And if you have 2 minutes, please leave some feedback in the comments section below!

Day 1

I began today by doing a bit of brainstorming plus a very light paper sketch.
I already had some rough ideas in my head since I decided I was going to do this, so I quickly jotted those down and saw where that lead me.

In rough summation, I wanted to do something with a medieval, royal setting where you were playing around with status and management of a kingdom, inspired by this little thing and, perhaps more importantly, my idea about what that game was before I had played it (which is a funny concept I might return to). And then with maybe also a little Gwent and deckbuilding games in between.

I actually wanted to make a more traditional puzzle game at first, because I'd never made a puzzle game before, but quickly, my ideas started taking me away from that. So now I'm making more of a deckbuilding/management hybrid thingy. I think.

Ok, I should just explain the game now.

The premise is this:

"The king has grown tired of ruling the kingdom and is now inserting a random person from his court into the role of king for 14 days [the time period is still being discussed. it might be longer than this for gameplay purposes]. Now, this has fallen onto you. You are now fitted with all the kings power. How much trouble do you think you can stir up in 14 days?"

I'm pretty happy with this one! It's fun, fairly goofy, but also can lead so some somewhat dark stuff. You can really fuck it up if you want to. Or try to keep order. At least, that's the idea.

Right now, at the end of the day, it looks like this:

Not the most... appealing thing you've ever seen, I bet. Hey, it's full of placeholder art! I... haven't figured out how I'm going to do visuals yet. They're hard, and I'm not good at them. So they might be really bad. Unless I come up with something.

ANYWAYS, what we see here is a rough idea of the general design of the game screen: We've got cards in the bottom, representing different characters, that you can move around (these are the ones under your control), which you can send to various parts of your region. One could go to the village, another to the castle, or the farm etc. This will cause different things to happen (what exactly I'm still sussing out, but there'll probably be some stat changes along the way).

The paper sketch. (Also a hot scoop of my book up in the top, there! (it's not that hot, it's the first page.))

The characters have three variables as of now: Wealth, Fear, and Status. Wealth is how much money they have, Fear is how much other people fear them (yeah, I know, maybe it should be something else?), and Status is then a combined variable of the two. Super simplified, of course, but I'm making it in a week, so it has to be. What this does however, is that it allows me to focus on their status: Notice that there are no stats like "Strength" or "intelligence". because all that matters is status. ...Right?

I'm thinking there'll be some sort of status system as well, so you have control over those that have less status than you or something like that.

The problem is I'm not quite sure what happens with everyone else. I don't want to be making fancy AI, because I don't have the time or skill for that. I could make something rudimentary, but I'm not sure it'd be a good idea to spend a time on it. I'd rather want to focus on the game design. So, if I do any AI, it should be super simple, like do A or B, depending on variable X. Hopefully.
Let's see.

I'm already noticing that I'm not sure how much I can do within a week. I think a good plan is to have a playable demo up and running about three days in, so that should be done around thursday/friday. Then I have the rest of the time to polish and prettify.

I didn't get as much as I'd perhaps have wanted on the game design done today, but I got quite a bit of the basic programming structure set up, and struggled with Unity's UI system, and learned how delegates work! So I'm fairly satisfied with it.

That's it for now, see you tomorrow!

Day 2

Day 2! Or the day where it started to “look” like a game!

This is how it looks now:

In the bottom: Cards. In the middle: Slots to place the cards in: To the right: A description field detailing what you mouse over. In the Top: A Red Button. What more do you need?

See? Waay more numbers. Video games! And the cards look like cards now! (When the numbers don’t overlap the text. Whoops!)

Well, it might be too cluttered at the moment, but I needed to see all the stats myself for debug purposes, so I just put them all on there, which made everything else much easier. So for now they’re staying. The entire visual side will be redone one of the last days, anyway, so no point in spending time on it now.

Today was mostly spent taking all the concepts and rough implementations of yesterday and get them more ready to be playable. For example, made the whole card system work so cards can dynamically spawn and be removed from the hand of the player, and so on. (right now, there’s no system actually doing that, buuut that’s for tomorrow!).

An example card. Fear and Wealth are the two middle values, Status is to the bottom left, and unruliness to the right.

On that, I also made the places so they have an actual “Prosperity” stat that changes depending on the characters you put on them, and if their prosperity reaches 0, they shut down for a few turns. Not sure that’s the final way that should work, but I just made something quick.

That’s the main idea right now: Make a working game really quick, so I can spend as much time as possible making it actually good.

However, I had a major hurdle today I just want to spend a bit on. Because man, that almost broke my brain.

Ok, so I had an idea that I wanted cards to be able to affect spaces, so you put a card on a space, and then it will cause something to happen to the next card that is placed on that space. Would create some interesting planning, I think.

However, I had to actually program that.

And, if you’re a decent programmer, you’re probably thinking “that’s not that tough”, and no, it probably isn’t. But I wanted to do it with delegates, because I had just learned those and they seem like the thing you’d use in this sort of situation (I ask, not knowing anything.)

But I had only just learned about them, not necessarily understood them.

Because here’s the deal. It’s easy enough to store a method (a piece of code) to be executed when the next card is there. But what if that new card also wants something new to happen to the next one? (It’ll overwrite the previous method). And how do I make sure it doesn’t just execute on itself? (Because that’s what happened at first, because the placement of the method happened when the card was placed but the execution happened when the card was taken away from the place.) So you just check that it’s not the same card. But what if you do place the same card twice? (It won’t work again). Crap. Um. Then what?

So that caused me some hassle. Probably mostly because I’m not a great programmer. But it (almost) works now. I thought I had fixed it, but then I realized that it still doesn’t work when you place the same card twice. Damn. Anyway.

Just… don’t do that? Please? :D

Yeah, yeah, I know they all have a King as the image. And yes, it's the king from Chrono Trigger.

Finally, I put in the day counter, so now you only actually play for those 14 days I claimed yesterday.

I still have a lot of design uncertainties. Right now I’m not sure if the game is even difficult at all, or if it’s just some sandbox, or if there is something there. I’m not entirely sure how to introduce new cards and how to eliminate old ones (right now they “die” when their status reaches 0), because it’s kind of hard to control, but at the same time the player is controlling every card (they have in their hand), so perhaps it’s just—in theory—too easy, if you play right?
I’m not sure.

I need to test all that. Hopefully, the game will be “done” enough tomorrow that I can really start doing that. I think so. It already kinda is now.

I also have a major visibility problem, since right now there’s way too much info on the screen to see it clearly, but I need the player to have enough info to see the effects of their decisions. You know, the eternal UI struggle. BUT that’s also for later!

Just wait with everything! It’ll get done! I only have a week. Oh god.

Day 3

Whew, so day 3.
I got both more done today than expected and less.

I started the day off doing some small things before I tackled the major issue of the day: "Duels".
I created a "Duel" system, which I say in quotations, because it's not a duel system at all, but more just a word I use to define that it's something a character does against another. So you can, as the player, decide you want to do something against another card. Right now, you can bribe them, threaten them, or steal from them, each of which requiring a certain relative fear, wealth or status, and will change the stats of the cards quite dramatically.

This was created because I felt I needed something do do with the stats, so there was a more immediate purpose with powering up a character, etc. I'm not fully sure it's exactly right yet, but more about that later.

Because then what happened was I thought "eh, what the heck, I'll throw in a quick animation." I had originally planned to do visual stuff later, but it was a good test to see how I'd do the animations with this simple duel system, so I created a very quick shake when a card is being duelled against:

The dragging is just me dragging it with my mouse. The shake is the animation.


That does so much. I just immediately remembered how amazing animations are. The game just felt lifeless without them.

So... I went ahead and did a couple more:

!!! (Ignore the fact that the cards land in a weird spot there at the end. It's a bug. No idea why it's happening yet :/ )

To be fair, and correct, most of those are Lerps, not animations. but they have the same effect. They're just awesome.
Man, that just did so much to make the game feel more interesting. That simple little "deal animation" where the cards fan out in the player's hand is fantastic (and entirely programmatic, which is awesome).

After that, I created all the possible ways for the player to discover new cards and add them to the collection. It's all stuff like "have this character on this spot, and they'll find the other character" but it's fun goofy stuff that I hope will surprise the player. I won't spoil all of them, because I think some of the fun is definitely finding them for yourself, but for example, sending the Queen to the prison (who drops coins, remember from yesterday she's clumsy) the Thief escapes the prison and becomes part of your deck. And so on. There are quite a few more, and I'll possibly add more in the future as they're quite fun.

Finally, I spent a bit of time thinking about the goal of the game. While I still have it set fairly loosely, I was thinking it'd be better with some sort of... drive or immediate goal, at least for newer players. As it's fairly difficult to see what you're supposed to do outside of "make sure your character doesn't die." Which, as long as you're not stupid, isn't hard.
My grand huge idea is to have some "The Yawhg"-esque final moments where I write up what happened with each character depending on their final stats. But that might be too much. Depends how much I can cheat it. I think I'll try something tomorrow and determine whether it's a good idea.
Otherwise, I was thinking of having something you needed to achieve for the deadline in order to get a "good" (or "bad") outcome, so the player has an idea what to strive for.

But most of the core features are done now I think. It's still rough, and unclear and more than a little messy, and there might be too much... stuff in there. But there's something to it.

That's it for now!


I do.. have a bit of a predicament tomorrow. Most of my day is occupied. Legally. With stuff. I have to go tell some people I don't want to be a part of the Danish Army. Which could, according to them, take up to 6 hours. And it's an hour's drive away from here. Soo... that's less game development time.
Yeah. It sucks. (And you ask yourself why a country like bloody DENMARK still has conscription. And I can't answer you. Sigh.)

Because of this, I might stretch my rules one day and allow myself another day to polish the game up. Especially if that Yawgh thing is possible within that timeframe. That'd be really cool.

See ya!

[EDIT: Ok, let me just make an addendum to that last statement before someone reads it in 5 years and thinks "What the hell?"
Conscription is... fine. It's probably, if we are to have an army, a good thing. I was just a little annoyed at the prospect of potentially losing 4-9 months of my life on something I didn't want to do. Please just ignore it and move on.

But, hey, turned out they didn't even want me! So that was easy.]

Day 5

[I know I didn't do Day 4. Read the end of Day 3 to see why. That's not to say I did nothing yesterday, I just didn't do enough to feel I could write much about it. So it's just fiddled in with this one.]

Phew. Day 5 already?

So, I promised I would be done with the core game features yesterday. And I think I was. They were still shoddy, and the game was still a mess and it was difficult to know what to do, but it was technically all there. Kinda.

Yesterday, I thus spent most of my time implementing the new idea for my ending, which I got late the day before. So, now, when the game ends, you get this fancy screen up, where you can see what happened to each of the characters in the game!

The cards over on the left flip over as you go through each character! Like a deck of cards!

It's pretty neat! I'm not at all sure that this is actually interesting or that players will see half of the endings I've written up, but hopefully that'll balance itself out once I see how far you typically get with characters in an average playthrough, and then I can adjust the ending requirements accordingly.
It's a pretty simple system that just checks if certain variable requirements are met at the end of the game, and if so, triggers a certain snippet of text for that card. But hopefully, it'll have some neat effects, once players realize some of the consequences of their actions. And who knows, maybe they'll even learn a thing or two about the characters?
That's all I'm going to say.

Next! Today!

Today I was a bit of a mess. Woke up late, had trouble focusing, and generally didn't feel great. :/
So I decided I probably couldn't do much feature improvement or bug fixing, because I... well didn't really want to.

Instead, I did visuals!

So, now the game looks like this:

It's not... the prettiest thing ever. It's still not completely done, the white squares etc are going to be removed. But At least now there are no stolen sprites (EXCEPT the King one on the Cards. I am aware. I haven't figured out if I want to do individual card art. Because that'll take some time.)

I went for this sort of minimal style with thick lines and washed out colors, which I'm not completely sold on all the time, but for some parts it works. I'm fairly okay with the cards now, and some of the art on the slots look decent enough.
Hey, I'm no artist, ok? It's not going to be Magic level art here.

Finally, at the end of the day I quickly threw some sounds in there, on some parts, mainly all the card interactions. So now you can here card flips and shuffles and swooshes when the cards move around, which is great.

Tomorrow will be a lot of bug fixing, I sincerely hope. Because there are quite a few bugs now!

Day 7

Day 7! Deadline approaching!

Just getting the final features done! And writing super late!

Oh yeah, and I didn't write one yesterday. Didn't feel like it. And I think that these every-second-day updates have been working fine.

So, final day!


I think I'm going to finalize it tomorrow, by the way.

The game is technically, functionally, done. There are just a feewww things missing. Like that card art. And some other visual niceties. And music (got a friend making music! Excited!) So it'll be up tomorrow, probably along with a more in-depth post mortem and analysis of the game.
For now, I'll just write what I did:

Here's how the game looks now! Progress. Oh, yeah, and there's a better font now. Not the best font necessarily, but it's better than Arial :D

Yesterday I fixed the the last major broken things like the Prosperity system (longer story), and a bunch of the other bugs that I had.
(Oh, I had a fun bug today, btw. If the Jester dies in the first turn of the game in the Castle Wing slot, he'll not disappear from the slot, but just... hang around. Not doing anything. Like a ghost. Only there. And only him. Oh, and I still haven't fixed this yet. Which is annoying.)

And as a final thing, late in the day, I made something really cool: I made individual goals for each character. That means, that when you play as a certain character, they each have a unique thing they want to accomplish. One wants to raise Prosperity of The Kingdom to a certain amount, another wants to trash it, a third might only want to make himself wealthy.

This was beyond a doubt, one of the best late additions I've ever thought of. It was a bit of a pain to implement, as it's basically a bunch of manual if-checks (almost) and some customly written text for the intro of each character, but it's there now and it works like a charm.
This really elevates the game quite a bit, as now there's not only something for the player to actively do, but it changes with each play-through, giving a lot more value to replaying.
For this, I also shortened the amount of days to 7, as I felt it suited the game far better if you had less time. And I'm not changing it now, because I just balanced everything to fit within 7 days!

Today I then added the final piece to the puzzle, that really makes the game interesting to play: You cannot place the same card on the same slot twice.
Since there are only so many slots, and only a few of them which does similar things, it's suddenly quite a bit more challenging to achieve your goals, and you have to plan ahead and use the cards' abilities far more.

The rest of today was spent doing a bunch more visual touches and final art on some of the last sprites I hadn't replaced. Now when you drag a Card around, the slots will change color if you can place them there! Feedback!

And I made a tutorial!
It's not great.
It's there, though.

And I also just realized something fantastic about delegates I hadn't realized before now. I'm not using it for anything, because I made everything before now, but I know it for the future!

And be ready! Tomorrow you'll be able to play a game!

I should probably announce the name, then.
I've actually thought of this from the very beginning, just didn't want to say it before I knew it actually fit the game.
It's called:
Medieval Shuffle.

Kinda on the nose? Maybe? But it works.

Day 47

Uh. Well. There's a lot of mentions up there about a post-mortem blog, huh?

Well. That might still happen! I have around 40-50% of it written, but never finished it.