The Tower

Last week Mike introduced this neat Jam game to me: The Tower.

The premise is simple. You are climbing a tower with 100 floors. At each floor, you roll a d100. If it is higher than the floor you are in, you go up. If it is lower, you go down.

Screenshot of "the tower" game. Two human characters are in a dungeon-like room, with a bookcase nearby. An upstairs is behind a bubble door. On the right, a text prompt says: "Floor 1, Rolling... need 1+ got 20. Floor 2, Rolling... need 2+ got 85. Floor 3, Rolling... need 3+ got 74.
The beginning of the tower, from the project’s itch page.

What makes this game really fun is the great use of tiles, colors and text.

Each floor is unique, from traditional tower rooms, to parks, to caves, to more weird stuff. In some of the floors you can talk to people who are trying to climb or leave the tower, or just decided to live where they are.

Every floor has only three colors, and there are several visual and audio glitches, giving everything an uncanny vibe. And as you go up, the probability of going up goes down. You slip a few floors, and you start to calculate in your mind how unlikely it would be to get all the way to floor 100. And the game gets more and more glitch-y as you go up.

You start to think: Is there a trick to the tower? Is the dice fair? (Spoilers after the next image. Go play the game)

Animation from "The tower" game. The character talks to a person nearby, who says they want to go up the tower, but need to stay behind to take care of another character. The number 25 in the bottom right indicates this is the 25th floor of the tower.
Climbing a few floors, there are lots of people inside the tower… lost? (Image from the project’s itch page)

The first time I played this game, I went up to floor 43. I wanted to go all the way to 50, since that would be the midpoint where it would be more likely to go down than up, but gave up after a few slips.

I told people how amazing the game was on wandering.shop, and was planning on putting the game behind me, but got a lot of feedback on my suggestion. So last Sunday I decided to give the game a go again, and found out that it was available on the pico-8 BBS. Which means that I had access to the games’ source code. (Real spoilers after the next image)

A picture of heavily obfuscated LUA code, followed by some ascii art.
When you open the source code, you are greeted by an obfuscated mess, and some nice ascii art.

The source code of the game was very compressed. They used every single compression trick they could to fit all the tiles, text and the 100 levels. But it was fun that there was a large ASCII art right at the top of the code, like a welcome mat. I started digging through the code, and soon found the most important thing.

The dice roll is a fair one. No tricks (AFAICT). And it was easy to fix the dice to roll 100 every time. And so I did it.

A screenshot of The Tower game. It shows floor 99. Many doors stand between the upstairs and downstairs.
Floor 99. Good luck going through it the fair way.

Playing with god dice was, to be honest, a scary experience. When you roll a 100 in the game, a little happy tune play. But it seems that every time you roll it, a little counter or something goes inside, distorting things a little bit. Normally you can’t notice it, since you roll 100’s so rarely, but by floor 40 my sound was getting really distorted.

As I climbed the tower, things started to get more and more glitch. The music started to feel like someone scratching a blackboard. fake tiles started appearing everywhere, and sometimes replaced the real tiles. Sometimes they would replace the path or the upstairs, and I had to quit and reload the game.

Was this the game rebelling against my cheat? Or was this the expected experience? How could some one survive this glitch-land going up and down infinitely on fair dice?

The characters also got “glitch-y”, speaking really spooky things. What started as a quirky indie game soon became really creepy.

And when I got to the top…

Well, I will leave that last spoiler for you. If you want, leave me a message and I’ll tell you how to fix the game. But if you know how to use pico-8, it should not be very hard.

Just don’t be stupid and do it late at night like I did! Or do it! Maybe it is better that way :#

Game Review: The Longing

Content Warning: Spoilers for “The Longing” (after the first paragraph), and discussions on suicide.

One of the games that left the biggest impression in me recently is “The Longing”. The Longing is a German indie game, with an interesting premise: The King of the Underworld decided to sleep for 400 days, and created a shade to watch over his kingdom and wake him up after 400 days have passed. You control this shade. The key idea is that the game runs in real time, and time goes on even when the game is closed. So, in theory, you could start the game, leave it, and come back after 400 days to wake up the King and finish the game. Of course, there is much more to the game than this. I highly recommend it! (spoilers after the picture)

Screenshot of the game The Longing. This shows the very start of the game, when the huge king of the underworld holds the shade in its hand, and says: Wake me when the time has come, to end all fear and longing...
The latest technology in alarm clock AI

Of course, the interesting part of the game is how you choose to spend those 400 days. You can walk around and explore the underground kingdom, which is full of rooms with a magical look, beautifully painted, with very atmospheric music. You can collect interesting things that you find in your explorations, and bring them back to your room. One of the coolest little idea in the game is that you can pick up books through the cave and, after you bring them back to your room, you can read those books. The books are actually real world books, such as Moby Dick, and you can even add extra books to the game to read them in your cave — an interesting twist on the e-book reader.

