Seeking the source of my Raiden-like slowdown

Hi folks. The topic refers to the overhead-viewed scrolling coin-op shooter which sometimes had more stuff on the screen than the hardware could handle, causing slowdown.

In my Inform 7 WIP, I don’t think I’ve got that much stuff on the screen yet (25 rooms, 121 things) but in the Mac IDE, I’m getting 3 (closer to 4) seconds lag after entering a command, sometimes entering spinning beachball territory. The lag has been growing as the game gets larger. I remember the 1-2 second days, and the first time I saw the beachball.

I’m using these extensions:
Introductions version 2 by Emily Short
Xorshift version 1/140818 by Dannii Willis
Alternatives version 3 by Eric Eve
Variable Time Control version 4 by Eric Eve
Numbered Disambiguation Choices by Aaron Reed
Extended Grammar by Aaron Reed
Small Kindnesses by Aaron Reed
Epistemology version 9 by Eric Eve
Object Response Tests version 7 by Juhana Leinonen
Unified Glulx Input version 3/160213 by Andrew Plotkin
Extended Banner version 5 by Stephen Granade
Exit Lister version 11 by Eric Eve
Approaches version 7 by Emily Short

I’m aware of some obvious causes of slowdown, like scope manipulation. I have almost none going on, and commented out the scope rule that ran every turn (from small kindnesses) and it made no difference.

I am using a nine-year-old computer, a Mac Pro that was state of the art in 2010. But still?.. I mean, I can’t rule out that the current version of the IDE will simply slow down on my computer the bigger the game gets, as this is the largest game I’ve put in this IDE (which is not yet as big as other games I’ve made in past IDEs).

Any ideas appreciated.


Have you tried the RULES testing command, to see which rule is taking so long?

Do you mean RULES? Or RULES ALL? Or something else? I can’t tell from those alone what’s taking time, to my knowledge. The text arrives in a dump.


OK, I just worked out what it was. The RULES idea helped. I went to the Testing window and I had never cleared any threads. I axed them all now to see what would happen and the lag was gone.




On Mac Inform, I’ve found that simply deleting the skein file usually gets rid of the slowdown. Close the IDE, Right click on the (game name).inform file, select Show package contents, delete the Skein.skein file.

Is there a difference between doing that and culling the master knot on the Testing screen (right-clicking it and saying ‘delete threads from here’)?


Probably not. It’s just a quicker way. Once the problem is serious enough, opening and interacting with the Testing tab (and opening the project) can be super slow on an older computer.