I have way too many games to ever play, but still I can't help it. Today's haul: Othello (NES), Spinball (Vectrex), Colossal Cave Adventure (PS5), Broken Sword: The Shadow of the Templars (GBA). Read on for more details
Any #reversi or #othello enthusiasts here? I was rummaging through some stuff and found a beautiful old board that my wife made for me almost 20 years ago when I was obsessed with the game. Back then, wzebra was the toughest engine.
I'm looking for an #android version of the game that's not crapware. DroidZebra is in #fdroid but it hasn't been updated since 2016 (maybe it's stable enough).
Changed up the UI a little. Consolidated the endpoints to one for better AWS integration. I think I can use what I've learned here to port "You Are the Amulet" to #Phaser and make my greatest failure playable. #Othello#AWS#7DRL
#Othello front end served by #Apache, written in #JavaScript with #Phaser 3 game engine, back end served with #Flask (soon AWS #Lambda) and written in #Python. There's a lot going on but it sorta works. This proves my idea to offload the processing to a remote back end driving a thin client works.
It plays terribly at the moment, but it's good enough to work on the UX.
So last night I sketched the layout for my port of my #Othello game to #Phaser. But think: What if Othello was a dramatic sports anime with a lot of plot twists, villains and battles? BECAUSE THAT'S WHAT MY DREAMS WERE LIKE. I woke up in the morning thinking "damn, that one was WEIRD." The bishoujo guy who might be a friend, might be an enemy, was really committed to the Tiger opening.
I've #hacked together a greedy AI that plays the move that maximizes its winning margin on the next turn. It's not too hard to win against, but it's a start.
Now to make the AI's move-playing look less awkward.
I'm holding off on designing a "stability" #algorithm, to see how good the #AI can be without it.
I have a #pico8#Othello AI working with negamax and alpha-beta pruning. It likes mobility, loves corners, and dislikes "frontier" disks - disks next to empty cells.
The deadline was just extended by 2 weeks. What a relief; I don't even have a title screen!
But here are the beginnings of one. That #Othello board in the background is meant to evoke the cover art, but I probably won't keep it. Besides, I'm running out of #tokens!
An AI player has to do two things: decide what its next move is, and evaluate how well it's doing right now. So I've split the work into a Decider and an Evaluator.
I've coded a random decider and a greedy decider, and I've been having fun testing them out. Next, I'll code different evaluation functions, and a minimax decider!