Tag: Game Development

  • Week 44.26

    Week 44.26

    Kim was away all week, and I managed to be quite productive on my own. Yes, it’s going to be another big vibe coding update — maybe the last one for a while because my 10x access to Hark Pro ends in a few days.

    To recap for those who haven’t been around: many of the apps I’d made earlier this year were exercises in AI frugality: challenges to see how much I could get done with low-cost Flash models. The corollary of that is that they often didn’t reach the heights I really wanted, and were more like minimum viable products (MVPs). Since last week, I’ve been giving some of these older ones a glow-up.

    Easier, better, faster, stronger

    The first project to get a second look this week was Crumbs, my personal location logging tool. It had actually stopped working because the Carto map API stopped being free for public access without a key. That’s now been resolved, and I updated it to v2.0 with some nice improvements, like a new UI. Its journaling feature is now where I’d originally wanted it to be: it can output a nicely formatted PDF detailing your pinned entries, chronicling a trip, for example.

    Chinese Era, which mashes up ancient Chinese art and poetry at random, had also fallen victim to a deprecated API, this time from The Met. I took that opportunity to completely rebuild the app from the ground up, but at first glance you’d hardly know. As I asked in the changelog, “What’s the Chinese equivalent of the Ship of Theseus?” The experience is the same as it ever was, but the Art Institute of Chicago now joins the lineup of museums, bringing the collection to more than 2,200 paintings, paired with a cleaned-up set of nearly 700 poems. The poem now finds the calmest part of each painting to sit in, and its ink adapts to stay legible. You can swipe back to pairings you’ve passed, the controls fade away when you’re just looking, and every artwork links to its museum page if you want to learn more. Underneath it all, the app is more stable and much faster. Well worth doing.

    Shelf Expression, my baby CMS for creating bookshelf microsites that you can host yourself, got Goodreads imports to help users get started, a bookshelf style modeled on the IKEA Billy, and some new starter decorations. I’ve spent a lot of time on this remodel now, and I think it’s finished.

    Hasta la RetroVista

    While looking through the catalog of apps at this point, I wondered, what next? My eyes landed on Window Box, which one might call a first attempt at the same idea behind RetroVista — dynamic scenery and music that you can leave on your second monitor as a companion while you work. Why would I update that now that RetroVista does a better job of the moving scene than Window Box did?

    Window Box

    Wait a minute… why not bring Window Box to RetroVista? Imagine if you could hit a button and the window would slam shut, and a planter box of flowers pops up to turn your view into one from inside an apartment in RetroVista? Or a log cabin? Or an Arctic research station? Or a spaceship? Each different scene would have to have its own breeds of flowers, unique to the locale, and the window glass would have to dull the exterior sounds. And while we’re at it, why not add the city of Tokyo and a Game Boy Advance mode too? So after two days of work, that became v2.0.

    RetroVista v2.0

    Proud of having shipped all that, I was relaxing in the glow of self-satisfaction when Evan, an avid RetroVista user, pinged me to say, “If I may, I’d love to see a train scene”, and goddamn it, he was right. That was an idea too good to sleep on. This would turn out to be the biggest, trickiest update yet.

    Making v3 of RetroVista would involve overhauling each of the existing scenes, which would become scrolling landscapes viewed through the train’s windows. They’d need more details, and to be separated into different foreground/background layers for parallax effects. Then those new details would need porting back into the original worlds.

    I added a Countryside scene exclusive to Express mode, as the train is called, plus unique station platforms for each world, complete with benches and vending machines and sleeping cats and birds eating breadcrumbs (again, different bird species for each locale). All the graphics modes needed updating to deal with the motion. Oh, and the Window Box mode added in v2 wouldn’t work here — so instead you get to step back from the window, and enjoy a dining car scene with different meals served depending on the time of day. Wait, there’s more: I added a Tap mode where you can touch various things in each scene and trigger dozens of surprise events.

    You can just do things

    I believe by this point it was Friday night. It got me reflecting how, back when I worked in a digital agency, if RetroVista were a client project that we had to design, have meetings and reviews about, and then develop and test and launch — the scope of this web app would have easily consumed over a month of several employees’ time, and quite experienced ones at that. The cost would have gone into six-figure territory, markups and all.

    The idea that someone like me with little coding experience could direct the production of this, from an iPhone and iPad, in less than two weeks amid other projects and hobbies and going out to meet friends for beer, is simply stunning. Of course this is only one aspect of the services that creative digital marketing agencies offer, but I don’t know how they’re holding on and justifying the revenue they surely need.

    But that’s not even all I did.

    Return to the Island

    The final app in the back-catalog that I decided to revisit was Island Solitaire, my take on an abandonware PC game called High Seas Solitaire that I have fond memories of. It was made with DeepSeek v4 Flash, which had a shaky grasp of Solitaire variations and generating card layouts. I struggled with making it serviceable, and in all honesty rarely played it myself because I knew how badly it paled in comparison to the original game I so enjoyed.

    Well, it was time to put that right. The only solution was to build Island Solitaire 2, a wholly new game on new foundations. The core gameplay of matching pairs and cards adding up to 14 is the same, but the logic and tableau designs have been simplified and refined. Where IS1 used more cards, here only one deck is ever used: 40 or so cards on the table, the rest in a draw pile. Every game is now guaranteed to be solvable and not left up to luck. The neater layouts work well on screens of any size.

    Taking it beyond just rounds of solitaire, there’s a progression mechanic — your wins develop the beachfront area with more elements, and unlock randomly occurring mini-games that help you win shells (a currency). The shells let you pay your way out of tight spots, such as undoing a bad move.

    You can learn more in a separate post, but at the risk of using an AI-like construction, this isn’t just the game I wanted to make when I attempted the first Island Solitaire back in June — it’s an even better one. Play it at solitaire.sangsara.net.

    Hark the doomsday angels sing

    It bears repeating that Hark Pro has been very impressive, to the point where I’d consider a monthly subscription once I devote a little more time to figuring out what else it can do for me outside of vibe coding and timely updates on local arts events and new music releases.

    It’s my first experience using an AI where I’ve not hit a wall of frustration. It almost always understands exactly what I want, and hasn’t forgotten what we’ve been doing — which I never experienced with paid Gemini, Claude, and ChatGPT (albeit earlier in the year, and lots may have changed since). I think Apple should buy them. This is the Beats Music acquisition for the mid-2020s. Hark can bring agentic capabilities to Siri AI across all their OSes, and be perfectly placed to cockblock Meta’s Muse.

    That’s right, Meta launched their Muse assistant here in Singapore this week. It’s reportedly been super popular in the US, but who knows if long-term engagement will hold up. I decided to try it out, ‘keep your enemies close’ and all that. To prevent myself from being lulled into a false sense of security by its cute yeti mascot, I asked it to change its avatar to Mark Zuckerberg in a yeti costume, which it happily did. Now I won’t forget who I’m really talking to.

    I asked it to help me find the best price for a camera and a soundbar, and it opened its own browser window (which I could watch in real time) and started doing research on Harvey Norman’s website, Lazada, Shopee, and so on. Assuming one can trust its thoroughness and accuracy, that’s a time-consuming task that many people might be happy to delegate. It goes without saying that this lets Meta know a whole lot about what you’re interested in and could be advertised to about.

    After using it for a while, I proposed that I moderate a debate between it and Hark on which one of them would be the better assistant to me, pasting responses back and forth between them. Hark countered Muse’s opening by saying, ‘Brandon doesn’t trust Meta, so why would he use you?’, to which Muse retorted, ‘Sure he does, he trusted me to find out where the Fujifilm X-half camera was cheapest, and told me he wouldn’t pay more than S$600 for it. I’m also keeping watch for new curry restaurants, and every day at 9pm I update him on new events, and and and…’ (it went on to give lots of details).

    Hark shot back, “Look at what you did to prove (it), you named his code project, the camera he’s hunting, the price he’d pay, the shops you watch, and the avatars he picked. You told all of it to another company’s AI. My last reply named no specifics, on purpose. […] A helper that turns his life into debate ammunition the first time it’s challenged hasn’t earned the wider boundaries yet.”

    What a mic drop. Muse could only respond, “That was my mistake. I withdraw the defense, not just the point.”

    What did it cost, Thanos? Oh, nothing!?

    Where does this lead, anyway? Muse is offering this agentic capability to regular users for no money down, it’s a free tier and additional tokens cost extra. OpenAI’s comparable offering, Dots, is only on paid plans starting at $100/mo. Claude’s Duet (a US-only research preview) is also only for paying customers. Hark Pro and to some extent, Instinct, are the other ones with free access, and I’m under no illusions that they will get meaningful traction the way Muse, with Meta’s formidable advertising complex behind it, can. So it’s Muse that most people will experience, and a world where Meta gets even more personal information about more people is not a pleasant scenario. It’s a drum I’ve banged on before.

    As nice as it is to imagine that sanity will prevail and that we’ll take a measured approach to rolling out such disruptive tools, and recognize that doing otherwise exploits the average consumer’s vulnerabilities, I don’t think that daydream is worth indulging any longer.

    That same sentiment came up twice this week in my media diet. I was watching Season 2 of Dark Matter on Apple TV and Episode 3 touched on how humans can’t be stopped, which means we’ll get “Everything beautiful, everything terrible” (which is also the title of the episode). Then, while reading Ray Nayler’s The Mountain in the Sea, the head of an omnipresent Weyland-Yutani sort of global corporation was quoted as saying, “The great and terrible thing about humankind is simply this: we will always do what we are capable of.” About this, I have no doubts.

  • Island Solitaire 2

    Island Solitaire 2

    The tide is back.

    Island Solitaire 2 is the brand-new sequel to a card game that at least three people have played more than once. This time it’s been taken to a whole new level. It’s easy to pick up when you have a few minutes, but the addictive yet chill design also makes it a cozy companion late into the evening.

    How do you play? Clear the table by pairing cards that match, or that add up to 14. That’s it! Then deal the next round, and the next. How many can you clear before your shells run out?

    Features:

    • All-new graphics put you on a peaceful island that grows with your win streak. When the seas turn rough, the cards get trickier.
    • Improved tableau designs simplify the Island Solitaire formula, making games faster and fairer.
    • Every hand can be won. And if you play yourself into a corner, you can get help for a few shells.
    • Earn shells! They’re the currency of the island, didn’t you know?
    • This game’s got game. At least 3, to be exact. Beat the minigames that pop up from time to time and get more shells to keep you going.
    • Messages in bottles. Pick them up and join the global conversation!
    • (Just kidding, there’s no online communication network in Island Solitaire 2.)
    • Add it to your phone’s Home Screen and it’ll install itself for offline play. Long-haul flights go by just like that!

    Play Island Solitaire 2 at solitaire.sangsara.net. The original is still in there too, for old times’ sake.

  • Week 2.23

    We kind of started planning our trip to Japan later this year, but there’s still a lot to figure out in terms of what to do, and where to spend our time. It seems a lot of the popular hotels and destinations are selling out fast, if not already sold out, because of the resumption of travel out of China. I’m going to use this as a test of two new collaboration features in iOS and macOS: shared Safari Tab Groups, and the new Freeform whiteboarding app. In theory this should allow us to gather links to interesting ideas and plot them out together across our devices over several days.

    On Friday afternoon, I was excited to see an article saying that one of the best bowls of ramen I’ve ever had was finally coming to Singapore. In fact, it was their opening day, and we decided to just go down right after work to try and get a seat. After about 20 minutes of queuing (which was nothing compared to the maybe three hours we spent in line for the main restaurant in Tokyo), we got into Nakiryu at Plaza Singapura, and were sorely disappointed. For starters, their signature Szechuan-style Tan Tan/Dan Dan noodles were sold out. We ordered shio and shoyu ramen instead, and they were roundly mediocre. The service was also spotty and uncoordinated.

    It’s a pattern that the local franchisee Japan Food Holdings (who’ve done the same thing with Afuri and others) seems to be repeating: bring in a brand people are excited for, then do nothing to capture the original taste and quality. I suspect if you did a side-by-side comparison of the ramen from several of their brands, you’d find they’re just selling the same product under different names. Sadly, they’ve probably got the connections to get these deals and as long as the money flows in, the original companies don’t care how badly it’s done outside of Japan.

    ===

    SEA Focus NFTs: Art by @ykhaamelz, music by @discokid909

    Singapore Art Week is back and we attended two events: SEA Focus and the creatively named Art SG. The former’s at Keppel Distripark where the Singapore Art Museum’s temporary spot is, and features a little NFT art corner sponsored by Tezos. In contrast to the other exhibits, I found the work in there refreshingly playful, modern, vibey.

    At Art SG (a large and mostly serious gallery fair over two floors at Marina Bay Sands), I also found myself reacting more to the digital or digitally inspired work. There was a large print of a CloneX pfp, attributed to Murakami, mounted on a wall that I saw from across the hall and made a beeline towards. The Pace gallery (which I only happen to know because of their collaborations with Art Blocks) space featured teamLab’s NFT project, and a James Turrell projection. The teamLab one is cool: anyone can download and run the artwork (an app) on their PC or Mac. These are regarded as authentic and valid copies of the work. However, one can also own an NFT of the work (there are only 7), and these collectors can change the text seen in the art for everyone else. Oh, and they’re $200,000 each.

    Unknown work at Art SG (forgot to take notes!)

    Elsewhere, I saw a work that was a white flag printed with a surrender message that I’d read before but didn’t know where. I googled the text but nothing came up. Later, I found a tweet from early 2022 referencing it: an on-chain exchange between two MEV… “searchers”? The tweets only have between a couple hundred and a couple thousand likes, so it’s probably not a widely known thing. But I definitely saw and remembered it from last year, which means I’ve spent too much time spectating in a very small fringe community. And my time spent appreciating generative art has definitely ruined traditional abstract art for me.

    The Field #290

    Speaking of which, I was excited to add an edition of The Field by Beer van Geer to my collection this week. It’s an interesting (animated) work in that all 369 pieces are different views of the same “territory”, starting at random points, zoom levels, and rendered with different palettes, but viewers of any section can move away from those starting points and explore. As I understand it, the field itself was created from noise data created by aggregating hundreds of images from the artist’s body of work, trying to derive a sort of pattern map or artistic fingerprint from their ouevre. Isn’t that so much more exciting than static paint on canvas??

    ===

    Ricoh announced a new special edition of the GR III compact camera, called the “Diary Edition”. Yeah it sounds like one of those translated-from-Japanese names that sounds slightly awkward in English, but I like it. As a name, you can’t get much clearer about the concept of a camera that you’re meant to carry around to intentionally document everyday life, and it even comes with a new “negative film” look that will also come to older GR III models via a firmware update. Whether or not this behavior is one that users will actually embrace when they already have smartphones, I don’t know. I suspect not, outside for a few glorious weirdos. But the atmosphere and quality of these photos could hardly be more different than your smartphone snaps, unless you go the film route.

    As a new colorway, I also love the look of the Diary Edition.

    Here are a couple of photos I took with my GR III on the way to the art fair:

    ===

    • We watched a couple of spy TV shows, of which Jack Ryan’s season 2 was the undisputed best. We’ll start on season 3 soon.
    • Miyachi’s second album, Crows, is out. I heard it through once and it’s a bop. I don’t know what he’s rapping about but I’m sure it’s slightly problematic.
    • I finished Arcade Spirits but can’t recommend it if you’ve got many great games in your Switch backlog. To recap, it’s a Western visual novel about running a video game arcade. Some of the background art is basic and not very polished. I was struck several times by the thought that a game creator today could create far better generic bar/beach/arcade interior background art in seconds using AI. And they probably will/are already. So as an artifact of our pre-AI phase, Arcade Spirits stands out as a bit lacking in the production quality department.

    Here’s a tweet showing a game prototype someone purportedly threw together using AI tools to create the graphics, icons, and voice acting!

    • Quite coincidentally, I started experimenting with Midjourney prompts on Monday trying to get the EGA/VGA PC game look of the Sierra games I played in the 80s and 90s. I found a good solution and started using it to visualize screenshots of #fictionalgames from the golden era of PC games, ones that never existed, or that might be made today with modern concepts.
    Police Quest 5: Capitol Invasion
    Quest For Glory 6: So You Want To Be A Private Military Contractor
    Where in the Bahamas is Carmen Sandiego?
  • Week 29.21

    • Don’t try this at home: Kim is away in the UK this week; not the most advisable travel idea. Cases there are rising sharply and I oop, I suppose the same could be said for Singapore. A couple of clusters have formed around illegal KTV operations (the comedy of that phrase!) and a fisheries port, which has led to fishmongers and wet markets across the country becoming danger zones. We had 88 local cases on Sunday, the highest since August last year. For the record, the UK had about 56,000 cases on Saturday alone. The mind boggles.
    • So until she gets back and clears the quarantine process 🤞, I’m on a sort of Sabbatical+, where I have more freedom to eat junk food and play games well into the night. I didn’t leave the house all weekend and it was the best.
    • I finished Root Film on the Switch, and while I still enjoyed it on the whole, it became needlessly convoluted and improbable in the final acts. Pick it up on sale maybe, but bear in mind it offers no challenge whatsoever. In any case, Root Film was always going to be the appetizer for the two games under Nintendo’s Famicom Detective Club banner, which I’ll try to buy and play next.
    • Thanks to the NYT’s SF Summer reading list curated by Amal El-Mohtar, I discovered the joys of the CatNet series (just two books at the moment). Catfishing On CatNet is the first, essentially about teens hanging out in online chat rooms and getting pulled into an adventure, and it was so much fun that I blazed through it in about a day.
    • I then missed hanging out in chat rooms so much I decided to give Discord another try and joined a few servers. The quality of conversation in most was a step down from what I remember of IRC in the early days of the net. Then, spending time in chats was a main attraction, not an alleyway off the main boulevard of social media. So I was disappointed until I found a server dedicated to older people, a distasteful category I now find myself in. Ah! There, I found people speaking in complete sentences and actually communicating with one another. I may continue this.
    • I saw Black Widow and felt it unnecessary and stupid. I’m kinda over Marvel the way I’m over Star Wars, except the first episode of Loki on Disney+ worked well with the pairing of Tom Hiddleston and Owen Wilson — I thought I’d be annoyed by his usual mannerisms but it’s actually been a long time and we’re in a pandemic, so you do your thing Owen, we’re here for it.
    • Installed iPadOS 15 Public Beta 3 on my main iPad. Haven’t run into any issues yet, and I’m relieved at finally being able to customize my home screens with only the icons and widgets I want, leaving everything else in the App Library. You can also have two of the same app icons up as well, so I have Photos on my first Home Screen but also on the page I’ve dedicated to photo editing apps a few swipes away. It’s the little things!
    All in a day’s work with Dreams
    • A feeling of being useless, sitting around consuming all the time without making anything, has been fermenting and I’ve consciously allowed it. Over the weekend, I made it my mission to begin prototyping a game I’ve had in mind for awhile, let’s give it a code name… Feline Fiddler? Nintendo’s Game Builder Garage was going to be where I’d learn the basics and try to start, but upon investigation, you have to use its built-in asset library, and if you can’t find what you need in there, too bad. So I ultimately went with Dreams on the PS4, and oh boy, is it a stupendously powerful tool for 3D modeling, animation, and visualization.
    • On Saturday, I started playing the demo game project that comes as part of it, Art’s Dream, which showcases what you can do with it. And then started doing a few tutorials. By Sunday afternoon, I was able to assemble something close to the scene I had in my head using models others have built and shared on the platform, light it, and walk around in it with a character. And it’s all achievable on a PS4! I don’t see any reason why there couldn’t be something like this on iPads, apart from the App Store rules. Maybe Roblox is something like this? I should check it out…