I guess I should announce the Godot Card Game Framework here too, huh?

I don’t know why ,but I haven’t gotten around to posting about this on my blog. Anyway, in case you haven’t noticed, in the past 2 months I’ve been heavily working on a little something called the Godot Card Game Framework.

Read the link to see what it is, but if you are interested to know how that happened, here’s a recap:

After dropping out of OCTGN game development after Doomtown:Reloaded got cancelled by AEG in 2016 ((I dropped out mostly due to burnout and dissatisfaction with the limitations of OCTGN if you want to know)) I was itching to start something to call my own. Especially since I felt all the knowledge I amassed with 5 years of coding card games in python was going to waste. Unfortunately the only programming language with which I really feel comfortable is Python, and PyGame…well let’s just say it leaves a lot to be desired.

Around early 2019, I was almost ready to try learning C# to start learning Unity, but by choice of luck, I happened to search for “Unity using Python” and one of the first results was Godot! And it was perfect! Features to compete with Unity, Lightweight, Free Software and best of all, Python-like syntax! It was as it was made with me in-mind!

After going through the documentation and tutorials I jumped in and started developing a hex-card game hybrid, but I was putting too much effort trying to make things work perfectly and not enough work making an actual game. Also my code was shite since I just did not have enough experience with Godot.

I took a break from that and decided to try and contribute to the Wesnoth Godot port which was fairly new at that point as well. I felt working with more experienced developers would give me some guidance and better coding practices. I did provide some pull requests mostly around documentation (since the whole codebase was utterly undocumented) and some refactoring to remove some “spaghetti”, and then went on a hiatus from development due to life stuff. And when I came back roughly 1 year later, I found out all my comments and contributions had been wiped clean as they refactored the whole thing from scratch and didn’t even bother to keep comments around.

Needless to say, I felt disheartened from that and was in no particular mood to contribute further.

At the same time, I had since started more actively lurking in the Godot subreddit and noticed that quite often, people would post about their progress ((Example post)) with a card-based game they were designing and a ton of people would ask for some source code or other guidance, usually to little to no response.

I even was sometimes one of those people asking for advice, and I know how overwhelming it can be to want to create a game but having no idea where to start.

So I just decided that people need to stop reinventing the wheel, and to that end, I would make something to fill that need information on making a card game with Godot. I had the experience on what a fully automated card game needs, so I might as well use it, gawddamnit!

And If I’m going to do it, I’m also going to do it my way: Extremely perfectionistic! So this means tons of documentation and unit tests. Hell, I even sent PRs to make gdscript docs maker work for my purposes, something which has saved move countless hours of wiki editing.

Progress has been fairly fast since. I didn’t expect I would progress from this to this in less than 2 months! I even have some people sending pull requests which is awesome to see!

And that’s where we are now. I’ve just released v1.4 of the Framework and surprisingly even to myself, I show no indication of slowing down. I have instead started making my first actual game using my own framework, which most of the time just sends me back to add improvements to the framework itself to make it capable of doing what I need.

If you like what I’m doing, I will appreciate all words of support, new issues or feature requests and best of all, pull requests! 😄 ((Just make sure you read the contribution guide))

And if you want to chat further, feel free to hit me on Discord.

Quote of the Day: The Death of Money

Quoth Curtis White:

Through all of this, money remains unmoved. Like Ozymandias, money still says, “submit,” even though its head is rolling around on the ground. It can’t say anything other because it is afraid. Afraid of what happens if we don’t submit. Afraid of what happens when we refuse its work regime and begin to self-organize and self-develop in order to create our own satisfactions—just as we are doing now in many ways. We are beginning to reclaim what Marx called our “rich individuality” in a new way—through local and regional autonomy.

This is pretty much the same thing I was writing in my last post. The lackadaisical way in which the plutocracy is trying to save themselves and the “economy” while disregarding the people who actually live in it, is starting to make more and more people ask them taboo questions.

Capitalism laid bare

