Moving the Schema to the Boilerplate Database


I just go through breaking up the enormous ICharacter interface into a bunch of subinterfaces.

And I've moved on to making the game more data driven.

There is a boilerplate.db which is loaded when the game starts.

It had nothing in it. All of the tables were made on the fly with "CREATE TABLE IF NOT EXISTS" calls.

But I recently had put all of the metadata for character types and everything into these lazy creation calls.

The upside: everything is in the database.

The downside: the way of seeding a database on creation requires a cte, and it makes the columns typeless.

So no foreign keys, no check constraints, no uniqueness.

Now i'm moving them slowly into the boilerplate db.

I've moved 12 metadata tables.

I have 19 more to do.

Much of the time I am frustrated with how much I have to churn up the code to rearrange it into code that does exactly the same thing. At another time, I would want to start a new project. I've gotten to the point of often dreading working on it.

And I've even tried to switch to making a jam game for a short term.

But something in my cannot. I must continue this project.

The data layer and the game layer are now both characterization tested. There are 369 tests.

But I keep going.

Get Kordanor's Cabal

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.