chris
Well-known member
Nowhere else to post this, so here goes:
Well, having entered in the second week of the RetroChallenge with only a vague idea of what I was going to do, I've finally actually gotten some work done on my Challenge. I've been furiously coding at my Olivetti M-10, and I've finally gotten the bugs worked out of a very simple, but easy to use and easily extensible, text game engine.
Sadly Teeny doesn't like the Olivetti very much, but I've been working on this and hope to have it uploaded here sometime soon.
For now:
The game engine is a very simple text engine. Current commands understood by it are:
n, s, e, w
look
clear (clears screen)
talk (talks to person in current room)
vars (prints the current values of all variables used by the game - debugging tool)
help (prints a short explanation of the game)
q(uit)
I'm working on adding an inventory system, and hope to have that finished by the time I upload the game.
A brief synopsis of how it works(non-programmers can skip, or programmers who are bored easily )
Basically, the rooms are arranged in a grid, currently 2x2, though that's easily changeable. Each room has a set of variables including a binary value for each direction indicating whether you can go in that direction. Thus, while rooms still must be arranged in a rectangular grid(for reasons which will be explained shortly) not all rooms must be available, thus allowing simulation of a non-rectangular area.
Movement is done by adding to or subtracting from the room variable, with east adding one, west subtracting one (these are constant) and currently north subtracting 2, south adding 2 (these change based on the playing area. For instance, if the playing area was 4x2, north would subtract 4 and south would add 4)
There is no advanced text parser, so all commands must have no trailing or leading spaces, and unless they are two words as one command (like "go south" as opposed to "get apple"; neither is implemented as of now) then two-word-commands are not yet implemented. I'm working on making a better parser to split up the commands, and I also hope to get this working before I upload.
Well, having entered in the second week of the RetroChallenge with only a vague idea of what I was going to do, I've finally actually gotten some work done on my Challenge. I've been furiously coding at my Olivetti M-10, and I've finally gotten the bugs worked out of a very simple, but easy to use and easily extensible, text game engine.
Sadly Teeny doesn't like the Olivetti very much, but I've been working on this and hope to have it uploaded here sometime soon.
For now:
The game engine is a very simple text engine. Current commands understood by it are:
n, s, e, w
look
clear (clears screen)
talk (talks to person in current room)
vars (prints the current values of all variables used by the game - debugging tool)
help (prints a short explanation of the game)
q(uit)
I'm working on adding an inventory system, and hope to have that finished by the time I upload the game.
A brief synopsis of how it works(non-programmers can skip, or programmers who are bored easily )
Basically, the rooms are arranged in a grid, currently 2x2, though that's easily changeable. Each room has a set of variables including a binary value for each direction indicating whether you can go in that direction. Thus, while rooms still must be arranged in a rectangular grid(for reasons which will be explained shortly) not all rooms must be available, thus allowing simulation of a non-rectangular area.
Movement is done by adding to or subtracting from the room variable, with east adding one, west subtracting one (these are constant) and currently north subtracting 2, south adding 2 (these change based on the playing area. For instance, if the playing area was 4x2, north would subtract 4 and south would add 4)
There is no advanced text parser, so all commands must have no trailing or leading spaces, and unless they are two words as one command (like "go south" as opposed to "get apple"; neither is implemented as of now) then two-word-commands are not yet implemented. I'm working on making a better parser to split up the commands, and I also hope to get this working before I upload.