The Coronavirus pandemic is making painfully clear to everyone what socialists of all sorts have been pointing out for years: Capitalism doesn’t work!

Nowhere is this more obvious than in the response to the crisis where the “invisible hand of the free market” did absolutely nothing until it was too late and the costs of handling it have become prohibitive. Instead what is actually working is mutual aid. With people springing to the front and volunteering their life, health and even their very lives to help others.

You might see it in all those news about this or that celebrity donating so many millions to the Coronavirus response (we should of course not be praising a billionaire that if effectively giving what amounts to chump change for them, but mass media is gonna propagandize), but it is primarily the thousands of health workers and grocery store employees who are continuing to work with minimal wage and massive health risks because nobody else will. Sure the threat of homelessness is certainly making some people continue to work in life-threatening conditions, but from what I’ve seen, most do it out of a sense of duty. And even if it was the threat of destitution that made doctors and clerks for to their job during a pandemic, it would not exactly be a high praise for the system.

And the free market even now continues to malfunction. Sure a lot of companies are switching only now production to critical provisions, but either they’re doing out of sense of civic duty again (or at least, that’s how they’re portrayed in the media en large), or under pressure from their respective states. Not to mention that the pressures of the capitalist system are putting pressure to non-essential companies to continue operating, putting their workers and the general populace in danger, in order to not collapse.

This situation also makes it blatant on how illusionary money and monetary policy is. When things are going well, it’s all important to save money and “be responsible” and whatnot. But when a crisis comes, money is not important anymore, rather workers are expected to self-sacrifice for the common good, while companies get bailed out and CEOs can just take month-long vacations on their private yachts.

Think about it: For the world, nothing critical has changed. You’re still living in the same house and are getting food and supplies. The people providing supplies are also getting the same things, so they can stay alive and keep working. Now take money out of the equation: Nothing changes.

The only thing that money does in this situation is support the parasitic class of Landlords and Capitalists! We can plainly see that the world will keep turning without them but our ancestors were forced into a fool’s game and people have been running in that wheel out of sheer momentum ever since.

Now that suddenly so many people don’t get any income while their parasites still continue asking their due, people are starting to ask the question: “Wait a minute, why am I even having to give you money?”. And this is why as the bills are coming due, rent strikes and organized action are suddenly becoming widespread. And it’s beautiful!.

And believe me, Capitalists and their bootlickers are shitting their pants right now. The propaganda campaign is going in full-force in places like the /r/coronavirus subreddit whenever posts about rent-strikes rise to the top, but they can’t control it anymore. Governments are dumping trillions (fucking trillions! You can’t even comprehend how big a number that is) into people and companies, hoping to keep the illusion of the monetary system going until thing go back to normal. They literally give money to the workers to pay their landlords so that the workers who don’t have any money left, don’t question why they’re having to pay a landlord in the first place. That’s how desperate they are getting. Last time anything close to as massive happened, they ended up with The New Deal, and they remember!

But this is not going away soon, and the more plutocrats print money to throw at people to pretend the situation is still normal, the more people are going to start to wonder: “If money can just be made out of thin air like that, then what’s the fucking point of pretending it’s necessary?”

Sadly, disaster capitalism can’t let a good crisis go to waste, so we’re already seeing autocratic governments use this opportunity to take as much control as they always wanted. Just take a look at Hungary becoming a full-blown fascist dictatorship, or the Trumpian USA straight-up disemboweling environmental protections as they always wanted (and I fully expect Trump will try to postpone elections indefinitely once things get sufficiently worse, just as well). And on top of that, misinformation is taking advantage of the epidemic news coverage to reinforce denial of climate catastrophe. It’s completely fucked up.

Due to this, if we miraculously manage to contain Coronavirus fast enough, and “save the economy” (i.e. maintain the illusions of the working class) then we’re going to find ourselves in a much worse system. Much more authoritarian and much more dystopian than anything we’ve experienced until now.

