<rss version="2.0">
  <channel>
    <title>games on Ville Saalo, moi! 👋</title>
    <link>https://ville.saalo.moi/categories/games/</link>
    <description></description>
    
    <language>en</language>
    
    <lastBuildDate>Fri, 07 Aug 2026 14:45:26 +0300</lastBuildDate>
    
    <item>
      <title>City builders</title>
      <link>https://ville.saalo.moi/2026/08/07/city-builders.html</link>
      <pubDate>Fri, 07 Aug 2026 14:45:26 +0300</pubDate>
      
      <guid>http://zeroone.micro.blog/2026/08/07/city-builders.html</guid>
      <description>&lt;p&gt;I like my &lt;a href=&#34;https://en.wikipedia.org/wiki/City-building_game&#34;&gt;city builder games&lt;/a&gt; as much as the next guy. I&amp;rsquo;ve played them since &lt;a href=&#34;https://en.wikipedia.org/wiki/SimCity_2000&#34;&gt;SimCity 2000&lt;/a&gt; and earlier this year wrote about &lt;a href=&#34;https://ville.saalo.moi/2026/03/21/how-to-build-an-airport.html&#34;&gt;TheoTown&lt;/a&gt; already.&lt;/p&gt;
&lt;p&gt;Last week I stumbled upon this guy &lt;a href=&#34;https://www.youtube.com/watch?v=4heM4MqK82w&#34;&gt;jamessimo on YouTube who&amp;rsquo;s creating the city builder of his dreams&lt;/a&gt;: a game with no grid whatsoever, with parcels of land of arbitrary shapes and sizes. Traditionally these games have been strongly grid-based, even if &lt;em&gt;Cities: Skylines&lt;/em&gt; popularized a method where your roads can curve freely, yet the buildings next to them are always placed on a (rotated) grid.&lt;/p&gt;
&lt;p&gt;I really like jamessimo&amp;rsquo;s clear and calm explanations of the systems in his game. He&amp;rsquo;s an experienced software engineer by trade and has already been working on his game for a couple of years. There&amp;rsquo;s a &lt;a href=&#34;https://www.youtube.com/watch?v=BoqK5wOGpfU&#34;&gt;part 2 of his series already available as well&lt;/a&gt;, detailing his traffic simulation model.&lt;/p&gt;
&lt;p&gt;While looking into city builders I discovered there is, of course, a city builder subreddit, &lt;a href=&#34;https://www.reddit.com/r/CityBuilders/&#34;&gt;r/CityBuilders&lt;/a&gt;. There, someone had recently announced a new game called &lt;em&gt;&lt;a href=&#34;https://www.crazygames.com/game/traffic-architect-tic&#34;&gt;Traffic Architect&lt;/a&gt;&lt;/em&gt; which I ended up playing on my phone for quite a while. It&amp;rsquo;s a sub-category of city builders, I guess, where you only focus on making the traffic flow as efficiently as possible. New buildings pop up, new pieces of the map open up, and you unlock new road types. Eventually the game ends once your road network is gridlocked enough. The game reminds me of &lt;a href=&#34;https://store.steampowered.com/app/287980/Mini_Metro/&#34;&gt;Mini Metro&lt;/a&gt;, or maybe more accurately &lt;a href=&#34;https://store.steampowered.com/app/1127500/Mini_Motorways/&#34;&gt;Mini Motorways&lt;/a&gt;. Traffic Architect is also &lt;a href=&#34;https://store.steampowered.com/app/5028050/Traffic_Architect/&#34;&gt;coming to Steam&lt;/a&gt; as an improved version, but the browser-based game will stay free, the author says.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>How to build an airport in TheoTown</title>
      <link>https://ville.saalo.moi/2026/03/21/how-to-build-an-airport.html</link>
      <pubDate>Sat, 21 Mar 2026 20:31:00 +0300</pubDate>
      
      <guid>http://zeroone.micro.blog/2026/03/21/how-to-build-an-airport.html</guid>
      <description>&lt;p&gt;A while back all the windows in our apartment were replaced, which necessitated that we clear the space in front of the windows. This included the table on which my desktop PC is located and that my kid uses to play &lt;em&gt;&lt;a href=&#34;https://store.steampowered.com/app/949230/Cities_Skylines_II/&#34;&gt;Cities: Skylines II&lt;/a&gt;&lt;/em&gt;, so we needed a temporary replacement city-builder for mobile. I had heard of this game called &lt;em&gt;&lt;a href=&#34;https://hi.theotown.com&#34;&gt;TheoTown&lt;/a&gt;&lt;/em&gt; and went with that, and it turns out it feels immediately familiar for those who have played &lt;a href=&#34;https://en.wikipedia.org/wiki/City-building_game&#34;&gt;city-builders&lt;/a&gt;, especially of the older type like &lt;em&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/SimCity_2000&#34;&gt;SimCity 2000&lt;/a&gt;&lt;/em&gt;, which is nice.&lt;/p&gt;
