마인크래프트 1.12.2로는 모드서버를 열면 렉이 엄청나다.
나도 이게 내 컴퓨터 성능상의 문제인 줄 알았다.
하지만 찾아 보니... 전혀 아니더라.
이 원인모를 렉의 해결법이 있더라.
(찾는 데에는 정말 몇시간을 쓴 것 같다.)
java -jar server.jar
서버를 시작하는 배치 파일(서버를 시작할 때 더블클릭하는 파일)을 메모장으로 열어 보면 이런 식으로 되어 있을 것이다. 이것을 다음과 같이 바꾸어 주자.
java -Xms10G -Xmx10G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:-OmitStackTraceInFastThrow -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=8 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=true -Daikars.new.flags=true -jar server.jar
물론 server.jar는 자신이 갖고 있는 forge 서버 구동 jar 파일의 이름을, 앞부분의 -Xms10G, -Xmx10G는 자신의 메모리(램) 사이즈에 맞춰서 변경해 주어야 한다.
글이 어디에 있는지는 모르겠지만, 이 해결법을 찾은 그 글에서 말하기를.. 마인크래프트 모드들은 전문 개발자가 아닌 사람들에 의해서 만들어지다 보니 문제가 있는 코드를 짜게 되서 이런 문제가 터지는 거라고 한다. 설명을 들어도 저 명령이 뭘 하는지는 정확히 모르겠다.
이렇게 하고 서버를 열면.. 모드 30개를 넣어도 렉이 안 걸린다!
1.7.10 모드서버에서만 느꼈던 쾌적함을 여기서 느낄 수 있다니 참 좋다.