Yet Another 'Too Much Recursion' Problem

Hey all.

I’ve noticed a profusion of randomtest ‘too much recursion’ errors recently, and I’m aware of the normal tricks like *looplimit (it’s implemented) and even the one where sometimes it gives a fake error and you have to use *if followed by *else instead of *if (x) and then *if not (x) (very very annoying, but I’m doing it when I’m getting errors thrown in those places). The thing is, the errors of this sort that I get don’t seem to pop up consistently in the same places, which if I understand how the “not so random” element of randomtest works, should not be the case?

And then, to further my confusion, I recently got the error at the very top of a new seed, before so much as a single #option had been selected? I have no idea what this could possibly mean. Here’s what the script spits out:

04chapter *choice 8419#1 (line 8471) #I should ask how things are going, with the investigation.
04chapter *choice 8478#4 (line 8497) #"So... am I in danger, or not?"
04chapter *choice 8419#1 (line 8537) #I don't have anything further to ask.
*****Seed 956
RANDOMTEST FAILED: InternalError: too much recursion

Everything above seed 956 is of course from seed 955, which finishes properly at the end of what I’m testing.

I’m just… incredibly frustrated with this bug, which I’ve never dealt with before, even when running randomtest on previous game versions. I’m not running a game with anything using the *rand command or anything like that, and I use *disable_reuse in the few “loops” I actually have (with a definitive way out as well). If I may say so, my game is pretty dang linear. So I have no idea where all this supposed recursion is coming from.

Any sage knowledge and advice would be much appreciated. The game itself runs just fine, but I know it has to pass randomtest for publication, and so right now this recursion error thing is the bane of my existence.

4 Likes

Join the club. For some reason my game is absolutely riddled with “recursion” errors and weirdly some of the things flagged as recursion errors to me did not look like that kind of problem making them incredibly frustrating to locate. (All have been errors true, but some looked like it should have been something else like say a null selectable error etc.) So there is that to keep in mind that some times I think the tester isn’t perfect in what it says has gone wrong. (I still haven’t managed to work out where the recursion error is in part 3, so you’re not alone in getting super frustrated by these seemingly random errors that only pop up sometimes.)

If it’s failing at the begining of your game which is what this looks like, there’s probably a problem somewhere in you startup file set up somewhere up until the first choice. If you have any rand rolls or manual text entries look there first as they’re frequent culprits especially if its gotten through so many tests without a problem before jamming up.

If you can get full text, use that as it gives you more info on where exactly it has failed. (For some reason I can’t so I’m not sure if the tester is broken for everyone or just me.)

If you get really desperate, you can do what I am which is to move an *ending command down through the game until it starts to turn the error and then at least you know what section of the game is throwing up the problem. (Do remember though that the error might NOT actually be in that section. Sometimes its an incorrectly set variable elsewhere in the game which appears there so you need to check all the variable settings as well if there’s not an obvious *choice error.

6 Likes

Oy, this is… rough. Thanks for the tips, though; I’ll try these things and hope I can pin down where these errors are coming from. Much obliged. :slight_smile:

4 Likes