Criss Cross debugger bugs while coding


#1

A very common sight for me using latest version of chrome x64 (also tested with x32)

some info

  • I debug with js console open.
  • Main chrome window memory usage ~ 1gb.
  • my code is (usually) error free, no infinite loops, no recursion, below the soft and hard execution limits, and the system has no problem ranking my code.

Symptoms during coding sessions

  • Chrome crashes, very often
  • codecombat debugger starts for no reason
  • game wont load the first 3 times, and then load without any problems what so ever the 4th time I press refresh.
  • 2 codecombat debuggers running at the same time (according to js console, where I see 2 sets of round overviews appearing ROUND 0 1 2 0 3 1 4 2 3 4)
  • crashes while the window is not active (and nothing is happening in the js console)

So basically the worst chrome crashes are when I am just reviewing my code, (game is fully evaluated), and without touching anything. It starts to re-evaluate all rounds and chrome crashes.
It also re-evaluates when I remove blank lines, or add comments.
Even worse it re-evaluates as soon as I press delete key (and in 99% of those cases I have just broken my own code) so the re-evaluation of all rounds will be useless.

These crashes are not sporadic, as I write this I had about 4 crashes attempting to add /* */ around a code block :stuck_out_tongue:

I’m afraid there were no useful messages in the console that might indicate the cause of the above symptoms.
And although I think these problems are caused by the debugger I can’t rule out the UI that keeps rendering the humans and ogres (I usually press pause though to rule this out)

Offtopic bug: Maximize code editor in chrome, shows bigger window but handles the code as if the iFrame did not resize. If I resize the browser window it corrects this bug.

Hope you can fix these issues, and if you need me to test anything let me know :smile:


Edit: some additional info. I added an illegal statement at the start of my code, thus my code does not compile and is not evaluated. The game is also in pause mode. I hoped this would prevent the crashes. It does not, even though I’m just attempting to write some comments in my code :stuck_out_tongue:

This even happens when battling the warmup AI

Some additional data (with uncompilable code on my side)

  1. Simulation: 959ms
  2. Serialization: 34ms
  3. Delivery: 11ms
  4. SuperModel for level loaded in 189036 ms
    Level unveiled after 192.09s

Hope it helps


Edit 2: Internet Explorer crashes as well


#2

