Crash (using AGS v3.3.3.0)

Started by arj0n, Tue 03/02/2015 20:58:57

Previous topic - Next topic

arj0n

While running a project from within the editor, the projects crashed after a second or two.
AGS version: AGS Editor .NET (Build 3.3.3.0) v3.3.3, December 2014.
Dump file: >here<

(not sure if this should be posted here or elsewhere on the forum...)



EDIT:
While I ran the same project from within the editor today, it crashes again after half a minute:

Illegal exception
---------------------------
An exception 0xC0000005 occurred in ACWIN.EXE at EIP = 0x00559570 ; program pointer is +379, ACI version 3.3.3.0, gtags (2044,64)
AGS cannot continue, this exception was fatal. Please note down the numbers above, remember what you were doing at the time and post the details on the AGS Technical Forum.
Most versions of Windows allow you to press Ctrl+C now to copy this entire message to the clipboard for easy reporting.
An error file CrashInfo.dmp has been created. You may be asked to upload this file when reporting this problem on the AGS Forums. (code 0)


Dump file of this crash: >here<

Not sure if this adds any information, but here's a screenshot of the crash:
Spoiler
[close]

Crimson Wizard

#1
Quote from: Arj0n on Tue 03/02/2015 20:58:57
While running a project from within the editor, the projects crashed after a second or two.

Wait a second... did you just edited the post and changed "while running compilation" to "while running project"?
Or was I just seeing things? :tongue:
I was breaking my head wondering how you get the crash dump during compilation.

E: I will look into this tomorrow, today is too late for work... :)

arj0n

Quote from: Crimson Wizard on Thu 05/02/2015 00:25:31
Quote from: Arj0n on Tue 03/02/2015 20:58:57
While running a project from within the editor, the projects crashed after a second or two.

Wait a second... did you just edited the post and changed "while running compilation" to "while running project"?
Or was I just seeing things? :tongue:
I was breaking my head wondering how you get the crash dump during compilation.

E: I will look into this tomorrow, today is too late for work... :)
Sorry, can't remember. But if so: I meant 'running the project from within the editor', not 'running a compilation'. ;)


Crimson Wizard

I can only tell that this occurs when drawing some button. Looks like sprite is missing in memory, but I am not sure.

Is it possible for you to send me this game so I could run it under debugger?

arj0n

Quote from: Crimson Wizard on Mon 09/02/2015 11:08:25
I can only tell that this occurs when drawing some button. Looks like sprite is missing in memory, but I am not sure.

Is it possible for you to send me this game so I could run it under debugger?
Sure, I'll PM you the link.

ollj

#5
this usually hints at an (accidental) infinite recursion.
usually a typo causes a function to call itself instead of the function you wanted it to use. autcomplete can be annoying like that.

this recursive loop executes infinitely untill you run out or memory.

check all newly written functions to see if you made one to call itself (unter conditions that you thought to filter out as impossiible, but that are apparently the case).
thinks like this also happen within accidentall recursive loops. they are NOT caught by the newbie-friendly ags-function that is made to prevent loops looping too often.


----

i think i salso had strange runtime erros like this when i tested what would happen if i instance over 30000 dynamicsprites, daring the engines limits. it might even be a different engine limit than its sprite limit of 30000 thats causing your error.

Crimson Wizard

#6
AGS has a built-in limit to loop iterations during one script "pass".
If you have a function with a long loop, add "noloopcheck" keyword to its declaration:
http://www.adventuregamestudio.co.uk/wiki/Script_language_keywords#noloopcheck

monkey0506

I requested the noloopcheck keyword, possibly in relation to an earlier version of the Stack module or EncryptedFile module (IIRC) because they have to process large amounts of data. I also made use of the keyword in the EasyBake module, where again I was processing huge chunks of data at once.

Outside of exceptional cases of large data processing, the noloopcheck keyword is probably more dangerous than useful, but it is precisely because AGS has a "newbie-friendly" mechanism to catch infinite loops. As for recursive functions, that would overflow the stack long before it would hit the 150k loop limit, so that is also a non-issue. Sorry I don't really have anything more useful to contribute, but I wanted to clarify that the situation ollj is describing simply doesn't exist in AGS.

SMF spam blocked by CleanTalk