https://mods.factorio.com/mod/factoripedia
0.0.8 업데이트 완료


팩토리피디아 - 개선이 필요한 점들

전에 쓴글인데 글 쓴 내용 거의다 대응이 완료 됐음


우선 거슬리는 MK들을 전부 죽여버리고 모듈 위에 마우스를 올리면 모듈 효과가 뜨게 함


근데 모듈효과가 좀 길면 지혼자 엔터가 들어가서 보기 안이뻐진다

이건 뭐 마땅한 방법이 없네



모듈필터링 윗부분에 필터 옵션으로 all/related 선택하는걸 추가 했는데 이걸 related로 바꾸면 위 스샷처럼 사용가능한 레시피가 있는 서브그룹만 출력되서 찾기가 더 편해졌음


아 그리고 레시피탭에서 뭐 누를 때마다 UPS 급떡락하는 현상은 생각보다 쉽게 개선됨

원래는 여러틱에 나눠서 분산처리를 해야하나 했는데 어느 구간이 병목인지 확인하다가 GUI의 값을 읽어오는게 병목인걸 알게 됐음



레시피1 처리 시작

모듈1의 on/off 여부확인

모듈2의 on/off 여부확인

...

모듈N의 on/off 여부확인

레시피1 처리 완료

레시피2 처리 시작

...

레시피2 처리 완료

레시피M 처리 시작

...

레시피M 처리 완료


이런식으로 루프가 반복되게 코드를 짜 놨었는데 저 switch gui로부터 on/off를 확인하는게 상당히 부하가 큰 작업인가 보더라

N*M번의 gui on/off체크가 반복되면서 UPS 드랍이 발생하는거였음

지금까지는 N*M이 별로 안 커서 눈치를 못챘던건데 파이모드는 N도 크고 M도 커서 대환장 파티가 발생한다


그래서 코드를 아래처럼 개선함



모듈1의 on/off 여부확인 후 임시변수에 저장

모듈2의 on/off 여부확인 후 임시변수에 저장

...

모듈N의 on/off 여부확인 후 임시변수에 저장


레시피1 처리 시작

모듈1의 on/off 여부확인(임시변수로부터)

모듈2의 on/off 여부확인(임시변수로부터)

...

모듈N의 on/off 여부확인(임시변수로부터)

레시피1 처리 완료

레시피2 처리 시작

...

레시피2 처리 완료

레시피M 처리 시작

...

레시피M 처리 완료


이렇게 개선한 결과 gui에 직접 접근하는건 처음 N회 뿐이고 그 이후로는 임시변수에 저장한걸 기반으로 N*M의 루프를 돌게됨

이러면 이전처럼 무지막지한 UPS드랍은 발생하지 않게 되었음

사실 약간은 떨어지긴하는데 이정도면 감당할만 수준 같음

분산처리 똥꼬쇼 안해도 되게 되서 매우 행복함



연로탭도 개선했음

원래는 이랬는데



이제는 이럼

한 줄이 더 두꺼워졌기 때문에 한눈에 들어오는 정보량은 더 떨어졌다고 볼 수 있음

그래도 다른 탭들이 다 이런 스타일로 되어있기 때문에 통일성이 더 중요하다고 봐서 바꿨다

대신 카테고리별로 정렬이 되었고 연로를 다 태우면 얻는 결과를 추가로 띄워줬음

불쌍한 아오그 딩그릿들...


열량별 정렬기능은 굳이 추가해야하나 싶음

일단 카테고리가 다른것끼리의 비교는 거의 무의미한 것 같고 같은 카테고리내에서라면 연료가 수백종류 있는것도 아니니 보는데 큰 지장은 없지 않나라는 생각이 드네



changelog.txt도 간단하게나마 쓰기 시작했다

이거 그냥 대충 써도 되는줄 알았는데 은근이 문법제약이 빡세더라

이제 모드 페이지 들어가거나 인게임 모드탭에서 변경사항 확인 가능함. 볼사람은 별로 없겠지만...