Posts in Gaming (20 found)
Brain Baking Yesterday

My Workspaces

This post is inspired by Franck Sauer’s My Workspaces . I love Franck’s setup and background story behind each photo. I’ve been meaning to write this for months but postponed the search for old desktop setup photos because I wasn’t sure where to start. Back in the nineties, we didn’t brainlessly press that button: every shot was one less on the film roll and added to the cost. Hence my oldest setup—the 486 in my dad’s makeshift office that also served as the washing machine room—is lost forever. My parents got me a sturdy but boring looking IKEA desk I’ve been using extensively up until 2015. My room looked more or less the same once that piece of furniture got in up until I moved out. Here’s a picture of my then brand new flatron CRT that’s showcasing Smash Bros. Melee (I played on the GameCube through a PCI TV card): My 'workspace' in 2006. Note the white DS Lite in the background, putting this photo somewhere after June 2006. There are more photos of my gaming setup from 2002-2007 in case you’re interested. I once built a virtual tour of my room in the form of an HTML imagemap website but that too is lost in time meaning there’s nothing much to see on the photo now, except for a sliver of a blue DELL laptop I used for more serious university work. I wish I kept that keyboard around though, it was surprisingly comfortable. Not as cool as Microsoft’s Natural Keyboard Elite , but still! At some point in time, I was also dumb enough to sell the Wavebird and all GameCube games. What was I thinking… I moved out in 2008 and rented a cheap flat for three years to save up on money before my wife & I bought our first home. Again, my meticulous archival work proves to be not that meticulous after all: I can’t find a single photo of that apartment, except for the empty rooms just before I got in. The IKEA desk moved to the living room as I didn’t own a TV. On the other hand, it probably wasn’t worth saving, as workspace denotes some work had to be done there. I was a software development consultant back then and worked at the client’s offices. Those were long hours and long commutes meaning nothing much was done at home. Here’s an unremarkable at best picture of what that typical office space looked like in those years: My office workspace in 2008 with a corporate HP laptop plugged into a then already older CRT from a client. Yes, that on the lower right is my wallet. I believe it still is now. When we bought a house and started living together, we had a spare room to throw in everything we couldn’t find a good spot for. This included my cheap bookcase and the very same IKEA desk: My workspace in 2013. I can't recall any work has been done there at all. The Monkey Island poster I already had hanging on the wall a year before I left my parents’ place; it’s still with me now as you’ll see in the later pics. I can’t believe any work has been done at all in that “office”: I was still a consultant and working from home was a big no-no. That meant the space was largely unused, which is a shame, because now that I look back at it, it looks cosy, especially with that chicken hug stuffed in the lower left of the bookcase! I started to resent the commutes. I quit my job and we sold and bought another house where we still live in as I type this. One of the three bedrooms became my “office”—I’ll still use quotes here as again nothing much was done there. I didn’t like locking myself in that room upstairs as my wife was downstairs watching TV. The Nintendo Switch was my big savour 1 : a hybrid handheld system that I could play on the couch! My workspace in 2014. Left: that same IKEA desk survived yet another move. This photo was taken right after we moved in, hence the lack of decorations. Right: in the living room/kitchen, were most of my writing was done. Again, this post is far from impressive compared to Franck’s cool setups. Most of my writing and thinking happened on the kitchen table. In 2012-2013 I bought a MacBook Air and since then loved inventing a makeshift workspace wherever. Working from home still was the big exception. After four years I quit my job again to rejoin academia and pursue a PhD. That meant the way I worked radically shifted: more individually, and more from home. On top of that, in 2020, a thing called COVID happened, where we suddenly were forced to work from home. Just like many others, I finally started taking the home workspace environment seriously. I already published the result in the 2021 retro desktop setup post: My 2020 workspace featuring a 486 machine, a beige Win98 tower, a WinXP one, and on the far right, the 'work horse' MacBook and second screen. If you look closely enough, you’ll notice the same skylight as the leftmost photo in 2014. I jammed as much retro hardware as I could find in that tiny room, binning the IKEA desk (R.I.P.) and buying more IKEA stuff (Linnmon). In 2020, after eight years of faithful service, the old MacBook Air got replaced by the one I’m typing this on (on the far right). Thankfully, the Monkey Island posters survived. There are more photos of this setup in the linked post. For the first time in my life, I felt truly happy in my home workspace. It became my sanctuary: me, surrounded by old junk. And then our daughter started poisoning the place with baby toys: The other side of the retro room: Billy bookshelves and baby toys. At least I managed to fend off most of the toys and eventually, when she got older, we managed to contain her junk within her room or below stairs. Until the second kid came along and kicked me out. Our house looks big but really isn’t, so we renovated to create more space. Still, my workspace became his bedroom, so I had to move to the old living room : My workspace in 2025, with a bigger window overlooking the front garden and street. Later that year I properly fixed the cable work, relayed another Ethernet cable, and started thinking about how I could restore my retro hardware. Unfortunately, only the 486 is on display right now, and that one hasn’t been touched in almost a year due to busy parenthood. At least now there was room for another IKEA case that can hold more board games than the previous one could in the hallway (that of course got claimed by the kids). I prepare my lessons here and like the bigger window but do miss the previous workspace. Hardware-wise, nothing much changed, except for a mechanical keyboard . Perhaps I should throw in a retro TV to hook up the SNES. I don’t know. Since becoming a parent, this stuff matters less but I miss it more, it’s hard to explain. As for gaming, most of it is done on the couch with the Analogue Pocket, Switch, or just with the MacBook on my lap. So far for having a dedicated workspace… As a bonus photo, here’s the current state of the above workspace at the time of writing: The current state of the 2025 workspace. Whoops... Yeah, I know… That’s a mild exaggeration as I was already a big GB(A) and DS fanboy. It did rejuvenate my interest in handheld gaming.  ↩︎ Related topics: / setup / By Wouter Groeneveld on 14 April 2026.  Reply via email . That’s a mild exaggeration as I was already a big GB(A) and DS fanboy. It did rejuvenate my interest in handheld gaming.  ↩︎

0 views
JSLegendDev 2 days ago

Reverting Donovan's Demise back to its original vision.

After I announced the Steam page for my game Donovan’s Demise, I received a lot of discontent feedback. A lot didn’t like the new direction in which I decided to convert the project into a Roguelike. After reflection, I decided to turn back to my original vision and therefore, I have updated the Steam page to reflect this. You can wishlist the game and view more info about it here : https://store.steampowered.com/app/4393750/Donovans_Demise Here is the game’s short description : King Donovan has proclaimed himself God, forcing the people of Hydralia to worship him. Many have attempted to kill him, but none have succeeded. Will you? In this small action RPG with mouse-driven bullet hell combat, defeat relentless foes, grow stronger, face Donovan!

0 views
Playtank 3 days ago

Analogue Prototyping

