Hi Robert! Thank you, I really like this plugin !
I tried to install it on dev environment (without docker) and my system asked for the ncursesw lib when making dfrotz, after installing that it worked, will it be the case with a prod env with docker?
This does away with the silly suppression settings, introduces translation to BBCode to support formatting and colour, leverages the Dumb Frotz command line options better, obviates the need to write to a text stream and squashes a vulnerability.
This branch requires the official BBCode plugin to be installed.
I’m still experimenting with it. Feel free to do so too.
I’ll probably merge after some significant trials.
Not sure why you would care? The resources we are talking about are comparatively tiny. (6MB for the entire repo post make versus Gigabytes for the forum?). It clones the whole repo, then just makes dfrotz. Perhaps that is slightly wasteful, but the simplicity and repeatability is more important I feel. I could go into greater detail and perform a sparse clone, but that would make the build script more complex and less robust. Would it be worth it? Feel free to suggest an optimisation. This is all building inside the container, so will get cleaned whenever the container does.
This required the collaboration of the maintainer of Frotz, David Griffiths and one of the very active members of that community, Borg323 who wrote the BBCode extensions against the BBCode Discourse standard. Many many thanks to them! We had to get a bit creative to get the monospaced text stuff to work, but the solution is really great!
Some examples of the new formatting (I’ve not fully tested these stories, these are just examples of formatting)
and notice the coloured compass here:
KNOWN ISSUES: There are loads of games that don’t work because of the nature of their call and response protocols. If one step of the game doesn’t lead you to a prompt at which you can save (ignoring press any key or More prompts which should be handled), then the story won’t work. e.g. in Act of Murder (great game!) the lady at the door asks if you are a policeman. Unfortunately this is a state of the game that’s unsaveable so fails this requirement and I can’t see a way we would get that to work.
There are probably games that are now compatible with Discourse Frotz that weren’t before … please experiment but note the limitation above!
Let me know if you have any issues getting this to work and I’ll refine the instructions as required.