TLDR; Knook likely coming to GitHub in a month. Play testing of yesterday’s changes where I could promote to and move a Knook correctly were good. If you’re keen to play, see about downloading Dreamchess source and compiling. Hit me up in comments if I haven’t posted how to do this for Ubuntu 20.04 in a day.
So yesterday was a first coding session and I’m happy with the results.
The overall goal is to get a game where two humans can play against each other and promote a pawn to a Knook. More may be added later , but I’d rather get a completed Knook.game than one unfinished with six new things.
Im rolling with Ubunton20.4 and used it to download their copy of Dreamchess and built it.
Then I started editing code locally with the skill and determination of someone willing to put a nail in a fuse box.
First goal was to get the code to acknowledge a 7th piece may exist. Rook image files were duplicated and code changed so it didn’t seg fault when loading a theme and piece set. Knook is now a Rook with a k tattoo.
I kept it simple and cloned Rook files for all sets but only changed figurine template. A 3d file hasn’t been touched but should work later.
I don’t want to ask anyone yet, but Dreamchess has cdn? Files which are text with numbers, a CAD problem for later.
Then I started walking a pawn to the backrank while keeping the moves legal and I hit the promotion dialog.
I added an extra piece but it reads graphics from a separate file so I said image=Horsey.jpg and text says click rightmost for Knook.
New Knook now shows up on board, but it checkmates the King when it isn’t.
Ok.
Rerun and move king out so not on backrank. Success but Knook can move anywhere. Bug I might be able to live with.
Mess around with code more and looks like I can get it working as a real piece with checkmate and stalemate logic intact.
I thought it might be passing moves to it’s internal engine steamer, so I snapped the link to it in the programs settings. Get an error message on starting the game , but ok.
Despite being pretty happy, I sleep like shit.
This morning I mess around in GitHub. I’m GitHub elo 350. Think I might be trying to merge AnarchyChess weirdo code into Dreamchess project. HLT. NOP. NOP…
I decide that a new project AnarchyChessDesktopPrototype will be created from import and I can mess it up anyway I want. When that works acceptably, I’ll go back.
Stuffs a bit messed up and all over the place that extra help from anyone likely wouldn’t and I hope to have the prototype done in a week. If a typical IDE is a 3D printed masterpiece, I’ve got some playdo I’m hitting with a hammer. For now it’s working and I’m happy how things are going. If I can get a car started by sticking a knife in the ignition and turning, it’ll do. I’m flying by seat of pants.
I dont know about releasing binaries, I don’t plan on making a website for it beyond GitHub page for now.
I will probably make a more formal project post later but jotting some stuff out now while still fresh in my mind.
To get dreamchess working on Ubuntu 20.04 i created a sub directory in my home directory called DreamChessBuild
I then changed directory to that directory
I used apt to get the source (don’t do as root)
change directory into dreamchess-0.3.0 5?? i might have run configure, unsure, but noting for future reference
build with dpkg-buildpackage -b -uc -us
Hit error messages about uninstalled packages needed to build, had to install several as root.
build again
run the new package (note although exe is in subdirectiory, the program uses global files like /usr/share/games/dreamchess/pieces)
mkdir DreamChessBuild
cd DreamChessBuild
apt source dreamchess
cd dreamchess-0.3.0
dpkg-buildpackage -b -uc -us
sudo apt install bison flex libglew-dev libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev
dpkg-buildpackage -b -uc -us
./debian/dreamchess/usr/games/dreamchess