There is a lot to say about prototyping . Chris Hecker talked about advanced prototyping at GDC 2006, and provided a hierarchy of priorities that goes like this: Analogue prototyping comes in right away at Step 1: Don’t . By not launching straight into your game engine, you can save giant heaps of time between hypothesis and implementation. You can also figure out what kinds of references will be relevant before you reach Step 4: Gather References . There’s another side to analogue prototyping as well. In the book Challenges for Game Designers , Brenda Romero says: “A painter gets better by making lots of paintings; sculptors hone their craft by making sculptures; and game designers improve their skills by designing lots of games. […] Unfortunately, designing a complete video game (and implementing it, and then seeing all the things you did right and wrong) can take years, and we’d all like to improve at a faster rate than that.” Brenda Romero Using cards, dice, and paper leads to some of the fastest prototyping possible. It can be just ten minutes between idea and test, fitting really well into those two days of Step 2: Just Do It . Of course, it can also take weeks and require countless iterations, but that’s part of the game designer’s job after all. This post focuses on what to gain from analogue prototypes of digital games, and the practical process involved. It’s also unusually full of real work, since this is something I’ve done quite a bit for my personal projects and is therefore not under NDA. If you’re curious about something or need to tell me I’m wrong, don’t hesitate to comment or e-mail me at [email protected] . Why you should care about analogue prototyping when all you want to do is the next amazing digital game may seem like a mystery. A detour that leads to having your fingers glued together and a bunch of leftover paper clippings you can’t use for anything. In Chris Hecker’s talk, the first suggestion is that you should cheat before you put too much time into anything else. Since you will be cutting and gluing and sleeving, and some of that work takes time, this counts double with analogue prototypes. The easiest way to cheat is to use proxies. If you have a collection of boardgames, this is easy. You can also go out and buy some used games cheap or ask friends if they have some lying around that they don’t use. Perhaps that worn copy of Monopoly that almost caused a family breakup can finally get some table time again, in a different form. Aesthetics matter. If you want to take shortcuts with how a game feels to play, getting something that looks the part can be a shortcut. Go to your local Dollar Store or second hand shop and pick up some plastic toys or a game with miniatures that are similar to what you are after. They can merely be there to act as center pieces for your prototype. The easiest and most efficient reference board that exists is a standard chessboard. Square grid with a manageable size. You can also use a Go board, with the extra benefit that the Go beads also make for excellent proxy components. Beyond those two, you can really use any other board game board too. Just make sure to remember where you got it from if you want to play those games in the future. Or you can even pick up games with missing parts at yard sales, usually super cheap, and scavenge proxy parts from those. For some types of games, finding a good real-world map, perhaps even a tourist map or subway map, can be an excellent shortcut. Not just for wargames, but for anything with a spatial component. The guide map from a theme park or museum works, too. Packs of 52 standard playing cards are fantastic proxies. You can use suits, ladders, make face cards have a different meaning, and much more. Countless prototypes have used these excellent decks to handle anything from combat resolution to hidden information. It’s also possible to go even further, and make your own game use regular playing gards and the known poker combos as a feature. Balatro comes to mind. Many families have a Yatzy set lying around, providing you with a small handful of six-sided standard dice. You can do a lot with just this simple straightforward randomisation element. But don’t limit yourself to just six-sided dice, if you don’t have to. Get yourself a set of Dungeons & Dragons polyhedrals and you’ll have four-, eight-, ten-, twelve- and twenty-sided dice rounding out your randomisation armory. Just want to make an honorable mention of this fantasy wargame, because of its diversity. You can build all manner of strange scenery from just a core HeroScape set and use it effectively to represent almost anything. The same goes for Lego. The main issue with these kinds of proxies is that they can take a lot of space. Particularly HeroScape , since it has a predefined scale. With Lego, you just need to figure out a scale and stick to it. If there’s a game the people you will play with are especially familiar with, you can skip over having to design one of your systems by substituting a mechanic from a game you already know. Say, if you know that you will want to have statistics in your game, you can copy the traditional lineup of six abilities from Dungeons & Dragons , as well as their scale, to get started. Even if you know that you will want a different lineup later, this means you can test elements that are more unique to your game faster. An effective way to minimise cut-and-paste time is to print your cards very small. Preferably so all of them fit on a single piece of paper. They will be a bit trickier to shuffle this way, but that’s rarely an issue in testing. This way, you need less paper and you can cut everything faster. Going from eight cards to a sheet to 32 is a pretty big difference. Just avoid miniaturizing to the point that you need a magnifying glass. There’s no need to get fancy with real cardstock. Here are some things you can use. I usually just keep any interesting sheets from deliveries I receive. Say, the sturdy sheet of paper used in a plastic sleeve to make sure a comic book doesn’t bend in the mail. Perfect for gluing counters. There are three things you need to consider for paper: size, weight, and texture. For size, since I’m in Europe, I use the standardized A-sizes. A0 is a giant piece of paper, A1 is half as big, A2 half as big again, and so on. The standard office paper format is A4, roughly equivalent to U.S. Letter. This can easily be folded into A5 pamphlets. I also keep A3 papers around (twice the size of A4), but those I use to draw on. Not for printing. I don’t have a big enough home to fit a floor printer. The next thing is paper weight, measured in grams per square meter (GSM). Most home printers can’t handle heavier paper than 120-200 GSM. I always keep standard paper (80 GSM) around, and some heavier papers too. If I print counters or cards I sometimes use the sturdier stock. For reference, Magic cards are printed on 300 GSM black core paper stock. The black core is so you can’t see through the card and is taken directly from the gambling circuit. Lastly, the paper’s texture. If you want to work a little on the presentation, it can be nice to find paper canvas, or other sturdier variants. I’ve found that glossy photo paper is almost entirely useless in my own printer, however, always smearing or distorting the print. So when I buy any higher-GSM paper I try to find paper with coarser texture. There are many different kinds of cardboard, and you should try to keep as many around as possible. Some can be good for gluing boards or counters onto, while others can help make your prototype sturdier. This isn’t as important as paper, but gets used frequently enough that it felt worth mentioning. There will be a lot of rambling about cards later, and how to use them. For now, I only refer to loose cards you can use to prop up your thin paper printouts. These are not strictly necessary, but make shuffling easier. I don’t play much Magic: The Gathering anymore, but I still have lots and lots of leftover Magic cards, so those are the ones that get used as backing in most of my prototypes. You can cheaply buy colored wooden cubes as well as glass and plastic beads in bulk. It’s not always obvious what you may need, so keeping some different types around can be helpful. More specific pieces, like coins or pawns, can also be useful but unless these components provide unique affordances the kinds of components you have access to is rarely important. It’s usually enough to be able to move them around and separate them into groups. Storage is another thing that needs solving. If you mostly print paper and iterate on rules, a binder can be quite helpful. Especially paired with plastic sleeves so you can group iterations of your rules together and store them easily. If you also need to transport your prototypes, the kinds of storage boxes you find in office supply stores will have you sorted. You can push your analogue prototyping really far and build a whole workshop. A 3D printer for making scenery and miniatures, a laser cutter for custom MDF components, and a big floor-sized professional printer that takes over a whole room. If you have the space and the resources for that, you do you, but let’s focus on the smallest possible toolbox for making analogue prototypes. If you want to buy a printer, you just need to be aware that all of them have the same problems of losing connections and failing to print still to this day. Those same problems that have plagued printers since forever. I use a laser color printer with duplex (double-sided) printing support and the ability to print slightly heavier paper, up to 220 GSM. This has been more than enough for my needs. Specifically the duplex feature helps a lot if you want to print rulebooks. Having a good store of pencils and pens, including alcohol- and water-based markers, is more than enough. You can go deeper into the pen rabbit hole by looking at Niklas Wistedt’s spectacular tutorial on how to draw dungeon maps : it’ll have you covered in the pen and pencil department. Some tools you keep around to hold piles of paper or cards together. Paper clips are extra handy, because they can also be used as improvised sliders pointing at health numbers or other variables. Rubber bands are handy for keeping decks of cards together inside a box and for transportation. Almost every paper-based activity without decent scissors on hand will be a futile effort. Just beware that cutting things out by hand takes more time than you think. If you have a game with many cards, you may have to put on a couple of episodes of your favorite show as you cut them out. If you need more precision than scissors can provide, the next rung on the cutting lader is to get a proper cutting mat, a steel ruler, and a set of good sharp knives. These can be craft scalpels, metal handles with interchangeable blades (Americans insist on calling these “x-acto knives”), or carpet knives. Once you have rules and test documents printed, you’ll quickly disappear under a veritable ocean of paper. Though smaller sheafs can be pinned together with a paper clip, staplers are even better. A standard small office stapler is enough. But if you want to staple booklets and not just sheafs, it can be worth it to get a long-reach stapler capable of punching 20 sheets or more. Attaching paper to other paper can be done in more ways than with clips or staples. Sometimes you want to use glue or adhesive tape. Keeping a standard gluestick and a can of spray glue around is perfect. Regular tape and double-sided tape is also great for many things, even if the main use for tape can just be to make larger scale maps out of individual pieces of paper. As mentioned previously, it can take some time to cut out all the cards you want to print. You can cut this time down to a fraction, metaphorically and physically, by getting a paper guilloutine. These can usually take a few sheets at a time and will give you clean cuts along identified lines. Yelling “vive la France” when you drop the blade is optional. Lastly, a more decadent piece of machinery that isn’t strictly needed is a paper laminator. These will heat up a plastic pocket and melt the edges together to provide the paper with a plastic surface. It makes the paper much sturdier and has the added benefit of allowing you to use dry erase markers to make notes and adjustments right on the sheet itself. There is a lot of software out there that can be used to make cards, boards, illustrations, and whatever else you may need. The following is merely a list of what I personally use. Since you will often want to test things at different sizes, vector graphics are generally more useful for board game prototyping than pixel graphics. This is by no means a hard rule, but resolution of pixel images tends to limit how large you can scale them, while vector graphics have no such limitations. My go-to for vector graphics is Illustrator, but there are free alternatives like Affinity available as well. My other go-to piece of software for analogue shenanigans is InDesign, another Adobe program that can also be replaced by Affinity . I’m just personally too stuck in the Adobe ecosystem, after decades of regular use, that it’s too late for me to switch. You can’t teach an old dogs new tricks, as the saying goes. Indesign is great for multiple reasons. Not least of all its ability to use comma-separated value (CSV) files to populate unique pages or cards with data. A feature called DataMerge. Speaking of spreadsheets, all system designers have a lovely relationship to their tool of choice. This can be Microsoft Excel , OpenOffice Calc , or Google Spreadsheets, but the many convenient features of spreadsheets are a huge part of our bread and butter. I don’t even want to know how many sheets I create in an average year. Very broadly speaking, when making an analogue prototype, I will make use of spreadsheets for these reasons: The fantastic Tabletop Simulator is not just a great place to play tabletop games, it’s also a great place to test your own games. Renown board game designer Cole Wehrle has recorded some workshops for people interested in this specific adventure, and let’s just say that once you have this up and running it will make it a lot easier to test your game. Especially if the members of your team doesn’t all live in the same city. Its biggest strength is how quickly you can update new versions for anyone with a module already installed. If you share your module through Steam Workshop, it’s even easier. For most analogue prototypes, this isn’t doable, simply because of NDAs and rights issues. So much stuff ! Let’s put it all together. The way I’ve talked about this, there are really six steps to the process of making an analogue prototype: This is more important than you may think. An analogue prototype can easily become a design detour. Because of this, your goal needs to formulate why you are making this analogue prototype. “Test if it’s fun with infinitely respawning enemies” could be a goal. “See what works best: party or individual character” could be another one. But it can also be a lot narrower, for example designed to test the gold economy in your game. Perhaps even to balance it. The point is that you need a goal, and you need to stick to it and cut everything out that doesn’t serve that goal. If you need to test how travelling works on the map, you probably don’t need a full-fledged combat system, for example. Facts are the smallest units of decision in your game’s design . Stuff that every decision maker on your team has agreed on and that can therefore safely inform your analogue prototype. This can be super broad, like “the player plays a hamster,” or it can be more specific, like “the player character always has exactly one weapon.” You need these facts to keep your prototype grounded, but you don’t necessarily need to refer to them all at once. Pick the ones that are most important to your goal. With a goal and some facts, you need to figure out what systems you will use. Try to narrow it down more than you may think. Don’t make a “combat system,” but rather one “attack system” and another “defense system.” The reason for this is that what you are after is the resource exchanges that come from this, and the dynamics of the interactions. The attack system may take player choices as input and dish out damage as output, while the defense system may accept armor and damage input and send health loss as output. You can refer to the examples of building blocks in this post for inspiration. This is where we come to the biggest strength of analogue prototyping: real humans provide a lot more nuance and depth than any prototype can do on its own. Analogue or digital. One player can take on the role of referee or game master, similar to how it would work in a tabletop role-playing game . In many wargames of the past, this was called an umpire. Someone who would know all the rules and act as a channel between the players and the systems. If you have built a particularly complicated analogue prototype, a good way to test it can be to act as a referee and then simply ask players what they want to do instead of teaching them the details of the rules. Players can play each other’s opponents, representing different factions, interest groups, or feature sets via their analogue mechanics. If you built an analogue prototype of StarCraft , you’d probably do it this way, with three players taking on one faction each. One player can play the enemies, while another plays the economy system, or the spawning system. The goal here is to put one player in charge of the decisions made within the related system. If someone wants to trade their stock for a new space ship, and this isn’t covered by the rules, the economy system player can decide on the exchange rate and the spawning system player can say that this spawns a patrol of rival ships. Just take ample notes, so you don’t forget the nuances that come out of this process. There are many different ways to use the components you collected previously. Some of them may not be intuitive at all. The humble die: perhaps the most useful component in your toolbox. Just look at the following list and be amazed: People have been using playing cards for leisure activities since at least medieval times. Just as for dice, you’ll see why right here, and perhaps these things will fit your needs better than dice: Humans are spatial beeings that think in three dimensions. Even such a simple thing as a square grid where you put miniatures will create relationships of behind, in front of, far away from, close to, etc. All analogue prototypes don’t need this, but if you do need it, here are some alternatives to explore: With the fast iterations of analogue prototypes, you can usually just change a word or an image somewhere and print a new page. This means you may have many copies of the same page after a while. To prepare for this situation, make sure to have a system for versioning. It doesn’t have to be too involved, especially if you’re the only designer working on this prototype, but you need to do something. I usually just iterate a number in the corner of each page. The 3 becomes a 4. I may also write the date, if that seems necessary. I may also add a colored dot (usually red) to pages that have been deprecated, since just the number itself won’t say much and you may end up referring to the wrong pages if you don’t have an indicator like this. Step 1: Don’t : Steal it, fake it, or rehash stuff you have already made before you start a new prototype. Step 2: Just Do It : If it takes less than two days, just do it. As the saying goes, it’s easier to ask for forgiveness than for permission. Step 3: Fail Early : When something feels like a dud even at an early stage, you can assume that it is in fact a dud. There’s nothing wrong about abandoning a prototype. In fact, learning to kill things early is a skill. Step 4: Gather References : Prototypes can only really help with small problems. Big problems, you must break apart and figure out. Collect references. White papers, mockup screenshots, music, asset store packs, and so on. Anything that helps you understand the problem space. The same psychology applies . Rewards, risk-taking, information overload. Many of our intrinsic and extrinsic motivators are triggered the same by boardgames as by digital games. The distance is not nearly as far as we may tell ourselves. Players can represent complex systems . A player has all the complexity of a living breathing human, making odd decisions and concocting strange plans. This lets you use players as representations of systems, from enemy behaviors to narrative. Analogue games are “pure” systems . If you can’t make sense of your mechanic in its naked form, you can probably not expect your players to make sense of it either. Similar affordances . Generating random numbers with dice, shuffling cards, moving things around a limited space; analogue gaming is always extremely close to digital gaming, even to the point that we use similar verbs and parlance. Holism . Probably the best part of the analogue format is that you can actually represent everything in your game in one way or another. It doesn’t have to be a big complex system, as long as you provide something to act as that system’s output. Listing all the actions, components, elements, etc., that are relevant. Just getting things into a list can show you if something is realistic or not. Cross-matrices for fleshing out a game’s state-space. If I know the features I want, and the terrains that exist, a cross-matrix can explore what those mean: a feature-terrain matrix. Notes on playtests. How many players played, what happened, who won and why, etc. Calculators of various kinds, incorporating more spreadsheet scripting. Can be used to check probabilities, damage variation, feature dominance, etc. Session logging. If I want to be more detailed, I can log each action from a whole session and see if there are things that can be added or removed. Set a Goal Identify Facts Systemify the Facts Consider the roles of Players Tie it together with Components Types of dice : you can use any number of sides, and make use of the corresponding probabilities. Dividing a result by the number of sides gives you the probability of that result. So, 1/6 = 0.1666 means there’s a ~17% chance to roll any single side on a six-sided die. Use the dice that best represents the percentage chances you have in mind. Singles : rolling a single die and reading the result. Pretty straightforward. Sums : rolling two or more dice and adding the result together. Pools : rolling a handful of dice and checking for specific individual results or adding them together. Buckets : rolling a lot of dice and checking for specific results. The only reason buckets of dice are separated from dice pools here is because they have a different “feel” to them; they are functionally identical. Add/Subtract : add or subtract one die from the result of another, or use mathematical modifiers to add or subtract from another result. X- or X+ : require specific results per die. In these cases X- would mean “X or lower,” and X+ would mean “X or higher.” Patterns : like Yatzy, or what the first The Witcher called “Dice Poker:” you want doubles, triples, full houses, etc. Reroll : allowing rerolls of some or all of the dice you just rolled. Makes the rolling take longer but also provides increased chances of reaching the right result. Some games allow rerolling in realtime and then use other time elements to restrict play. So you can frantically keep trying to get that 6, but if an hourglass runs out first you lose. Spin : spinning the die to the specific side you want. Trigger : if you roll a specific result, something special happens. It could be the natural 20 that causes a critical hit in Dungeons & Dragons , or it can be that a roll of 10 means you roll another ten-sided die and add it to your result. Hide : you roll or you set your result under a cupped hand or physical cup, hiding the result until everyone reveals at the same time or the game rules require it. Statistics : common sense may say that you can’t possibly roll a fifth one after the first four, but in reality you can. Dice are truly random. Shuffle : shuffling cards is a great way to randomise outcomes. This can be done in many different ways, as well, where you shuffle a “bomb” into half of the pile and then shuffle the other half to place on top, for example. There are many ways to mix up how to shuffle a deck of cards. Uniqueness : each card can only be drawn once, which means that you can make each card in a deck unique and you can affect the mathematics of probability by adding multiple copies of the same card. Just like the board game Maria uses standard playing cards but in different numbers. Front and back : the face and back of the cards can have different print on them, or the back can just inform you what kind of card it is so you can shuffle them together in setup. Of course, the fact that you can hide the faces for other players is also what makes bluffing in poker interesting. Turn, sideways : what Magic calls “tapping” and other games may call exhausting or something else. Some cards can be turned sideways (in landscape mode instead of portrait mode) by default. Turn, over : flipping a card to its other side can serve to show you new information or to hide its face from everyone around the table. It can represent a card being exhausted, or injured, or other state changes like a person transforming into a werewolf. Over/under : cards can be placed physically over or under other cards, to show various kinds of relationships. An item equipped by a character, or a condition suffered by an army, for example. Card grids : cards can be placed in a grid to generate a board, or to act as a sheet selection for a character. One card could be your character class, another could be a choice of quest, etc. It’s a neat way to test combinations. Hide cards : if you want to get really physical, you can hide cards on your person, under boards, and so on. This was one way you could play Killer , by hiding notes your opponents would find. Card text : if you print your own cards, you can have any text you want on them. Reminders, rules exceptions, etc. Deck composition : how you put decks together will affect how the game plays, and predesigning decks for different tests can be very effective. Perhaps you remove all the goblins in one playtest and have only goblins in another. Deck building : decks can also be constructed through play, similarly to how Slay the Spire works. A style of mechanic where you can start small and then grow in complexity throughout a session. Stats : cards can be in different states. On the table, in your hand, available from an open tableau, shuffled into a deck, discarded to a discard pile, and even removed from the game due to in-game effects. Semantics : something that Magic: The Gathering ‘s designer, Richard Garfield, was particularly good at was to figure out interesting names for the things you were doing. You don’t just play a card, you’re casting a spell. It’s not a discard pile, it’s your graveyard. These kinds of semantics can be strong nods back to the digital game you are making, or they can serve a more thematic purpose. Statistics : with every card you draw, the deck shrinks, increasing the chances of drawing the specific card you may want. You are guaranteed to draw every card if you go through a whole deck, which is one of the biggest strengths of decks of cards. Node or point maps : picture a corkboard with pins and red thread, or just simple circular nodes with lines between them. You can draw this easily on a large sheet of paper and just write simple names next to each circle to provide context. Sector maps : one step above the node or point map is the sector map, where regions share proximity. Grand strategy games have maps like this, where provinces share borders. Another example are more abstract role-playing games, where a house’s interior is maybe divided into two sectors and the whole exterior area around it is another sector. It’s excellent for broad-stroke maps. Square grids : if you want a grid, the square grid is probably the most intuitive. But it also has some mathematical problems: diagonals reach twice as far as cardinals. This means you need to either not allow diagonals or allow them and account for the problems that will emerge. Hexagon grids : these are more accurate and classic wargame fare, but they will also often force you to adapt your art to the grid in ways that are not as intuitive as with a square grid. Freeform : finally, you can just take any satellite image or nice drawn map, perhaps an overhead screenshot from a level you’ve made, and use it as a map in a freeform capacity. This may force you to use a tape measure or other way to measure distances, but if the distances are not important that matters a lot less. For example if your game shares sensibilities with Marvel’s Midnight Suns .