The game part is that, in the beginning, you can only access part of the underground kingdom. Large parts of it are blocked off. To access the blocked off parts, you have to solve little puzzles. Many of the puzzles are time related. For example, one of the first blocks is a pit with a crumbling stalactite above it. When you look at it, the shade comments something like “that stalactite should break and fall in a few weeks”. And, in fact, if you wait some weeks, the stalactite will fall and you will be able to cross. There are other puzzles that require your active involvement, but most of them still require you to wait large amounts of time.

This, along with the very slow, deliberate walking speed of the shade, make The Longing a very introspective game. At least for me, I was often thinking about what it meant to live in such a limited environment where time goes on so slowly. Even with all exploration and puzzles, 400 days is a lot of time. There is a way to make time go by a little faster: If you improve your home by adding decorations to it, time will go a little bit faster when you are inside, and a bit faster still if you read books in a well furnished home. However, at the fastest, the 400 days should go by in about two or three months of real time. (ending spoilers after the next image)

Screenshot for the game The Longing. The Shade (main character) is sitting in a sofa inside a cave, reading a book. The cave has several drawings hanging on its walls, and a small rug under the sofa. The image evokes a cozy feeling.
A nice place to wait for the end of the world.

However, even will all time acceleration options, you should still run out of things to do long before you run out of time. Then what do you do?

One of the core questions of the game is about whether the shade leaves the underworld or not. In the beginning of the game, the shade is told that it can do whatever it pleases, but it cannot leave the underworld. As the shade explores the caves, it starts getting worried that it would displease the King if it keeps going. Of course, many meta-things in the game pointing to “leaving the underworld” as something the player should strive for. But still, the choice to stay is a very valid question inside the game.

The game also allows the shade to take its own life. When I found this option, I was looking for the way out of the caverns, but I took a wrong turn. Then I found myself at the edge of a precipice, where the game zoomed all the way out, tense music played, and a light could be seen at the bottom of the precipice. At that point in the game, I was not spoiled and thought that “getting out of the caves” was a metaphor for the Shade jumping off the precipice. That thought really shook me in a way that no game had touched me before. It was not only that the option of suicide existed, but that it made so much sense: By that time in the game, I had finished exploring most of the rest of the caves, and turned my house into a very comfortable place. I had everything that I wanted but at the same time nothing much else to look forward to other than to spend my time doing nothing until the end of time arrived. It echoed a lot of life questions that I had on my mind. To see those questions reflected in the game, I had to turn it off and put it down for a few days.

When I came back, I decided to spoil myself in that question (was leaving the caves a metaphor for suicide?) and found out that no, I had just missed a turn in another part of the cave that I did not notice. Suicide in The Longing was a only a shortcut to a bad ending. My impressions were nothing more than me putting my own baggage into the game. Still I found it interesting that a game could serve as a vessel for such deep reflections.

Making the ActivityPub wordpress plugin work

After I installed the ActivityPub plugin, I couldn’t actually find myself from the Fediverse. WordPress “sitehealth” tool gave me an unhelpful message that my webfinger was not returning valid JSON.

In fact, it was not returning anything at all! Searching for my website on “https://webfinger.net/lookup” returned a 404 result.

After a lot of online searching, I figured the problem (with the help of the ActivityPub github discussion board) – I had not set up pretty permalinks in the blog.

The solution was to change my Apache configuration to allow redirects. I did this by changing the configuration file for this website with the following info:


(... other configurations ...)
AllowOverride all

That did the trick!

If you have the same problem as I do, but you cannot change your apache configuration, another workaround is to manually create the webfinger file, following this thread.

Pandemic Changes

I took some time today to organize my finances. I downloaded all CSVs with my monthly expenditures from my credit card provider, and made similar files by hand for my bank. Then I prepared a simple script to parse these files, categorize them, and unify them.

There is still a bunch of stuff to do, but I hope that this will give me a better ability to visualize where my money is going, so that I can plan how much I want to allocate for savings, fun, self-care, and charity.

Anyway, one thing that I noticed was the huge change in my bank transaction patterns pre and post pandemic. Simply speaking, pre-pandemic I had A LOT going on in terms of income and outcome, most of it my expenditures with work trips, and reimbursements from the university. It was super confusing to understand the numbers from that era. After the pandemic hit, work travel went to zero, as well as dining out and holiday trips, so my finances became minimal. Salary, rent, utilities, a bit of online shopping, that’s it. I guess that is one way to think about the changes of the pandemic.

Now I’m starting to get international travel back on the menu, I should do a better job of organizing that than I did before.

Also, somewhere in early 2021 I took a very small pay cut. I need to figure out what that’s all about.

Gosh, I’m getting old…