However, as is looking much more likely, the endemic corruption of the capitalist class has become so terminal that it has stymied any effective response they might have taken and Coronavirus is set to last for months, if not years. And for the current system based on the absurd concept of infinite growth, this is fatal. And the more this takes to get under control, the more working class consciousness will grow as direct action for mutual aid will replace the state and market (non-)response. And if it grows fast and strong enough, when the system inevitably collapses from abject stagnation, we might just replace it with something wonderful just soon enough to start the massive global work we’ll have to undertake to stave of climate apocalypse.

Coronavirus has come at the worst time for the global capitalist system but as counter-productive as it sounds, the longer it takes to run its course, the better it might be for the future of humanity as a whole, as it lays the species-ending flaws of capitalism bare for all to see.

The interesting times begin

For Humans, Coronavirus by itself might not be as bad as other diseases like the black plague, but for the global capitalist system it might just end up being terminal.

It started by slowing down the productive capacity of the largest owner of means of production, China. It then progressed to disrupting the routine functions of wage-slavery in densely populated city centers. Soon it’s going to cause immense pain due as the landlords demand their parasitic rewards from people who have not earned any money for a month and have no safety net to fall back onto.

All these effects, are like vital organs in a human patient starting to fail. This, along with some other unexpected “inflammations” (such as the Oil trade war), and the people observing and taking bets on the patient’s recovery start to panic.

Which has now caused an unprecedented stock market crash. Faster than even the Great Depression crash of 1929 where we replicated the same percentile loss in less time. And it’s nowhere near the bottom yet, as the Coronavirus has not even fully taken hold of the US yet.

The cancer of the propaganda channel of Fox News and pretty much the rest of the Murdoch empire has weakened our global immune system enough in the past 3 decades that it managed to create the orange malignant tumor known as Trump, who proceeded to accelerate the dismantling of capitalism’s immune system even further. And now, the first real shock has already sent the global system into cascading failure.

The few million deaths due to healthcare systems becoming overwhelmed during Coronavirus are going not going to be nearly as disruptive as the repercussions of a stalled capitalist system supported by central banks which have no more measures to jump start it anymore and bad acting world leaders.

The situation forming right now will probably end up being the biggest Capitalist crisis the world has ever experienced.

Our Coronavirus reaction is like a test run to the climate catastrophe

It amuses me darkly to see the reaction of the so-called “civilized world” turn from schadenfreude at the plight of the Chinese, to denial and worry, to full-blown panic in the past month, as the Coronavirus spreads unchecked to our own communities now.

However I can’t help but see similarities in these reactions to the ones we have to the climate apocalypse, albeit at something like 3 orders of magnitude faster pace.

Like the climate catastrophe, nations not yet affected have been assuming nothing bad will come out of the Coronavirus and that business as usual should continue. Any steps of preparation were sporadic and isolated, from a few “doomers”, often ridiculed by the smug people who assumed this epidemic would simply fizzle out like the Ebola, or SARS.

They don’t realize, of course, that those diseases might have only fizzled out due to an immediate and good response. But it’s on our nature to label any successful attempt to prevent the worse as an “over-reaction” to something that “wouldn’t have been a big deal”. Frustratingly I see this daily in how many companies perceive investment in their IT departments as an overall loss.

The calls of “climate panic” of climate deniers map very well to the denials and conspiracies created by people when Coronavirus first appeared on the scene. It is for this reason that Europe and US have completely squandered all the time and lesson bought by the Chinese response. And by the time the effects of the pandemic were felt in the western cities, it was way to late to mount an effective response, and the cost of that response is likewise orders of magnitude what it could have been had measures been taken early enough.

Likewise, by the time the real effects of the climate catastrophe start being felt in an undeniable manner, it will be way too late to salvage it. The cost to the existing sociopolitical systems will be prohibitive and thus nothing significant will be effected.

