XaiJu
oakfells

oakfells

patreon


oakfells posts

Update release later this month!

Hey everybody! Someone just reminded me that I forgot to post an update for this month, as it was supposed to be up on the 11th.

This is because I am currently finishing up the side plot content, which was missing from the initial release of v0.4, and am currently expecting it to be out in about a week. So I apologize for the delayed heads up!

In the meantime, here's a sneak-peek for one of the things you'll be seeing soon:


View Post

Cards of Gluttony Dev Log #13 [11/02/2024]

Alright, v0.4.0 has been out for a few weeks, and while the primary purpose of these development logs has always been to keep you all up to date on what I've been up to, I think it wouldn't hurt to do a write-up on everything that's been added for the sake of chronicling the progress on the game. Here we go!

Improving on the Dialogue in front of and behind the scenes

I've done quite a lot of work on the dialogue system the game runs on, from internal things, to the way things look and the way they handle. Let's start with the pretty pictures!

Breathing a bit more life into the UI

The dialogue UI has always looked somewhat barebones, ever since it was added to the game. This wouldn't have been much of an issue if it was just an aesthetic short-coming, however it made reading the heaps of text a little muddled, especially when it came to discerning who was currently speaking. So let's fix that!

(Who doesn't like a good before and after?)

As you can see, I added a small animation to the names coming in, as well as a funky little line behind it that pops in and changes color based on who is speaking!

The color aspect is something that a lot of other visual novel interfaces do, and it's something I've wanted to do for a while, however I didn't want to bother having to assign colors to each character one by one... turns out I didn't need to do that!

(Well would you look at that?)

I've actually been doing it for most of the characters this whole time! You see, during battles, the text that contains the more important information uses bold and colored names to increase readability, and these colors are unique to each opponent. I could've just used the same color info the whole time!

Are these magic tricks as clever as I think they are?

You may have noticed a new option in the settings aside from the "Warn before fight" discussed in earlier logs. This new setting is the wordy "Stop Dialogue F. Forward at Interest Points"... really there was no better way to describe this.

This is something I've noticed while going over dialogue a bunch of time while rewriting it, as well as replaying the game to add new scenes to existing content: there is a lot of repetitive generic dialogue for all the activities. Which is fine, that's just the nature of repeatable activities in a game. However, I ran into an issue where the fast forwarding feature, which quickly skips over all dialogue for replay purposes, ended up being far too convenient. I found myself not only skipping over dialogue I had already seen, but I also new dialogue that appeared when the next condition has been met for a storyline to continue.

The fix to that? It's of course related to this new setting. There are now "interest points" laid out across the various dialogue scripts, which stop an active fast forward. I've placed these interest points mainly at the start of new story events happening, so that it will prevent anyone from accidentally skipping through new things happening.

Is this feature as clever as I think it is? Only time will tell... of course, I also needed to add an option to disable this feature, for people who truly have already seen all of the dialogue and do not want to have to re-activate the fast forward.

And a little something for me

Have you ever wondered how all of the dialogue in the game is actually stored? Have a peek:

model;BorikModel;0.75
model;BorikModel;0.8;0.7
expression;BorikModel;mouth_smile
if;flag;Norman;5;==;0
    say;;Or maybe it could be this guy? Well, now you're just judging a book by its cover, but he did have that [i]rowdy[/i] kind of look to him. He seemed to be minding his own business, enjoying his food as he watched people in the room walk by.
else
    say;;One of the patrons also stood out a bit: he had a rowdy kind of look to him, what with the tattoos and stuff. He seemed to be minding his own business, enjoying his food as he watched people in the room walk by.

if;flag;Norman;5;==;0
    say;;Could it be any of these people..?
else
    say;;... Cedric still hasn't said anything, so you decide to look closer at one of these people.

menu
    Left person.;General;0;0
    Middle person.;General;0;1
    Right person.;General;0;2

(An excerpt from the new main quest.)

They're actually just plain .txt files! As you can see, everything that happens during the scene is written down here: from the text that is spoken, spawning and moving the character sprite, changing its expression, to branching logic and choices. There are a bunch more commands that you don't even see in this short excerpt!

To anyone familiar with coding, you may be asking yourself: this almost looks like a script, what language is this? It's actually an extremely simple scripting language I made up myself for the game! (You could probably tell that from some of the questionable design choices in the excerpt...) As you can see in the use of indents, the syntax is heavily inspired by Python, which was also a large inspiration for GDScript, the custom scripting language that the game engine Cards of Gluttony uses.

Why am I bringing this up now? You see, until now, I've been writing all of the dialogue by hand in a simple text editor, which has worked well enough for a while, but it became very clear I needed to step it up if I'm going to continue working on the game. Which brings us to today:

(UX is my passion.)

This is the one new thing I can talk about in this this log as it's what I've been working on ever since v0.4 was released. You see, a pretty major time sink while working on the new content has been writing all of the dialogue, especially because of the large amount of branching. The script that the excerpt from earlier comes from contains an egregious 762 lines, and that is just for that one scene of the storyline alone.

Combine that with a shoddily designed scripting language without any kind of auto-completion and error-checking, a lot of my writing sessions consisted of me repeatedly checking my syntax manual, writing a chunk of dialogue, and then running it through the game to make sure I didn't make any typos or errors.

If I did anything visual like changing expressions on the character sprites, or animating their movement, I would have to wait until running it in-game to see what the values like positioning and speed looked like. Repeat that every 2 minutes or so and you probably get the idea of just how bad this workflow was.

(I used to have to manually check the file names of each separate facial expression sprite every time I wanted to change them, and without even seeing what they would look like on the actual model, dear god...)

And so I decided I needed to create a tool to help me write dialogue without all of these issues weighing me down. It's still very much in the early stages and I'll have to make sure I design it in a way where it's actually fool-proof and less error-prone than writing them by hand. That combined with the fact that the dialogue system has a ton of capabilities, many of which were slowly added over time, means that this is going to be quite a massive undertaking. It'll be well worth the time though, you might even say it's necessary at this point in the game's growth.

Not quite modding

Now this also brings up an interesting possibility: releasing this tool for public use. Since the point of this tool is to make it user-friendly and convenient, it shouldn't be too difficult for someone other than me to use it. With the way things work, the tool can only be used to create one-off, self-contained dialogue that can be played on its own for fun. Would you be interested in something like that?

This isn't the first time I have thought about letting people make their own custom content for the game though. The occasional shower thought about letting people load in their own art for custom characters has also passed by me from time to time... that might be looking too far ahead, but I just wanted to give you a peek into the kind of random thoughts and ideas I have regarding the game's future.

Significant change to the philosophy of card acquisition and crafting

Alright, after all of that hefty dialogue talk, we could use some discussion about gameplay for a change! And boy do I have a story for you:

All the duct tape has caught up to me

As I added more cards into the crafting pool, I realized something. I've largely shifted away from giving away cards as a reward, opting to instead give materials that then have to be turned into an actual card. This has two advantages:

  • Actually making use of the crafting system. When it was first introduced, I just plopped in most of the cards that were in the game at the time and moved on. However, I later realized that since most desirable cards come as rewards from battles, this was an issue as the crafting system quickly became obsolete. Now it works quite nicely in tandem with the battle rewards!
  • A choice in rewards. You may have noticed in the update that both Norman and Ratko give a crafting material that can be used for 2 different cards. In an earlier update, Arnold did the same thing, except one card needed 2 of his material. In other words, this design naturally lead to a more flexible reward system, allowing the player the choice in which card they wanted.

But here's the problem!

As I added the new cards to the system, I realized something: Norman's watch is the material required to craft one of the two cards it offers. However, seeing Norman's watch on the material list would immediately spoil not only the fact that he was a Fattener you were going to fight at some point, it also pretty much spoiled the entire build-up of Main Quest 3.

(That which would've been a spoiler.)

And so I thought to myself: "Oh, easy! I'll just hide the crafting option until the storyline is finished!" So I did just that, and suddenly something clicked: why don't I do that for every card in the game? A lot of the cards are, in fact, designed for the Opponents first: I tend to think of a deck theme and create cards that work well in combination with each other. Alright, so the idea now is: what if each card becomes craftable after you finish a battle with the Opponent that "introduces" it? And indeed that is the result you can see in the game.

Aside from having a "signature" card that you can only make one of using a special material, Opponents will also unlock "basic" cards that you can create repeatedly without needing a unique, limited resource. And so, as you progress through the game, the crafting menu gets slowly expanded with more options, which also adds a really neat sense of progression, while at the same time keeping the pool of cards smaller at the beginning to avoid overwhelming the player.

And that's it!

Turns out I had quite a lot to say, because a lot of thought had gone into the many changes that took place within this update. Seeing as all of the new cards are already visible in the update, I'll skip out on the Card of the Month this time.

You probably already know how I end these by now: thank you for reading this and supporting the project!

View Post

🎉CoG v0.4.0 Early Release!🎉

[30/01/2024 Bug fix update v0.4.0a]

Phew, I'm very sorry for the wait everybody, but it's finally here!

Ah hell,  yet another mirror. Back to Google Drive it is... Hopefully third time's the charm..?

And here's the text documents such as Patch Notes and Guides:

An important warning: there is a character in one of the branches that is implied to have a potential eating disorder, so check the content settings if that's relevant to you!

I wasn't actually able to finish everything I wanted to for this release, but with the update already so far delayed, I decided to just finish up what little I had done and release at least this. You can check the patch notes to seek out specifically which events have been added.

You can expect a few smaller updates for the next month or two where I add continuations to existing plotlines that really should be here alongside the new part of the main quest. This is also the reason why this update only goes up to Day 20 Month 6, rather than going the full Month.

There is also a ludicrous amount of branching in all of the content that's been added, which is the main reason why it all took so long. However, that also means that it's very possible there are broken sequences for highly specific situations that I forgot to cover, so if you happen to run into any of these, please let me know!

Alright, thanks for your support everybody and enjoy!

View Post

No development log today

Hey everybody! Similar to last time, I'm going to skip out on this month's development log so I can focus on finishing up work for the upcoming update.

You can expect it to be out about a week from now on! Thanks for your patience.

View Post

Cards of Gluttony Dev Log #12 [11/12/2023]

Update's not ready, let's talk about the state of things!

Well we're nearing the end of the year and the update is nowhere near ready for the public's eyes, so unfortunately, as I mentioned in the previous log, the next release will have to wait until next month!

As I've mentioned a few times in the previous logs: there has been quite a lot that had to be done this time around, with the upcoming main story plotline being more involved than previous ones (if the three new character sprites from last time weren't enough, we have even more now!), in addition to the many other characters that have ongoing storylines. Originally I figured I would be able to add a new part to every plotline currently in the game, but it seems some might have to wait until next time.

And to give you a bit of a peek into the personal side of things: I've also been quite busy with life for a slew of reasons, among one of them being my final year at my university, meaning I've been finishing up a lot of leftover baggage and also starting work on my bachelor's thesis. I've found plenty of time to work on the game for the most part, but these past few weeks have been a bit busy as the end of the semester is coming closer.

That's how things are going currently, and now that you've been caught up, it's time to see what I've been up to!

The small things

In a game that's all about getting HUGE, sometimes it's the small details that ultimately make it nicer to play... yes it's time for another Quality of Life thing!

(No more having to go back to your wardrobe!)

There is now a new checkbox in the shop that allows you to automatically put on the clothing you buy, so you don't have to go to the wardrobe every time you get a sweet new fit. This is particularly useful, because since you do actually lose your clothes when you outgrow them during battles, you'll now be able to just head to the shop and put it right back on after buying it.

This is something that I've thought about while I was implementing the shop, but never got around to doing, so we can check that off the list now, phew!

Oops all character sprites!

Aside from the writing aspect of things, which are mostly unexciting to show here unless it would be some spoilery parts, a lot of work has to be done on the character sprites that will show up in the upcoming content!

Let's start with something we're familiar with

(Remember this guy?)

Say hello to Brody (he has a name now)! In the previous log, he appeared alongside two other new characters in a screenshot pertaining to the pub quest.

I've been back on my fattening shenanigans, with Brody here being the first of the three. The other two will have to wait their turn, but rest assured I'll get around to working on them at some point as well.

There's still a few more stages to be done, but seeing as he was already nicely rounded out to begin with, there's ultimately not much more left to be done. Aside from the extra pudge, I've also given him a slight redesign by adding a nose ring because... I felt like it? Character design!

Here comes the big one!

A new challenger approaches! I might be getting more elaborate the character art, especially when it comes to the clothing design. With this guy, I've also done a variation where he has his hoodie up, which will come in handy during the scenes he appears in... you'll have to see for yourself what that means once the update comes out.

More, we need more!

Considering I enjoy drawing fat men (and mostly only fat men), it's probably no surprise that I am much less proficient at drawing women. Which is why it's always a nice exercise when I get around to doing something like this and I'm quite happy with how it turned out.

Until now, the only people who seemed to work at the Stout Group (aside from Gordon and the hospital staff) were the Player and Cedric... so let's fix that! Allegra here will be one of your fellow Fatteners that works at the Stout Group. She will make her first appearance in this upcoming storyline under certain circumstances.

Alright, last one!

(Ratko appears!)

The final one of the characters that I needed to finish for this update, I can finally rest on the art department... right? Well, there's still several characters that need their additional weight sprites done, so there's still quite a lot of work coming up, but at the very least no new faces should show up for now.

As for Ratko himself, say hello to the guy that's been cooking all of those indulgent meals you've been having during your time in Plursdott. That's right, Ratko here is a chef that works at The Bantering Gull and seeing as this upcoming plot is centered around the pub, it only makes sense that we would have someone like this appear.

Alright, that's the bulk of this month's devlog. As you can see, most of the work done was on the creative side with writing and art, so it's time for a bit of a breather and move on to...

Card of the Month!

Sugar Rush
Double your current Energy (pay cost after) and draw 4 cards. You get 0 Energy at the start of your next turn.
"Over-indulge in all that is good, but it'll come back to bite you in the ass later..."

(Don't mind the mismatched effect descriptions! I just realized while writing this segment that the original wording could be a bit misleading.)

Now here's a card that could really mix things up! As you can ascertain from its effect, it is meant to be used as a sudden and quick boost, with the caveat that you will miss out on your next turn... well, not exactly, you'll just have 0 Energy to spend, so there might still be things to do.

Outro part

And that's it! I should have a lot of time to work on the game during the holidays, so I'm hoping to do a real deep dive and catch up with a lot of the work that I've fallen behind on.

By the time the update or perhaps the next log is up, it will already be next year, so... happy holidays, happy new year and any of the other things one might celebrate, and as always, thank you for reading and for supporting the project!

View Post

Cards of Gluttony Dev Log #11 [11/11/2023]

Hello to you on this very auspicious date, we got Triple 11s and so it's time for another dev log! Today we'll talk about a new feature/mechanic I've been working on, a revision of an existing game design choice, as well as quite a lot of character illustrations for many new faces. Let's start with what we already know about:

Work on the Pub Quest continues!

A bulk of my time has been dedicated to art (as usual!), especially since there will be quite a few characters introduced in this questline! Here's a snippet from one of the scenes, featuring 3 new characters:

(Pay no attention to the date, that's just debug values!)

Look at all these new people! Now, they won't all necessarily be relevant or crucial to the plot when you first see them here, but they are all characters that will appear in other plotlines. So this will be a sort of foreshadowing/cameo, that'll give you a <Pointing DiCaprio meme> moment when you happen to see them later!

I tried to pick a line that would be vague enough to avoid spoiling anything, but offer enough intrigue to allow for some speculation. Any guesses as to where this is going?

(Here's a background for a change of pace!)

While writing the scenes for this upcoming storyline, I've realized that a lot of them could really use an exterior shot of the pub (it would also be neat for use in the already existing scene where you go here for the first time with Ikem).

As you can see, it's still in the early stages. Just like with the bakery and bar backgrounds from the previous update, I've set up a simple 3D scene to use as a base. As time has gone on, I've actually found myself being more meticulous with all of the art that goes into the game. It's quite noticeable if you compare the Player/Cedric sprites to... well, any other character really.

It's time for a new mechanic!

You know, I should should stop saying "the game is feature complete, we're moving on to only creating content" in these posts, because as soon as I say that, I run into exciting new ideas and things that I want to add. Let's not dawdle, have a screenshot!

(Featuring a placeholder Cedric as to not spoil the actual context of this moment.)

Now what is going on here? Let's set the scene first...

You're just idly browsing the internet when you hear about this gainer game: a card game, where the main conceit is that you make your opponent fatter using these magical cards. You think to yourself: "Huh, that's a pretty intriguing premise," so you play the game and find out there is an entire narrative wrapped around it. There's these "Fatteners", running amok, causing chaos and making others fat against their will, just for the hell of it.

In this narrative, you're the hero: you step in before they can get out of control. Not counting friendly sparring matches, you pretty much only fight after being provoked. But what if you want to be a menace like all of those troublemakers and just run around, getting the whole town bigger and fatter?

... that's right, you're looking at a screenshot from when you use The Fattening on ordinary people. Now, it wouldn't be very fun if you were allowed to just go all out with no fail state, so instead these "battles" will feature unique scenarios that recontextualize the way the card system works.

Let's get a bit more into the design decisions behind this:

  • Since your Opponent has no way of fighting back, you're instead fighting against time, or rather a limited amount of turns.
  • Instead of relying on your Wgt, your card draw and energy recovery is static and based on your Opponent. This is so that the difficulty isn't dependent on your current Wgt. It also allows for unique situations that get you to think about how these two values work and interact with each other.
  • And the thing that this entire system hinges on: Special Conditions. These will be a unique set of effects specific to each Opponent that will change the rules in fun ways to breathe some variety into the way the card system works.

In the screenshot, you can see the Special Condition is "Discard you entire hand at the end of each turn.", sounds a bit spooky doesn't it? That is until you notice that you draw an entire hand: 7 cards per turn. This gameplay dynamic has been brought to you by my recent time playing "Slay the Spire", a rogue-lite card game that is works in a similar way. Hopefully that gave you enough of an idea about how much potential this system has for interesting mix-ups of the existing battle system.

No promises on whether this will evolve into anything bigger, like an evil/good split based on your choices, but at the very least, this will allow me to write a few more diverse conflicts than a simple "The two of us will fight now."

However, that's not the only gameplay related thing I want to talk about today!

The fine line between convenience and discovery

Here comes the big game design discussion segment. Remember how the Darwin fight used to catch you by surprise when all you wanted to do was just go fishing? And remember how that particular problem was remedied by adding a warning to the start of that scene that allowed you to dip in case you weren't ready?

(You know, this thing.)

Well, some of you might do... but in any case, ever since that happened I've put that very same warning before every fight in the game. I knew this was going to be potential problem when I first wrote that scene with Darwin, but I decided to keep it like that. It was only after some feedback came in that I decided to fix that... so why did I leave it like that originally even though I knew it could pose a problem? The answer is variety.

It was a fun way to surprise the player who didn't expect to just run into a battle when visiting this simple, inconspicuous fishing minigame. And because of the nature of the game, it's not a necessity to win every fight (we've already talked about this at length in previous logs, so I won't go into more detail.) Of course it also presented a situation where it could feel frustrating if one came in unprepared. But that was all part of the fun: some people might've had a harder or easier time with it depending on when they triggered the encounter.

But now, with this solution, a new problem arose: it feels a bit stiff and artificial.

When you entered the shop to get the cinnamon, something you might've done several times by now, you probably didn't expect anything to happen, right? But then, suddenly a big ole warning popped up that told you "Watch out, something new is going to happen!"... a fight, that's literally the only reason these warnings show up. Not only did it remove the element of surprise, it also spoiled what was about to happen. Even the writing is a bit forced, almost like a sixth sense kicking in out of nowhere.

However, I understand that it's still a matter of sacrificing quality of life for the short-lived excitement of surprise, so in the end I came to a compromise: a setting. With this, you'll be able to turn the warnings on and off. I'll leave it off by default, which will lead to a non-zero amount of complaints, I'm sure. However, I do hope that people will try to play through the game at least once without warnings for that sense of discovery.

Seeing as several of the tutorials in the game point out the many settings available in the game, I thought most players would've checked the settings menu at some point, but apparently not. Many people weren't even aware it exists. So now the question is... where should I let people know that new this option exists?

Card of the Month!

And after that long rant about game design, let us look at the last piece of this month's post. Last time we had a draft, and since then, a few of the cards in the works have had some time to ripen!

Don't end up like that
Every time your Opponent gains Wgt, you gain +1 Fit (regardless of amount) (5 turns).
"Seeing all those fatties struggle is great motivation to work harder so you don't end up like that."

This was just about the first time I've had trouble coming up with a proper name, here's some other ideas I had:

  • Cautionary Tale
  • Motivational Example
  • Wake-up Call

Compared to these, the final title is... quite straight to the point. Do you prefer any of these over the one I ended up going with?

Actually, the absolute first draft had the card named "Contrast", however, looking into my notes, I found out that I already had an idea for a different card called Contrast. So I decided to just rename this one instead

And here go the closing words

The previous updates have taken about 3 months each, and so I've been aiming for the same with this one. If things go according to schedule, this means that the next update should come out sometime in December.

However, I've found myself under quite a lot of workload, what with all of the side characters and their stories that need to run concurrently, not to mention the main quest, which is shaping up to be the biggest one yet. So we'll see how things shape up once December comes around, but I figured it would be a good idea to let you all know how things are going!

And with that, as always, thank you for reading and for supporting the project!

View Post

Cards of Gluttony Dev Log #10 [11/10/2023]

After a bit of downtime to recover after releasing 0.3, it is now time to get back on the grind!

This is pretty much the first time since the game came out that all of the systems are in place, so I can finally focus on writing and adding more content to the game instead of juggling it at the same time with programming and implementing new features.

Next up on the chopping block

There are already quite a lot of characters in the game, and for a lot of them, it's always been the plan to have a battle with them. The biggest time sink for this has always been the creation of all the sprites for the various weight stages, and so most of the characters only have the one sprite, with the rest being done once I get around to actually implementing their fight itself.

And so today, I bring you a preview of the next character to get some extra mass: Norman!

Is Norman already a Fattener? Why would he even challenge you to a battle? Or did someone else do this to him? You'll have to find once the update comes out, but I'll let you know at the very least that this will occur as part of the next job you do for the SG. These are intended to be the main storyline that drive the overall plot of the game forward, a main quest of sorts!

That's not all!

It's the return of our favorite rude boy, Cedric! (questionable)

Only having that measly 16 Wgt limit during the first fight, it's about time we got to see this guy really start to blow up. This is him at 24 Wgt, by the way, and he's likely going to have at least one more stage before I'm calling it enough.

When I first wrote Cedric, he was intended to be a recurring rival of sorts. I didn't manage to fit him into any of the events that happen in 0.3 (except for a short cameo at the gym), but rest assured, he will enjoy a triumphant return in the upcoming storyline.

As a bit of a behind-the-scenes note: Cedric was, alongside the player character, the first sprite drawn for the game: meaning it is nearly a year old. Before then, I had not yet figured out a proper workflow to efficiently make them, so it was quite a surprise to open up his file after all this time! You can even see the background is a blue-ish tint rather than the gray. Rest assured, a bit of organisational work and editing had to be done to bring his sprite files up to par with the rest of the models!

In news unrelated to making guys fatter

The initial release of v0.3 had a small, but lightly entertaining bug when you invite Beau to go to the gym together: it just... cut off after you asked. What should have happened instead was a short message that it isn't finished yet, and this has since been fixed.

And of course the reason why I'm bringing this up is because I've started making headway into implementing that. The first thing on the agenda? Giving Beau some exercising clothes!

Similarly to you, there's no way the same set of clothing can fit him across the entire range of weight he can be at, so he'll have separate clothes for when he's slimmer and for when he's bursting at the seams! Plursdott stores should really start stocking bigger sizes though...

And to mix it up, an unfamiliar face!

This one's even framed against an actual background in the game instead of floating in the gray void of work-in-progress!

Who could this person be? What's their deal? Well the only info I can tell you is that this is related to this upcoming main quest! Most of the outline for what happens in this quest is roughly done, and so far it's looking to be the longest one compared to the forest and bakery events.

And perhaps the only non-art related news in this log

I'll be adding a setting for flipping between metric/imperial measurements in the game.

"But wait!", some of you might be thinking, "the game never shows you any specific numbers for weight does it? It's just... Wgt."

I chose to use Wgt over any actual measurement unit because it allows me to write all the various dialogue without having to worry about accurately reflecting the weight... and it would also be quite a nightmare to have to think about converting between metric and imperial, especially when it comes to the actual card game with very specific numbers.

That being said, there are still mentions of weight in dialogue and flavor text, you may have noticed the flickering between the use of both pounds and kilos in the many lines of the game. Well that was just a compromise, seeing as we use metric where I'm from, I still found myself liking a lot of the gainer talk more when using the word "pounds" (must be something about the mostly US-centric gainer content I've read over the years!)

To make it not too strange I actually tried making the use of kilos/pounds consistent with each character - leaving it as a matter of preference for individual characters. I guess this sort of works, but I'd say I was mostly overthinking it. A more standard consistency that a settings option provides will be better in the long run.

Oh no I forgot about the Card of the Month!

Hi, hello, so I've added this section here at the last minute, since I completely forgot about it! However, I haven't added any new cards to the game yet, so this month, we'll have a look at one of my drafts instead!

Pin down
Opponent recovers 1 less Energy for every 12 Wgt you have (3 turns).
"Hard to move around when you're pinned down by all of my fat on your face, huh?"

That flavor text is quite spicy... when I wrote this idea down, the intention was to have it be part of Gordon's deck when you finally get to duke it out with him. It might be a while before that happens though, as I definitely want to build up to it quite a bit.

Insert end here

And that's all I have for today! As I said at the start, since I am now moving more into writing and adding more storylines, these logs will likely start looking more like these sneak-peeks going forward.

I'll avoid talking about any actual spoilers: you can tell I tried to be mostly vague when it came to what these will be used for. But who knows, maybe some of you would prefer if I got more into detail about what's going to happen?

Either way, as always, thank you for reading and for supporting the project!

View Post

Fun Facts & Behind the Scenes - CoG v0.3.x

As I get started on v0.4 content, it'll be a bit before there's enough to talk about in a Development Log, so it's time for some fun details and facts regarding all of the things I crammed into the recent update!

I'll start this one off by giving you a warning about some mild violence, there will be a few screenshots with Darwin's bruised face that happens during the fishing storyline.

And with that, we're all set to go!

Let's start off with some smaller things

The title screen

In the previous version, the title screen featured the river where you go fishing. The time of day changed between the three phases in the game and was determined by the clock on your device!

In v0.3, the title screen now changes between the two new areas: the bakery and the bar. With the bakery appearing during the day and the bar during night.

Hey, we're getting paid!

I fiddled around a bit with how I wanted the paycheck get delivered to you. It felt a bit odd to just add the money without any notice every time the month rolled over. How about a short bit of dialogue after waking up? The player could be recovering at the hospital when that happens, meaning they completely miss out on it!

In the end, the solution I settled for does require you to go out of your way and pick it up, but I suppose it makes the money gained feel more tangible, and it does happen only once per month. As an added bonus, I'm quite happy with the sound effect I got for it, making it very satisfying to pick up.

And as a fun detail, even if you somehow forget to pick it up and leave it on your table all month, the second paycheck just gets added on top of the old one, so you don't just lose all that money!

Here's some unfinished business

Among the new cards added to the crafting list, two of them require 'Half-drunk beer', which is an item drop you get from beating Arnold. Both of the cards are actually used by Arnold himself, so the Beer bottle is a bit of an extra step to the process, rather than simply awarding you his cards. It also gives you a choice of sorts regarding which of his cards you want.

The first card you can create in v0.3 already, but since the other one requires two of them, that means you'll have to save it for after you beat him a second time... but since that encounter isn't in the game yet, if you plan on getting your hands on it, save that beer bottle for later.

Speaking of the Arnold encounter

This encounter has very specific trigger times - it only appears at night on Wed/Sat/Sun. Now night makes sense, he's drunk from hanging out at a bar after all, but what about those somewhat specific days? This is another case of the narrative intermingling with the gameplay!

During that encounter, you meet the bartender. A bit of conversation later, you find out that he's a teacher and it is insinuated that he's working part-time at the bar to make ends meet. Hence him only having the time to be there on weekends and the occasional weekday.

Since this encounter is meant to be both a revisit of Arnold and an introduction of the bartender, this condition makes sure the encounter doesn't happen on times that don't make sense with his schedule.

Did you also notice? The bartender never tells you his name during that entire conversation, you never do either, actually. However, if you've peeked at the Model Viewer, you'll find out that his name is Edgar!

Some variety in the way things play out

The conversation you have with Gordon about what happened at the bakery can happen in one of two ways:

  • You just go to his room and talk there.

  • OR, if you hadn't finished the crafting quest with Ricky, since you run into Gordon at the end of that, the conversation happens there instead.

This was completely unnecessary extra work (and I'm pretty sure no one will ever see the second case?), but I just thought it was a cool detail in which the conversation is brought up in an organic manner.

Details during the fishing storyline

There are two ways the 2nd encounter with Darwin can play out, depending on if you win or lose. If you win, Darwin gets kicked by Ted and loses his hat. You then pick up that hat with the intention of returning it to him later - the hat is an actual item in your inventory during this!

(Here is its entry in-game!)

Either way, after the 2nd encounter, Darwin will no longer wear his hat, seeing as he gives it to you instead - regardless of if you won or lost. His attitude when he does so, however, is significantly different depending on what happened.

Actually, you know what? Why don't you keep this old thing? Err, yeah, that's a little weird, isn't it? Figures... but I, uh... I don't know what else to give you.

(Snippet from if you won the battle.)

Oh hey, I know, why don't you take this? It's my favorite hat, see that? "Big Catch". I was thinking that fits a stupid, fat pig like you more than me anyway, haha!

(Snippet from if you lost the battle.)

Bruise talk

Darwin also gets a bruise on his face during the encounter. However, if you lose: seeing as you aren't there to calm Ted down, he ends up giving Darwin an even more intense beating. These bruises also actually work in "real time"!

(Whoa, cool bruise technology!)

The bruises change from looking freshly red to a purple after the encounter. Currently you only see Darwin again during the first fishing encounter, at which point he'll still have the bruise unless 18 days have passed. 

And regarding a certain scene...

I really stretched my gainer fic muscles with that cake eating scene with Russell. To accommodate for the fact that the player needs to be able to gain all that weight, Russell only moves in once you're below 24 Wgt (on top of a 7 day wait). This means you will always have the capacity to see it through to the end! There's a similar condition for the bakery scene, however in that one, you only gain 1 Wgt, so despite being highly unlikely, if you walk in with 53 Wgt, the game will just say the bakery is closed.

Another fun detail is that you can see the gradual growth you experience as the scene goes on if you check the Status window regularly. This actually also happens in the scene you get if you manage to beat Vernon in the forest! 

Oh god, oh so much text

And by that I am referring to the Arnold encounter specifically: both the battle dialogue and the usual dialogue itself. Since it's the first time I got explicit with the text, it was time to also write alternate text for people who don't much care for it.

In this case, there were two alternate cases I had to consider: the kind of words used, which the player can disable in the content settings, and whether the player is interested in Arnold. The second case is the reason why you get that certain choice at the beginning of the event, it's basically me asking the player if they're interested.

To give you an idea: there are about 11 sentences/small paragraphs in the battle dialogue that had to be rewritten to take all the various settings into account, with of course a few branches of text simply closing off afterwards if disabled.

And that's it

Writing these is honestly one of my favorite parts of this project, since it's quite fun to run into and think about all these intricacies and details as I work on the game, and I'm always excited to share them and see if anyone noticed.

As always, thank you for reading and for supporting the project!

View Post

Cards of Gluttony Dev Log #9 [06/09/2023]

[First off, the minor update, v0.3.1 is now out, so you can let that download while you read through this.]

Alright, I've finally gotten around to writing this up. Since v0.3.0 has been out for a bit, I can now talk a bit more in-depth about everything I've added without worrying about keeping quiet about certain things. This post also refers to a few things added in the 0.3.1 minor update.

You know, I now realize that this post is very long, so buckle up.

The art department

The most time-intensive part of the game is probably all of the art assets it requires, from the many sprites required for all of the characters, to card art, and of course: background art.

I am personally not much of a fan of drawing interiors, and especially with the amount of art that has to be made alongside all of the other work on the game, I am in fact working smart instead of hard. Take a look:

Here's an interesting shot from development. Do you recognize what it is? Probably yes, because the answer is quite literally right below this text...

It's the bakery background used during the Russell plotline! What you just saw above was a simple 3D scene made in Blender, used to lay out the room and various pieces of furniture, as well as setting the perspective. You'll notice it lacks a lot of the detail and props that appear in the illustration, since there's very little reason for me to model something that won't be seen in the final piece.

This isn't actually the first time I've used this workflow. I've made models for the Player's Room, Gordon's Room, Pub, Bar and even the Stout Group badge.

Well... this one wasn't a necessity as much as it was me just messing around and having fun with 3D modelling.

We're already doing balancing changes

Stepping away from the art and looking at the gameplay now: this is the first update that has made changes to some of the cards! There is actually quite an interesting story behind this.

(Some of the cards that received changes.)

Probably the most notable one is all of the ENERGY cards. I've increased the numbers so that you now gain 2 Energy, instead of the old 1. Now, I don't know if anyone even used these cards before... I definitely didn't myself.

However, I would often try to put them in the opponent's decks. I could never it to use them properly... Now a big part of that is probably the AI code, which simply tries to check if the extra energy would allow it to play additional cards it wants. Honestly the entire opponent AI code is a big mess, but I won't bore you with the details.

In retrospect, it turns out the reason they never used them was because... they were just plain bad. Well, I won't deny that the AI code is still badly written, but in this case it made me realize that the reason the AI avoided using the cards is because it almost never made a difference - the numbers weren't worth it. Which was quite an awesome moment of realization for me: this program I wrote highlighted a short-coming that I wasn't able to notice by myself.

Aside from ENERGY cards...

Another interesting change was done to the 'Unfit' card, which used to cost a whopping 2 Energy for a measly output of -2 Fitness. At that point, you might as well just use 'Menu for two' which would remove the 2 Fitness while only costing 1 Energy. Not anymore! The new values are Cost 0 for -1 Fitness, essentially making this the DEBUFF equivalent of the 0 Cost 'Feed' card. Frankly, looking back on it, I have no idea why I made it so inefficient.

And finally 'This hand sucks' has been changed to have a completely different effect. While it used to shuffle your hand into the Deck and draw 4 cards afterwards, it now draws back the same amount you had in your hand, basically shuffling out your entire hand. I feel this is more in line with the presentation on the card, as well as making it more useful.

I initially wanted to avoid this effect because I thought that it would be too powerful. Now that I've had some more time to play around with the intricacies of the battle system, I continue to find that small decks are far too powerful compared to big ones, which have to heavily rely on luck and inconsistency. This card barely had an influence on small decks anyway, since they tend to draw the same 5 cards. Now it gives bigger decks more leeway when it comes to RNG, so consider this another step in the continuous push to encourage the creation of bigger decks with more variety than small ones.

New gameplay stuff?

Of course, tweaks to cards isn't the only new thing. Perhaps the most interesting system to work on was the Item Crafting.

If you've reached this part of the game, you'll note one very interesting difference in this system compared to card crafting, and that is the use of ANY ingredients. Item farming, particularly fishing, was added in the previous update to facilitate card creation. There was one big problem though: card crafting occurred rarely, and after obtaining all desired cards, the player kept on accumulating materials with no place to spend them.

And so I came up with this solution. This system not only lets the player get rid of those leftover items, but it allows them to do so without having to use any specific one. Have too many fish? Doesn't matter which, you can use any of them here.

I've had this system in mind ever since I added all of those items in v0.2.0, but I've been putting it off, as it felt a bit programmatically daunting. There was also the matter of making sure the UI wasn't tedious. Especially since this menu is something the player will be accessing very frequently, I was worried having to select the materials over and over again would become annoying very fast. The proposed solution? Auto-Fill, which selects the materials for you.

Looking back at it, was it as hard to implement and design as I thought?.. maybe. It was definitely an interesting feature to work on. With this system, we have now addressed the sleep-inducingly slow pace of losing weight (in addition to help from the gym buddy system!)

Time to pop those buttons!

With the 0.3.0 update, a Plain Shirt has been added to the shop. However, as I've had time to polish up the rest of them, the 0.3.1 minor update adds three more variations. Feast your eyes on this:

Since the bulk of the work has been done in drawing the base images for the shirt itself, adding some patterns or color variations on top of them wasn't too much work. I will likely be adding even more to this line-up, so if there's any pattern in particular you'd like to see, definitely let me know! This isn't the only clothing option added though:

More accessories!

There are three more glasses options, as well as a beanie! There is also one more headwear added to the game, although you'll have to do more than just stop by the shop to see that one!

Putting the "role-playing" in role-playing card game

An interesting choice you might've noticed is after you beat Russell, when he invites you to his bakery. You're given the option to just accept, or note that you have certain dietary restrictions.

The wording is a bit vague for the sake of encompassing a broader scope, and in the grand scheme of things, the choice doesn't really change anything other than some details in the dialogue.

However, since I practically made the player character out to be a sort of self-insert for people to experience the world of CoG through, I felt it was important to have options that allow you to define yourself.

Other such choices are: when Beau asks you whether you smoke and when Edgar/Ted offers you alcohol (fun fact: the game only asks you about this once, depending on whichever scene you run into first, and remembers that information from then on!)

In similar vein, if you've gone through some of Beau's and Ikem's plotline, when they come out to you, you might notice the wording doesn't explicitly ask you if you're gay. Well... I myself am a gay man, the game itself is very gay, and I assume the main demographic for this game are other gay men. But of course there's a lot more nuance to the way people can feel about themselves, so I hope I managed to accomplish even a little bit of what I set out to do with that.

Let's talk even more about inclusivity

This is a fun area of discussion and something I tend to think about a lot when writing for Cards of Gluttony. Of course, I'm not the paragon of inclusivity and I'm sure there's a lot of things I might've missed already. If there's any aspect of the writing which you feel could use a change like this, I'm as always open to all feedback!

Here's a fun bombshell to just drop on you: one of the characters in the game is a transgender man. There's no confirmation for it in-game yet, so you'll just have to take my word for it until I get far enough in writing their plotline. And just to get it out of the way: we most definitely support Trans Rights here. If you are a transphobe, you are not welcome here.

For quite a while now, I've been wanting to add a "trans" option to the character creator, but so far, I've only spent a lot of time worrying about how I would handle all of the things that would need to change, especially a lot of the text. If you're trans yourself, or know any trans people who have played the game and would be willing to consult me and help in the writing of things surrounding this topic, feel free to reach out to me!

And now here's some other stuff at the end:

If you use the Free Battle mode, you'll notice the new UI for opponent selection, now featuring a selectable set of builds. These are the different setups that your opponents use as their plotline progresses. However, there's some work-in-progress available here as well.

Russell is among one of them, as you can see, there are 3 builds available for him. The deck is still unchanged for now, however you can see that it sees his max. weight going all the way up to 60. That is the weight he gets to during the story, actually! There is even fully written dialogue for this fight (as well as an actual lose variant, since the fight during the storyline doesn't allow you to lose!). So if you haven't checked that out, you might find something fun.

Save Data Management

With the minor update, I've added the [Data Management] button to the title screen. This new menu will let you export and import save data between devices, as well as open up the folder that contains the game data files!

Of course, this will be useful to people who want to transfer their save files (especially those playing the web version, I lied and this one will be the final web version, labelled "Web Demo Version"). However, this will also be incredibly useful to me while diagnosing bugs! As now I won't have to ask everyone to manually go into strange, complicated folders on their computers.

Are we still doing Card of the Month..?

Well, there's nothing new to see here: all the new cards can already be seen in the update, but I should keep this format going. It's a nice way to cap things off anyway! Here is our card:

Very aptly named "Defeat Enthusiast", this card has been added to the crafting pool, requiring... absolutely nothing to make, it's free. This card is basically a fast and simple way for you to lose a fight if you want to see what happens! And the illustration and all the flavor text even changes on the "Defeat Enthusiast*" card that you gain after using this one.

This sort of coincides with the addition of "Odious Zest", which is the material required to make DEBUFF cards. In what I'd say is a somewhat bold game design choice, you can only obtain this zest when you lose battles.

That's a great segue to talk about "winning" and "losing"!

Since the tutorial encounter in the forest is scripted in a way that has you losing by the end, every playthrough will always gain Odious Zest for the first time there. I know some players have gotten frustrated at what seemed to be a massive difficulty spike, when it was in fact intended to be a challenge where victory is optional. This actually applies to every fight in v0.2 - save for the tutorial fight.

Most notably, the fishing storyline has significantly different dialogue depending on whether you won the first and even second battle. There would be a very strange dissonance if losing locked you out of continuing the storyline, so... it simply doesn't. The dialogue and details may differ, but I've made the effort to avoid taking away content in case of losing a battle.

Now that I've sold you on that... in v0.3, there are now some battles that require you to win to proceed, but I hope that the addition of this Zest communicates to players that you're not expected to win every single encounter.

And with this being a retroactive change to existing content, older save files do get properly compensated for this accordingly. 

And that brings us to the end!

That was quite a lot to talk about, but it's always fun whenever I finally release a new update, as I can freely discuss all of the things that have been added.

As always, thank you for supporting the project and thanks for reading!

View Post

🎉CoG v0.3.0 Early Release!🎉

[06/09/2023 Minor update v0.3.1 released!]

[25/10/2023 Public release + bug fix v0.3.1a!]
There was a pretty glaring bug with Scrap Clothing disappearing (which is the last resort if all your other clothes get torn), this should fix it, as well as restore them if you were affected.

[26/10/2023 v0.3.1b, even more glaring bug fixes]

CoG update! Come get your CoG updates right here!:

Dear god that took much longer than I'm happy to admit. With this update, I've added a bit of new stuff to most of the ongoing plotlines in the game. So much like the previous update, it might take a bit of exploring to really see everything I've added.

This, time, you'll notice the new "Guides" folder, which is still largely work-in-progress. For now, it contains simple text files I've written out for some of the characters and the conditions required to advance their plotlines, as well as a datasheet with each character's schedule - the days they're available. (Spoilers, of course)

For those who are part of the 'Actual benefits' tier, the new password has been edited into the same old pinned post.

With the amount of things I've added, this time I figured the time limit could be a bit more lenient, this version's time limit is currently the beginning of Month 6, meaning you have about 2 months of in-game time to play around with, which from my experience should be more than enough to see everything.

There have been a few small tweaks to existing dialogue in the earlier parts of the game, so if you care about that, there might be something fun for you if you start a new save file.

There aren't any big new minigames like in v0.2, so hopefully there aren't any glaring game-breaking bugs such as the jogging crash? Hopefully? Please? If any crop up, I would assume they're most likely sequencing issues regarding all of the scenes I've added for the various storylines. If you run into any bugs, you can of course post about them here or in my DMs.

And with that, I am now going to go pass out on my bed. I will look into any potential bugs once I wake up in the morning, so with that: thank you for your support and have fun!

View Post

No Development Log today

Hey everybody! Around today is when there should've been your regularly scheduled development log post.

However, as we've been nearing the release of the next update, I intended to release that instead and publish a development log a bit later. Unfortunately, I'm a bit behind schedule with things, so that didn't exactly work out.

I've decided to forgo writing up the log and focus on finishing up the update instead. So with that news, you can expect the game update to be out within the next few days.

Thanks for your patience, everyone!

View Post

Cards of Gluttony Dev Log #8 [20/07/2023]

Hey, do you know what day it is? That's right, it's devlog day!

Before we start, it occurred to me that I hadn't officially announced the results of the previous poll regarding release frequency: the results were largely in favor of continuing the slower releases so that's how things will be going forward!

Frankly, that was the result I was hoping for, but I wasn't sure how people would feel about it, so I'm glad everyone's been understanding. Thank you all for being patient, because as it turns out: making video games is a lot of work.

Alright, now back to the game:

We have more Character Customization!

Okay, I may have gone a little overboard with this, but we have even more character customization stuff! Feast your eyes on these facial feature options!

(Honestly the eye options are so subtle you can't even tell the difference...)

And since existing save files didn't have the luxury of picking these options, I've added an Edit Character option to your room at the SG so you can access these new options in old save files.

Next up we have even more character customization news:

Some of you might remember the first development log, where hairstyles first showed up. In that log, I mentioned that I am unlikely to do the same with beards as they would require a sprite for all the weight levels.

Well that was a lie.

We have beard options now!

It may or may not come off as a surprise, based on the many characters in the game, that I am something of a beard enthusiast... so despite all of the work it would take, I really wanted to add some beard options in.

If you take a look at all of them, you'll notice they're actually just derived from the original beard sprite, with some sections just erased and a few slight tweaks. This is how I was able to make all of these without losing my mind drawing so many frames.

I'm also pretty happy with how the Shadow turned out: it pairs pretty well with the main options for some nice variety.

Now onto actual gameplay stuff

Who doesn't love a good narrative-to-gameplay connection? I sure do and there is a part of the game that's just begging to do so: the exercising minigame!

With Ikem offering to work out with you, I knew I wanted to have some sort of plotline with him where you advance by occasionally going to the gym together. But besides just that, I thought it would be neat if his presence offered you actual buffs and bonuses during the minigame.

So I did just that:

(Goddammit Ikem, you blinked right as I took the screenshot.)

There are a few effects that are currently in, such as: giving you a free refill once your deck is empty, or recovering you some extra stats every few turns like Stamina, Power and Endurance.

In addition, working out with Ikem will reduce the gym cooldown by one day. The system is designed in a way where it's open to adding more gym partners in the future, so you can look forward to that!

A lot of people have noted how slow the weight loss process is, and while the numbers definitely need a lot of tweaking, the original intent was for things to get easier and faster as you keep at it. Things like the exercise level, which grants more cards and stats, and now these workouts with a partner should make the process feel a bit faster.

There is also a future crafting feature that'll let you make various consumable items that'll help with the process. More news on that once it is ready!

Some discussion about game design!

If you've tried to go to the forest for a rematch with Tom, you'll know that the game doesn't let you, stating "You'll be staying away from it for a while." This limitation is lifted once you meet Gordon for the second task, meaning it isn't accessible in the current build of the game.

Currently, going to the forest will yield you a few materials based on chance, as well as trigger a potential encounter with Tom again. (you'll notice I talk a lot about content that is already in the game, but not actually accessible)

The limitation was put in a bit later after I realized I wanted the player to prioritize getting down to 20 Wgt as per Gordon's request, and getting into another fight would make that difficult, especially since you can already fight Darwin and Beau.

Speaking of: the fishing icon now changes to warn you before entering the scene where you battle Darwin.

In Beau's case, you are given the option to postpone it, which makes sense given the context, but I didn't really know how to handle Darwin at the time. In the end, I decided to just leave it as a surprise, thinking it could lead to some interesting variety in how difficult or even unwinnable the battle would be for some players.

... admittedly it came off as a little frustrating, most people probably just reloaded their save, which isn't exactly great design, so this should be a good enough solution to that.

I'm most definitely not a professional game designer, so there will be a lot of trial-and-error when it comes to these kinds of things, but reading all sorts of feedback has been both fun and helpful so far!

I would like to note though that most of the battles in the game so far are written in a way where losing is a valid way to progress the plot, and the plotlines are designed in a way that assumes you might lose some of the fights.

Back to the forest:

I realized it would be pretty unsustainable to have to worry about a potential battle with Tom every time you wanted to collect some materials. So here's what I've been working on in the art department:

Say hello to Akello, a park ranger that patrols the forest east of town. If you enter the forest at any time when he's working, he'll break up the fight before it even starts.

And of course it's a great excuse to add yet another character into the growing roster of the game... although that'll probably be all he's going to be doing for now. There's quite a few ideas I have for many of the characters that haven't been properly written down yet.

The reason I'm bringing this up is because I want to talk about another important topic:

The structure of the game

I might be going a bit too hard with how many characters there are already in the game, especially since most of them aren't even related to the main plot thread of the Stout Group and kinda just doing their own thing.

That's alright though, because rather than featuring one main storyline, I'm aiming for the game to be a bit more open, with the various events occurring across town being the main source of content. Such is the case with the Beau and Darwin fights, they're not quite "secret" battles, as they are just one of the many plotlines I want to feature in the game.

Of course, that doesn't mean there won't be some sort of over-arching story, but what it does mean is it won't be the bulk of the game. What do you think? Would it be better if the game had a more focused main objective or are all of these self-contained plotlines good enough?

And now it's time for... the Card of the Month!

(It's 'Sympathy Weight'!)

For the second installment of Card of the Month, we have a card that is perhaps a bit more gainer-themed, and therefore more exciting, than the last one! This fun little card will make your Opponent gain the same weight that you do!

While testing it, I've found that it's probably not going to be as much of a powerful card, but rather just a fun addition to mix things up, especially since the Wgt is only reflected if you have no Fitness and actually gain the Wgt, so it works mostly in self-destructive decks, which benefits Opponents more, since they don't have to worry about losing the weight as much as the Player.

Of course, I thought about changing the effect to reflecting any Wgt inflicted, but in the end I decided to keep that for perhaps a more powerful, future variant of the card.

That's it!

I have nothing to add at the end this time, so as always: thank you for reading and supporting the project!

View Post

Cards of Gluttony Dev Log #7 [20/06/2023]

Guess what? It's time for another development log, let's start with the most exciting one!

Ring ring!

There is now a new addition to the main menu bar: your phone! Turns out a lot of the writing has very naturally alluded to a feature like this: the times you need to reach Gordon, Ikem's offer to work out at the gym, as well as Beau's suggestion to go on a date.

As you can see in the gif, each contact has a unique profile picture. I decided to take the time to imbue a bit of personality into each person's photo. Let's take a closer look at the ones I have so far:

  • Gordon uses something of a more formal photo, it's an old one too, as you can tell from his hair color.
  • Ikem's is more artsy in comparison, with a more dramatic expression and lighting.
  • Ricky's is probably the most interesting out of all of these, he uses an older picture as well: one from before the incident™. We'll get around to exploring that at some point.
  • And finally we have Beau, who uses a photo of himself at a pride parade! (Happy pride month!) He is so far the only character in the game that explicitly tells you he's gay, so I figured this would be a cute detail.

Clothes!

Now begins the road to populating the game with a bunch of clothing options. Here's the three I currently have in the works (we'll see how many of them I'll manage to finish before the next release)

Admittedly, I have a very narrow sense of fashion, so you can expect most clothes to just be something along these lines. On the bright side, I am open to suggestions, so as always, you can let me know what kind of outfits you'd like to see, here in the comments or through private messages.

And speaking of clothes, some of you might appreciate this work-in-progress of Gordon in a suit:

Sprinkling in some fun facts: those are the very same glasses he's wearing in his old profile picture, and they are in fact prescription glasses. He just prefers contacts nowadays.

Onto the... card of the month?

Am I going to try and make this a thing? Yes, I am. I'll try to showcase a new card in every dev log from now on. For the very first one, take a gander at this:

This card is actually already in v0.2.0, it is just inaccessible: it's part of Beau's 2nd Deck.

And this is the perfect time to reveal to you that your opponents will in fact update their decks over the course of the game. Not only their decks, they might also change their max. Wgt or the reward card you get after beating them! 

In this case, Beau's second deck appears after you had won one match against him, so if you managed to beat him, look forward to that on your rematch!

This card was originally in his initial deck, it was meant to help him catch up to you in card draws, since his lower max. Wgt means he can't reach the very useful 3 draws at 40+ Wgt. In the end, I decided it was a bit excessive for his first fight.

In fact, the deck Beau uses in the first fight is such a stripped down version of what I originally wanted it to do that... it doesn't really do anything particularly interesting. It's probably going to be a while before you'll be able to see the original deck in-game though.

... and that's it for now

As always, thank you for reading and for supporting the project!

View Post

Quick Update on Development + Things going forward

Hey everybody! It's been a month since v0.2 first got released here, so it's time for some news.

Quick Update

I've been very busy with life for the past month, and since most of the work I got done on the game so far is just... more content, there's not really anything particularly exciting to write about or show in the next Development Log for now.

So far, I've been trying to include mostly things that I can pair up with screenshots or visuals: the kind of things I assume would be most interesting to you all. As more systems get finished, I'll slowly move on to just writing more dialogue and adding more cards and content: stuff where there's not much to talk about.

So basically I've been running out of ideas as to what I should talk about in the logs. And so I turn to you to let me know: is there anything in particular you'd like to hear about? Or is there any neat perk you think would be a good fit for the Patreon? Once again, you can send me a private message or just post in the comments! 

But that's not the main reason why I'm writing this post though. There's something else we need to address: 

The Release Frequency!

So since the prototype, both v0.1 and v0.2 have been released with a ~3 month gap in-between. I wasn't on any particular schedule with those, mind you: I just kept adding to the game until I deemed that it was ready to put out.

With that much time, I found the size of the update to be just about right, as it was big enough to give everyone something to talk about and explore the various things I managed to cram in. (I have a lot of fun writing the Fun Facts posts, can you tell?)

However, I do understand that it's quite the gap to wait in-between. I was able to take my time with the previous releases, but as many people have joined the Patreon since then, and with the introduction of the Patreon Perks, I have felt more pressure to "keep up with a schedule", so to speak.

So now we are faced with two options:

  • Keep going at a slower pace, same as until now.
  • Or speed it up to once every month, but with less content. To give you an idea, a single update would be about the size of only the fishing plotline (as much as was done for it in v0.2).

... and of course, at the end of the day, the people that this decision affects the most is you. So I've decided to put up a poll to see the direction everyone would prefer. Feel free to also let me know any other thoughts you have on this, once again in private messages or by commenting here.

And to cap things off, 

It's been wild to see just how many people have decided to join the Patreon since I first set it up. I initially made it with the intent to let people support my art, then once I released the prototype for the game, I stealthily started posting development logs here after it got a surprising amount of attention on the internet.

And with the introduction of proper incentives in v0.2... well, I don't want to get ahead of myself (I definitely am), but with the way things have been going, I might even be able to work on the game full-time at some point. Which, I probably don't need to explain, would be the wildest dream come true.

So thank you for your support everyone. Seriously, I mean it!

View Post

Fun Facts & Behind the Scenes - CoG v0.2.x

Just like I did for v0.1.0, it's been a bit over 2 weeks since the release of v0.2.x, so I have a healthy batch of fun facts for you!

Once again, these contain spoilers, so that's your heads up! Here we go:

Gameplay and Game Design Stuff

Mulligan Math

  • In a way, you get a "free" mulligan at higher Weight. Since the way the starting hand works is: You first draw 6 and then draw at the start of your turn.

  • At 0-19 weight, you only draw 1, bringing you over to 7.

  • At 20-44 weight, you draw 2, which means you draw the 7th card and the 8th one won't trigger because you reached maximum hand size. However, if you mulligan, you will start with 5, and draw both of those cards. That means you can mulligan once and still end up with 7 cards.

  • And of course at 45 and higher, that means you can mulligan twice without "losing" cards.

Statuses

  • There's a little bit of intricacy to the way statuses behave: when they count down to 0, they get turned off, but still stay in the status bar for one more turn. This is so that you can't repeatedly inflict the same status for the entirety of a battle.

  • If you haven't looked into the Game Rules section, it mentions chaining, that is, one status can activate another. As far as I know, neither opponents added in v0.2.0 actually use statuses that do this, but the system is already in place!

Misc.

  • The game is currently a little over 13,100 lines of code. Phew, that is the most I've ever written for a single project for sure.

  • The Exercise Level currently goes up to level 5... as far as I'm aware, you're highly unlikely to reach it by the end of Day 28, but the rewards are already coded in!

Jogging Minigame: the messages that appear in the middle of the screen are randomly pulled from a pool. There's more messages at higher Weight, because as it takes longer, it makes sense for there to be more variety, since more messages get shown in a single session:

  • 0-15 Wgt contains 6 unique texts.

  • 16-31 Wgt contains 8 unique texts + 1 more if musk content isn't disabled

  • 32-43 Wgt contains 11 unique texts + 2 more for the same reasons

  • 44> Wgt contains 16 unique texts + 3 more, same reason again

That also makes this the only place in v0.2.x where the content settings are actually applied. The rest of the options are there for future content!

Fishing Minigame: here's all the types of things you can get from fishing:

  • Fish

  • Money

  • Utility Zest

  • Cards!

Music

  • Stage 2 and Stage 3 of battle music (when crossing over 20 and 40 Weight respectively) have two different starting points, so if you start a battle when your weight is at those stages, the music can start in two different ways.

Some visual Stuff

  • The mouse cursor changes depending on your weight!

  • The initial background in the title screen changes according to the time on your device!

  • This next one has been a thing since, v0.1.0, but the title screen displays the last background that was used. So if you exit back to the title screen after playing, it continues to display whatever was in the background earlier!

  • Ted's beard grows over time, and when it gets scraggly enough, he shaves! You can see him shaved on exactly the last day of v0.2.x, Day 28

  • Not sure where to put this one: if you're not a fan of the scrap clothing, the starting T-shirt is up on the store after you're done with that encounter!

Dialogue and Writing

  • There is a little bit of plotline done for Ricky, which advances every time you lose and end up in the hospital. That is, dialogue for the second and third loss (with the encounter in the forest being the first).

  • At the gym, when the player makes the remark about whether it's spelled threadmill or treadmill, that is in fact me writing it into the dialogue as threadmill and then realizing it's not spelt like that after scouting for sound effects.

  • Ikem's name was originally Norman. In turn, the pub owner's name used to be Edgar and his design was based on the man that is on the card art for "Instant Boost" if you've played the prototype.

(There he is!)

Here are the places where the dialogue changes depending on your weight:

- Barber's

  • Beau has different dialogue when you visit him, including your first meeting, getting a haircut and after.

  • If you used your save file from v0.1.0, try starting a new save file and visiting Beau in the intro (where there used to be nowhere to go) and then getting a haircut right after the forest.

  • The check that happens there is based on what Weight he last saw you with. While it has the same outcome either way, the initial topic of discussion is quite different.

- Misc.

  • Various small details at the Pub, Fishing and in the Park during the intro.

Now for other ways the dialogue and plot changes:

  • If you lose the fight against Darwin, Ted steps up instead and learns to use The Fattening.

  • There is currently a bit more dialogue and plot development for this than if you win, but of course there will be more for both.

  • Ted will end up fatter because he had to fight, but he will also start losing weight over time.

  • If you beat Darwin, since Ted doesn't find out about the Fattening then, he'll just stay at the weight that Darwin inflicted on him without losing any of it.

  • If you tell Beau that you find him attractive, he'll be more flirty in some of the dialogue.

The conversation you have with Beau the following visit after you fight him has several variations:

  • Depending on if you won or lost, of course.

  • Depending on how much weight he's lost since that day.

  • If he lost, he comments on how fat he got you by the end of the fight.

  • Similarly, if he won, he comments on how close you were to beating him.

And now here's some deep insider info on content featuring Beau

  • You can already challenge Beau for rematches in the game. However, the option only appears once he's back at 0 Weight.

  • ... since v0.2.0 ends on Day 29, that means you'll only ever get the option if you really throw the fight and Beau ends at a low Weight that he's able to work off fast enough.

  • There's currently already dialogue for when you fight Beau for the third time and win.

  • As far as I know, the only way to reach this dialogue in time right now is to forcefully lose the first 2 fights without fattening Beau too much.

  • There's also a tiny bit of luck going into this, since Beau loses Weight somewhat randomly, he still needs to lose the 4 Weight you are forced to inflict on him in the first fight.

  • If you try to get to the third fight as quickly as possible, you will likely end up leaving the hospital the second time on Day 23, that leaves you with 5 days to lose as much Weight as possible before confronting him the third time where you have to win.

  • Take this more as a fun fact about content that's already in the game. It's actually kinda tedious to get to this dialogue yourself with the current date limit...

Speaking of: there are two non-standard game overs during Beau's first fight

  • If you fill your deck with a bunch of self-fattening cards, you can force yourself to lose before the fight even begins.

  • Since Beau only awakens The Fattening after you get him to 4+ Weight, he won't realize what's happening as you get fatter in front of him.

  • The first variation is if you're wearing Gordon's Clothes. They will last you the entire fight right up until you pass out.

  • The second variation is if you're wearing any of the smaller clothes that get destroyed once you get too fat. Then the fight ends even before you hit maximum Weight.

And some other stuff:

  • If Beau's fat enough, there is a chance of some extra dialogue happening upon visit (when you're able to get a haircut). You can just exit and revisit if you're trying to get this dialogue to trigger.

  • If you have the same name as any of the characters, they will point it out. My favorite so far is Ikem's as that one does a bit more than just have him point it out.

Damn, that was a girthy list of fun facts. If you made it all the way down here, I hope you found them as fascinating as I'd hoped you would.

As always, thank you for reading and supporting the project!

View Post

Cards of Gluttony Dev Log #6 [12/05/2023]

It's release week, woo!

It took... *checks calendar* over three months since v0.1.0 released, but it's finally time for an update.

The update has been up and running for a few days now (with so so many issues... sigh) so now it is time for the development log!

Actual Patreon Perks?

First let's get down to the business talk. I finally figured out an in-game benefit to give to Patreon supporters. The only catch is that I've added a second tier valued at $5.

Every time I release a new version, I will also post a password for the supporters of the new tier. This password will be entered in-game to open a menu with various features. Currently the most notable features are:

  • A Free Battle Mode, where you can freely fight any opponent. You can load up your card collection and avatar data from your save file. This mode provides a convenient way to repeat battles, or to test out your deck in a closed off environment.
  • A Model Viewing Mode, where you can display all the various character models in the game and cycle through all the weight sprites, it even shows the dialogue during battles!

As a fun fact, these are both actually debugging scenes I use to test new stuff!

Now back to the game

Otherwise, it's time for your regularly scheduled (actually it's up early this time) development log! There's a lot to talk about this time, since I've been keeping quite a few things secret for the 0.2.0 release.. so buckle up!

Once again, beware of spoilers: especially since you can actually just go and play the game yourself this time!

More about crafting!

I've talked last time about the very exhilarating rocks I scattered around town, now there's more materials than just random geodes!

As you can see here, this is 'Zest'. Each type of card has its own zest that you need when you want to craft cards of that type. For OFFENSIVE(Red) cards, unsurprisingly, the source of 'Glutton's Zest' is eating! That's the pub right there!

The pub also serves as a place where you're able to craft after eating a sufficient amount of food.

Every. RPG. Has. A. Fishing Minigame!

So of course we must have one as well!

The minigame itself is quite simple, you just go in, catch a few fish and call it a day. The actual fishing is a reaction based test, you have to click as soon as the float sinks! If you're familiar with Animal Crossing, that was mostly the inspiration going into this.

I do love me a good difficulty/accessibility option, so there's already a setting in the options that disables the timeout, so you don't have to worry about missing things if you just want to relax, or have trouble with the current timing windows.

There's a small pool of about 8 or so items in there right now. I'll see what I can do about adding more without making the pool too crowded, maybe a few more fishing spots.

In the future, I might make this a bit more involved, with different rods and bait, but for now, this will suffice.

And with a new minigame comes a new character! There's already a bit of dialogue available for this plotline, so make sure to go spend some quality time with this guy!

It's finally time to talk about the card game

It's been a while since I've touched on the card game itself, I've been very busy implementing the rest of the overworld, after all! First things first...

Mulligans!

This wasn't much of a necessity in v0.1.0, since the player's Deck is mostly quite small with the options that there are.

Not that it's too different in v0.2.0, but as I was designing opponents with bigger decks, I realized that the current design significantly favors smaller decks, since they are able to just consistently draw the same few cards every turn.

And another one of those advantages is a consistent starting hand, which is very difficult to get with a bigger deck, which led me to implement this! Hopefully this'll add a bit more strategic depth to the game.

And now here's the most exciting new addition:

The Status System

Say hello to statuses! These are passive afflictions that can have various effects that activate under a variety of reasons! With this, now cards can have more flexible effects than just "do a thing".

In fact, during testing I found out that this system turned out to be maybe too intricate? These statuses can in fact activate each other, take the above one, for example and let's add another one for posterity:

#1 When you draw a card, gain +1 Wgt.
#2 When you gain Wgt, draw a card.

When you draw a card, effect #1 will activate, which will then in turn activate #2 in the very same move! See the problem here? Normally this would loop indefinitely, but it's coded in a way where a chain stops once it encounters a loop.

There's no doubt in my mind that the current code in place is a little shoddy, so there will probably be cases where the game just loops indefinitely and freezes... Let's just hope I'm a bit of a better programmer than that!

And to correspond with this, we have a new card type: BUFF (White)

Negative statuses that get inflicted your opponent are now part of the existing DEBUFF (Blue) cards. So contrasting that, this new BUFF type will give you helpful statuses!

Phew, that was a lot!

This is pretty much the culmination of what I've been doing these past few months, I just didn't have anything presentable to show you until now! So once again thank you for your support and for reading!

View Post

CoG v0.2.1 bug fixes release

[UPDATE] The drive now contains 0.2.1a which should definitely fix the crash when jogging, sorry for the trouble, everyone!

Thank you for bearing with the technical issues, everyone! The drive has been updated with the new versions.

Things that should be fixed

  • Control issues on Android
  • macOS crashes (Turns out all of the dialogue files were missing. Sheesh, how did I screw that up?)
  • Incorrect choices being displayed when visiting the pub with not enough money
  • A typo during one of the fishing plotline's dialogues.
  • Some funky behaviour while loading Avatar from Save in the Model Viewing Menu.
  • The crash when trying to go Jogging, dear god, that was a nightmare to figure out. (and I swear the minigame's not even that worth it.)
  • Incorrect Message Log scaling during one specific battle.

Added

  • On Android, a setting to revert card game controls back to the old one

View Post

Patreon Perks Password

The password to unlocking the Patreon Perks menu.

Enter this to gain access to the [Patreon Perks] menu on the top right of the Title Screen. If you're having any kind of issue with getting it to work, shoot me a message!

Note: please make sure that you have the right version of the game.
This password is for v0.7.0 specifically. You can check your current version on the title screen under the game logo.

Here goes, the password is:

eatme

... for the first time, the password has nothing to do with the main content featured in it. And yes, it is a nod to Alice in Wonderland.

View Post

🎉CoG v0.2.0 Early Release!🎉

Dear god, it's finally time! This was already supposed to be up over a week earlier, but I ended up finding so many areas that needed polishing.

I'll put this up here for the next two weeks or so before releasing it to the rest of the world, so consider this a little treat!

These are Linux, Windows, macOS and Android builds. The web version will be available with the public release. You can find the downloads over on this link:

If you run into any bugs, let me know!

View Post

Cards of Gluttony Dev Log #5 [20/04/2023]

Another month, another update! I have gotten a lot of presentable work done and as a result, I have quite a lot to show you. So buckle up!

Since there are so many things, I will also warn you that there could be potential spoilers for certain events and such. No spoilers for what happens of course, but things along the lines of "I didn't know this was in the game, but I'd like to discover it for myself." So if that's how you feel, this is your heads up!

It's time for time!

Well would you look at that! It's the town, but later! In one of the previous logs, we've already discussed the "management" portion of the game that will be happening outside of the card battles. There's actually quite a few new things you can notice in this screenshot, so let's go through each of them:

Each day you will choose how you spend your time. Time goes from Daytime -> Evening -> Night. The indicator for Daytime was already there in v0.1.0, but it didn't actually do anything. I've also added explicit days of the week up there, some events and characters will only be available on certain days. I've also made a lighter version of the town music that I shared in a previous log. The game transitions over to it during the evening, I've attached it in the files so give it a listen!

Next up, you will notice the money counter right below the time! There's only about... 3 ways to spend money in the game right now, so how exactly you can gain money is up in the air until I see how much the player will actually need to spend.

Cool rock! On the top right half, you'll notice some plain old rocks. These are the materials I've talked about previously that are scattered and spawned across the map. Now rocks aren't exactly the most exciting or thematically appropriate material for this, so consider it a placeholder until I can get more materials in. Who am I kidding, I'm probably going to leave them in.

2 new locations! We already know about the gym where the player can lose weight, but aside from that we have the Barbershop! Let's dissect both of them in more detail!

The barbershop

So of course the main thing about the barbershop is that you can change your hair in here... that's actually not that exciting is it? We've had the character creator since the prototype, just not the hairstyle options! Take a look for yourself:

First of all, we got some clothes to wear out, isn't that neat? We already you'll be able to customize your clothing from the peek at the wardrobe in the previous Dev Log, now don't those clothes remind you of someone?

Now away from that tangent: I've left the initial character creator the same as is, however, for the barbershop, I've added more than twice the amount of hairstyles! This is also where I'll be adding more of them from now on. There's also a 4 more color options for ones that are more dyed than natural.

I could've just put these options in the character creator, no? Why make the player go through the hassle of going here?

The owner of the barbershop

Say hello to Beau, the man who owns the place. Beau isn't just a generic cashier that you greet when you come in to change up your character. He's also a full fledged character that'll have a few story beats of his own. As such, I recommend that you visit the barbershop every now and then and get a haircut, even if you're not feeling like changing up your character!

And would you look at that, another new feature! It's nothing particularly revolutionary, it's your standard Visual Novel-style choice menu, although I'm very happy with how I managed to implement it! There's actually been a lot of work done on the Dialogue code, so now it's capable of doing a lot of logic like branching and jumping around.

More, we need more character Customization!

To be completely honest, the character customization is a very self-indulgent aspect that I made mostly for myself. I love me a good customization system, so of course I decided to add more to it. Behold!

I've added a few hats to the game (two to be exact), as well as two types of glasses. There's also two clothes aside from the one that appeared in earlier versions: the one you're seeing in these screenshots and another one.

Now that I have this system set up, I hope to get to drawing more of these clothing options soon.

It's finally time to get swole!

Look out, it's time for some physical activity! The gym is finally implemented in the game and as you can see, it's an entire minigame of its own! Whenever you go to the gym, you'll go through a little card game to work some of that weight off.

It has quite a few notable differences from the main card game and that is:
1) You only have one deck that you build up.
2) You gain new cards by adding them to your deck after levelling up.
3) And the gameplay itself, of course. Let's get into that!

You always draw cards so you have as many as your hand size. Stamina is the same as Energy in the main card game. Power is what you need to build up to use cards that actually increase your Fat Burn. And finally Endurance decreases the cost of the cards. Once you run out of cards in your Deck, that's it, so you'll have to rely on cards that refill your Deck.

There's a bit more intricacies to it, but I'll leave that for you to discover once the update is out!

And now a thing that is probably only exciting to me

I've added the shop and the menu has a fancy little confirmation UI that places the YES button exactly where you pressed it. This way, you can just keep clicking to buy the same thing over and over again. UX Design!

I sure hope this works as well as intended when it gets in the hands of actual players...

Aaand that's it!

I'm a little disappointed it's taken so long to put out this next update, but at last it should be ready pretty soon, so look forward to that! Thank you everyone so much for your patience and support. It's been awesome knowing just how many people are excited for this project of mine!

View Post

How's it made? - Art

In similar light to the Programming counterpart of this post, it's time to talk about how I draw all of the stuff in the game!

The thing that lets you make the thing! (Program)

I mainly use Clip Studio Paint, but really aside from a few convenient features, all you need is something that can draw. If you happen to be looking for some free painting software, I recommend the open-source Krita.

The art process.

I use a painterly approach when drawing, that is, instead of sketching out lines, I start out by blotting down a color. I define shapes and form by working in shadows at the same time. (Frequently switching between colors, I tend to use keyboard shortcuts a lot

(Here's what it looks like in action!)

This process results in a very sculpt-like feel. Although I tend to still infer lines as you can see, I typically add and properly accentuate them later into the piece.

Layers! So many layers!

The characters blink! They have facial expressions! They get fat! That means we should separate things into layers, so how do I have that set up?

(Here's what the typical layer structure looks like for a character sprite in the game.)

The body includes... well, the body. The clothes are separated as well... These are the two parts that require a sprite for each weight level, we'll go into more detail about that later. Then we have the rest: eyebrows, eyes, the mouth and finally: faceeffects, which is used for things like sweating, blushing, etc.

You might've also noticed the "Crop" layers. Since I have to export each of these parts separately, I end up having to put them back together in the game engine like some sort of paper doll. The crops are rectangles that define how big the image for each individual part is and I also use it as a guide to put things back together (but I should really look into writing something that does this for me, as I believe Unity has something akin to an .psd import that does this for you)

I have a template file that has all of these layers laid out like this, in fact, it's an entire folder with sub-folders structured in the way they are in the game files so I don't have to make them every time I add a character.

(Folder management!)

Now what we're all here for: the weight gain.

There needs to be a sprite for every 4 Weight. For a maximum of 52, that's 14 images. That's a lot! Don't forget that the clothes are on a separate layer, so if a character has more than one outfit, that's 14 images for each piece of clothing.

I start by completely drawing a character at their lowest weight. That is, finalized and fully rendered with shadows, lighting and whatnot. Then I just work my way upwards by copying the body layer and editing it with some... extra padding.

There's a bit of agonizing, repetitive work going on here, but I do my best to make it as clean as possible (it really isn't that bad.) Turns out there's a few features that are pretty useful for this!

This here is the Animation Timeline! I'm not much of a fan of hand-drawn animation myself (that's a job for people far more patient than me), but as it turns out: drawing a bunch of frames where something changes in the slightest way is a very similar process. Therefore using similar tools can be quite helpful. This way I can have each weight sprite laid out after one another and I can check how it looks by scrubbing between the frames.

And finally, the heart of the operation: Liquify. This is a deformation tool that is perfect for what we need here. Of course, it's not black magic: it makes things blurry, and fat doesn't work by just curving everything out. It is however an incredibly fast way to prepare the next frame, after which I can just paint over it and add or remove shadows, fat folds and others to finish the image. It's useful to separate the layers depending on where things intersect. For example: if you're deforming the chest, you wouldn't want to shift the arm behind it as well.

Clothes are done using a similar process. Whether I do each clothing frame at the same time as its body counterpart, or if I just do all of body and then all of clothes... well that depends on my mood, really.

Exporting is also a bit too much work

So now everything is drawn and ready to export... Except there's 14 frames of body and all of the small bits and pieces for the face.

For the body and clothes, since they are technically animations and their resolution is the entire canvas, I can just export all of the frames into an image sequence. Clip Studio has a few options for how these files will be named, the one I use is from 0000.png to 0013.png If you are unfamiliar with programming, things tend to begin from 0, rather than 1. It also maps well to the weight amounts, that is: sprite 0000.png is for Weight 0 = 0000 * 4. Sprite 0001.png would be Weight 4 = 0001 * 4 and so on.

Then for each of the face parts, I just copy the folder for them into a new Clip Studio file. Thanks to the crop layers, the new file will have the appropriate resolution and
then I just export them manually... (might want to look into a better method)

And that's all I can think of!

Once again thank you for reading and if you would like to know about anything in more detail, let me know!

View Post

Cards of Gluttony Dev Log #4 [20/03/2023]

Unfortunately I don't have much exciting to share this month as I've been busy working on a lot of things behind the curtains and a lot of in-progress stuff.

... so let's start with something I can actually show off!

Making the UI a bit more lively

I've added a few animations to the stats during battles to make it feel a bit more responsive and lively, take a look!

Localization and multi-language support perhaps?

I've actually had a few people offer some help in translating the game into other languages. Suffice to say, I was pleasantly surprised, as I didn't expect the game to spread anywhere further than just a tiny niche.

I'm currently in the process of refactoring the project so that something like this is possible. Frankly, when the first person asked me about it, I figured it wasn't worth the hassle... well I still sort of think so. But if I'm ever going to support multiple languages, I might as well do so now while there is less work to do.

It's your room!

Would you look at that, there's things to do in your room now! The only interesting one in here is probably the wardrobe.
... we'll talk about that once there's more to show.

Some miscellaneous things

A few more skin tones in the character customization! A few people have noted that the darker skin colors look a bit desaturated, so I added a few more skin tones.

Actual touchscreen controls! If you've used the Android builds, you'll have noticed that the download links to them are marked as "experimental". This is because the controls are quite literally the same as the desktop version, with taps being read as mouse clicks. Needless to say, it doesn't work very well, but I figured people would appreciate a mobile version either way, and it didn't take much effort to export to Android anyways. With this, the Android version should feel less like an afterthought.

Well that's it for this log! Do I have anything else to tease?... why yes I do.

There might be something of an awkward little moment at the gym.

Once again thanks for reading and thank you for your support!

View Post

How it's made? - Technical Side Pt.1(?)

I thought it could be pretty fun to share how the game is built, from the engine used, to the classes, scripts and topology. So it's time for me to ramble and give bad advice and explanations to you about software engineering!

This post is mostly written in a way that assumes you have no idea how coding works. If you're a software engineer, feel free to critique my choices and offer advice. Otherwise I hope this post maybe inspires you to do some game development of your own! (also don't take my explanations too seriously if you're actually trying to learn, please)

Picking the game engine. [Insert joke about waiting]

The game is made with the Godot Engine, specifically the 3.5 release. Godot is an open-source 2D and 3D game engine that's been overshadowed by Unity and Unreal for a long time, but recently it has been rising in popularity and use. It's relatively young compared to the others, first released in 2014 and from what I've heard, it took a long time for it to get to a usable state, much less become actually viable.

Although I used Unity a bit prior to this, Unity is generally considered very bloated and it shows. While Godot might not necessarily be on par with the big names like Unity and Unreal, especially for 3D games (although that seems to be changing with the recently released Godot 4), it's generally considered a great pick for 2D games. It's also shockingly lightweight, with Godot 4 being a single file of ~100MB. That's it. That's all you need to get started.

I'm a bit of a shill for open-source projects, so the open-source nature of Godot made it a pretty good candidate for what I could use. For those who don't know, open-source means that the source code for the engine is free and publicly available to everyone. In fact, you can go and look at the actual code for the engine right now! This setup allows for a lot of collaborative effort from the community and it's thanks to a bunch of people (enthusiasts and volunteers) working on Godot that it is what it is today.

Programming languages!

(A snippet of code for gaining weight during battles.)

Godot uses its own, custom scripting language called "GDScript." It's a dynamically typed language with very similar syntax to Python (it's still it's own thing and not related to Python itself in any way though!). Dynamically typed means that things don't have to be of a specific type (Is it a number? Text? A picture? Music?) and it's only checked when it matters (to put it in very simplified terms).

Godot also allows you to use C# and thanks to GDNative (GDExtensions in Godot 4) you should theoretically be able to use any language. I used C# when I first picked up Godot, admittedly because of a bit of prejudice towards GDScript. I basically figured C# could have more practical use in other places too instead of the engine-specific GDScript (which isn't untrue) and I was also a bit put off by the dynamic typing. (GDScript actually does have optional explicit typing, it's in the snippet above! But it still feels a bit awkward compared to actual statically typed languages.)

Because Cards of Gluttony is centered around kink and adult content, it was pretty clear it was mostly going to be a side project, so when I started working on the game, I saw it as an opportunity to stop being so rigid and serious in the way I do things. I stopped worrying about doing things perfectly and getting hung up on finding the "best" way to do things. I just hopped onto GDScript and started trying things out (Fun fact!: the first character model I used was a simple 3D model I made that had a weight slider). That free attitude is also quite noticeable in all of the art in the game, it's all messy and sketchy (although that is my general art-style, a lot of it is still very rushed by those standards).

This turned out to be a great way for me to explore and learn without putting too much pressure on myself. GDScript and dynamically typed languages (specifically Python) are quite intuitive and fast to prototype with, so it's very useful when exploring ideas and just quickly implementing and changing a bunch of them. Although I still prefer the more organized C# and other statically typed languages, GDScript was very much made to work perfectly in tandem with the engine and it's very evident.

The... topology? Architecture? Whatever the right word is.

So the way Godot structures it's scenes and game objects is in the form of a Tree. Trees are a basic data structure that comprises of a bunch of nodes, these nodes are connected to one another. Tree is a pretty accurate word for the way they work, as you start with a "root" node that represents the start. When you add more nodes to the tree, you add them as "children" to an existing node. You can branch these in many ways to form something that looks like this:

So what are these "node" things, exactly? In context of Godot, the answer is... well, almost anything. Godot has nodes for many things, ranging from Sprites, Text Labels, Audio Players and so on. These nodes do the things that they're supposed to and allow you to access their properties and functions via scripts that you attach to them. Here's what Cards of Gluttony's tree looks like:

(Please don't use this as reference for good design.)

You can see the root I mentioned earlier, and then the children. Most of the nodes you see here are always running in the game at all times. Global handles the overall state of the game, PlayerData houses all of your stats, PlotTracker stores info about your progress and story flags like losing/winning, and so on. The bottom-most node is the screen you're currently on, here it's TitleScreen.

For example when a battle starts, I swap out TitleScreen for CardGame, which is a node I created that houses all of the scripts and nodes to run battles (that is: the UI, character models, state of the battle, functions and game logic). They're not all just crammed into one node and a script of course. An important part of software engineering is to separate things and compartmentalize them into pieces that each have a single scope/responsibility they're meant to do. (See how that fits into the tree structure with a bunch of nodes?)

That's it for today!

This post was basically just a Godot appreciation post, but that's because it's great and if you have any interest in making games, you should definitely check it out!

I know there wasn't a lot of Cards of Gluttony specific info in here, but I hope it was at least somewhat interesting to you, I suppose I just wanted to ramble about the technical side of things for a bit. If you'd like to hear more about some actual aspects of the game like the card battles, the cards themselves, the way PlayerData is stored, maybe how the character customization works, or anything else, let me know!

View Post

Cards of Gluttony Dev Log #3 [20/02/2023]

First dev log since the release of v0.1.0, let's see what I've been up to!

Music!

I have some early drafts for the music that will play during battles. For now, each section is about ~1 minute long and they don't loop particularly well... it's very much work-in-progress. And you read that right, each section! I've already thrown them into the game to test out the dynamic music that'll ramp up between 3 versions as the participants gain weight! There's a lil' preview video in the attachments so you can download that and check out how it sounds. (it also features a peek at a fun new card!)

I'm quite happy with how it sounds so far, so now the goal is to actually finish composing them. Listening to a 1 minute loop in a slow-paced strategy game doesn't exactly sound like a great time, after all.

I also started working on some background music to play as you're walking about town, so give that a listen as well!

Exercise! Sick gains!

Some initial design work has started on the weight loss mechanic! For now the basic idea is this: the player will have a stat denoting Fat Burn(... or metabolism? we'll have to workshop that). This stat can range from negative to positive, and it represents the amount of activity the player does to stay in shape. When your Fat Burn is negative, it means you just stuff your face all day, which in turn causes you to gain that much at the end of the day. The opposite is self explanatory. Exercising will allow you to raise this number, meanwhile doing nothing will have it naturally deteriorate over time.

Even if the Fat Burn can go as high as 4.0 (losing 4 Weight per day, as is the plan for now) that's still somewhat slow. There's a bit of a inner conflict I've been having over this: I don't want the player to be able to just clear out all the Weight instantly, as the "permanence" of all the fat is part of what makes it exciting to me. Driving that point home by making the player have to work to lose weight is nice, but it's pretty awful from a fun, gameplay standpoint. It means there will be a lot of downtime between fights when the player is losing weight, so what do we do about that?

Oh no, another game with forced Crafting in it!

Indeed there will be crafting at some point. I'll be scattering a few materials across the town map. These materials will be used to create new cards and perhaps create consumables that temporarily increase your stats or help with weight loss. They will regenerate and spawn on the map over time with some semblance of randomization. Doing things like the aforementioned exercise will also give you some unique material.

I think this is a pretty reasonable to approach to getting new cards, since attaching each card to a single opponent is of course not very viable. I could also give each opponent several potential cards and randomize the drops, but not only do I dislike this in games, it also incentivizes grinding, which is actually quite impossible with the slow burn weight loss design right now. That is in fact one of the reasons I went for this direction, as I don't want any of the fights in the game to feel like "just another generic mob". All of the opponents you've seen so far have names, some semblance of personality or backstory, and are all intended to return at some point. Yes, even Arnold from the intro.

So back to the crafting: that'll be one of the things for you to do while you wait to get back to tip top shape. Unsurprisingly it's not enough. I'll have to come up with more activities to do and even then I'm not sure how fun this "management" aspect of the game will be. The nice part is that this isn't some big game studio where I have to churn something out quickly for the christmas season. Especially with the feedback I can get after every version release, if it doesn't pan out, we can always scrap this whole weight loss mechanic and try something else (but of course fingers crossed it won't come to that.)

That's it for this post!

As you can tell, apart from the music, I've mostly been doing design stuff and not much implementation, as the upcoming features are quite essential to determining whether the core game loop will be actually fun to play. I thought all the work I did on v0.1.0 was enough to shift the game over from a prototype to a fuller game, but unsurprisingly, there turned out to be so many more systems that still need to be done.

Just to make it clear, the upcoming updates won't necessarily include all of the things I discuss in these logs. It'll depend on if I manage to implement and polish them to be meaningful enough to include in the update.

Thank you for reading another monthly log on the game! I haven't said this explicitly yet, so to let you know: any ideas and suggestions are welcome, so feel free to post them in the comments, or you can message me on the many places! They don't even have to be particularly intricate: even something as simple as "that idea seems pretty good/bad" can be helpful!

... I would feel a little bad if I didn't include some eye candy in here, so I'll leave you with this:

View Post

Fun Facts & Behind the Scenes - CoG v0.1.0

It's been about a week since the release of the update, so I wanted to share some fun facts and details! (Spoilers incoming if you want to find out for yourself)

Here's some fun details about the game you might've missed!

  • There's an option in the settings that allows you to skip the rail-roading in the tutorial battle.

  • You can keep skipping turns in the tutorial against Cedric to lose... it's not the usual game over.

  • There’s some unique dialogue sometimes when you enter locations where there’s nothing to do... well, one in particular.

  • The “extra draw” rule you get from skipping a turn doesn’t say anything about discarding.

  • You can equip the card you get after Tom’s fight right away, before you fight Vernon.

  • There’s variations on the dialogue you get after beating Tom depending on what Weight you’re at (the overworld dialogue, not the battle ones).

  • By the time you get out of the hospital, all of your opponents have already lost some of their weight. (this one you've definitely missed as there is no way to tell in-game!)

That's about it for the game itself... what about some stories from development?

  • Plursdott, the name of the town is an anagram of 'tlustoprd', which means 'fat-ass' in Czech.

  • I had about 3 variations on the world building brainstormed:

  • 1st, the earliest one considered a universe where The Fattening wasn't a phenomenon, but instead just a normal thing that was part of the world, just like physics. Despite that it was considered taboo and civilians in this universe would scoff at anyone partaking in it. That makes the Stout Group sort of on the fringe of society. In the intro, the player quit their job and decided to join the Stout Group as a last resort. I scrapped this one after realising it would be hard to justify a lot of plotlines and battles if it was considered taboo in-universe.

  • 2nd, I re-wrote it closer to what it is now: a 'secret power', except the tone of it was a bit darker and less jovial. Fatteners would be running amok and causing a lot of issues. In this one, the game would start with the player moving in to Plursdott late at night and getting attacked by Cedric. Gordon would've come in just like in the final version, but instead of saving the player, he would only teach them how to fight back without intervening. This one existed only very briefly while I was trying to change the 1st iteration. It was scrapped pretty soon after because I didn't like the tone for what was primarily a kink game (despite the many dark erotic games out there).

  • 3rd is as you see it in the game, it was about here that I added the short little altercation with Arnold at the start. On a fun note: at some point I considered making it so that 'Fatteners are drawn to other Fatteners for some reason', similar to stand users in JoJo's Bizarre Adventure... It's not stated in the game currently, but it also isn't disproved, so we'll see ;)

  • I had the entire tutorial and intro written for the 1st variation, including the text that occurs during the battle with Cedric. Then I briefly re-wrote it for the 2nd, but scrapped it pretty early in. Finally I re-wrote all of it for the 3rd one, using most of the bits and pieces of the 1st variation. 

View Post

Cards of Gluttony v0.1.0 is out!

Finally after 3 months of work, the first update to CoG is out!

You can find it on my site here: https://oakfells.gitlab.io/cards-of-gluttony/page.html

Or on itch here: https://oakfells.itch.io/cards-of-gluttony

If you've been following the logs, you'll know this is fairly different from the Prototype, which was meant to be more of a showcase of the battle system I had ready at the time. With this update we have some semblance of an intro, tutorial, a deck building system, as well as a simple overworld and one new opponent.

Admittedly it's not particularly long or rich in content, but hopefully you'll be able to appreciate the considerable amounts of groundwork that's been laid down with this! Next on the agenda is... well, adding more content.

Thank you for following the development of Cards of Gluttony.

View Post

Cards of Gluttony Dev Log #2 [20/01/2023]

Another month on the grind!

Most of the time has been spent on building a lot of stuff other than the card game. I've been trying to figure out how exactly I want the actual game to work, how would the player move around, get into battles etc. Well for now I just decided for a simple map based approach where the player can click to visit each location.

This is the map for the town the player will be based in. It's still pretty rough at this stage and I of course expect to add more to it as time goes.

The next thing I needed to work on was some semblance of plot and world building. Well, considering the main draw of the game, I don't expect most people to actually care about the story, but it's neat to have a framing device around which I can build the various battles and opponents you'll meet.

A bulk of the world-building is explained in the intro, in fact it's a bit of a text dump, so a lot of the dialogue might be changed in the future. I'm a little worried the intro is going to be too wordy for some, but there is a handy dandy fast forward button that'll let you skip through the dialogue if you don't care. I'm still unsure about the whole setting of the game in the first place, I played around with a few ideas and scrapped them several times. We'll see if this one sticks around.

So from the previous log and this one, you might have noticed this update won't really have any particularly exciting new additions to the card game aspect, in fact it's probably even more primitive here since you'll start with a small, basic deck and have battles less complex than the Hard variant in the prototype. So apologies to anyone waiting on that end, but a lot of work had to go into laying down the groundwork.

There will be two opponents in the update, one of which is Cedric from the prototype. And the other one is...

... this guy. I'll leave the introductions to when you meet him in the game, but you'll be happy to hear that his weight goes all the way up to 52 unlike Cedric.

That's it for this log! Currently I expect to release the update pretty soon. Probably at the end of this month or at the start of February. Thanks for reading!

View Post

Cards of Gluttony Dev Log #1 [20/12/2022]

Figured I should at least put something up in here! Time for a little update.

I've been hard at work implementing a lot of the systems that'll turn the game into an actual playable thing rather than just a test battle you see in the prototype! So let's go over the screenshots in order:

First up, I've added a few hairstyles to the character customization which should allow for a bit more variety! As much as I like facial hair, beards will unfortunately not see any such options, because unlike hair, there is a separate beard sprite for each of the various weight stages and it would be an *absolute* nightmare.

The deck editor! It would be weird if a card game didn't have any deckbuilding after all. You might've noticed that I changed up the colors for some of the cards. Just more of an aesthetic thing, seeing as Fitness related text and imagery uses the sort of purplish color that didn't use to match the green cards.

Last up we got a shot from the intro featuring the instructor that you'll meet! He'll be there to teach you the basics of battle in the midst of a battle instead of just having a text dump like in the prototype. Of course, throughout the game he'll have more to do than just be a tutorial device.

And to cap things off, if you happen to be reading this post, whether it's still fresh or several months old, thank you for your support! I'm glad this project is something you decided was worth following and supporting!

View Post