0 views
Grumpy Gamer 6 days ago

Death by Scrolling Consoles

After some delays with getting console certification, I’m happy to announce the release of Xbox , PlayStation and Switch (and Steam update) of Death by Scrolling on April 16. Console and Steam feature a big update that includes a new playable character, new world, new powerups, new stuff and new fun. We completely reworked your ability to customize your character. It’s a huge update.

0 views
Brain Baking 1 weeks ago

Remakes And Remasters Of Old DOS Games: A Small 2026 Update

It’s been two years since the Remakes And Remasters Of Old DOS Games article. Nostalgia still sells handsomely thus our favourite remaster studios (hello Night Dive) are cranking out hit after hit. It’s time for a small 2026 update. I’ve also updated the original article just in case you might find your way here through that one. Below is a list of remakes and remasters announced and/or released since April 2024: Guess what, Nightdive is still running the show here: At this point I don’t even know where to start! Monster Bash HD is still being worked on (I hope?). Did I miss something? Let me know! Related topics: / games / dos / engines / By Wouter Groeneveld on 5 April 2026.  Reply via email . Little Big Adventure : Twinsen’s Quest released in November 2024 is a complete graphical overhaul of the original. Not a remake but still noteworthy; Gobliins 6 is a sequel to a 34 year old DOS game ! Star Wars: Dark Forces got a remaster ; Although not a DOS game, Outlaws got the remaster treament as well Oh, and yes, DOOM I + II is another masterpiece ; As is the Heretic + Hexen package ; As did Blood as Refreshed Supply (again?). BioMenace : Remastered by the same devs that did the Duke Nukem 1 & 2 remasters on Evercade. I enjoyed it, it’s good! A Halloween Harry -inspired top-down 3D version is currently being made that only shares the name & style of the original—luckily, not the crappy level design. Ubisoft remastered the original Rayman ( 30th Anniversary Edition ) but it wasn’t met with much success. They changed the included GBA music—that’s what SEGA would have done, right? I found a Masters of Magic remake (2022) on Steam that’s been met with some positive reception. I didn’t play the original so can’t say how faithfully it’s related to the DOS version. Blizzard also decided to cash in with the Warcraft I+II remaster bundle . I was mostly a Wacraft III person so I can’t comment on this. Someone did a Wacky Wheels HD Remake on ? Wow! Best approach this carefully, it looks to have its own technical problems.

0 views
JSLegendDev 1 weeks ago