&lt;p&gt;In the game I, for some reason, found it very unintuitive on how to build an airport. You cannot just plop it down and be done with it, no, you need to place all the runways and individual buildings separately. So, in case you&amp;rsquo;ve ever wondered how to build an airport in TheoTown, here&amp;rsquo;s a set of detailed instructions on how exactly to do that.&lt;/p&gt;
&lt;p&gt;First, navigate to the Transport menu and the Airport submenu. There, select Airfield and then create some area on your map. Remember, an airport takes a lot of space, but you don&amp;rsquo;t need to get it right the first time, as the buildings will conveniently expand the airfield area:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown01.png&#34; alt=&#34;TheoTown airfield area.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Then, build the Tower. Here you can see I&amp;rsquo;ve placed the tower to the corner of the airfield and it has expanded the area even over the road &amp;ndash; which is not a problem. When you&amp;rsquo;re placing the tower some squares around it will have a yellow outline, and those are just the squares that will become Airfield area:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown02.png&#34; alt=&#34;Airport Tower under construction in TheoTown.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Then, build an entry. I would place this next to a road, as it allows people to enter the airport. Note that when you&amp;rsquo;ve selected this building the map will display red squares. Do not be alarmed, those are just illustrating the noise. (You should not have residential buildings in noisy areas.)
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown04.png&#34; alt=&#34;Airport Entry being placed in TheoTown. Red squares depict noisy areas.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Next, you are going to need a Gate. There&amp;rsquo;s a few options, pick any that pleases you. Note that the Gate will need to be connected to a Runway with a Transport road later on, so put it somewhere where it has access to your future Runway. Note, the squares with the yellow outline again depict the area that is going to be extended to become Airfield:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown09.png&#34; alt=&#34;Airport Gate being placed in TheoTown.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Once the Gate is completed you will see a red road symbol over it, meaning it&amp;rsquo;s not connected to a Runway (well duh), so let&amp;rsquo;s make a Runway. Select it from the menu and tap somewhere on the map, and it&amp;rsquo;ll look like this:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown15.png&#34; alt=&#34;Placing a Runway.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Now this is where it got confusing to me. I&amp;rsquo;ve tapped the square that&amp;rsquo;s now marked with a black-and-white pattern, but there are also rows of squares outlined with yellow and green. The trick is to now tap one of the green squares, because that will give the Runway the width it needs:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown15-marked.png&#34; alt=&#34;Tap here.&#34;&gt;&lt;/p&gt;
&lt;p&gt;And voilà:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown16.png&#34; alt=&#34;Newly created Runway.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Now create that Transport road between your Gate and Runway. Those you create just like any other roads:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown19.png&#34; alt=&#34;Transport road created.&#34;&gt;&lt;/p&gt;
&lt;p&gt;&amp;hellip;And we&amp;rsquo;re still not there yet! Now we need to get planes and assign them to Runways &amp;ndash; or &lt;em&gt;lanes&lt;/em&gt;, as they&amp;rsquo;re now called in the setup system. Tap on any of your Airport buildings to open the specialized Airport view:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown20.png&#34; alt=&#34;The Airport view, pretty empty for now.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Then unlock a lane:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown21.png&#34; alt=&#34;The airport view showing one unassigned lane.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Then click Assign and it takes you to a map where you need to tap your Runway:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown22.png&#34; alt=&#34;Now tap on a Runway.&#34;&gt;&lt;/p&gt;
&lt;p&gt;OK, the lane has been assigned to your Runway! Now we&amp;rsquo;re only missing some planes! Tap the Add button with the plane icon on your new lane:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown23.png&#34; alt=&#34;Lane still needs a plane.&#34;&gt;&lt;/p&gt;
&lt;p&gt;You&amp;rsquo;ll now see an empty list of planes, so click Add, then buy one of the available planes:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown24.png&#34; alt=&#34;No planes here yet, add one.&#34;&gt;
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown25.png&#34; alt=&#34;Buy a plane.&#34;&gt;&lt;/p&gt;
&lt;p&gt;After you&amp;rsquo;ve bought a plane, select Use this one:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown26.png&#34; alt=&#34;A list of planes, with one plane.&#34;&gt;&lt;/p&gt;
&lt;p&gt;And there you have it, your Airport is actually ready and functional now:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown27.png&#34; alt=&#34;A properly configured airport.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Return to the map and wait for a while, you should catch a glimpse of a plane visiting your new airport!
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown28.png&#34; alt=&#34;A plane on the Runway.&#34;&gt;&lt;/p&gt;
&lt;p&gt;If you check your Financials now, you should see the airport is hopefully making more money than it&amp;rsquo;s spending &amp;ndash; I created it in the sandbox mode with unlimited money so my financials are just theoretical, but if your city has an actual budget then your airport should bring you some money in. In my case the airport brings 2.59KT of income and spends 1.90KT, so it&amp;rsquo;s solidly 0.69KT positive cash flow:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown31.png&#34; alt=&#34;Airport income.&#34;&gt;
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown32.png&#34; alt=&#34;Airport spending.&#34;&gt;&lt;/p&gt;
&lt;p&gt;Finally, feel free to expand your airport with new gates and runways and planes:
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2026/theotown37.png&#34; alt=&#34;A new Runway has been built.&#34;&gt;&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Elevator Saga game</title>
      <link>https://ville.saalo.moi/2025/07/16/elevator-saga-game.html</link>
      <pubDate>Wed, 16 Jul 2025 13:11:22 +0300</pubDate>
      
      <guid>http://zeroone.micro.blog/2025/07/16/elevator-saga-game.html</guid>
      <description>&lt;p&gt;What should happen if you&amp;rsquo;re on the tenth floor of a building and push the button to call an elevator? Obviously, the elevator should come to you. But what if it&amp;rsquo;s going up at the 11th floor at the moment, as someone told it to take them to the 15th floor? Well, do that first, then get to the tenth floor. But what if, meanwhile, someone calls it to the 14th floor, wanting to go down? Maybe pass that floor when going up, but stop there on the way down to the tenth floor. But what if you, on the tenth floor, want to get to the 16th floor? Maybe pass the person waiting the 14th floor after all. And what if there are multiple elevators in the lobby, which one should be dispatched and where?&lt;/p&gt;
