Forums › English Language Forums › Technical › Technical Issues

Search

Floor 16 of Roarmulus Twins Gate

10 replies [Last post]
Mon, 10/17/2011 - 14:19
Redmania's picture
Redmania

I am having extremely bad lag issues only on Floor 16 of any Roarmulus Twins Gate.
I have no problems in any other gate or floor. It is not a connection problem because I am consistently at 4 bars.

Basically what happens is the game freezes every 2 seconds for 2 seconds for the entire level.
It does not happen on floor 15, nor on floor 17 of the Roarumuls Twins Gate. Only on floor 16.

My computer has a first generation i7 CPU, with a GT540 Nvidia Card, 8 GB RAM.

Mon, 10/17/2011 - 15:15
#1
Dogrock's picture
Dogrock
This isn't connection lag,

This isn't connection lag, this is likely the Java VM running out of virtual memory (it's got a software limit and the extra physical ram won't help). The pause is the Java garbage collect halting the main thread to free up some more memory. This tends to happen to me a lot after playing for a bit and then going into a boss stratum.

You can get around this by restarting Spiral Knights. You can do this while in the Clockworks by killing javaw.exe in the Task Manager. The server interprets this as a disconnect and gives you a couple minutes to start the game up and sign back in to where you left off.

Mon, 10/17/2011 - 20:22
#2
Redmania's picture
Redmania
@Dogrock

I've noticed that just a small amount of rubberbanding occurs when java hits 0.5 GB of memory.
It is absolutely terrible in D16.

Is there any way to increase the amount of RAM I can allocate to the process.
I have tried the -xms2048 trick, but it doesn't work at all.

Mon, 10/17/2011 - 21:12
#3
Starlinvf's picture
Starlinvf
You'd need to override it as

You'd need to override it as a global setting or create a batch script to call projectx directly (basically mimicking the launcher's second state to bypass it). If your using Steam, it gets more complicated since the launch process is sealed pretty tightly from the user.

Mon, 10/17/2011 - 21:17
#4
Redmania's picture
Redmania
@Starlinvf

Thanks for the reply guys!

@Starlinvf : Where would I be able to for information to do exactly that?

Mon, 10/17/2011 - 21:31
#5
Starlinvf's picture
Starlinvf
getdown launch parameters

Heres a sample of the launch parameters the game uses. A few important details to note is that the game uses the installed system java in order to run, and the appdir and class path is extrapolated from the working directory. Under normal circumstances, shortcuts will set the working directory to the root of the SK folder containing the getdown jar, and then explicitly launch javaw.exe to instruct it to load the jar by name. By doing this, code ran in the JVM will search for files relative to the SK folder instead of the default behavior of looking in the location of the exe.

Shortcut: "C:\Program Files (x86)\Java\jre6\bin\javaw.exe" -jar getdown-pro.jar .
Start in: "C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights"

Stage 1: runs the launcher and updates/patches as needed. (getdown)
Stage 2: build the command string to launch the game (projectx) and run it in a new javaw.exe process.

The command below is actually ran as a single string. Its formatted like that when I pulled it out of the log files.

Running C:\Program Files (x86)\Java\jre6\bin\javaw.exe
-classpath
C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\config.jar;C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\projectx-config.jar;C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\projectx-pcode.jar;C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\lwjgl.jar;C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\lwjgl_util.jar;C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\jinput.jar;C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\jshortcut.jar;C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\commons-beanutils.jar;C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\commons-digester.jar;C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.\code\commons-logging.jar
-Dcom.threerings.getdown=true
-Xmx256M
-XX:+AggressiveOpts
-XX:SoftRefLRUPolicyMSPerMB=10
-Djava.library.path=C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\./native
-Dorg.lwjgl.util.NoChecks=true
-Dsun.java2d.d3d=false
-Dappdir=C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\.
-Dresource_dir=C:\Users\Helot\AppData\Roaming\Three Rings Design\Spiral Knights\./rsrc
com.threerings.projectx.client.ProjectXApp

Fri, 10/21/2011 - 07:52
#6
Redmania's picture
Redmania
@Starlinvf Not that I'm

@Starlinvf

Not that I'm doubting that the above script works, but I usually like to understand what each line of code does to the game.
I am not using Spiral Knights through a steam client. Also, I rerouted the java shortcut to the 64-bit java code installed separately on my computer.

Fri, 10/21/2011 - 17:14
#7
Starlinvf's picture
Starlinvf
http://www.oracle.com/technet

http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102....

That should answer most of the functional questions. All the options shown are preset from OOO based on the system requirements for SK. The 2 most worthwhile options are the garbage collection and heap size settings... however, because of the way memory management and garbage collection works, changing them is more of a trade off of issues then a fix.

Sat, 10/22/2011 - 10:22
#8
Scrum-Lord's picture
Scrum-Lord
Any thoughts on OOO giving us

Any thoughts on OOO giving us the ability to change these for Steam players? I added the incGC option via the Steam game options but the difference is not all that great.

Sat, 10/22/2011 - 16:21
#9
Redmania's picture
Redmania
Thanks for the help

Thanks for the help Starlinvf. I really appreciate it.

Sat, 10/22/2011 - 17:36
#10
Starlinvf's picture
Starlinvf
@Scrum-Lord: The problem is

@Scrum-Lord: The problem is Steam launch options are only applied against the exe the Steam points to. The patcher/launcher menus in MMOs are a like the DX9/DX11 selection is newer shooters, and won't pass custom command line options to the game itself. The only way to remedy this in SK is to redesign getdown in a full fledged pre-launch menu.

Powered by Drupal, an open source content management system