The people in power assume that they will be spared the worst of a catastrophe, but as Coronavirus spreads indiscriminately and the old plutocrats realize their money cannot shield them, so will the collapse of modern civilization from climate catastrophe make their power vanish into thin air as their private security forces realize who has the power in an apocalyptic situation.

The worst thing in my opinion is that we cannot even use this epidemic as an effective wake-up experience because of the timescale of the climate. To mount an solid response to the global warming, we should have started 30 years ago, but like Coronavirus, we simply squandered out rime into business as usual because “it hasn’t happened yet”.

In the scale of climate Catastrophe I speculate we are at the phase Coronavirus was two weeks ago. Some isolated nations have felt the brutal effects, but they were either not significant enough, or those nations themselves could somehow be blamed for it. By the time the climate catastrophe finally manages to panic as many people as Coronavirus has today (5-10 years I expect), it will be too late to do much about it.

My theme kinda died

And I’m not in the mood to fix it anymore. I used a heavily customized HemingwayEx ever since I started this blog, but it’s been unmaintained for the past 7 years and I noticed recently that my homepage is now all wonky. Plus sporadically people had been complaining about readability.

Since I don’t post that much anymore, I think it’s time to go to something more standard, so I just selected one of the wordpress defaults for now. Feeling cute, might change later 😀

Looks like the police is unable to catch a scammer for the past 10 years

More than 9 years ago, I posted that the one scam artists that I fell victim to (because of good fucking heart) was still at large. I just found out that he’s been going around unmolested in Europe ever since and there’s a huge thread about that one guy by now in a French forum.

He changes names and nationalities constantly, so any information I provided about him is way obsolete by now, but his face and sob story should remain approximately the same.

On celebration

Ever since I left school I remember I was not big on celebrating my birthday. I don’t say this as any sort of boast, but rather because an event today made me realize something about the concept of celebration and by extension, birthdays.

You see, I just passed an IT certification exam that I felt was fairly difficult. I did the usual and posted about it on Facebook and LinkedIn and whatnot because I was overjoyed I made it. Naturally I wanted people to interact with me about this achievement which is why I broadcasted this online, so I obviously I have the drive to want to share things about my life. However I’m not the kind of person who wants to try and rub it in people’s faces to make them interact with me, so that’s as far as I usually go.

Anyway, at the semi-humorous advice of a colleague on chat, I decided to anyway bring some croissants to work to mark the occasion. What natively happened is that everyone who stopped by to pick one up, also congratulated me about the occasion. and some also asked for more details and ended up having a nice conversation about my experience. Naturally this was very pleasing to me, as I received more positive attention than usual. Certainly more than I would have gotten if I simply came to my desk as any other day.

This is, I expect, normal. People don’t much care about other people achievements and if I went around just announcing it to people unsolicited, it would sound boastful and forced. People might even resent me for thinking I’m trying to rub it in their faces. Typically this is why I tend to not to play up any of my achievements.

In that sense then, me buying a round of croissants for everyone, is sort-of like paying for their attention in a socially-acceptable manner. The croissant is free, but there is an unwritten expectation that you positively interact with the person that brought it!

This has probably been consciously or subconsciously obvious to most of you, but it never really clicked for me until now. I bring snacks now and then, like everyone, but it was more of a guilt-thing. “Everyone is bring stuff on occasion, so I guess I should be doing that as well”. The dynamics of the situation are simply more clear to me now and I felt I had to share.

As I mentioned, this led me to thinking a bit further about birthdays as well, and why I don’t really care to celebrate them. The birth of concept of celebrating birthdays is lost in history, so I’ll guess we’ll never truly know, but It feels to me that birthdays must effectively be tradition that begun when human life was much more easily ended than it is today. Especially since children mortality was sky-high before the advent of modern medicine. Thus surviving for a whole year into your life, especially as a child, is a noteworthy event, and naturally, an occasion on which you might want to reminisce about the past year as well.

Therefore, I think I instinctively stopped caring about my birthdays because they in turn do not feel like an achievement. At this point of my life, it’s not difficult to survive another year, and thus I feel no reason to make it a big deal.

