Jump to content
  • 0

patch 0010 crashing logs


gekkobear

Question

System is:
Windows 8  AMD A8-5500 APU  3.2 GHz 8 Gig ram (dual core, 4 logical processors)

Video card is:
AMD Radeon HD 7560D
* Checked, running latest drivers/version.

 

Running command line execution for game:

ProjectZomboid64.exe "-safemode" 2>err64.txt

 

Options settings:
Fullscreen = no

Multicore = yes

Shaders = unsupported

Resolution = 1024 X 768

Lock framerate = 30

Lighting quality = low

 

I dumped & redownloaded from Steam for the new patch, clearing out everything (and copying just my save back in).

 

I also modified ProjectZomboid.bat in the Steam folder to allow for more memory usage (I've got 8 Gig, might as well use some of it):

"%ProgramFiles%\Java\jre7\bin\java" -server -noverify -XX:+UseParallelGC -XX:+DoEscapeAnalysis -XX:+AggressiveOpts -XX:+TieredCompilation -XX:Tier2CompileThreshold=70000 -XX:CompileThreshold=1500  -Xms2048m -Xmx4096m -XX:MaxGCPauseMillis=3 -Dsun.java2d.noddraw=true -Dsun.awt.noerasebackground=true -Dsun.java2d.d3d=false -Dsun.java2d.opengl=false -Dsun.java2d.pmoffscreen=false -Djava.net.preferIPv4Stack=true -Djava.library.path=./ -Dsun.java2d.noddraw=true -Dsun.awt.noerasebackground=true -Dsun.java2d.d3d=false -Xms2048m -Xmx4096m -Dsun.java2d.opengl=false -Dsun.java2d.pmoffscreen=false -Djava.net.preferIPv4Stack=true -Djava.security.policy=applet.policy -cp lwjgl.jar;lwjgl_util.jar;./ zombie.gameStates.MainScreenState

 

Those #'s were 768 and 1024; but I've got RAM, no real constriant there... if it'd use it.

 

And sometimes (10-15 minutes into playing) I still get a memory issue:

java.lang.OutOfMemoryError: Java heap space
    at zombie.iso.IsoCell.clearCacheGridSquare(IsoCell.java:3747)
    at zombie.iso.IsoChunkMap.ProcessChunkPos(IsoChunkMap.java:823)
    at zombie.gameStates.IngameState.update(IngameState.java:931)
    at zombie.gameStates.GameStateMachine.update(GameStateMachine.java:87)
    at zombie.GameWindow.logic(GameWindow.java:652)
    at zombie.GameWindow.run(GameWindow.java:1111)
    at zombie.GameWindow.maina(GameWindow.java:943)
    at zombie.gameStates.MainScreenState.main(MainScreenState.java:112)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
    at com.exe4j.runtime.WinLauncher.main(Unknown Source)

 

Is there anything else I can/should be doing to help this? 

 

Running along with the game (on my 2nd window) I generally have a windows explorer open (to see the save file), task manager (to watch the CPU usage), and a notepad out (to take notes while playing) but I don' thave anything else memory intensive or significant going on (PZ can take 95% of the CPU and does, and Memory usage never seems to clear 2-3 Gb total out of 7 avail so I'm not sure why Java thinks it's "out" when it's not using the 4Gb the bat file I changed states it can allocate).

 

It's not as beefy a system as some; but it should meet the minimum requirements; so I wonder if I'm doing something bad/wrong/differnet that I should change.  Java options, downloading something, I dunno.

 

MY FPS is good (oddly it wasn't this AM for the first try at this patch, was slo-mo playing; but has been very good lately) and gameplay is good (lighting updates, no real stuttering/pauses, animations clean) right up until it stops responding.

 

Anything else I should try/do here?

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

Yes, you can. Just add it after the call to zombie.gameStates.MainScreenState

I forgot to add Pause to that code snippet above. ;) Will edit it in now. This way you can copy and paste from the Command Prompt by right clicking and selecting Select All, then Paste (counter-intuitive) to "paste" elsewhere.
 

 

 


Thanks, sorry I wasn't doing the right thing. :oops:

Just take comfort in knowing you're not the first to do this -- and you definitely won't be the last. Good learning experience to boot. ;)

Link to comment
Share on other sites

Update:

 

Something odd is going on with memory.  Got a similar Java memory based crash:

 

