Dev Blog - CEO Sim and the whoopsie of Godot 4 HTML Export


I’m a hobbyist game dev and a few year ago when I started on my journey I started with Unity. 

Unity was the one all the Indie games had been made with and I knew it as one of the top two.

Or inversely I knew Unreal Engine to be the AAA game engine and that just sounded daunting to learn.

I got my head around Unity (somewhat), and C# (kinda) and managed to release two games for two game jams. 

Fast forward some time, and some nasty comments by the Unity CEO and I started growing more and more interested in Godot. 

Godot appealed to me, well of course it did. It tickled the part of me that’s always been a supporter of FOSS and it felt more hobbyist friendly.

Not to mention its native coding language, GDScript was very similar to Python, and I could be spared more C#.

So I tried and failed a few times to pick up Godot and then a few things started to stick.

As always the next steps when you start to get confident is to put that learning to practice in a way that stretches you.

So I browsed Itch.io for a suitable Game Jam, which normally means one that hasn’t started yet, has a long development time, and has acceptable limitations. 

I came across the Fuck Capitalism Jam 2023 which ran for an entire month, accepted anything including books, comics, stories, etc as well as games and the brief was really to create something, anything that furthered the message.

So my twisted mind came up with an idea where you play as the CEO and you have to fire staff, to meet financial goals, and hopefully earn your bonus.

Because that’s happening all the time, and it’s happening so much, despite their not actually being a recession, that it’s clearly a game to them.

Initially I thought about making it a schmup but that idea didn’t really stick and what I landed on was a match 3 game.

So I built a match-3 game where you, the CEO, log into an HR portal and begin laying off staff to meet a financial goal set to you by the board.

However, you also need to juggle company morale and the boards approval, and who you lay off has an impact on those.

For example, laying off a white male bothers the board a lot, and does only a little bit to company morale. But lay off a white woman or a person of colour and the board isn’t bothered, but morale tanks.

I also integration current wage-gap statistics into the game. So laying off one kind of person saves you more or less money than another. 

So because a black woman in the United Staes earns about $0.64 per $1 a white man earns, laying off a group of black women in my game is only going to get you 64% money saved that laying off a white man would.

Then depending on what state morale and the Boards approval is by the time you hit your financial goal depends on whether you keep your job as CEO. 

I joined this Game Jam in May, and began tinkering a bit in perparation.

Then like everything in life something came up and it was all of a sudden the middle of June and I had to make a decision. 

The last two game jams I had done, I had ended up rushing until the final hour and I had sworn not to do that again.

But on the other hand I had also told too many people about this game I was totally going to make.

So I double downed and even got an artist friend to make some of the art assets.

Development went like this. 

  • One week building the bare bones following a generic match-3  tutorial online.
  • Three whole days lost to a single bug.
  • Four days of frantic development with the final product being submitted mere hours before the deadline.

The thing that really saved my bacon was my foresight to test deployment early.

The thing that had burned me in the previous two Jams is when your game works perfectly in engine and then you got export it for Itch and everything is broken.

So 24 hours before it was due I started to export the game and to test what problems that was going to cause.

Holy Shit.

Turns out Godot version 4, the version I was using, the newest version, has shit the bed on HTML exports.

Despite saying it’s supported, and it being the backbone of a lot of hobbyist game devs submitting things to game jams, it’s supported in a barebones sense.

For one it uses such an old version of a render that its incompatible with new browser technology, so you have to install a plugin, ONLY use a Chrome based browser that supports this plugin, AND enable an experimental feature in Itch.

Then it magically moves all your assets on export meaning the game can’t find its art.

*** LE FACEPALM ***

After about an hour of thinking I’m screwed last the last hour, mainly because that’s what everyone on Reddit was saying. Turns out it’s common knowledge that Godot 4 isn’t ready for Itch exports yet and it smoking in a future version.

But then some more reading of guides and comments by people far smarter than me got my game working.

Not well, I may add. Still needs a Chrome browser to run, and takes 1-2 minutes to load, often prompting the browser to tell the user the tab should be killed. But it’s the best I could do.

So, the game is live. You can find it here:

It’s steeped in poor game development ability and deep cynicism, but I enjoyed making it and I think its my best game yet (not a high bar)

Enjoy. 

Files

Archive.zip Play in browser
Jun 30, 2023

Leave a comment

Log in with itch.io to leave a comment.