Posted: Dec 05, 2017 10:58 am
by VazScep
Matthew Shute wrote:
VazScep wrote:
Matthew Shute wrote:No, I'm flying by the seat of my pants.

Whenever I notice daft redundancy with data entry, I try to minimise it with rules-of-thumb. Like there's no need to manually set all the exteriors to public access, I can just set it that way as default, then I only have to deal with the exceptions.

I had a :doh: moment when I noticed what I'd been doing, here:

redundant.png


I'm sure there are lots of little things like that where I can save myself time and tedium. I enjoy the world building aspect in general, though.
I think in this sort of thing, you inevitably work your way towards editor tools. You can start very simple: have a method like "connectRooms" which takes two rooms and makes sure there are bidirectional links between them, so you don't accidentally have dangling connections. But you could also work towards a simple ASCII art map format:

Code: Select all
###X###
###X###
##XXXX#
##X##X#


where "X" represents a location. This could be read in at start-up to build up a simple grid-based world that you can navigate. To fill in descriptions, maybe you have a developer version of your interface where you can edit location descriptions as you play, so you can fill them in as you go and have the data persisted to map files which are read in on reload.


Good idea, I'll look into doing that. :thumbup: In the meanwhile, pressing the E key now does something - you can wander around a couple of simple layouts I made in notepad (I should make a map editor, ideally). The "@" is the player character, of course.

[Reveal] Spoiler:
dan1.png


dan2.png


The layouts are just char arrays that I convert into String arrays to display them.

Next thing: nerf the player's remarkable ability to walk through walls like they're not even there.
:dance: I've played so many roguelikes that seeing an "@" in a corridor gives me warm fuzzies. I'd like to check out this version. Would you be up for putting the code under version control and pushing it to github?