My friend and I are making a text-based game, need some technical help & ideas please!

My friend and I had been thinking about this for about a year now, but with our next assignment at college being "Design and make an object-oriented program" (long story short) we now have an excuse to make it!

Last year, when we mentioned it to one of our lecturers, he said that we should use XML. We have currently made some presentations about what we want the game to be and some diagrams which show the format we think the XML files will take.

I have a question, though: What is the best way to incorporate a book-like text adventure (my friend wants it to have similarities to Fighting Fantasy) into XML and JavaScript? Should we give each location in the game a folder with XML files relating to the location, put every location in the same XML or put all of the locations in the same folder, for example.

We don't have a story as of yet, we wanted to get the technical design done first (and probably only put a small bit of actual game in for the assignment- make something proper with our code once it's handed in)

Cheers!
~pip

p.s. we can't use existing code for any of this

what sort of features will you support?

  • conversation trees that affect future events
  • any sort of inventory (items, keys, money, tools, knowledge, etc)
    (essentially, does the reader have any sort of persistent state through the game)
  • Pictures or ASCII art
  • Text generation / forms -vs- all text as literal strings

We had plans for locations to change if they are revisited after something significant happens, probably have party members leave/join at will based on your decisions. (Dunno if that's too complicated)

We had wanted to use an inventory, but no images (at least for our first attempt).

Not 100% sure what you mean by text generation but if you mean something like other characters remembering a user set name and always using that... Then we did want to include it.

Thanks again,
~pip

If you figured out your data structures implementing it should be trivial. Can you give us some info about them?

Whoops, didn't look at the date, sorry.