Thanks for all the detail Mortimer, sounds like this might be related to the ticket I just filed re: Crisscross (https://github.com/codecombat/codecombat/issues/1509). I’ll append this link so that we have all the info we need to get this resolved.


#3

Ok, the only error’s I see (as of today) are actually two warnings and some 404’s:

[framesocket] timed out while pulling from persistent storage
Cannot show action wait for Potion Master because it DNE 

GET http://codecombat.com/db/thang.type/fade-out 404 (Not Found) vendor.js:460
GET http://codecombat.com/db/thang.type/fall 404 (Not Found) vendor.js:460
GET http://codecombat.com/db/thang.type/fall-hide 404 (Not Found)


#4

Do you still see these crashes if you don’t open the JS console?


#5

Yeah, I just tested it. The Js console itself does not seem to be the problem.
It’s still crashing, on loading, during debugging, and even when I go AFK for a few minutes.
It appears to be some background process that brings it down?


#6

or perhaps a memory leak, I’ve got a bug in my code so I assume my code is not actually running

this. // was trying to create a new variable when it crashed the first time.

With no variable behind the dot and 3 times now I load the game, try to scroll to the line with: this. but it crashes before I can edit (chrome hovers around 800mb at that time after the game was simulated)
(tried, refresh, kill tab reload, kill chrome and all chromes background apps and restart, same results)

offtopic bug/ommision: There is a popup saying that I forgot to add something behind this. but it does not mention the line of code it is on.

Maybe this info helps.


#7

Mortimer, I wonder if you could help try to get some sort of Chrome tab crash dump using these steps?

Also, it might be faster to debug this in our HipChat room.


#8

quick try failed to attach the windbg, when I get some time Ill investigate further.

however it appears that the game is not working at all at the moment. :stuck_out_tongue:

The game stops loading at 15% (chrome does not crash but comes with a slow page warning (with the wait or kill page option). can’t attach JS console at that time.
Tried it again with the JS console open:

Tested this on two pc’s (and was attempting to load a game vs the simple AI)


#9

Looks like you got hit by this one also. I’m trying to figure it out now.


#10

Can’t seem to get windbg.exe attached to crome.exe (or the process).

(1a28.18b0): Break instruction exception - code 80000003 (first chance)
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for ntdll.dll - 
ntdll!CsrSetPriorityClass+0x40:
00000000`76e4cb70 cc              int     3

Did attach Visual Studio to the process and that caught this exception:

The thread 0x1284 has exited with code 0 (0x0).
First-chance exception at 0x000007FECA8A7914 (chrome_child.dll) in chrome.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.
Unhandled exception at 0x000007FECA8A7914 (chrome_child.dll) in chrome.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

#11

5 gb virtual size seems like a lot.

Edit:
I’m now adding the following line at the start of my script when I’m coding

return {gold: 0, desiredTile: this.tileGroups['A'][0]};

It seems to help a bit, but it still crashes, which I assume rules out any problems with my own code?

Just an other observation, with my full code active I have no problem testing my code against a few opponents, as long as I hit HOME to select the next opponent, immediately when the simulator returns Success/Fail result.

Am I the only one having this repeated crash problem?


#12

Thanks for all the great debugging info! I’m unfortunately not able to trace it to any familiar causes, yet, and I’m pretty sure we’d know if many other players were seeing the same amount of horrific crashing that you’re seeing. A few more questions:

  1. How long has it been doing this?
  2. Do you see the same problems in Incognito mode (which shouldn’t have any extensions)?
  3. Do you see similar problems in Firefox? (Apparently IE crashes for everyone all the time now, so we need to fix that…)
  4. Do you see similar problems when playing, say, Sky Span or Greed?

Hope to get this working soon!


#13

A few months back I started playing ( I think a week or so after Greed? competition finished). I did most if not all of the multiplayer maps (both human/ogre side) without any crashes what so ever.
Then I stopped playing till two weeks ago I read about your new map Criss-Cross, started coding without much problems till last week. It’s practically unplayable now with the code-combat editor.
As addicted as I am, I’m now coding in a google docs code project and copy and pasting my entire code.
When I make sure the animation is in pause mode its fairly workable.

  • FireFox, fresh install less then 5 minutes coding in criss cross resulted in a crash:
    AdapterDeviceID: 0x6798
    AdapterDriverVersion: 14.100.0.0
    AdapterSubsysID: 04181043
    AdapterVendorID: 0x1002
    Add-ons: %7B972ce4c6-7e08-4474-a285-3208198ce6fd%7D:32.0
    AvailablePageFile: 27415298048
    AvailablePhysicalMemory: 10327068672
    AvailableVirtualMemory: 774742016
    BIOS_Manufacturer: American Megatrends Inc.
    BlockedDllList:
    BreakpadReserveAddress: 46399488
    BreakpadReserveSize: 41943040
    BuildID: 20140825202822
    CrashTime: 1410076115
    EMCheckCompatibility: true
    EventLoopNestingLevel: 1
    FramePoisonBase: 00000000f0de0000
    FramePoisonSize: 65536
    InstallTime: 1410075536
    Notes: AdapterVendorID: 0x1002, AdapterDeviceID: 0x6798, AdapterSubsysID: 04181043, AdapterDriverVersion: 14.100.0.0
    D3D10 Layers? D3D10 Layers- D3D9 Layers? D3D9 Layers+
    ProductID: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
    ProductName: Firefox
    ReleaseChannel: release
    StartupTime: 1410075536
    SystemMemoryUsePercentage: 39
    Theme: classic/1.0
    Throttleable: 1
    TotalPageFile: 34305368064
    TotalPhysicalMemory: 17153638400
    TotalVirtualMemory: 4294836224
    URL: http://codecombat.com/play/level/criss-cross?team=humans&opponent=53f39896e7a7643005c0443d
    Vendor: Mozilla
    Version: 32.0
    Winsock_LSP: MSAFD Tcpip [TCP/IP] : 2 : 1 : %SystemRoot%\system32\mswsock.dll
    MSAFD Tcpip [UDP/IP] : 2 : 2 :
    MSAFD Tcpip [RAW/IP] : 2 : 3 : %SystemRoot%\system32\mswsock.dll
    MSAFD Tcpip [TCP/IPv6] : 2 : 1 :
    MSAFD Tcpip [UDP/IPv6] : 2 : 2 : %SystemRoot%\system32\mswsock.dll
    MSAFD Tcpip [RAW/IPv6] : 2 : 3 :
    RSVP TCPv6 Service Provider : 2 : 1 : %SystemRoot%\system32\mswsock.dll
    RSVP TCP Service Provider : 2 : 1 :
    RSVP UDPv6 Service Provider : 2 : 2 : %SystemRoot%\system32\mswsock.dll
    RSVP UDP Service Provider : 2 : 2 :
    MSAFD RfComm [Bluetooth] : 2 : 1 : %SystemRoot%\system32\mswsock.dll
    useragent_locale: en-US

  • Happens in Greed (Chrome) as well, where i also notice these cylinders appearing

  • Happens in Chrome incognito

system info
Running windows 7 sp1 x64 (updated)
system: cpu i7 2600k, 16gb ram,
Did a memory check and a disk check (no problems detected by microsoft)
System scan (currently in progress)
Negative on full virus scan
Doing all this from the netherlands with a 90/9 mbit connection.
No crashes with other websites


#14

Wow, this is intense! I still don’t know what might be causing it, but I did think of one other way to find out, although it would take some doing on your part: you could get the CodeCombat setup working locally on your computer, then find the version that starts causing the crashes. (This may be more of a hassle than it’s worth, but we could probably zoom in on the bug that way, if all else fails.)

Those cylinders are new, but they’re not really a bug; they just represent the sprites that are there before the spritesheets have been rendered yet. We are working on moving to WebGL for the sprite drawing, which may alleviate this problem if all goes well.


#15

yeah, I rather spend that time improving my game :smiley:


#16

This is still a show-stopper here. I’m giving up on CodeCombat for the month. I spent another hour trying to fix a typo in my Python program. It seems to have gotten worse: I have been unable to add the three characters to my code and restart. Meanwhile, the system goes sluggish, the fans go one, and I get to watch the OS/X beach ball of doom.

CodeCombat has great potential. Keep at it!