Just a few questions:
- As far as I can gather, data in save files can simply be represented by a list (nested arrays) of all the objects in the game and the values of predicates related with them. Is that correct?
- If that is correct, saving a text file containing the location of objects in form of lists (like;
(universe (living-room ((table (pen paper)) (chair) (washing-machine (clothes)))) (bedroom .....
and value of predicates (like the cyclops-fled-p of Zork 1) as a simple ASCII file should work, right? As far as I can understand, that’s the data saved in queztal files, although in binary.
3. I have made it so when a game-world is completely empty, it is still a room like thingy called universe (to contain all rooms in one construct). Right now, you need at least one room (inside universe) for the game to be playable. Have there been any games that would have been impossible to implement due to this atleast-one-room limitation? Any ideas how to remove it?
4. Recommendation for some vast/complicated/“different” open-source games
5. Can using the following kind of code structure while programming games lead to inflexibility or other problems:
(make-room bed-room (loc 'house) (objects (living-room-f)) (desc "Bed Room") (way east 'bathroom) (if mom-is-home-p (way west 'kitchen) (way west "Mom asked you not to go there")) (way down (basement-exit)) (flags rlandbit lightbit safebit))