Not to sure where this would go, BUT figured here's better than Code Problems since I don't have a code snippet. Anyways onto the question. If a game constantly (by that I mean 4-6 times daily which is quite annoying) freezes, and quite spontaneously I might add, what are some quick checks I could do to get to the root of the problem?
The only thing I could think of before was that I might be exceeding an obj limit. The game being hosted on a linux server, would prevent me from getting the message, and many of my trees, smoke effects, and other pretty things that make the game sparkle, are all objs. So I ASSUMED it was that, until I saw the post that I somehow overlooked about BYOND being upgraded to 3 bytes. 16 million obj limit exceeded? God I hope not >_<
Any other reasons that are possible? Its not like it starts lagging before the freeze. Everything is hunky-dory and flowers are falling from the clear blue sky and all is well, then BAM. Father Time falls out of his chair and can't get back up til I use kill -9 and restart the server. And that gets really annoying.
ID:157925
![]() Dec 5 2009, 3:07 pm
|
|
AJX wrote:
Ask people what they were doing when the game crashed. A more reliable option might be to add debugging messages and properly set up world.log. |
BYOND Error:(sfile.cpp,423) error writing file node
BYOND Error:(sfile.cpp,423) error writing file node BYOND Error:(sfile.cpp,423) error writing file node BYOND Error:(sfile.cpp,423) error writing file node BYOND Error:(sfile.cpp,423) error writing file node BYOND Error:(sfile.cpp,423) error writing file node BYOND Error:(sfile.cpp,423) error writing file node BYOND Error:(sfile.cpp,423) error writing file node BYOND Error:(sfile.cpp,423) error writing file node BYOND Error:(sfile.cpp,423) error writing file node *Bill Engvall style* "wut?..." <8^0 |
Schnitzelnagler wrote:
AJX wrote: I'm supposing you propose to include proc calls and finishes in world log? So you can see what was called but never finished? I typically only use world log to record errors, but trying to write to world.log after an error that crashes a game can be difficult considering the game is no longer running at that exact moment. |
That's one I haven't seen before. Either there's a BYOND bug or there's an error with your savefiles somewhere.
|
If you think that hitting the obj limit might be the problem you can always just count the number of objs in the game. If for whatever reason they are not being properly deleted then that may be causing problems.
Otherwise it is probably due to an infinite loop, most likely tied to movement. I'd guess something like a graphical object entering a turf with Enter() overridden.
Steps I would take to find the source of your problem:
1: Monitor the RAM usage of your game. If it continuously goes up, then the obj thing could very well be the source of your crashes.
2: Monitor the datum count of your game. Again, if this continuously goes up, problems...
3: Check all of your Enter()/Exit()/Bump() procs and make sure it verifies that whatever you're using is typecasted as its appropriate type before accessing any variables.
4: Check every single permanent loop you have for any possible crashes.
5: Do more research on the problem. Ask people what they were doing when the game crashed. See if the game will crash if left completely empty and inactive.