Anyways the point of all this is that I thought I should make a small devlog of sorts, going over what I've developed so far and talking about how things work.
From the player perspective:
Unlike a normal adventure game which sets which objects that can be used together, this game runs by matching attributes instead. So instead of saying "if used item is object" you say "if used item posesses attributes of etc".
The entire point of this is to try and make a more natural and logical puzzle-solving process. If you've got a stick, a broom, a crowbar, whatever, as long as it has an attribute like "long", it can solve the puzzle. One might argue this makes things too easy. No, this makes things fair.
A lot of adventure games have a set "death point" of an object. After using a stick in the proper location, it "breaks". It's an excuse to declutter one's inventory. But in this game, an object breaks once its integrity hits or drops below zero. Actions all use a certain amount of integrity. For example, jimmying open a door may require an integrity of 20. A stick may have an integrity of 10. If you try to open the door, the stick will break, but the door will not open since the object didn't have enough integrity. Yet if you try something like a crowbar (integrity of 100s), the door will break open, and the crowbar will be only slightly damaged.
I won't list the chart here, as it makes things too easy. The game never gives exacts, just tells you how strong something feels. This makes things more challenging, as if you use the wrong item somewhere you may not be able to do something later.
From the developer's perspective:
5 3 0
7 4 2
So each room has an array of chars. There are 9 spots in total, and each either has an x or an o. The numbers are weird and out of order because java uses columns then rows, instead of rows then columns.
NW N NE
SW S SE
x = No exit
o = Open exit
This can be expanded further when things such as doors become necessary. Then we can include locks with symbols like k.
The map class basically is what contains all the rooms. So you have rooms inside maps. I guess you could say that they're like a bigger room. So you would have a house map, and a street map, and a cave map, etc.
Map is arranged as follows:
0 - - -> 10
| + + +
| + + +
| + + +
Down, then right.
I'm writing everything in Java, and so far only have a console interface. So it will be fairly portable. Huzzah!