Running Inspiration Pad Pro 3 from the Command-Line (macOS/Windows/Linux)

This is terrific! I have the script working on my Linux machine, though some of the generators return a “(missing)” result. For instance, Names > Hungarian > 3 spits out three names, no problem.

But Encounters > Adventure Hooks > 1 > returns “(missing)” instead.

You can see the relevant strace results here. Let me know how I can help!

PS I had to mark both the script and the binary as executable (I think linux strips these when you unzip; tarballs do not).

1 Like

One more thing:

:zap: ./ipad3cgi Generators/Encounters/AdventureHooks.ipt 1

results in:

content-type: text/html

1 Like

I think this might be because of the other .ipt scripts being not set to executable. Try running chmod -R 755 on the IPPWinLinux folder rather than just the script and binary.

My hunch is because AdventureHooks.ipt is actually just calling a different file under Common\nbos called AdventureHooks.ipt and I’m assuming something is getting messed up in the permissions there.

Let me know if that fixes it.

It did not! To be clear, I made all contents executable with:

chmod -R 755 IPPWinLinux
1 Like


I uploaded a tarball of the files - try downloading it here. Extract with tar -xvf IPPWinLinux.tar.gz and populate the gendir variable inside the script, update the alias to the new location (or remove the old extraced files) then see if it works.

What version of Linux are you running?

Same issue, I’m afraid. I am running Xubuntu 19.10 (64bit, obviously).
Rather than filling up the thread, I’ll PM you from here on out!

1 Like

I’ve made the first post a wiki, as discussed here so now everybody with TL1+ can add their ipt files.

1 Like

What do we do if someone with TL1 links to a script with malicious intent?

TL1 is pretty easy to obtain and I’m not sure I’m comfortable with people able to change the script links to somewhere else.

Is there any way to lock a portion of the wiki post to only be edited by me? Will I be notified if the wiki is edited and I just need to watch it like a hawk?

Now it requires TL2+.

1 Like

Thanks @thekernelinyellow, this should secure everything.

@yochaigal - based on your feedback I’ve fixed the Linux release. The permissions issues were resolved by using a tar rather than a zip, and I’ve fixed the pathing issues by slightly changing the file structure. Thank you again for your troubleshooting assistance!

I’ve gone through and updated the guide to accommodate these changes and also taken new screenshots.

If you have any other feedback to make the tool better please let me know, thanks!

1 Like


It is definitely better, though I’m actually still seeing one issue. Output of Encounters > AdventureHooks:

Generator Type: 1

Please choose the generator. Enter 0 to exit.
0 Exit
1 AdventureHooks
2 NPC on the Street
3 Orc Formal Introduction
4 Orc Hunting Party
5 Orc Raiding Party
6 Skrat Minions

Your choice: 1

How many would you like to generate? 1

While in town…
It’s rumored that just outside the city is an old (missing) diamond mine.

I’ve seen that for a few things. I’m guessing that the name table is improperly referenced.

Must be an issue because it’s calling another table. I’ll investigate

I’ve cleaned up and changed a few things in the guide above. Everything should be working, including the errors that @yochaigal had found - thanks again for the troubleshooting help!

I also included guidelines that one should follow if they want to submit an .ipt script to the project. If they’re followed they won’t break the Linux release.

Latest build still only returns 1 result for some choices:

Yes, this is a known bug for that specific script. See the third note in the OP.

Ah, my mistake!
Thanks so much for all the work!

A note on that bug - it seems to affect the full Windows client version as well. I’m not sure if it can be fixed.

I’ve packaged and uploaded a new release of the Windows, Linux, and macOS files. This fixes the above “bug”, added a generator that was included by NBOS but didn’t work from the CLI due to prompts, and edited a common file to clean up output that didn’t work from the command line.

Details below:

  1. Fixed “bug” related to only providing one result even when asking the script to generate multiple

This was related to an argument within a specific script file. For some reason whoever wrote the Adventure Hooks.ipt file had MaxReps: 1 hard-coded in the common file. This didn’t make sense to me, and was probably simply used as an example. As such, in the releases above I’ve commented out this argument so the script will generate as many results as you tell it to.

  1. I re-added the Random Treasure (CR1 - CR30).ipt generator file that was originally distributed by NBOS back to the three releases.

This generator didn’t work properly due to requiring a prompt from the user; however, by hard-coding the Random result into the script it now generates random treasure of a random CR from the OGL treasure tables and outputs the results properly.

This generator also required a lot of editing and cleanup to make the results look readable in the terminal, most of which was done in the AdventureHooks.ipt file in the common folder. I’m very happy with the results:

The original generator file running on the full Windows client had a prompt that asked the user to select a Challenge Rating between 1 and 30 (or Random) and it would generate that result. Since one of the limitations of the command-line binary is that it can’t interpret prompts, if you don’t want a random CR you can simply temporarily hard-code the result you want in the .ipt file:

For example, if you wanted only CR 3 results, you would edit the Random Treasure (CR1 - CR30).ipt file in the generators/Treasure folder and change the line

\n {!CRValue=={1d30}} [@TreasureByCR] \n


\n {!CRValue=={3}} [@TreasureByCR] \n

I noticed your Itch page is gone, @maderschramm!
Well, no matter. I was able to get the Windows app to work via Winapps!

Hey thanks for letting me know yochaigal! I changed my itch page to my new Geas Publications one to keep everything under one naming umbrella.

I’ve updated the OP to prevent further confusion, thank you!