[Bugs] Moth Lamp


simplex

Recommended Posts

well at least entity explosion has been ruled out, this is rather a strange thing

I think the ground type still needs to be declared/inserted somewhere else. I think.

@Cheerio, do you know if the ground information/assets need to be included somewhere else besides tiledefs.ground and tiledefs.assets, where tiledefs is the table returned by worldtiledefs.lua? Including it in tiledefs.ground already makes the world entity create a render layer for it.

Link to comment
Share on other sites

  • Developer

The profiler I just wrote (a very, very simple one, just for tracking entity creation and removal) is a part of the mod code. Just set

PROFILING.ENTITY_CREATION.ENABLED = true
in rc.lua, and then look for the results in entity_count_profiling.txt, which gets placed inside the mod folder (it's written to disk whenever the game saves, in particular on "Save and Quit"). The comments in tuning/profiling/entity_creation.lua document it some more, and its code is at scripts/upandaway/profiling/entity_creation.lua.

However, since now the entity count just remains constant (other than some light natural oscillation up and down depending on some factors), I don't think it'll be of further use to us at the moment. I'm quite certain the issue is indeed caused by adding a new ground type, and that the population explosion just added even more lag on top of it.

 

If you have the public preview downloaded, you should hopefully be able to use this to get a better idea of what's going on:

 

http://forums.kleientertainment.com/index.php?/topic/28820-profiling-your-mod/

Link to comment
Share on other sites

@simplex

@Cheerio

 

Weird/mixed news. (In the public preview.)

 

I loaded a pre-existing cloud save, and ran around for awhile, and did not experience the stutter bug. Tried three different existing realms, and none of them lagged at all. However, after trying to go to a freshly generated cloudrealm for profiling, the game crashes without an error in the log. I believe it is related to the climbing component, because using ClimbTo() crashes no matter where I'm trying to go. Also crashes similarly when climbing the beanstalk. Also crashes similarly during the auto-saving. I'll post here if I discover any other crashes.

Link to comment
Share on other sites

@simplex

@Cheerio

 

Weird/mixed news. (In the public preview.)

 

I loaded a pre-existing cloud save, and ran around for awhile, and did not experience the stutter bug. Tried three different existing realms, and none of them lagged at all. However, after trying to go to a freshly generated cloudrealm for profiling, the game crashes without an error in the log. I believe it is related to the climbing component, because using ClimbTo() crashes no matter where I'm trying to go. Also crashes similarly when climbing the beanstalk. Also crashes similarly during the auto-saving. I'll post here if I discover any other crashes.

That's excellent news. The crash thing should be just a change in the way to hook levels, I'll look into it. If the stutter is really gone, I couldn't be happier*.

* In relation to these news, I mean. Since apparently we'll never get mod savedata, this means hooking up new levels will always remain hackish and uninteroperable with other mods, so overall I'm not all that happy. :razz:

Link to comment
Share on other sites

That's excellent news. The crash thing should be just a change in the way to hook levels, I'll look into it. If the stutter is really gone, I couldn't be happier.

I haven't seen it at all in this preview. I really hope it's actually gone, but I think profiling a fresh cloudrealm should indicate for sure whether or not it is.

Link to comment
Share on other sites

I haven't seen it at all in this preview. I really hope it's actually gone, but I think profiling a fresh cloudrealm should indicate for sure whether or not it is.

Profiling will be of no use unless we can replicate it again.

Link to comment
Share on other sites

Profiling will be of no use unless we can replicate it again.

Err, I more meant to see if it's something that very slowly builds up, or if it's something that occurs at a specific point. But you're correct, if we can't reproduce it, then there isn't much of a point in profiling.

Link to comment
Share on other sites

  • Developer

Profiling will be of no use unless we can replicate it again.

I agree.  That being said, there was a good amount of work put in to reduce the amount of garbage created by the game which would help if that was the cause of the stutter.  Unfortunately we're kind of in a weird place where the update that unlocked profiling also has a bunch of optimizations in it :).  

Link to comment
Share on other sites

@debugman18

@Craig_Perry

@Cheerio

It seems the stutter is really gone. Now we'll never know its cause :(.

:razz:

But... to test that I generated a new world and climbed a beanstalk. The cloud world was generated without issue. I'm not getting the crash you're reporting, @debugman18.

well it relieves me to know it has been vanquished

 

yet my curiosity says "no. not good enough" but it will have to be

Link to comment
Share on other sites

I agree.  That being said, there was a good amount of work put in to reduce the amount of garbage created by the game which would help if that was the cause of the stutter.  Unfortunately we're kind of in a weird place where the update that unlocked profiling also has a bunch of optimizations in it :-).

Well, we can certainly say it's triggered by the addition of a new ground type, because disabling the inclusion of our custom ground type prevented it from happening. Is there some way a ground type could create garbage? Isn't all of the RAM used for that directly managed by the engine through new/delete, without ever passing by the Lua VM?

Link to comment
Share on other sites

@debugman18

@Craig_Perry

@Cheerio

It seems the stutter is really gone. Now we'll never know its cause :(.

:razz:

But... to test that I generated a new world and climbed a beanstalk. The cloud world was generated without issue. I'm not getting the crash you're reporting, @debugman18.

How odd. I'm using a couple of other mods, although I don't think any of them would cause the issues. I'll check again, and I'll even verify the file integrity just to be sure. Did you experience the auto-save crash, however?

Link to comment
Share on other sites

How odd. I'm using a couple of other mods, although I don't think any of them would cause the issues. I'll check again, and I'll even verify the file integrity just to be sure. Did you experience the auto-save crash, however?

Nope, no crashes. Absolutely everything is fine.

In your case, were you using brand new saves or just new beanstalks in old saves?

Link to comment
Share on other sites

Nope, no crashes. Absolutely everything is fine.

In your case, were you using brand new saves or just new beanstalks in old saves?

New save, with a new beanstalk. Only other mod active is Simplex Testing. After verifying the file integrity it's still crashing.

 

4JvlXo6.gif

Link to comment
Share on other sites

New save, with a new beanstalk. Only other mod active is Simplex Testing. After verifying the file integrity it's still crashing.

 

4JvlXo6.gif

I'll try and see if I can recreate this, need to get back to testing stuff anyway =P

 

EDIT: I would if steam didn't think don't starve was already open...

 

as for testing; it may take a bit as I will likely have to restart my computer multiple times (dangit steam...)

 

EDIT2:

@simplex

@debugman18

 

we have a rather big problem concerning the update and its preview...

the menu screen for U&A is not functioning whatsoever with the latest build

-its frozen

-supposedly still responding

-screenshot below

post-261887-0-35399400-1382031624_thumb.

- issue from log below

[codesyntax].../../mods/UpAndAway-master/scripts/upandaway/main.lua:144: attempt to call method 'UpdateDaysUntil' (a nil value)[/codesyntax]

Link to comment
Share on other sites

New save, with a new beanstalk. Only other mod active is Simplex Testing. After verifying the file integrity it's still crashing.

Well, I was also using simplex testing.

I just added tracing capabilities to debugtools.lua. Calling trace_flow() (from the console, for example) will make every line of code entered and every function called be logged to trace.txt, placed in the mod folder. So try typing the following in the console

trace_flow(); ClimbTo(1,1)
while in the surface and then post trace.txt here. The end of the file should indicate precisely when the game crashes.

Note that enabling tracing makes the game really slow (that's why it should be used as close as possible to the point of crash), so be patient.

p.s.: The semicolon isn't really needed. :razz:

Link to comment
Share on other sites

I'll try and see if I can recreate this, need to get back to testing stuff anyway =P

 

EDIT: I would if steam didn't think don't starve was already open...

 

as for testing; it may take a bit as I will likely have to restart my computer multiple times (dangit steam...)

 

EDIT2:

@simplex

@debugman18

 

we have a rather big problem concerning the update and its preview...

the menu screen for U&A is not functioning whatsoever with the latest build

-its frozen

-supposedly still responding

-screenshot below

attachicon.gifbugreport1.png

- issue from log below

[codesyntax].../../mods/UpAndAway-master/scripts/upandaway/main.lua:144: attempt to call method 'UpdateDaysUntil' (a nil value)[/codesyntax]

I'm aware of the misplacement of boxes (that is insignificant and can be fixed easily) and as for the error it is fixed in the latest commit in the development branch.

 

https://github.com/debugman18/UpAndAway/archive/development.zip

 

Edit:

@simplex

This is really, really weird.

 

grYH0Jo.jpg

Link to comment
Share on other sites

Are you using the development branch?

your link seemed to fix it

 

Are your sure you're using the development branch? And that you're syncing that branch? I got the same error today, but then I pulled the latest commits...

 

I was, strange thing github.

 

a little note; I am known for managing to break technology by doing relatively little, possibly the cause of said wierdness

Link to comment
Share on other sites

Well, what's in trace.txt? And oh, I updated rc.defaults.lua, you might want to incorporate some of it into your own rc.lua.

Nothing at all appears in it. trace.txt appears, but it's empty. Afterwards, trying to use trace_flow() just crashes the game.

 

Edit: Pulled your latest commits.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.