Formal Authored Hints

I was looking at Aaron Reed’s Intelligent Hinting and realized it has not been updated for the latest version of Inform (6M). even so, I’m not sure if it’s the right mechanism for what I want to implement.

Intelligent Hinting seems to focus on puzzles and tasks, which seems fine. The issue I have is that I don’t want an integrated help system. I want to emit the hint information on a separate channel and display it in the web app.

Integrated hints, in my mind, would follow the pattern in Lost Pig, where there’s some in-story mechanism (character, book, hollow voice) that helps the player along. Externally, I’d do some form of Invisiclues.

So my requirement is less about how the author builds the hints than how it’s emitted. I’d like something like (sorry, see JSON below)…

My question is, should I try to rework Intelligent Hinting or develop something new or are there other good starting points?

[
  {
    'title': 'Chapter 1 - In the beginning...',
    'questions': [
      {
        'id': 1,
        'question': 'What do I do with this cloak?',
        'hints': [
          {
            'id': 1,
            'description': 'Maybe it belongs somewhere.'
          },
          {
            'id': 2,
            'description': 'If there were only somewhere to hang it.'
          },
          {
            'id': 3,
            'description': 'Hang it on the hook.'
          }

        ]
      },
      {
        'id': 1,
        'question': 'Why is it dark in here?',
        'hints': [
          {
            'id': 1,
            'description': 'Do you have a light source?'
          },
          {
            'id': 2,
            'description': 'The light switch is somewhere.'
          },
          {
            'id': 3,
            'description': 'The hook in the cloakroom is interesting.'
          },
          {
            'id': 4,
            'description': 'After you hang up the cloak, things will get brighter!'
          }
        ]
      }
    ]
  }
]

I built a simple table-based extension for categories, questions, and hints. Any more complex hint extension for FyreVM will have to come later.