in reply to Daft text adventure project

I like your project - and your courage.
You already noticed that you have a lot of data, right?
Now, you may consider to place your data into some database. MS Access will be my first choice, but it depends on platform you prefer. There are many free open-source SQL databases around.
What new possibilities will it open for you?
(1) You'll learn databases, SQL - and learning is you primary goal. right?
(2) No limits for data. 50,000 rooms? No problem any more.
(3) Design of tables should not be an issue: you already have data structures to store rooms, creatures and objects. Instead of hash you'll store them in database.
Added bonus: database (as MS Access) will provide for you user-friendly interface to review/filter/update your data, to program behavior of creatures and objects.
(4) You are opening doors into multiplayer game later. You can have one engine (Universe), and many clients may access it. Even more exciting, you can write program to play using Artifical Intelligence (AI) to play instead of you. And then have tournaments of AI players.
What a Ultimate Laziness: to create program to play instead of you!

Update: I can imagine how much of you, fellow monks, frowned when I proposed to use MS Access as database of choice. No so fast. I assumed Tiefling does not have experience with databases (otherwise he will used DB right away when run out of data space). MS Access is excellent for prototyping in Windows environment and has excellent 'wizards' to help with building SQL queries graphically and to visualize tables and their relationships.


Replies are listed 'Best First'.
Re: Re: Daft text adventure project
by Tiefling (Monk) on May 30, 2001 at 20:48 UTC
    I'm afraid this is the first helpful suggestion that I'm going to have to turn down wholesale, for a variety of reasons:

    1: I don't want to have to learn how to make Perl read a database created with some external package.

    2: My work involves two databases, one MS Abcess, the other SQL. I've just spent a hellish afternoon trying and failing to produce a list of items from a given list once each exactly in the SQL database. I know I could have written Perl to do the same thing, given an appropriate data structure, in about 5 minutes. I'm trying to learn, yes, but I'm doing this for fun.

    3: I have the version of Perl I got with Redhat Linux. I don't see Access for Linux anywhere, and I'm not about to start going to the mountings of the Windoze directories to fetch data. The adventure is intended to be self-contained.

    4: Judging by my experience today, transitive exits would be quite a challenge in SQL, etc. I'd rather produce my own editing features, integral to the program, so that I can tinker as I go.

    The game is intended to be multiplayer, in the sense of sitting around a single machine. AI is an option. But I'm not quite clear how drowning in SQL helps me write AI later.

    Sorry to discard your advice - I'm just not a databasey person! :-(