&lt;p&gt;Since I wrote the &lt;em&gt;&lt;a href=&#34;https://ville.saalo.moi/2025/07/10/robot-battle-an-old-windows.html&#34;&gt;post about Robot Battle&lt;/a&gt;&lt;/em&gt;, I&amp;rsquo;ve been looking more into the &lt;a href=&#34;https://en.wikipedia.org/wiki/Programming_game&#34;&gt;programming game&lt;/a&gt; genre. I found this little gem called &lt;a href=&#34;https://play.elevatorsaga.com/&#34;&gt;&lt;em&gt;Elevator Saga&lt;/em&gt;&lt;/a&gt;, where you need to program elevators in increasingly complex buildings. It nicely makes you question the simple assumption that an elevator should &amp;ldquo;just&amp;rdquo; come to you when you call it.&lt;/p&gt;
&lt;p&gt;Programming an elevator is a classic exercise in computer science, but &lt;em&gt;Elevator Saga&lt;/em&gt; abstracts away all the scary stuff like threads, deadlocks, and mutexes, instead offering a simple but powerful enough &lt;a href=&#34;https://play.elevatorsaga.com/documentation.html&#34;&gt;Javascript API&lt;/a&gt; (e.g. &lt;code&gt;elevator.goToFloor(3);&lt;/code&gt;). You also don&amp;rsquo;t compete against anyone else in this one, so it&amp;rsquo;s peaceful enough. It&amp;rsquo;s weirdly satisfying. Give it a go if you’ve ever wanted to micromanage a box on a pulley. You can&amp;rsquo;t do much worse than the &lt;a href=&#34;https://hitchhikers.fandom.com/wiki/Happy_Vertical_People_Transporters&#34;&gt;Sirius Cybernetics Corporation&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Modern elevators are strange and complex entities. The ancient electric winch and &amp;ldquo;maximum-capacity-eight-persons&amp;rdquo; jobs bear as much relation to a Sirius Cybernetics Corporation Happy Vertical People Transporter as a packet of mixed nuts does to the entire west wing of the Sirian State Mental Hospital.&lt;/p&gt;
&lt;p&gt;This is because they operate on the curious principle of &amp;ldquo;defocused temporal perception.&amp;rdquo; In other words they have the capacity to see dimly into the immediate future, which enables the elevator to be on the right floor to pick you up even before you knew you wanted it, thus eliminating all the tedious chatting, relaxing and making friends that people were previously forced to do while waiting for elevators.&lt;/p&gt;
&lt;p&gt;Not unnaturally, many elevators imbued with intelligence and precognition became terribly frustrated with the mindless business of going up and down, up and down, experimented briefly with the notion of going sideways, as a sort of existential protest, demanded participation in the decision-making process and finally took to squatting in basements sulking.&lt;/p&gt;
&lt;p&gt;An impoverished hitchhiker visiting any planets in the Sirius star system these days can pick up easy money working as a counselor for neurotic elevators.&lt;/p&gt;
&lt;p&gt;&amp;ndash;Douglas Adams, &lt;em&gt;The Restaurant at the End of the Universe&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;And finally, here&amp;rsquo;s a screenshot of the game:&lt;/p&gt;
&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2025/38f19eddea.jpg&#34;&gt;</description>
    </item>
    
    <item>
      <title>Robot Battle, an old Windows game</title>
      <link>https://ville.saalo.moi/2025/07/10/robot-battle-an-old-windows.html</link>
      <pubDate>Thu, 10 Jul 2025 23:24:48 +0300</pubDate>
      
      <guid>http://zeroone.micro.blog/2025/07/10/robot-battle-an-old-windows.html</guid>
      <description>&lt;p&gt;In the 1990s and early 2000s I played this great game called &lt;em&gt;Robot Battle&lt;/em&gt; by Brad Schick. It&amp;rsquo;s an open-ended &lt;a href=&#34;https://en.wikipedia.org/wiki/Programming_game&#34;&gt;programming game&lt;/a&gt; where you use a programming language called Robot Scripting Language (RSL) to program battle bots to shoot at each other. The bots look like tanks, consisting of a tracked body, turret, and radar. The arena is viewed from top-down and, in addition to the robots, would also contain mines that you would want your robots to avoid, and cookies that give you more energy. The game relied heavily on its community, initially connected via the Robot Battle Mailing List (RBML), later via the Robot Battle Registry web forum.&lt;/p&gt;
