Added a map viewer to RogueBusters. I added this so that I can see what I’m doing while I make the city blocks more interesting. I’m also investigating the use of the wave function collapse to create the city blocks.
The output tends to be a little more complex than I had hoped for. I haven’t given up yet. Here are some more examples:
Here’s an example from a map of Chicago from 1857:
There are only a few variations, so I’m not sure how to model that with WFC. For now, I’ll just work on creating the map from a few basic variations and see how that goes.
Field of View is working, and I now have a simple scripting engine to place prefabs:
It just places them in random positions, but I’ll soon be able to specify positional hints to the generator so things end up in the right place. There is also a template engine for generating names and other types of text. Here are some examples:
Full name: Harriet Santana Full name: Lyle Berger Full name: Eloise Delarosa Full name: Phillip Combs Restaurant name: Hanson's Family Restaurant Building name: Fields Plaza
I plan on using these templates to generate basic NPC dialog, but I would much rather have GPT-3 or GPT-4 do the talking. Maybe we’ll get there, I don’t know yet, but the template-driven dialog should work fine for now.
Other than walking around, there’s not much you can do in the game, so I want to work on inventories and items now. Then I’ll work on NPC interactions and combat.
Started a new project. I renamed gpthack to strafe. It’s a first-person roguelike engine now. I may use it again in a later project. I started another project I’m calling RogueBusters:
It’s set in the 1920s and based on a role-playing game my high-school friends and I used to play back in the day. It’s not much at the moment. The city folk just walk towards a random target and then stop. You can walk inside buildings, but I just got prefabs working, so there’s only one thing inside them:
I’m staying with Rust for now although I’m having a rough time with it. I don’t want to stop and actually learn new concepts like ownership and lifetimes. I can focus on the gameplay features I’ve always wanted since I don’t need to worry as much as I have in the past about graphics and physics.
Hopefully, I’ll see this one through, but I’m not making any promises. I would rather be disciplined than motivated, but I’ll take what I can get :).