java.lang.OutOfMemoryError: Java heap space
    at zombie.core.textures.TextureDraw.<init>(TextureDraw.java:405)
    at zombie.core.SpriteRenderer.CheckSpriteSlots(SpriteRenderer.java:91)
    at zombie.core.SpriteRenderer.glAlphaFunc(SpriteRenderer.java:678)
    at zombie.IndieGL.glAlphaFunc(IndieGL.java:88)
    at zombie.iso.IsoGridSquare.DoWallLightingN(IsoGridSquare.java:535)
    at zombie.iso.IsoGridSquare.renderMinusFloor(IsoGridSquare.java:4371)
    at zombie.iso.IsoCell.RenderTiles(IsoCell.java:787)
    at zombie.iso.IsoCell.render(IsoCell.java:4347)
    at zombie.iso.IsoWorld.render(IsoWorld.java:1530)
    at zombie.gameStates.IngameState.renderframe(IngameState.java:617)
    at zombie.gameStates.IngameState.render(IngameState.java:706)
    at zombie.gameStates.GameStateMachine.render(GameStateMachine.java:35)
    at zombie.GameWindow.render(GameWindow.java:681)
    at zombie.GameWindow.run(GameWindow.java:1117)
    at zombie.GameWindow.maina(GameWindow.java:943)
    at zombie.gameStates.MainScreenState.main(MainScreenState.java:112)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
    at com.exe4j.runtime.WinLauncher.main(Unknown Source)

 

But it wasn't anywhere near max memory.

 

Before starting PZ I was using 1.7Gb of 7.4 Gb according to task manager. 

PZ was (at max) using 868Mb or so putting me around 2.5-2.6/7.4 RAM used... and I tried to tweak the .bat file above to allow 2-4 Gb useable. 

I'm thinking that bat file isn't being used; or I have an option wrong somewhere.

Link to comment
Share on other sites

Nope... was using the shortcut listed above.  For some reason I'd expected the game to somehow load the bat file (don't ask why).

 

I was doing a command line:

ProjectZomboid64.exe "-safemode" 2>err64.txt

 

I suppose the bat file confuses me... is that going to run 32 bit, or 64?  I don't see the exe call in it.

Link to comment
Share on other sites

"%ProgramFiles%\Java\jre7\bin\java" This is actually the call to java.exe.

In this case, java.exe runs the code starting at zombie.gameStates.MainScreenState.

The exe contains these lines of code, essentially as you see them in the bat.  It would be convient if the exe really read the bat, though. :D

As this is called %ProgramFiles% and not %ProgramFiles(x86)%, this will run the x64 version of the game.

To enable safemode, you can add the option (to the bat) -Dsafemode, but you might not need it. ;)

If you add Pause to the end of the bat, on its very own line, the console will even remain open.

Thus,
 

"%ProgramFiles%\Java\jre7\bin\java" -server -noverify -Dsafemode -XX:+UseParallelGC -XX:+DoEscapeAnalysis -XX:+AggressiveOpts -XX:+TieredCompilation -XX:Tier2CompileThreshold=70000 -XX:CompileThreshold=1500  -XX:MaxGCPauseMillis=3 -Dsun.java2d.noddraw=true -Dsun.awt.noerasebackground=true -Dsun.java2d.d3d=false -Dsun.java2d.opengl=false -Dsun.java2d.pmoffscreen=false -Djava.net.preferIPv4Stack=true -Djava.library.path=./ -Dsun.java2d.noddraw=true -Dsun.awt.noerasebackground=true -Dsun.java2d.d3d=false -Xms2048m -Xmx4096m -Dsun.java2d.opengl=false -Dsun.java2d.pmoffscreen=false -Djava.net.preferIPv4Stack=true -Djava.security.policy=applet.policy -cp lwjgl.jar;lwjgl_util.jar;./ zombie.gameStates.MainScreenStatePAUSE
Link to comment
Share on other sites

Ok, trying that... much better. :)    Don't I feel silly.

 

Anyhow, the game is using (so far) up to 1.4 Gig of memory and not throttling itself down to stay in the 800's range; so that's nice.  Will likely avoid my memory issues and let me play longer.

 

When I use the bat, do I get an error log (should I still need one)?   Can I run the bat from the console adding 2>error.txt or something, or can you provide the syntax to add something to the bat to dump errors?

 

If it auto dumps to error.txt or error.log or something that's great, I'm just not sure where to look.  Haven't had a crash yet, so not sure if it already has that or if I need to run it from console to get that to happen.

 

Thanks, sorry I wasn't doing the right thing. :oops:

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...