&lt;p&gt;The Robot Scripting Language would allow you to program in a purely sequential way, checking various inputs one at a time and reacting to them, or in a more advanced event-driven manner. The game shipped with a few example robots and a manual that got you going. Once you were ready to test your bot, you would unleash it into the arena with others. At this point you became part of the audience, no longer able to affect the outcome. Usually you&amp;rsquo;d also want your robot to play multiple games so that you could say with more confidence that your robot beats the other or others, say, 67% of the time.&lt;/p&gt;
&lt;p&gt;Robot Battle 1.4 was a significant update from 1.3. The former version was created for &lt;a href=&#34;https://en.wikipedia.org/wiki/Windows_3.1&#34;&gt;Windows 3.1&lt;/a&gt; whereas the latter was natively for &lt;a href=&#34;https://en.wikipedia.org/wiki/Windows_95&#34;&gt;Windows 95&lt;/a&gt;, allowing it to run even on today&amp;rsquo;s Windows with no issues! The older version, however, needs an emulator. I&amp;rsquo;ve successfully been using &lt;a href=&#34;https://github.com/otya128/winevdm&#34;&gt;winevdm&lt;/a&gt;, where you just drag and drop your .exe file over &lt;code&gt;otvdmw.exe&lt;/code&gt; to run it.&lt;/p&gt;
&lt;p&gt;I was unable to find any gameplay videos of the game &amp;ndash; unsurprisingly, as YouTube didn&amp;rsquo;t exist until 2005 and recording your screen wasn&amp;rsquo;t really a thing yet. Anyway, I decided to rectify the situation and just recorded some battles between the sample bots myself. Here&amp;rsquo;s version 1.3 in action:&lt;/p&gt;
&lt;iframe width=&#34;560&#34; height=&#34;315&#34; src=&#34;https://www.youtube.com/embed/5QI2IpUr3-E?si=EYGeY1S6jJghUjuN&#34; title=&#34;YouTube video player&#34; frameborder=&#34;0&#34; allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;And here&amp;rsquo;s version 1.4:&lt;/p&gt;
&lt;iframe width=&#34;560&#34; height=&#34;423&#34; src=&#34;https://www.youtube.com/embed/rctcuyfTAEI&#34; title=&#34;Robot Battle 1.4&#34; frameborder=&#34;0&#34; allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;Version 1.4 looks better and has more options, including bigger arenas. However, if you are seriously debugging your robots in it, you&amp;rsquo;ll probably want to use the high contrast skins for them, which makes it much easier to see where each part is pointing, though it also mutes the visual flair.&lt;/p&gt;
&lt;p&gt;While doing some light research for this post I came across &lt;a href=&#34;https://robocode.sourceforge.io/&#34;&gt;Robocode&lt;/a&gt;. It was started in 2000 and is still being maintained. Robocode was &lt;a href=&#34;https://robocode-dev.github.io/tank-royale/articles/history.html&#34;&gt;directly inspired by Robot Battle&lt;/a&gt;, but in Robocode you program in Java (or, in the later version called Tank Royale, any language that can talk to its API!). Looks interesting for sure! Other current examples of programming games are &lt;a href=&#34;https://battlecode.org/&#34;&gt;Battlecode&lt;/a&gt; by MIT and &lt;a href=&#34;https://screeps.com/&#34;&gt;Screeps&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Finally, a funny anecdote. Years after my most active time in Robot Battle I was on some programming course in the university. I got assigned to a group with some people that were previously unknown to me &amp;ndash; although one of them had a really familiar name that I just couldn&amp;rsquo;t place. It took me almost the entire course until I finally cracked it: the guy had been a member of the Robot Battle Mailing List! 😄&lt;/p&gt;
&lt;p&gt;Have you ever played Robot Battle or any other programming games? I&amp;rsquo;d love to hear about it in the comments!&lt;/p&gt;
&lt;p&gt;PS. I did a quick social media search on Robot Battle. Much to my surprise I found this guy Greg reminiscing the game on Bluesky last December! &lt;a href=&#34;https://bsky.app/profile/mostech6502.bsky.social/post/3lcqqq4thns2x&#34;&gt;Check out his thread here&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>How NetHack got me into the Battlefield series</title>
      <link>https://ville.saalo.moi/2025/07/09/how-nethack-got-me-into.html</link>
      <pubDate>Wed, 09 Jul 2025 10:03:02 +0300</pubDate>
      
      <guid>http://zeroone.micro.blog/2025/07/09/how-nethack-got-me-into.html</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/NetHack&#34;&gt;NetHack&lt;/a&gt; is a notoriously difficult game that some people play for decades and never win, even if they have &lt;a href=&#34;https://nethackwiki.com/wiki/Main_Page&#34;&gt;all the spoilers&lt;/a&gt; available. I used to play it a lot some twenty years ago.&lt;/p&gt;
