A weird game.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Zed A. Shaw 984031bf33 Test passes now, and most of the gear is working, but now I think I can't use doctest because it doesn't support TAP output. 3 months ago
patches First drop the game's core mechanic that compiles. 4 months ago
scripts First drop the game's core mechanic that compiles. 4 months ago
tests Test passes now, and most of the gear is working, but now I think I can't use doctest because it doesn't support TAP output. 3 months ago
.gitignore Way quicker and easier to simply use the .gitignore to figure out if an important file has changed. This is probably chock full of bugs and memory leaks but it is working. 4 months ago
.vimrc_proj A little better build but I really need to clean this up and use a state machine to handle the process. 4 months ago
LICENSE First drop the game's core mechanic that compiles. 4 months ago
README.md First drop the game's core mechanic that compiles. 4 months ago
dbc.hpp Moved the game engine into its own unit and then made a failing test for it. 3 months ago
efsw.wrap First drop the game's core mechanic that compiles. 4 months ago
escape_turings_tarpit.cpp Moved the game engine into its own unit and then made a failing test for it. 3 months ago
ftx_thread_test.cpp A thread version of a UI that updates the the background. 3 months ago
ftxtest.cpp Finally got the buttons working on a simple UI that also does other things behind the scenes. Need to study FTXUI more though as I didn't catch the error with Render(). 3 months ago
game_engine.cpp Moved the game engine into its own unit and then made a failing test for it. 3 months ago
game_engine.hpp Moved the game engine into its own unit and then made a failing test for it. 3 months ago
libgit2.wrap First drop the game's core mechanic that compiles. 4 months ago
meson.build Moved the game engine into its own unit and then made a failing test for it. 3 months ago
regtest.cpp The watchgit works but I don't think I really need libgit2 at all if I can just process the .gitignore correctly. 4 months ago
xmake.lua Quick attempt at an xmake.lua build. Doesn't work. 4 months ago

README.md

A game I'm working. It's a weird one.

Right now I've got a command that watches your files for changes, and runs a build command. It's entirely overengineered for this purpose, but it has what I'll need later. To build it do this:

./scripts/reset_build.ps1
meson compile -C builddir

If you get a bad compile because of libgit2's src/util/process.h then do this:

cp patches/process.h subprojects/libgit2/src/util/
meson compile -C builddir

I don't know why it fails at this, and only on Windows but I've talked to them repeatedly and it's mostly "works for me" responses. I also can't figure out how Meson exactly applies patches. I've generated every possible patch I can and Meson just can't apply them.

Once it's running, we have even more annoying BS to deal with, and that's because Meson doesn't actually statically compile efsw or libgit2. Even though I said --default-librart=static --prefer-static in the setup it just ignores that and makes DLLs. The "fix" for this asinine stupidity is this:

meson devenv -C builddir
cd ..
cp builddir/watchgit .
./watchgit . "meson compile -C builddir

Do all that garbage and yay, this little program runs. Finally.

Future Changes

  1. If I can't figure out why libgit2 has compilation errors in src/util/process.h then I may just rip it out and just shell out to git directly.
  2. Ultimately I can jsut use efsw to watch the directory for all changes, but I wanted to only focus on what's in git. Oh well.
  3. I also have to find out why efsw and libgit2 refuse to compile statically. Once I do that I can static compile watchgit and then work on the next part of the game.