한 줄 요약: 스크립트 갯수에 연연하지 말아라. 세이브 폭발이랑 아무 연관도 없다.



그냥 작업하다가 생각나서 적어봄.


다들 모드 지우고 클린 세이브 만들어야 할 때 Resaver 많이들 쓸 거임.


아래 사진 보다보면 Script instances랑 Scripts 이거 숫자가 기절초풍할 정도로 많이 있는 게 보일 거임.


간단하게 그냥 둘의 차이점을 말하자면

Scripts는 나무기둥이고

Instances는 그 나무기둥에 묶여있는 잔가지들이라고 보면 됨.


좀 더 풀어보자면 Scripts는 퀘스트에 묶여있는 애들이고 Instances는 다이얼로그나 NPC, 그리고 마법같은 거에 심어져있는 스크립터 조각들이라고 보면 됨.


문제는 이걸 보고서 가끔 어떤 사람들은 '스크립트 숫자가 너무 많다. 이러니깐 세이브가 느린 거다. 이거 숫자를 무조건 낮춰야지만 세이브가 터지지 않는다.' 라고 말하던데 이건 사실이 아님.


기본적으로 스크립트는 상시 발동형이 아니고 특정 조건에서만 발동되는 것이기 때문에 저 숫자는 아무런 의미가 없고 세이브 용량이랑도 크게 상관이 없다.

어느 게임이든지 그렇겠지만 최적화 문제로 렌더링이 되지 않는 부분은 시간이 정지된 것마냥 정지가 되어있는 상태이니 당연하게도 플레이어 중심 반경 의외의 지역은 스크립트도 다 같이 정지가 되어있는 상태임.

이 때문에 skyrim.ini에서 Ugrid 디폴트값으로 해놓고 더 올리지 말라고 하는 것도 같은 이유임.

오브젝트는 렌더링이 될 수 있어도 그 오브젝트에 심어져있는 스크립트는 돌아가지 않고 그렇게 되면 바로 버그림 되는 거임.


스토리 위주나 이벤트가 많은 모드들 같은 경우에 특히 이 script instances가 많은데 각 NPC마다 다이얼로그마다 그 지역 오브젝트마다 싹 다 필요한만큼 개개별로 스크립트를 심어줘야하니까 많을 수밖에 없는 거임. 그리고 이런 스크립트 파편들은 위에서 언급했다시피 평소엔 휴면상태니 세이브엔 어떤 영향도 끼치지 않음. 스크립트 밀림 현상은 스크립트 갯수는 아무런 상관이 없는 것도 같은 맥락.


LE 때는 스트링 최대 허용치라는 게 존재해서 그걸 넘어가면 세이브가 펑하고 터졌고 이는 엄청나게 모드가 잔뜩 깔린 모드팩에선 빈번하게 있었음. 이 때는 확실히 이 스크립트 갯수가 문제가 됐던 게 맞지만 SE에선 의미가 없어짐.

사실 스트링이라는 게 데이터 크기를 따지는 거기 땜에 스크립트 말고도 상호작용 오브젝트와 퀘스트 깬 기록들이 켜켜이 겹치고, 이래저래 복합적인 문제가 다 합쳐져서 터지는 거지만 스크립트를 많이 쓰는 모드는 필연적으로 거대 모드였던지라 이런 식의 인식이 지금까지 이어져오지 않았나 싶다.


도움이 됐는지는