&lt;p&gt;The game may not look like much; in fact by default it consists only different characters and symbols of different colors: you are the &lt;code&gt;@&lt;/code&gt; symbol, a grey &lt;code&gt;d&lt;/code&gt; is your dog, a purple capital letter is some highly dangerous monster, a brown &lt;code&gt;%&lt;/code&gt; is food, and so on. It takes a bit of imagination, but once you&amp;rsquo;re fully immersed into the game, even looking at your own email address may send shivers down your spine because it looks like you&amp;rsquo;re in a narrow corridor surrounded by monsters.&lt;img src=&#34;https://cdn.uploads.micro.blog/208773/2025/nethack.png&#34; width=&#34;600&#34; height=&#34;350&#34; alt=&#34;A screenshot of NetHack, borrowed from Wikimedia Commons. Distributed under the NetHack General Public License. The image shows a typical in-game situation in a dungeon.&#34;&gt;&lt;/p&gt;
&lt;p&gt;The goal is to descend down a perilous dungeon, retrieve a powerful magical item called the Amulet of Yendor, come back up, get to the &lt;a href=&#34;https://nethackwiki.com/wiki/Elemental_Planes&#34;&gt;Elemental Planes&lt;/a&gt; and the &lt;a href=&#34;https://nethackwiki.com/wiki/Astral_Plane&#34;&gt;Astral Plane&lt;/a&gt;, and finally offer said amulet to your deity, who will grant you the gift of immortality in return. This called &lt;em&gt;ascending the game&lt;/em&gt;, i.e. ascending to demigod(dess)hood.&lt;/p&gt;
&lt;p&gt;So, how did NetHack get me playing the &lt;em&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/Battlefield_(video_game_series)&#34;&gt;Battlefield&lt;/a&gt;&lt;/em&gt; series, then? &lt;em&gt;Battlefield&lt;/em&gt;  is a series of first-person shooter games that has always been bragging with some cutting-edge graphics, so it couldn&amp;rsquo;t be much farther away from NetHack.&lt;/p&gt;
&lt;p&gt;Well, in 2010 &lt;a href=&#34;https://ville.saalo.moi/2025/03/20/vivaldi-browser.html&#34;&gt;I was still using the Opera browser&lt;/a&gt;. Opera had a strong community, and they hosted a community event where you could win a copy of &lt;em&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=r8tcEzayFio&#34;&gt;Battlefield: Bad Company 2&lt;/a&gt;&lt;/em&gt; by sharing your best gaming experience. Others shared experiences about games like &lt;em&gt;Batman: Arkham Asylum&lt;/em&gt;, or &lt;em&gt;Medal of Honor: Allied Assault&lt;/em&gt;, and I, well, shared my first NetHack ascension &amp;ndash; and was selected as one of the winners. One of the high points in my career as a gamer for sure!&lt;/p&gt;
&lt;p&gt;I looked up the relevant pages from The Internet Archive: the &lt;a href=&#34;https://web.archive.org/web/20100416034716/http://my.opera.com/community/blog/2010/03/04/win-a-free-copy-of-battlefield-bad-company-2?startidx=150&#34;&gt;contest pitch and my story is here&lt;/a&gt; and &lt;a href=&#34;https://web.archive.org/web/20100415221022/http://my.opera.com/community/blog/2010/03/08/battlefield-bad-company-2-winners&#34;&gt;the winners were announced here&lt;/a&gt;. But just for the sake of completeness I&amp;rsquo;ve copy-pasted my award-winning &lt;a href=&#34;https://nethackmonsters.art/texts/yafap-celebratingtheordinaryintheextraordinaryworldofnethack/&#34;&gt;Yet Another First Ascension Post (YAFAP)&lt;/a&gt; here. Enjoy!&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;My best gaming experience took place on 22. March 2004. That&amp;rsquo;s the day I won a game of NetHack for the first time ever.&lt;/p&gt;
&lt;p&gt;I had been playing the same character, lawful dwarven female valkyrie, on and off for a month already. My previous valkyrie had also broken my previous record score but suffered the horrible fate of getting poisoned by the demon lord called Juiblex.&lt;/p&gt;
&lt;p&gt;This time I was more careful and even though I had met several new monsters and obstacles I had finally managed to get to the final level: the Astral Plane. The journey through the Planes of Earth, Air, Fire and Water had already been very difficult and exciting, but I remember well the adrenaline rush I got for finally stepping into the Astral Plane.
The Astral Plane contains three altars, only one of which matches your alignment. You must then find the correct one by trial and error and sacrifice the Amulet of Yendor to beat the game and to ascend to the demigodhood.&lt;/p&gt;
&lt;p&gt;So, typical for my luck, I had to visit the two wrong altars first. The Astral Plane is filled with incredibly powerful enemies, worst of whom are Famine, Pestilence and Death &amp;ndash; three of the Four Horsemen of the Apocalypse &amp;ndash; and they had already managed to kill me once or twice. I had had amulets of life saving but I was out of them now, so the next death would be, well, fatal.&lt;/p&gt;
&lt;p&gt;I remember my heart beating like crazy even though the game is turn based and all that actually was on the screen was letters and symbols of various colors. In that state of mind I wasn&amp;rsquo;t thinking clearly. When trying to make it to the final altar my characted got burnened by all the stuff in her inventory because of taking too much hit and because of the curses from all the monsters that were able to use magic. In NetHack it is really important not to get burdened because it directly affects your speed, so I got into even more trouble because all the monsters were moving twice as fast as I was.&lt;/p&gt;
&lt;p&gt;When my hitpoints were falling too quickly and the final altar was too far away I made my final decision: I dropped my bag of holding after salvaging a few of the most important items from inside it. This meant that I gave up on many weapons, scrolls, wands, potions and such that would normally help me stay alive but had now become just weight.&lt;/p&gt;
&lt;p&gt;After abandoning most of my gear I got my dexterity back and started fighting my final fight. The way to the altar was filled with monsters. The Horsemen were all right behind me, so I had to either lose them or endure their hits &amp;ndash; I couldn&amp;rsquo;t lose any time fighting with anything behind me anymore.&lt;/p&gt;
&lt;p&gt;After quaffing all my remaining potions of healing and slaughtering lots of capital A&amp;rsquo;s, @&amp;rsquo;s, D&amp;rsquo;s and whatnots I finally made it to the altar. Just to be safe I looked at it, even though I knew the result beforehand: a lawful altar. There were still several monsters around me but I now knew that at this point they could not hurt me anymore: I was one turn away from ascending to the demigodhood. I checked my next commands twice or thrice: which keys to press and which item to sacrifice. After all, it would be pretty embarassing if not instantly fatal to try to sacrifice some junk item to Tyr when he was expecting the Amulet; not to mention the monsters around me waiting to land in more blows. But then, for the first time in my life:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;You offer the Amulet of Yendor to Tyr&amp;hellip;&lt;/em&gt;&lt;br/&gt;
&lt;em&gt;An invisible choir sings, and you are bathed in radiance&amp;hellip;&lt;/em&gt;&lt;br/&gt;
&lt;em&gt;The voice of Tyr booms out: &amp;ldquo;Congratulations, mortal!&amp;quot;&lt;/em&gt;&lt;br/&gt;
&lt;em&gt;&amp;ldquo;In return to thy service, I grant thee the gift of Immortality!&amp;quot;&lt;/em&gt;&lt;br/&gt;
&lt;em&gt;You ascend to the status of Demigoddess&amp;hellip;&lt;/em&gt;&lt;br/&gt;&lt;/p&gt;
&lt;p&gt;Even if an invisible choir had actually been singing I couldn&amp;rsquo;t have heard it for all the adrenaline filled blood that was rushing in my head, making my ears hum.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;p&gt;PS. A couple of years ago I created a site where I&amp;rsquo;ve visualized NetHack monsters with AI image generators. Check it out at &lt;a href=&#34;https://nethackmonsters.art/&#34;&gt;NetHackMonsters.art&lt;/a&gt;. It&amp;rsquo;s kind of like my AI sandbox, offering me some context to try new services. There&amp;rsquo;s also a couple of AI-generated audio files and some texts about NetHack. I used to have a site like this back when I played NetHack, but that was just a collection of links to representative monster images around the web. Both that site and probably those images too have been lost in the sands of time, so the rise of AI image generators gave me the idea to resurrect the site.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Wordle</title>
      <link>https://ville.saalo.moi/2025/03/02/wordle.html</link>
      <pubDate>Sun, 02 Mar 2025 02:10:00 +0300</pubDate>
      
      <guid>http://zeroone.micro.blog/2025/03/02/wordle.html</guid>
      <description>&lt;p&gt;Today I reached a streak of 100 in &lt;a href=&#34;https://www.nytimes.com/games/wordle/index.html&#34;&gt;Wordle&lt;/a&gt;. 😃&lt;/p&gt;
