table breaking errors?

So, I've got a situation where I call a table and it shows up half way through the table, or at least ignores lines of code in the table. It skips the first 4 or so lines in a really weird way. Here's me trying to debug it...

15: \n I got to the problem [@ConcealFromContdPre]//I put this in to see if it would print it... It's hit-or-miss.
//
Table: ConcealFromContdPre
\n Began here&//again line put in for error checking.
[bogusvariable==5]&//it seems to actually assign this variable, even though it hasn't printed the other lines.
[formofsupfail==0]&
\n Option.25&//line put in for error checking
[masterPV==[|{curhench}|0]]&
[@ConcealFromContd0]
//
Table: ConcealFromContd0
\n option.5&//here's where it starts printing
\n what is bogusvariable? {bogusvariable}&
[bogusvariable==10]&
[Newplan=={1d3-1}]&
\n option1&
[@ConcealFromContd1]

In any case, I have it run, say 25 times, and about a third of the time (not always), it ignores all of the prints and gets to the line where it prints option.5

Now, I've had something like this happen before. I've noticed that ' will sometimes set stuff of as text and so it won't do whole lines of code. I've also noticed that if you tell it to print line after line after line, it eventually starts ignoring new lines \n.

So, is there something I should be on the lookout for here? The thing is, it's doing the table calls, it just isn't printing the stuff it's supposed to print. Here's an output...
MakeMasterVillain, step15
The villains main objective is option.5
what is bogusvariable? 5

So, it's assigning the variable, but it isn't printing out the boldfaced print lines. Is there a print buffer that gets full or something. Is there a way to clear that? Could something else be going on here. Note... I've checked to make sure there wasn't a [] mismatch or a {} mismatch. I could have missed something in some file somewhere, but I'm pretty sure that they're all accounted for.

Comments

  • I should add that I started remarking out lines to see where it breaks, and it breaks when on the line [masterPV==[|{curhench}|0]]&... would there be some reason that including that line would cause the table to not output print statements BEFORE this line?

  • Also, if I remark out the table call completely, everything works fine. I don't get a weird [ or {. There are no invalid calls or anything like that. I would think if there was something out of place before this, it would wash out somewhere in the program, but I don't see any sign of that anywhere.

  • edited March 2022

    Sorry...thought I'd fixed it.

  • If curhench isn't defined, you'll get odd results, so maybe that's what you're running into. Here's a test table:

    Table:Test
    curhench isn't defined. [masterPV==[|{curhench}|0]] MasterPV is now "{masterPV}".\n&
    [curhench==Wilbur]&
    curhench is now defined. [masterPV==[|{curhench}|0]] MasterPV is now "{masterPV}".
    

    The results can be any of the following:

    curhench isn't defined. MasterPV is now "0".
     curhench is now defined. MasterPV is now "0".
    
    curhench isn't defined. MasterPV is now "0".
     curhench is now defined. MasterPV is now "Wilbur".
    
    curhench isn't defined. = MasterPV is now "=".
     curhench is now defined. MasterPV is now "0".
    
    curhench isn't defined. = MasterPV is now "=".
     curhench is now defined. MasterPV is now "Wilbur".
    
  • I see your point and I think there are too many undefined variables in the thing. I basically just busted the table into two tables, one where it includes all of the adventure level variables (and gets motives for villains in the adventure) and one that doesn't and can be used to get motives for campaign villains. That's not really a solution... more of a workaround, but I'm guessing the problem exists as some variation of what you're pointing out.

Leave a Comment