# Need help with making a journal system

My game uses a system similar to Metroid Prime's logbook, in that it logs things the player encounters and discovers on their journey, categorizing it, etc.

I want to write out all of the possible entries they can find, with the categories and all, but I need a system similar to what'll be in the final product to toy with, and use as an example for when it gets implemented into the game itself.

A click through menu sort of thing. Writing out all of these long descriptions would be too much of a hassle in a regular text document (and would make it FAR too long), and doing it through HTML or something sounds far too messy.

Basically, I want something, like an app, that I can edit, and that'll let me click through the categories till I get to the entry I want, which should display on the side. Here's a really terrible example of what I'm looking for.

I'm probably stupid for asking this, and there's likely an extremely obvious solution to this, but I have a thousand other things related to the game to think about, and Googling didn't result in anything.

• Honestly, every game company basically rolls their own solution for a data and (localized) string editor. It's really sad and unfortunate because someone could easily make a generic opensourced data and string editor, that had features like automatic reflection to code, automatic serialization options, settings to specify serialized data format (binary vs xml vs json and compressed or encrypted options). I started on something for this but tools work is so tedious, and there really is no good cross platform ui library, so I stopped :x Jul 16 '15 at 3:23
• @AlanWolfe Actually, there is an open source solution for this. Sep 18 '15 at 8:22
• Off the shelf text-only solutions are not something that makes much sense in this industry. We need to localize audio, facial animations and lipsync, in-game graphics (billboards, signs, etc.), change various aspects of gameplay (gore control and so on, or altering minor bits of gameplay for different regions), connect to different regional service backends, control captions, and so on. Most of those tasks are very engine- and technology-specific. Nov 17 '15 at 17:20

I would guess an XML file suits your need? Create a structure like this:

<categories>
<category name="Animals">
<item key="dog">
<title>Dog</title>
<description>Man's best friend</description>
</item>
</category>
<categories>


Load the structure in your game, add properties to track if the player has unlocked the entry. Each object in your game world would have a "key". If scanned the entry corresponding to that key in the catalog will be unlocked.

It would be trivial to create a your own tool to edit the XML structure (you could even just use your favorite text editor for it).