&lt;pre&gt;
Wordle 1,352 4/6

⬛⬛⬛🟨⬛
⬛⬛⬛⬛🟨
⬛⬛🟨⬛🟩
🟩🟩🟩🟩🟩

WordleBot
Skill 90/99
Luck 46/99
&lt;/pre&gt;
&lt;img src=&#34;https://zeroone.micro.blog/uploads/2025/afbe1b56d8.jpg&#34;&gt;
</description>
    </item>
    
    <item>
      <title>Clash Royale</title>
      <link>https://ville.saalo.moi/2025/02/27/clash-royale.html</link>
      <pubDate>Thu, 27 Feb 2025 20:27:00 +0300</pubDate>
      
      <guid>http://zeroone.micro.blog/2025/02/27/clash-royale.html</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/Supercell_(company)&#34;&gt;Supercell&lt;/a&gt; is a pretty successful Finnish mobile game company. I have been enjoying Clash Royale in particular. It&amp;rsquo;s a real time game where you have a deck of cards that can bring units to the battle arena, and with them you try to destroy your opponent&amp;rsquo;s King Tower. Cards are played with elixir that regenerates all the time, more or less slowly, depending on the game mode.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s kind of like rock-paper-scissors: for example, P.E.K.K.A is a huge, slow tank-like unit that hits hard, but she is no match for a Skeleton Army where each skeleton is weak, but they move and hit fast. The Skeleton Army can be easily countered with e.g. a Valkyrie, which, in turn, cannot beat P.E.K.K.A. The catch is that you can only have eight different cards in your deck, but dozens of different cards exist, so you need to be strategic and versatile.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s an example of an x7 Elixir game that I played, it&amp;rsquo;s quite a mayhem compared to the slower, traditional game modes, but I like it:&lt;/p&gt;
&lt;iframe width=&#34;315&#34; height=&#34;560&#34;
src=&#34;https://www.youtube.com/embed/oDGsOVdbOhU &#34;
title=&#34;Clash Royale gameplay&#34;
frameborder=&#34;0&#34;
allow=&#34;autoplay; clipboard-write; encrypted-media; picture-in-picture; web-share&#34;
allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;🎮&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>