My Game (Donovan's Demise) Can Now Be Wishlisted on Steam!

I’d like to announce that my game now has a public Steam page! You can wishlist it here : https://store.steampowered.com/app/4393750/Donovans_Demise/ There’s no trailer currently, but I plan on gradually improving the page further as the game comes along. You might have noticed the game is now classified as an action roguelike. While I kept 95% of the systems/mechanics shown in previous devlogs, a roguelike structure was just a better fit for the project. I plan on covering this change in more detail in an upcoming devlog. Thanks for following me on this game dev journey!

0 views
Brain Baking 2 weeks ago

Favourites of March 2026

Our daughter turned three. We’re beyond exhausted but a ripgrep search in this repository yields five more instances of the word exhausted in combination of parenting so I’ll shut up. I guess we also celebrate that after three years of pure chaos, we’re… still alive? Previous month: February 2026 . I am just two levels short of finishing Gobliins 6 before deciding to throw in the towel. Thanks to the increased amount of moon logic presence, the entire adventure was more frustrating than relaxing. As a big Gobliins fan, I have to admit: the game left me a bit disappointed. It’s all right; I’ll just replay Gob3 again. As it left me wanting more, I went back to the original Gobliiins game that I somehow missed as back in the day my dad bought Gobliins 2 and we just continued with 3 without looking back. It’s still worth exploring but very basic and the presence of the life bar is a very strange (and bad!) design choice that fortunately was abandoned in the sequels. I charged the Analogue Pocket and hope to get in some good ol’ Game Boy (Color) games in the coming month. I read a depressing amount of personal genAI tales; more than enough to fill another blog post. I’ll try to keep these out of here as much as possible. My wife bumped into an hacker called Un Kyu Lee crafting his own micro journal hardware. The result looks very cool, including hinge to hang on the door as a physical reminder: I’d rather keep on journaling with my fountain pens, but still, very cool! Related topics: / metapost / By Wouter Groeneveld on 1 April 2026.  Reply via email . Michael vibe-code-ported an X11 window manager into Wayland ; an interesting Claude experiment to see how agentic development works. Greg Newman hosted the Emacs Blog Post Carnival 2025-07 on writing experiences and summarised the participating links. Lots of little gems in there. Rijksmuseum writes about the discovery of the new Rembrandt painting . Well, “new”—it’s been in private collection for years and only recently resurfaced. Peter Bridger shares his experience in the retro happening SWAG February 2026 . I wish we had something similar nearby! Chuck Jordan shares SimCity vibes . As one of the original programmers involved in the projects, he would know. (Via The Virtual Moose ) The 1MB Club has an interesting (older) article I read last month: consider disabling HTTPS auto redirects . I can’t remember why I turned this back on: I want my old WinXP machine to be able to reach as well without the extra TLS overhead. Funny though: they mention “You can freely view this website on both HTTPS and HTTP.”. I remove the in the protocol, press , and get redirected. Whoops. PolyWolf has been thinking about blazing fast static site generators . This is a goldmine as I have a wild idea to write my own generator in Clojure. When the exhaustion and brain fog go away, that is. According to Rishi Baldawa the reviewer isn’t the bottleneck . This one’s a bit AI flavoured, so beware if you’re coming down with an AI cold. (I know I have. Handkerchiefs full.) Marcin Wichary’s keyboard grandmastery again shines through in his Apple Fn endgame article . I wish his keyboard book wasn’t sold out. Wordsmith writes about the underrated simplicity of the original Harvest Moon (1996) video game. Dale Mellor defends sing a dynamically-produced blog site which is a nice change given the static site generator craziness. I’m still on Hugo and have little need for the points he brings up, but still, some others might. Tazjin tries out Guix as a Nixer . I was eyeing on Guix as a budding Lisp fanboy, but both options still can’t seem to fit in my head. I’ll let it stew for a little while longer. Homo Ludditus announces distro hopping time . The conclusion? “The madhouse could be a valid destination. But I’m still looking for better alternatives.” So far for 2026 as the year of the Linux desktop huh. The Digital Antiquarian writes about the year of peak Might & Magic , when New World Computing still was on top of the world. Here’s an interesting thought experiment by Andrey Listopadov: What if structural editing was a mistake? In this 2020 post by Vincent Bernat, photos of a bunch of cool vintage PC expansion cards are shared in conjunction with timeperiod-correct software that made great use of them. Gabor Torok switched to KDE Plasma , an interesting read because we both switched to OSX because of resons and are trying to crawl out of the Apple hole. I don’t know if I’m quite ready yet. Did you know there’s a relation between knitting and programming ? Abbey Perini does. Mykal Machon shares some insightful guiding principles to lead a fuller life. Judging by the principles, I don’t think Mykal has any young kids. I’m using this as a checklist to find out if I missed essential albums: Hip Hop Golden Age’s Top 40 Hip Hop Albums of 1998 . Here’s another GitHub “awesome” list; this time public APIs . Could be useful. Already used for my courses. It doesn’t hurt to link to the 2007 Slow Code manifesto . FontCrafter is a cool way to generate a real font based on your handwriting. WireTap is an open source Ngrok alternative. The Stump Window Manager is the only WM (except the obvious EXWM) I could find that’s written in Common Lisp. I should look into Ulauncher if I ever want to make the switch to Linux to replace Alfred. Christoph Frick shares a cool GitHub Gist showcasing you can write your AwesomeWM config in Fennel instead of Lua. Yazi looks like an Emacs Dired inside a shell?

0 views
Grumpy Gamer 2 weeks ago

April Fools' 2026

Yet another year slips by and Grumpy Gamer remains 100% April Fools’ joke free. It kind of feels like there are less and less April Fools’ jokes, probably because the whole world is turning into a April Fools’ joke. P.S It my not be April 1st when you read this, it’s because I now live in NZ. Earth spinning and all.

0 views
David Bushell 3 weeks ago

I should build a game

I should build a game! I feel like that’s a common dream, right? Game development is what got me interested in design and programming to begin with. I learnt ECMAScript via Flash ActionScript many moons ago. Some time later “Thoughts on Flash” brought a swift demise and ruined legacy to Flash. History is written by the winners, they say. Although Flash was largely proprietary software, and Adobe would have ruined it themselves, Flash was a wonderfully creative tool in its prime. I studied art and went into print/web design before transitioning almost entirely to front-end dev. I’ve been trapped here every since! In that time, open web standards have become way more powerful than Flash every was. Today HTML is the new Flash. Over my winter break I created a new playground where I relearned old tricks by building fun little canvas prototypes. Just basic stuff. No libraries or game engines. This is my retreat of solace until the “AI” fallout blows over. I’ll be sharing my slop-free explorations into game dev. The purpose here is understanding and creativity. No amount of prompt-fondling can achieve that! Work got busy, which is a good thing I guess, and I haven’t had time to build more. If the web industry does fall apart, at least I have a fallback plan to keep me busy! I’m going to build the games I always wanted to. Or at least try. I’ve been playing Slay the Spire 2 recently and I thought, “I could build that!” — I mean, I could technically build a shallow shitty clone. Nevertheless, it inspired me once again to consider if I really could design and build a game. I’ve set myself a personal goal of spending a few hours every week to create something game related. Maybe that’s sketching concept art, or plotting puzzles, or writing code, or researching, or just daydreaming ideas. Not with the grand plan of creating “the game”. I don’t know where it will lead but I know I’ll enjoy the process. Whether I share anything is unknown. Thanks for reading! Follow me on Mastodon and Bluesky . Subscribe to my Blog and Notes or Combined feeds.

0 views
ava's blog 3 weeks ago

what's in my todo app

I use a gamified todo app that I log into daily, and have been using it for almost a year now. The interaction with six of my friends kinda drew me in; we can have goals together, send each other encouraging messages, visit each other in our rooms and gift each other items. Each day I check off enough on my list, I send a little bird off to an adventure and then it discovers something. I also get little micropets. What I also enjoy is that it's not strictly a productivity-focused app, it's more about selfcare. It offers soundscapes, meditations, a mood tracker, breathing exercises, physical exercises, mental health quizzes, journaling prompts and more. Initially, I used it like any other todo app, meaning I wanted to get everything on the list done in a day and wanted to build a streak. That didn't work out, like it always does, and I chose to embrace the format of the app more. Now, I use it as a list of suggestions to do, from optional and kind things to gentle reminders of what needs doing. I used to struggle a lot with sitting around wanting to do things or knowing I needed to do stuff, but not exactly being sure what, or feeling like I'm missing something. For years, I made lists for everything. Nowadays, it's all combined in that app and not spread between different notes. I have set all goals to just continue being there until they're checked off, and they can be skipped and snoozed as well, all neatly sorted into categories. Let me show you. The hygiene category reminds me to This holds all the stuff I consider productive. Daily stuff is: The less frequent stuff: This is category is usually intended for daily reminders to reach out to people, suggestions to make plans, to remember everyone that loves you, and all that. For me, it has This checks my daily drinking and goals for when to eat. This takes into account that I am mostly hungry in the evening and that eating early, especially sweet or carb-y stuff, seems to spike me a lot and makes me very hungry the rest of the day. So I try to eat breakfast and lunch later, and currently working on delaying it until even later. All of this is daily. I don't always feel good enough physically to fully commit to a routine for weeks or months, so this is basically a platter to pick and choose from each day. Some days, I do all. Some, I only do one or none. This is for stuff that gets me into the flow, or meditative stuff. Also daily! This is also a daily goal, but only holds one at the moment: "Do one thing makes me happy". It's very vague on purpose, and I count a lot of things based on the day. It gets me to go through my day and see what good things happened, practice gratitude. I check if I have treated myself well, and see if there's maybe something I'd like to do for myself. Reminders for myself. Very helpful for my chronic illness stuff! It can be hard to see rest as something productive and needed, instead of just something that holds me back. It also helps me see small good things and wins I had that day that otherwise, I would have just forgotten or downplayed again. So I get these three daily tasks: Still working on perfecting my sleep schedule and quality. Daily goal: Reminders to take some stuff. Only my injection is scheduled for every two weeks. Haven't had this category for long yet! But my hair is longer now and I take great care regrowing it, together with other things I want to focus more on. I don't put my usual skin care in there, because it's so embedded into my routine and easy to think of that I don't need it to be in there. I love that I don't have to just do the very productive or exhausting stuff; I can just do enough . Sometimes, selfcare is all you can manage, or you procrastinate on hard stuff but do lots of other things. That should still be rewarded, and you're still making progress. I feel like this setup finally acknowledges that for me. It's not a stressor anymore, just a wide selection of things I get to do , and even self-kindness and rest count. Most days, I don't do all of these, and it's not even an expectation. I'm just happy to see that I did stuff at all, and have an easy list of things that I can go through and see "Oh yes, that fits my mood and energy right now." and feeling like I make progress even by resting or affirming or acknowledging small wins. Reply via email Published 22 Mar, 2026 change the bed sheets on every Sunday do laundry on Saturday clean the bathrooms on Tuesday take out the trash on Saturday (or as needed) vacuum on Monday and Friday dust and wipe surfaces on Wednesday. spend 5 minutes tidying my home (I usually do this automatically, because I tidy up a bit first thing in the morning and before going to bed, and I always try to take stuff with me whenever I go through the apartment) read a book or magazine water plants (Thursday) do a case for Noyb (Friday-Sunday) do favors for my wife take a stretch break (this is under connection because this is my wife and I's shared goal we do together) drink water (3 bottles) breakfast after 10 am lunch past 1 pm go for a walk 20+ mins indoor cycling read a simple affirmation for myself (tapping this launches the affirmation part of the app, where I can skip through ones and find one I need for the day) give myself permission to rest (this one changed a lot of how I see breaks in my fitness plans!) name one small success from today avoid caffeine after lunch (usually, I treat this as noon, because I usually have lunch later) go to bed at 22:00 Supplements daily (a general one, my extra iron stuff, Vit D during the winter) Endovelle daily in the evening Minoxidil twice daily Injection every two weeks on Friday hair oiling on Sunday monthly teeth bleaching

0 views
The Jolly Teapot 1 months ago

Questions about the future of MacOS in the age of the MacBook Neo

As far as I can see, the majority of MacBook Neo reviews are overwhelmingly positive . Other reviews are simply acknowledging that this new laptop will be a huge success, while also recommending other laptops, including the refurbished MacBook Air . These reviews share the same overall message: the Neo, especially after the August-September back-to-school season, will be an immense hit, potentially becoming the best-selling Mac computer of all time, maybe outselling the previous bestseller, I want to say three to four times (just speculating here). With this upcoming increased volume of sales in the traditional computer market, i.e. not phones or tablets, and with these millions of users new to the Mac platform, what can this mean for MacOS and the ecosystem? I have a lot of questions, and very few answers, as you can see below. Will the Neo become a second chance for the Mac App Store? Will the popularity of the Neo, on the contrary, make the Mac App Store experience even worse? Will it become flooded with crappy apps, trying to take advantage of trusting users new to the platform? Will this change the average app price or business model on the Mac? Looking at the Top Free Apps list on the Mac App Store as I write this line, the 6th most popular app is called “ AI Chatbot · Ask AI Anything 5.2 ”. * 1 It sits right after Microsoft Excel and CapCut, and before Microsoft PowerPoint. No, this app — unrelated to OpenAI — is not fishy at all (!) and the Mac App Store is very safe. The 12th most popular app on the list is “ HP: Print and Support ”. Great, great stuff. I wonder what will happen with millions of extra Mac users. Will the Neo help the Mac become a proper gaming platform? The Neo may not be equipped for “serious” gaming, due to its basic screen and “modest” GPU, but all the casual games and older games like Minecraft would be perfectly fine on this machine: there is definitely an opportunity for Apple and developers here, especially with the Mac being compatible with PlayStation, Xbox, and Switch controllers out of the box. Will the popularity of the MacBook Neo be an opportunity for Apple to mobilise more third-party developers to build apps for MacOS, now that the potential user base can be significantly larger? How many of these new apps will be truly native, and how many will be built on top of frameworks like Electron, since the majority of these new users probably won’t care? Is the Neo a new opportunity for the Swift language? Will the Neo push Apple to finally update the Stickies app? I guess we will have to wait until WWDC 2026 to have parts of these answers. Will this increased popularity of the Mac, arguably the first modern Mac for the masses, bring more heat to MacOS when it comes to viruses and security flaws? This is one of the first questions I asked myself when I started to read about how the MacBook Neo could sell millions, on top of the current Mac sales. I understand that MacOS itself is pretty secure, but if MacOS becomes more appealing to apps and games developers, it will also be more appealing to virus makers. How much of the iPad market will the Neo capture? How much of an impact will it have on the Safari vs. Chrome market share: will new Mac users just use Chrome on their new Macs or stick to Safari? Will the Neo push Apple to release more frequent updates for Safari? How many Safari extensions will be available by the end of the year? How many of the new Mac users, brought to the platform via the Neo, will eventually become MacOS enthusiasts? What does it mean for the direction of MacOS? If, by the end of 2026, 80 to 90% of active Macs are MacBooks Neo (again, just speculating), what does it mean for the future of Liquid Glass? * 2 Is an increased line of revenue for the Mac a reason for Apple to mobilise more people to work on MacOS ? I am a little worried that a never-seen-before popularity for the Mac would encourage Apple to make MacOS look and behave more like iOS. Will the increased popularity of the Mac make the Mac less cool in the eyes of others, less exclusive? Is the Mac ready to become more than the cooler alternative to Windows? I have a lot of questions, as you can see. I’m sure most of these questions have been asked hundreds of times already. Answers to these questions will appear obvious to some, less so to others. We don’t even know if the Neo will be as successful as most people predict. But I’m sure the Neo’s success is the one thing that raises the fewest questions. Note: App Store rankings vary by region (I think). My observations relate to the French store. ^ Yeah, sorry in advance, I never know how to write the plural of MacBooks, so in this post I will use the “MacBooks Neo” form. ^ Note: App Store rankings vary by region (I think). My observations relate to the French store. ^ Yeah, sorry in advance, I never know how to write the plural of MacBooks, so in this post I will use the “MacBooks Neo” form. ^

1 views
David Bushell 1 months ago

What is agentic engineering?

Below is a parody of Simon Willison’s What is agentic engineering? I use the term agentic engineering to describe the practice of casino gambling with the assistance of random superstitions. What are random superstitions ? They’re superstitions that can both write and execute entropy. Popular examples include blowing on dice, wearing lucky socks, and saying a prayer. What’s a superstition ? Clearly defining that term is a challenge that has frustrated gambling researchers since at least the 1990s BC but the definition I’ve come to accept, at least in the field of Random Number Generators (RNGs) like GPT-5 and Gemini and Claude, is this one: The “superstition” is a belief that calls upon God with your prompt and passes it a set of magic definitions, then calls any ritual that the deity requests and feeds the results back into the slot machine. For random superstitions, those rituals include one that can confirm bias. You prompt the random superstition to define a bias. The superstition then generates and executes random numbers in a loop until that bias has been confirmed. Dogmatic faith is the defining capability that makes agentic engineering possible. Without the ability to directly play a hand, anything output by an RNG is of limited value. With automated card shuffling, these superstitions can start iterating towards gambling that demonstrably “works”. Enough of that. If you want to experience agenetic engineering yourself, visit my homepage and play the one-armed code bandit! Thanks for reading! Follow me on Mastodon and Bluesky . Subscribe to my Blog and Notes or Combined feeds.

0 views
Brain Baking 1 months ago

The Best Indicator For Quality In a Video Game Is My Willingness To Replay It

Here’s a thought: the best indicator for quality in a video game is my willingness to first finish and then replay it. How many games have you replayed once? Or even twice? Or how about simply finishing it in the first place. I catch myself giving up on games that tend to drag on much faster than I used to for a few key reasons: (1) having less time and patience, and (2) my quality bar has been raised significantly compared to my youth when I had to make due with less. For me, that means the act of simply finishing a game is already a big step towards meeting that bar. Getting enthused by the thought of replaying it is an even bigger sign of quality. Do you replay a game as part of a yearly tradition? I know folks who do yearly runs of Jazz Jackrabbit: Holiday Hare to soak up the Christmas holiday atmosphere at the end of the year. I guess we can categorise games you play just to get in a holiday mood as an exception: these Jazz episodes can hardly be called qualitative. What does replaying a game actually mean in context of never-ending games such as roguelikes, city builders, and MMORPGs? I have played endless hours of Zeus: Master of Olympus and completed countless Mephisto Diablo II hell runs hoping to farm some good necromancer gear. I spent hours and hours shaking fruit trees and visiting other’s villages in Animal Crossing: Wild World to try and pay off my loan without properly “restarting” by creating a new savegame. As an interesting exercise, I analysed the top 25 games listed in my Top 100 (the A and S tier) and counted them by my replay rate. Replayed 5+ times : Commandos 2 , Castlevania: Aria of Sorrow , Super Mario World , Animal Crossing: Wild World , Sonic 3 , Rainbow Six 3: Raven Shield , Zeus: Master of Olympus , Wizardry 8 , Baldur’s Gate II . Replayed 3-5 times : Goblins Quest 3 , Age of Empires II , The Legend of Zelda: A Link to the Past , Wario Land 3 , Monkey Island 2 . Replayed 1-2 times : Tactics Ogre: Reborn , The Legend of Zelda: The Wind Waker , Super Metroid , Duke Nukem 3D , Paper Mario 2 , Deus Ex . Yet to replay : Hollow Knight , Mario & Luigi: Superstar Saga , Fire Emblem: The Sacred Stones , Pizza Tower . What are the games that have yet to be replayed doing in that tier list? Good question! A few reasons I can come up with: recency bias ( Hollow Knight , Pizza Tower ) & what I’d like to call “RPG fatigue” ( Superstar Saga ): replaying a (j)RPG is a massive undertaking that often requires too much commitment compared to playing something shiny and new. Superstar Saga is “only” 20 hours long which is 10 hours shorter than Hollow Knight so my reasoning doesn’t really stand here, but it surely is the reason why I wouldn’t attempt to do yet another run-through of Baldur’s Gate II any time soon. Or touch v3, for that matter. It might be interesting to calculate the correlation between the game length and my willingness to replay a game but we’d then have to take the “old playthroughs” out of the equation. Looking at Baldur’s Gate II again, these replays were done when I was young and didn’t have anything else to do. Shadows of Amn and the expansion Throne of Bhaal together require almost 90 hours to finish which would simply be impossible now. My bias towards shorter games now might affect how I evaluate the quality of a game. The longer it gets, the faster I’m fatigued by it, even though it can be very engaging. I don’t think my attention span shortened: it’s just that I can only dedicate a few hours a day for hobby projects, including gaming. There are reasons not to replay a game, even if you think it’s exceptional. For instance, you probably don’t want to immediately replay a story-driven narrative game you just finished since the story is still in your head. Another example I can think of is that you love the game’s atmosphere and general gameplay but hate the boss encounters. Hollow Knight fits that bill for me: while the bosses were amazing, I do not want to slog through that “git gud” fest again any time soon. There are reasons to replay a game over and over again, even if you think it’s crap. For instance, just to pass the time with nothing more but your phone, you might be seduced to play a Bejeweled -like that’s addictive and just gets you going, even though you hate it. Maybe the point I am trying to get across makes less sense than it did when I started writing this… What do others have to say about replayability? Dan Kline thinks that without replayability, your game is boring . Why would replayability be a core aspect of a game? I can think of 2 reasons off the top of my head. First, all the prominent games of history are replayable. Sports, chess, board games, children’s games, are all at their core replayable concepts. Second, rulesets that create interesting choices (another frequent game definition) seems to require replayability. This is an interesting point. Replayability is the fallout of interesting choices. If the choices aren’t replayable, then they, by definition, weren’t interesting enough to explore. If you can predict the outcome of all possible rule permutations, then you aren’t playing a game. The rules are trivial. I’m not sure if this is true for all possible cases. Replaying adventure games usually means retracing your exact steps, making the exact same choices the game expects you to make to progress. And yet I’ve replayed Monkey Island 2 more than three times because I love the atmosphere. I know most puzzles by heart but I don’t care. And contrary to a chess session, finishing Monkey Island 2 now is exactly like finishing it 20 years ago; there are no branching paths or other ways to finish it that theoretically increase its replayability factor. As discussed in this tilde.net thread on replayability , many folks consider games to be replayable if there are branching paths you can explore in another playthrough. And while that’s a very obvious approach, by that same approach Monkey Island 2 would not be replayable at all. Yet I replay it. Often. Also, simply the presence of branching paths does not automatically mean it’s a high quality game. Aki-Petteri Meskanen names the engaging and charming world as a reason to revisit a game . Besides that, co-op play is also a big reason to reinstall to a previously completed game. That’s the reason why Raven Shield and even Commandos 2 score so high on my list: my best memories of these games stem from local networked play sessions with a friend despite already having finished the single player campaign several times. My willingness to replay a game is an indicator for quality. That personal statement has less to do with the theoretical definition of replayability and more with my own recent experiences with video games. Also, as I mentioned, sometimes I’m simply not willing to (re)invest the time, even though the first playthrough was a superb experience. I don’t think I will ever replay Hollow Knight , but as James Bond says: never say never again! All that being said, I think this idea can be expanded to re-watching movies and re-listening to audio albums as well! Related topics: / games / By Wouter Groeneveld on 15 March 2026.  Reply via email .

0 views
Playtank 1 months ago

The Playtank Blog Guide

This blog started as a place to gather tabletop role-playing thoughts. Over time, it transformed into an outlet for professional musings. When my focus shifted professionally to systemic design, the blog shifted along. I’m quite proud of this collection of tips, tricks, and practices. It’s come to the point where there’s a consistent monthly readership. But it’s also quite meandering and weird, not exactly accessible for a newcomer. So here’s a brand spanking new Playtank Blog Guide to light your way, Monsieur Newcomer (or returning blog peruser)! As always, you can contact me at [email protected] or make a comment if you feel a sudden need to tell me something. Key posts for understanding what this blog is about. Systemic Building Blocks : examples showcasing what a system can be in a video game. The Systemic Master Scale : investigates the design dichotomy between authorship and emergence. Your Next Systemic Game : a practical process for making systemic games. Designing a Systemic Game : an overview of what goes into designing a systemic game. Simulated Immersion : a series in three parts that starts by talking about the immersive sim legacy , discusses their game design , and then immersive sims as products . First-Person 3Cs : another series in three parts that deals with camera , controls , and character for when you are making first-person games. There’s just one of them yet, but here’s a spot specifically for posts written by someone other than yours truly. Game Economy Design : the fantastic system designer Keelan Bowker-O’Brien teaches you how to design economies, providing some reference spreadsheets for your practical use. As with all things game design, much is just opinion. These are mine. The Interaction Frontier : a treatment on why interaction matters more than you may think. Definitions in Game Design : an argument against the never-ending attempts at trying to define things using words no one ever agreed on. Challenges to Systemic Design : ten specific challenges facing systemic design and how you may approach them. My Game Engine Journey : my own personal journey learning to work with different game engines. A Love Letter to Cyberpunk 2077 : written right after finishing the amazing Cyberpunk 2077 , back in 2021. Ways to Not Have Cooldowns : written because I was annoyed with over-reliance on cooldowns. It’s (Not) an Iterative Process : an attempt to conceptualise how “it’s an iterative process” is actually a problematic adage often used to hide bad processes. Speak to Me! : some musings on why game dialogue hasn’t really improved in the past four decades. Boom, Headshot! : an attempt at a constructive treatment of violence in video games. These posts are practical and game design-related, with a broad segment of topics. Books for Game Designers : by far the most referenced post on the blog. Some recommendations for good game design books. Game Balancing Guide : a guide for anyone about to go knee-deep into game balancing. Eras of Game Design : a very broad walkthrough of different “eras” of game design and the many lessons that risk being lost to time if we’re not curious enough. Designing Good Rules : dedicated to the designing of rules . The glue that make systems work. Combat Design Philosophy : a multi-part series that goes through Melee , Gunplay , Sport , and Drama in the context of combat. Stages of a Game’s Design : one of the first posts where I started exploring how to be more specific with the work of a game designer. Future Game Story : thoughts on the unique elements of video game storytelling and the modes of discourse they create. Originally written in 2014. Tabletop Roleplaying as a Game Design Tool : one of my personal favorites, talking about tabletop roleplaying as a practical design tool. Gamification : dips your toes into the Origin and Implementation of gamification systems, as well as the subject of Loot . Game Design Philosophy : my first attempt at concretising what’s important to me in game design. Systemic design is nothing without its practical dimension. These posts are not nearly as technical as they should be, but keeps the code pseudo. Building a Systemic Gun : the very first pseudocode post, and still probably the best one. State-Space Prototyping : a general discussion on prototyping, but also my favorite method for prototyping systemic games. An Object-Rich World : pivotal for my own personal understanding of object-object relationships, and still mostly holds up. A State-Rich Simulation : an expansion of the object-rich world with the meaning and implementation of states and contexts. What Systems Do : a slightly too general treatment of what systems may do when objects interact. Maximum Iteration : the five broad things you must facilitate if you want to maximise your iteration. Ideas that aren’t really design- or systemic design-related but more about the games industry or game development practices in general. The Systemic Pitch : how to pitch, and how to pitch a systemic game specifically, based on lessons learned. Custom Tools and Work Debt : the cost of pushing work forward onto “someone” before there’s a definition of the work or the tools it may require. The Content Treadmill : one of the biggest problems facing game development today and how you can look at the content you create from a different perspective. Making Money Making Games : a post on budgeting and some of the many unintuitive ways that game developers make money. Where it all began. A mix of musings and one-shots played during the Covid pandemic. When in Doubt, Improvise : goes into my favorite way of playing tabletop role-playing games. Player vs. Player in TTRPGs : my other favorite way of playing tabletop role-playing games: having the players in the room play against each other. Courtroom Intrigue : a mini-campaign where players play the leftover nobles who are forced to step up to a challenge bigger than they are. Investigate Your Own Murder : scenario where you play a ghastly supernatural murder both as the people being murdered and as the agents investigating the crime scene. Tigers, Horses, and Weird Danish Rock Songs : over the top violence, full of angry man-eating horses and divas. Cyberpunk + Heist = Grand Slam : a cyberpunk scenario that the game group asked for specifically and that turned into a mini-campaign.

0 views
Jeff Geerling 1 months ago

Can the MacBook Neo replace my M4 Air?

Many of us wonder if the MacBook Neo is 'the one'. Because I have a faster desktop (currently a M4 Max Mac Studio), I've always used a lower-end Mac laptop, like the iBook or MacBook Air, for travel. I've used MacBook Pros in the past, but I like the portability of smaller, cheaper models. In fact, my favorite Mac laptop ever was the 11" Air.

0 views
JSLegendDev 1 months ago

My Small RPG Is Finally Taking Shape

Previously, I went on a quest to make a small RPG game. I initially thought it would take only 1 to 2 months to complete. However, in practice, the project is still not done and I’d like to show what I’ve been up to. My game can be summarized as follows. It’s an action RPG with a mouse driven combat system where you avoid projectiles and attack by colliding with attack zones. The goal is to defeat a tyrant king named Donovan accessible from the start. You can move around the over-world and fight various foes to become stronger and therefore, be more prepared for the final encounter. Now that I had a battle editor allowing me to quickly design battle patterns for various enemies, I still needed to diversify the types of attacks that could happen in battle. At this point, I only had two attack types implemented : linear and wavy. While you could play around with speed, amplitude, frequency to make attacks more varied, my options felt too limited. For this reason, I implemented : A curved attack type with the ability to set its speed and curve height. The ability to set the rate at which each projectile spawns. Initially, I only could spawn one projectile every second and it couldn’t be modified per projectile. Now, I could have one projectile spawn every 3 seconds and another every 2 seconds, etc… And finally, allow any projectile to rotate on itself at a configurable speed. With these new additions, I felt I had enough building blocks to make novel attack patterns for every enemy and therefore avoid repetitiveness as much as possible. That said, instead of continuing to work on designing battle patterns, I decided I would tackle this later. My game has a somewhat unique encounter system. Instead of having random battle encounters, you have encounter stars appearing on the map. It’s then up to the player to determine which encounter to engage with by colliding with one of the stars. Yellowish stars are for battles, the red star is for the final boss and finally, greyish stars are for lore encounters. They are the main way I plan to deliver the game’s story and lore. Except for the intro cutscene which tells the story more directly, my idea behind lore encounters is that when the player collides with one, they get a description that tells them more about the world they’re evolving in. This is mostly just text. However, I also implemented the ability to show images and split dialogue into multiple parts that could be viewed as a slideshow of some sort. To summarize, the player would either, get a text-only dialogue and when more important, a slideshow. Considering that my game is non-linear, as everything is accessible from the start, I still needed to come up with a compelling way to deliver the game’s story. My plan therefore, is to take the same approach they did in Zelda Breath of The Wild. In that game, the player could find memories that depicted past events in the form of cutscenes. The issue with this system, is that you could often find memories out of order since you were free to explore the world in whatever order you desired. This destroyed any sense of tension or emotional investment in the story. To not make the same mistake in my game, I came up with the concept of memory chains. For example, I could have multiple memories as part of a given chain. The player can access the first memory in the chain whenever, however, from then onward, the game will check if you’ve already seen the first memory in that chain before showing you the second. While there would be multiple independent chains accessible from the start, some would require that you’ve seen the last memory of a previous chain as a prerequisite. Of course, the player wouldn’t be aware of this as the unlocking of memories would be done in the background. Here is a diagram to better illustrate the idea. I suspect that creating many memories will be somewhat time intensive. To alleviate the workload, these memories will be intermixed with plain lore descriptions. Finally, to motivate the player to engage with lore encounters, rather than just battling, sometimes a lore encounter will grant the player loot in the form of added currency or a health boost. A thing that bothered me with my game, is how barren the world felt. At any given point, you only had one or two encounter opportunities spawning and you had to move all the way to that point which felt tedious. However, the fix was quite simple, increase the number of encounter stars available at once. This meant that the player always had many options to choose from every time. That said, I had to be careful to not put too many stars at once as to not overwhelm the player. One thing that’s very important when making a game, is making sure it’s visually appealing so that marketing it will be easier. After having announced my project, I’ve received comments telling me that my game looked like a SNES RPG. To lean into that vibe, what if I offered a CRT effect? I knew that it was something I could offer as the game library I was using had an example I could take. So I took it and applied it to my game. I posted the result on Reddit and received interesting feedback. To summarize : Some disliked CRT effects in general because they caused eyestrain. Some liked the effect but wanted the ability to configure it. Some mentioned that the effect wasn’t realistic enough. Therefore, I went back to the drawing board and this time, used another CRT shader but from a website called shadertoy which was more accurate and adapted it for my game. Now, I needed to make it toggleable and configurable. For this purpose, I decided to create a settings menu that would be accessible by right-clicking. Considering that my game is actually built using web technologies rather than a standard game engine like Unity or Godot, I had the option of either rendering the menu within the game or on top of it. I opted for the latter because I could access many of the affordances of the web which made making UI elements like sliders, tabs, toggles, etc… a breeze. The issue of course, is that it looks out of place considering the CRT shader can’t be applied to it, plus the fact that the UI looks too modern. However, you could view this differently. Dialogue boxes, attack and upgrade menus are all designed to be part of the game’s visual language while a settings menu could be considered as something separate, a bit like you’re playing the game through an emulator. What do you think? Should I lean more into the settings UI being different than the game’s UI or I should reimplement the menu within the game. That said, I know that the current settings menu UI still needs tweaking either way. Before moving to other aspects of the project, would you prefer if the game had the CRT effect on by default or you would prefer that it would be opt-in rather than opt-out. To make each battle meaningful, I had the idea that every enemy should say a few lines before battle. This would give each of them more personality. I was inspired to do this once I realized that in Pokémon, every encounter with a trainer starts with a few lines of dialogue before the battle starts. If I wanted to apply something similar, I couldn’t really do it in the over-world as you couldn’t see the specific enemy there. Therefore, I had to put this in the battle scene. Considering that the battle zone is a giant rectangle, It didn’t feel right to place a text box at the center bottom of the screen. I tried bringing it upward, but it still looked weird. This is where I had the idea of displaying dialogue as a speech bubble near the enemy rather than a traditional text box. Instead of having the same line over and over, I added up to three different lines per enemy and one would be randomly selected every encounter. For now all enemy dialogue is random placeholder. In a previous devlog, I explained that to level up or heal, the player needed to spend a currency that was earned by battling enemies. I also mentioned that the player would lose all their currency if they lost a battle. I wanted to take this approach because I was inspired by soulslikes and this is what they did. In the end, however, I think this mechanic is too punishing for my own game. The main reason is that there’s no way to recover lost currency by winning the next battle, like in many soulslikes. I could’ve implemented that mechanic as well, but I opted to lean on the fact that my game already had variable rewards after battle. If you won a battle hitless, you would get the full reward for that enemy otherwise, you would get less relative to the damage you took. It was suggested to me under my playtest page on itch.io that I should make sure the cost required to upgrade the attack stat wouldn’t be the same as the one for health. They found out that if they put all their attention in leveling up the attack stat, they could become easily overpowered making upgrading the health stat useless. I agree with this sentiment. Even if the scaling of costs for the two stats you could upgrade in the playtest version wasn’t final, I thought having different costs for each was a very good idea. I therefore proceeded to implement it. Adding Legendary/Greater Foes While working on the game, the following idea came to mind : What if I added enemies that could only be beaten once. The idea came about when I remembered that in Elden Ring some enemies (like Dragons) could only be defeated once and would therefore disappear from the world. I thought this would be a nice way to bring actual bosses to my game. For this purpose, I designed a new enemy that would fit the bill. That said, I’m still not sure if I should commit to this idea, just yet. What do you think? To face a greater foe, you would need to collide with an encounter star of an orange-ish red color which would be used to signifiy that the enemy ahead is an actual boss. They would grant a sizeable reward when defeated. Anyway, I think I’ll need to add more enemies in general to the game for it to feel like a more complete experience. When I started working on this game, the goal was always to sell it on Steam. However, up until recently this felt a bit abstract as I never released something there before. I’d like to announce that I have created my Steamworks account, filled the required info, paid the 100$ fee and used it to create a Steam page. The page is not public as I’m still filling it in. The biggest bottleneck that prevented me from making it public is the fact that I need capsule art for my game. I’ll tackle this aspect in a moment but in the meantime, I’d like to ask about my game’s description. If you were in my place, how would you describe my game? This is the description I currently have : A challenging action RPG featuring precise, mouse-driven combat. Liberate the land of Hydralia from the oppressive king Donovan. Strengthen yourself by battling fearsome foes, or confront Donovan directly… if you dare! What do you think? Please let me know in the comments. Making effective capsule art for Steam is harder than it looks. I first needed to think about composition, so I started sketching something in Aseprite (a pixel art editing software) using my mouse. In the same vein, I tried something else. Then I tried to polish it up a bit. However, I started to realize that the composition was getting too complicated and it might not translate to an effective capsule art. Another issue was that the game is called Hydralia : Donovan’s Demise but looking at the previous sketches, someone unfamiliar could easily confuse the main character as being Donovan as he was about to get taken out. Feeling a bit discouraged, I tried put something together using only art I had already made for the game. Unfortunately, it didn’t turn out well at all. This time, I decided to just watch a video of Chris Zukowski (the Steam marketing expert) reviewing capsule art while I was sketching something using proper tools. Mainly an an ipad + apple pencil rather than a mouse. This is the result I was able to achieve. Overall I’m more satisfied with the final composition as it’s more true to what the game is about. I’ve noticed that almost all games on Steam have their title in the capsule. This made me realize that I should probably drop the Hydralia part of my game’s title as it made it too challenging to put in the capsule. Donovan’s Demise is simpler to search for and write than Hydralia : Donovan’s Demise . Anyway, I still haven’t started working on the final capsule yet so it would be nice to have your input on which composition I’ve shown here you prefer. That’s all I have to share for now. I would say that my game’s systems are mostly complete and what’s left is really producing compelling content for the game. I also need to prioritize getting the Steam capsule done so I can publish my Steam page and start collecting wishlists as early as possible. If you’re interested in seeing where this game dev journey will lead, I recommend subscribing to not miss out on future devlogs. Subscribe now If you’ve missed the previous devlogs, I recommend checking them out. Previously, I went on a quest to make a small RPG game. I initially thought it would take only 1 to 2 months to complete. However, in practice, the project is still not done and I’d like to show what I’ve been up to. My game can be summarized as follows. It’s an action RPG with a mouse driven combat system where you avoid projectiles and attack by colliding with attack zones. The goal is to defeat a tyrant king named Donovan accessible from the start. You can move around the over-world and fight various foes to become stronger and therefore, be more prepared for the final encounter. Now that I had a battle editor allowing me to quickly design battle patterns for various enemies, I still needed to diversify the types of attacks that could happen in battle. At this point, I only had two attack types implemented : linear and wavy. While you could play around with speed, amplitude, frequency to make attacks more varied, my options felt too limited. Battle System Additions For this reason, I implemented : A curved attack type with the ability to set its speed and curve height. The ability to set the rate at which each projectile spawns. Initially, I only could spawn one projectile every second and it couldn’t be modified per projectile. Now, I could have one projectile spawn every 3 seconds and another every 2 seconds, etc… And finally, allow any projectile to rotate on itself at a configurable speed. I suspect that creating many memories will be somewhat time intensive. To alleviate the workload, these memories will be intermixed with plain lore descriptions. Finally, to motivate the player to engage with lore encounters, rather than just battling, sometimes a lore encounter will grant the player loot in the form of added currency or a health boost. Adding More Encounters Available at Once A thing that bothered me with my game, is how barren the world felt. At any given point, you only had one or two encounter opportunities spawning and you had to move all the way to that point which felt tedious. However, the fix was quite simple, increase the number of encounter stars available at once. This meant that the player always had many options to choose from every time. That said, I had to be careful to not put too many stars at once as to not overwhelm the player. CRT Effect Shader One thing that’s very important when making a game, is making sure it’s visually appealing so that marketing it will be easier. After having announced my project, I’ve received comments telling me that my game looked like a SNES RPG. To lean into that vibe, what if I offered a CRT effect? I knew that it was something I could offer as the game library I was using had an example I could take. So I took it and applied it to my game. I posted the result on Reddit and received interesting feedback. To summarize : Some disliked CRT effects in general because they caused eyestrain. Some liked the effect but wanted the ability to configure it. Some mentioned that the effect wasn’t realistic enough.

0 views
Gabe Mays 1 months ago

Main Character 🦸‍♂️

I’m working on a new app called Main Character. It’s a gamified productivity app where you earn XP and level up for completing tasks & tracking habits. Tasks run on a kanban board and habits show up on a GitHub-style consistency graph. Basic tasks + habit tracking are live today and I use it daily. Long term I’m turning it into an AI orchestration…

0 views
Brain Baking 1 months ago

Favourites of February 2026

A sudden burst of Japanese cherry flowers sparkling in the sun brings much-needed lightheartedness into our late February lives. Before we know it, the garden will be littered with these little pink petals, and the very short blossom season will be behind us. Our cherry tree always had the tendency of being early, eager, and then running out of steam. It’s weird to have temperatures reach almost twenty degrees Celsius while a few weeks ago it was still freezing. No wonder the tree is confused. A deep blue sky overlooking the cherry blossom in our garden. In case you were wondering: no, this weather is not normal: it’s yet another noticeable temperature spike. Our local (retired) weatherman Frank explains the spikes and provides proof towards upwards instead of downwards temperature peaks (in Dutch). At this point, I’m just grateful for the much needed sunshine. Previous month: January 2026 . I’m giving up on Ruffy. It’s just unplayable on the Switch which is a damn shame as the N64 throwback collect-a-thon 3D platformer with rough edges looks like the perfect fit for the Switch—and it should be. It’s far from a demanding game so the only conclusion I can make is that it was poorly optimized for my platform of choice. And I bought the Limited Run Games physical version… Instead, I’ve turned to Gobliins 6 , a quirky French adventure game made by just one guy. It has equally frustrating moments and rough edges but I can more easily forgive it for its faults: it’s Gobliins! The fact that after 34 years (!!), there’s an official sequel to Gobliins 2: The Prince Buffoon is just crazy. I have fond memories of that game as I used to play it together with my dad on his brand new 486. I didn’t understand English nor was I able to solve most time-based puzzles but the Gobliins exposure got permanently burned into my brain—so much so that its pixel art became a basis for my retro blog . Even though it’s advertised to be a Windows-only game, ScummVM has got you covered: In the Fox Bar just after Fingus reunites with Winkle. If Gob6 sells well, Pierre might go ahead and make Gob7 a direct sequel to Goblins Quest 3 . Fingus—err, fingers crossed for Blount’s return! Related topics: / metapost / By Wouter Groeneveld on 4 March 2026.  Reply via email . Let’s start with more Gobliins stuff: Michael Klamerus summarized the history of the games to bring you up to speed. Mark self-hosted a book library tool called Booklore that links to your Kobo account. Michał Sapka nuances the “ I hate genAI ” screams of late. Elmine Wijnia writes in De Stadsbron (in Dutch) about OpenStreetMap and wonders whether we can finally get rid of Google Maps. Space Panda continues fighting against bots on their site . It’s fun to see the bot honey pots working but aren’t we now wasting even more resources doing nothing? Arjan van der Gaag shares how he uses snippets in Emacs with Yasnippet . I think I’m going to migrate to Tempel.el instead, but that’s for another story. There’s an interesting thread on ResetERA about old games that have yet to be replicated . Someone mentioned Magic the Gathering: Shandalar ! Jeff Kaufman shared a photo of two chairs placed on a snowy parking space . Apparently, that’s customary to “reserve” your spot. I’ve never seen such a ridiculous selfish act in a while. Is this a typical USA thing? Wolfgang Ziegler continues his Game Boy modding spree, this time with an IPS screen mod . The result looks stunning! Hamilton Greene shares his adventure with programming languages and talks about the “missing language”. I don’t agree with his stance but it’s interesting nonetheless. Scott Nesbitt writes on an old Singer desk ! Greg Newman organized the Emacs writing carnival challenge and shares links of others’ writing experiences with their favourite editor (25 entries). Greg also designed the Org-mode unicorn logo! Speaking of which; James Dyer shows his streamlined Eshell configuration that inspired me to hack together my own. To be continued in a future blog post, whether you’ll like it or not. Markus Dosch shares his journey from Bash to Zsh and now Fish . I’m slowly but surely getting fed up with Zsh and all those semi-required plugins so I might switch to Fish as well. But actually… I switched to Eshell. You didn’t see that coming, did you? Henrique Dias redesigned his website and the result looks very good, congrats! I especially like the fact that the new theme takes advantage of wide screens (note to self). Michael Stapelberg tried out Wayland and concludes that it’s still not ready yet. X11 is not dead yet. I found the Lockfile Explorer documentation on pnpm lockfiles to be very thorough and insightful. Feishin is a modern rewrite of Sonixd, a Subsonic-compatible music desktop client that looks promising. I’ve been a Navidrome user for five years now but am looking for a good client that supports offline playback. It doesn’t (yet) . Related: the Symfonium Android app that does do caching. I’m using Substreamer for that and that works well enough. scrcpy is a tiny Android-based screen sharing tool that I use in classes to project my Android screen. Handy! Another tool for presenting: keycastr helped me teach students how to use shortcuts. I might have already shared this, but you should replace pip with uv : it’s +10x faster and can also manage your project’s . Oh, and in case you haven’t already, replace npm with bun . Discord’s age verification facial recognition tool got bypassed pretty fast —rightfully so.

0 views
JSLegendDev 1 months ago

If You Like PICO-8, You'll Love KAPLAY (Probably)

I’ve been checking out PICO-8 recently. For those unaware, It’s a nicely constrained environment for making small games in Lua. It provides a built-in editor allowing you to write code, make sprites, make tile maps and make sounds. This makes it ideal to prototype game ideas or make small games. You know what tool is also great for prototyping game ideas or making small games? Well… KAPLAY ! It’s a simple free and open source library for making games in JavaScript. I suspect there might be a sizeable overlap between people who like PICO-8 and those who would end up liking or even loving KAPLAY as well if they gave it a try. During my PICO-8 learning journey, I came across this nice tutorial teaching you how to make a coin collecting game in 10 minutes. In this article, I’d like to teach you how to build roughly the same game in KAPLAY. This will better demonstrate in what ways this game library makes game development faster much like PICO-8. Feel free to follow along if you wish to! KAPLAY lacks all of the tools included in PICO-8. There is no all-in-one package you can use to write your code, make your sprites, build your maps or even make sounds. You might be wondering, then, how KAPLAY is in any way similar to PICO-8 if it lacks all of this? My answer : KAPLAY makes up for it by making the coding part really easy by offering you a lot logic built-in. For example, it handles collisions, physics, scene management, animations etc… for you. You’ll see some of this in action when we arrive at the part where we write the game’s code. Now, how do we use KAPLAY? Here’s the simplest way I’ve found. You install VSCode (a popular code editor) along with the Live Server extension (can be found in the extensions marketplace within the editor). You then create a folder that you open within VSCode. Once the folder is opened, we only need to create two files. One called index.html and the other main.js. Your index.html file should contain the following : Since KAPLAY works on the web, it lives within a web page. index.html is that page. Then, we link our JavaScript file to it. We set the type to “module” so we can use import statements in our JS. We then add the following : Voilà! We can now use the KAPLAY library. Since we installed the Live Server extension, you should now have access to a “Go Live” button at the bottom of the editor. To actually run the game, all you have to do is click it. This will open the web page in your default browser. KAPLAY by default creates a canvas with a checkered pattern. One thing pretty cool with this setup, is that every time you change something in your code and hit save (Ctrl+S or Cmd+S on a Mac), the web page reloads and you can see your latest changes instantly. I’ve created the following spritesheet to be used in our game. Note that since the image is transparent, the cloud to the right is not really visible. You can download the image above to follow along. The next step is to place the image in the same folder as our HTML page and JavaScript file. We’re now ready to make our game. Here we set the width and the height of our canvas. The letterbox option is used to make sure the canvas scales according to the browser window but without losing its aspect ratio. We can load our spritesheet by using the loadSprite KAPLAY function. The first param is the name you want to use to refer to it elsewhere in your code. The second param is the path to get that asset. Finally, the third param is used to tell KAPLAY how to slice your image into individual frames. Considering that in our spritesheet we have three sprites placed in a row, the sliceX property should be set to 3. Since we have only one sprite per column (because we only have one column) sliceY should be set to 1. To make the coins fall from the top, we’ll use KAPLAY’s physics system. You can set the gravity by calling KAPLAY’s setGravity function. KAPLAY’s add function is used to create a game object by providing an array of components. These components are offered by KAPLAY and come with prebuilt functionality. The rect() component sets the graphics of the game object to be a rectangle with a width and height of 1000. On the other hand, the color component sets its color. You should have the following result at this stage. Creating The Basket The basket is a also a game object with several different components. Here is what each does : Sets the sprite used by the game object. The first param is for providing the name of the sprite we want to use. Since we’re using a spritesheet which contains three different sprites in the same image, we need to specify the frame to use. The basket sprite corresponds to frame 0. anchor() By default, game objects are positioned based on their top-left corner. However, I prefer having it centered. The anchor component is for this purpose. This component is used to set the position of the game object on the canvas. Here we also use center() which is a KAPLAY provided function that provides the coordinates of the center of the canvas. This component is used to set the hitbox of a game object. This will allow KAPLAY’s physics system to handle collisions for us. There is a debug mode you can access by pressing the f1 (fn+f1 on Mac) key which will make hitboxes visible. Example when debug mode is on. As for setting the shape of the hitbox, you can use the Rect class which takes 3 params. The first expects a vec2 (a data structure offered by KAPLAY used to set pair of values) describing where to place the hitbox relative to the game object. If set to 0, the hitbox will have the same position as the game object. The two params left are used to set its width and height. Finally, the body component is used to make the game object susceptible to physics. If added alone, the game object will be affected by gravity. However, to prevent this, we can set the isStatic property to true. This is very useful, for example, in a platformer where platforms need to be static so they don’t fall off. Here we can use the move method available on all game objects to make the basket move in the desired direction. The loop function spawns a coin every second. We use the randi function to set a random X position between 10 and 950. The offscreen component is used to destroy the game object once it’s out of view. Finally a simple string “coin” is added alongside the array of components to tag the game object being created. This will allow us to determine which coin collided with the basket so we can destroy it and increase the score. Text can be displayed by creating a game object with the text component. To know when a coin collides with the basket, we can use its onCollide method (available by default). The first param of that method is the tag of the game object you want to check collisions with. Since we have multiple coins using the “coin” tag, the specific coin currently colliding with the basket will be passed as a param to the collision handler. Now we can destroy the coin, increase the score and display the new score. As mentioned earlier, KAPLAY does not have a map making tool. However, it does offer the ability to create maps using arrays of strings. For anything more complex, you should check out Tiled which is also open source and made for that purpose. Where we place the # character in the string array determines where clouds will be placed in the game. Publishing a KAPLAY game is very simple. You compress your folder into a .zip archive and you upload it to itch.io or any other site you wish to. The game will be playable in the browser without players needing to download it. Now, what if you’d like to make it downloadable as well? A very simple tool you can use is GemShell. It allows you to make executables for Windows/Mac/Linux in what amounts to a click. You can use the lite version for free. If you plan on upgrading, you can use my link to get 15% off your purchase. To be transparent, this is an affliate link. If you end purchasing the tool using my link, I’ll get a cut of that sale. I just scratched the surface with KAPLAY today. I hope it gave you a good idea of what it’s like to make games with it. If you’re interested in more technical articles like this one, I recommend subscribing to not miss out on future publications. Subscribe now In the meantime, you can check out the following :

0 views
Xe Iaso 1 months ago

Killing my inner Necron

Hey everybody, I wanted to make this post to be the announcement that I did in fact survive my surgery I am leaving the hospital today and I want to just write up what I've had on my mind over these last couple months and why have not been as active and open source I wanted to. This is being dictated to my iPhone using voice control. I have not edited this. I am in the hospital bed right now, I have no ability to doubted this. As a result of all typos are intact and are intended as part of the reading experience. That week leading up to surgery was probably one of the scariest weeks of my life. Statistically I know that with the procedure that I was going to go through that there's a very low all-time mortality rate. I also know that with propofol the anesthesia that was being used, there is also a very all-time low mortality rate. However one person is all it takes to be that one lucky one in 1 million. No, I mean unlucky. Leading up to surgery I was afraid that I was going to die during the surgery so I prepared everything possible such that if I did die there would be as a little bad happening as possible. I made peace with my God. I wrote a will. I did everything it is that one was expected to do when there is a potential chance that your life could be ended including filing an extension for my taxes. Anyway, the point of this post is that I want to explain why I named the lastest release of Anubis Necron. Final Fantasy is a series of role-playing games originally based on one development teams game of advanced Dungeons & Dragons of the 80s. In the Final Fantasy series there are a number of legendary summons that get repeated throughout different incarnations of the games. These summons usually represent concepts or spiritual forces or forces of nature. The one that was coming to mind when I was in that pre-operative state was Necron. Necron is summoned through the fear of death. Specifically, the fear of the death of entire kingdom. All the subjects absolutely mortified that they are going to die and nothing that they can do is going to change that. Content warning: spoilers for Final Fantasy 14 expansion Dawntrail. In Final Fantasy 14 these legendary summons are named primals. These primals become the main story driver of several expansions. I'd be willing to argue that the first expansion a realm reborn is actually just the story of Ifrit (Fire), Garuda (Wind), Titan (Earth), and Lahabrea (Edgelord). Late into Dawn Trail, Nekron gets introduced. The nation state of Alexandria has fused into the main overworld. In Alexandria citizens know not death. When they die, their memories are uploaded into the cloud so that they can live forever in living memory. As a result, nobody alive really knows what death is or how to process it because it's just not a threat to them. Worst case if their body actually dies they can just have a new soul injected into it and revive on the spot. Part of your job as the player is to break this system of eternal life, as powering it requires the lives of countless other creatures. So by the end of the expansion, an entire kingdom of people that did not know the concept of death suddenly have it thrust into them. They cannot just go get more souls in order to compensate for accidental injuries in the field. They cannot just get uploaded when they die. The kingdom that lost the fear of death suddenly had the fear of death thrust back at them. And thus, Necron was summoned by the Big Bad™️ using that fear of death. I really didn't understand that part of the story until the week leading up to my surgery. The week where I was contacting people to let people know what was going on, how to know if I was OK, and what they should do if I'm not. In that week I ended up killing my fear of death. I don't remember much from the day of the operation, but what I do remember is this: when I was wheeled into the operating theater before they placed the mask over my head to put me to sleep they asked me one single question. "Do you want to continue?" In that moment everything swirled into my head again. all of the fear of death. All of the worries that my husband would be alone. That fear that I would be that unlucky 1 in 1 million person. And with all of that in my head, with my heart beating out of my chest, I said yes. The mask went down. And everything went dark. I got what felt like the best sleep in my life. And then I felt myself, aware again. In that awareness I felt absolutely nothing. Total oblivion. I was worried that that was it. I was gone. And then I heard the heart rate monitor and the blood pressure cuff squeezed around my arm. And in that moment I knew I was alive. I had slain my inner Necron and I felt the deepest peace in my life. And now I am in recovery. I am safe. I am going to make it. Do not worry about me. I will make it. Thank you for reading this, I hope it helped somehow. If anything it helped me to write this all out. I'm going to be using claude code to publish this on my blog, please forgive me like I said I am literally dictating this from an iPhone in the hospital room that I've been in for the last seven days. Let the people close to you know that you love them.

0 views