If anyone ever wondered, yes, I DID get that search and request thing going!
but I recently ran into an interesting problem...
I tried to add a new piece of code and eggdrop "freaked out".. code elements started "dissappearing" and, of course, the bot didn't know what to do!
the total code base at this point is over 3000 lines.. and when I tried to add 20 more lines, it all just came to a screetching HALT!
the system has 2 Gigs RAM and 2 Dual-Core Xeon CPUs (4 CPUs) running BSD 6x
my question is :
"Is there a defined LIMIT to how much code can be implemented or some hard limit to the amount of processes that eggdrop can handle?"
being, that TCL is single-ended, I didn't think this would be a problem so soon (I can see 20,000 lines of code.. but then the thing would be SENTIENT at that point!).
the first signs of "trouble" appear to be TCL/eggdrop not catching some errors.. such as missing globals or an "if" statement with an open ended equation.. that happens at about 1300 lines or so...
I have tried (re)writing the code to be as efficient as I can possablly understand.. ("elseif"s and arrays can be a real bitch!)but even after spending days and days checking every single line, one-at-a-time.. and finding nothing wrong... when its all put together, the weirdness begins!
I also learned that nested "if"s are a BAD idea.. and to avoid them as much as possable.. but theres a place in my code that MUST have 'em... and you can only go 3 levels down.. any more and you start running into some strange behaviors! but, perhaps its all related.. I also wonder if theres a limit of the number of globals a single proc can have (one proc has about 60... and they are in one long straight line!)
I have placed remarks all through my code and kept a VERY close eye on the number of varables I have used and even recycled them wherever possable.. (yes, I have checked, checked, and rechecked to make SURE there were no varable conflicts)
everything all worked.. untill I added ONE more "if" statement set and it all just grinded and crashed!
any ideas?
for now, I'm going to try a different approach... though I kinda recall not being able to break the code up into seperate files due to the globals that share from proc to proc...
this bot of mine does everything from managing the DJ logins, switching mount title assignments, updates for all the title servers... to generating the website!
-- saved 3261 lines --
-DjZ-