To wrap it into the concept I explained above, I see no reason to “bribe” people to interact with me about something I have nothing to say.

And yes, I realize I sound like a robot learning about human emotions 🙂

On Game Design motivation

There’s been quite a bit of progress on my game engine since the last time I posted about it. I now have playable cards, building placement, effect automation, ability to manipulate elements on a hex map and a research pile. All in all, it has taken me approximately 35 hours to reach this stage which feels pretty decent for someone who’s never used Godot or built a video-game from scratch before, but I think a lot has to do with my time building card game plugins in OCTGN.

I even created a Godot demo on how to merge hexagons into tilemaps, which is the question I was asking last time 🙂

Unfortunately, while my coding has already caught up to the rudimentary design I had drafted, I feel like I’ve been procrastinating from furthering the existing design by losing myself into the code. I even started making Unit Tests rather than progress the game’s design.

Funnily enough, I initially thought that the game design would be the easy part, and actually making the engine to run it, was going to be overwhelming. However now that my basic code has provided me a platform to create fast iterations on design (which is why I wanted to start with the engine before I has a working prototype), I find that when I’m going back to complete the design game, I find that overwhelming.

I have to make it interesting? And exciting? And variable?” Uuuuugh! Can’t I just code existing mechanics instead? At least then I have a tangible goal and I’ll know when I’ve achieved it.

My stupid internal monologue

I’ve always been much better at expanding what was already there than making something from scratch, and it is a “muscle” I’ve never trained before. It will take me a while before I’m not instinctively afraid of the amount of work I have to do. That’s my main procrastination trigger.

I have to keep reminding myself: I do have experience in game design, did tons playtest organizing, got ~25 years of boardgame experience, and now I know enough of a video game engine to perform game design iterations at a speed others can’t match. This is doable for me, damnit!

And yet, every time I open my design document, my brain tries to run out of my head.

Anyway, here’s a random screenshot.

So I started making a game

Oof, update frequency here has decreased dramatically hasn’t it? Oh well, I blame the new social media taking over how we consume updates. Also, I haven’t felt the urge to keep waxing politically lately as most I can think off in that regard are rants and nihilism.

Nevertheless, I do have something new I’m doing, which is that I started using The Godot Engine to finally create The Game I Always Wanted To Play But Nobody Would Make (TM).

Initially I was looking at using pygame since Python is the only language I feel comfortable enough to use for something as complex as that, but my first foray into documentation and examples was a complete disaster. Most the code samples in the pygame repository I tried, led to dead links and the documentation was difficult to get into.

I then left things simmer for a while until I run into Solar Settlers which is surprisingly similar to the concept I have in my head and that kickstarted my drive to continue development as it showed I could do a very minimalist game and still achieve the gameplay I wanted. I checked with the author who pointed me to Unity, which unfortunately does not support python. Howevever I was lucky enough that one of my searches on using python with Unity brought me to Godot and it was “love at first sight”.

You see, Godot is like Unity, but, very importantly, using an Open Source licence (MIT) and its scripting engine, while not python, uses exactly the same syntax and has lot of the same methods. This should theoretically allow me to get a much better running start than having to also learn C# to work with Unity.

So I’ve started doing this on my free time lately, following the great step-by-step tutorials to get me into how Godot handles things, and past few days I’ve started creating a basic setup for me to test and iterate the game rules, without having to use Pen&Paper.

And the speed by which I’m able to do things now has been amazing! I got me a hex map, and a card-drawing mechanism already! It may look like absolute shite, but it’s there 🙂

Things really do feel overwhelming when starting something like this from scratch. I have almost no idea what the hell I’m doing most of the time and I just keep hacking at it until things eventually work. It would be even worse if I at least didn’t have python knowledge already. Hopefully my motivation will last longer than my patience 😀

Also, if anyone wants to help me implement this hex guide into Godot (because I have no idea how to connect the two), lemme know. I could use all the help I can get!