본문 바로가기

게임 이야기/스타크래프트224

효과 있는지 모르는 최적화 가이드 - 필드의 자원 변경, 유닛 속성 설정 문제 이번에는 지도상에 이미 배치된 자원들의 수치를 배율로 증가시키는 게임 특성 입니다.게임 특성을 만듭니다. 특성값을 적용할 초기화 트리거를 만듭니다. "자원배율 적용 곱하기" 트리거의 내용을 "자원배율 초기화" 트리거 내용에 넣고 "자원배율" 정수 변수를 사용 안하는 방법도 있습니다. 내용 관리때문에 분할한겁니다.C++ 같은건 변수를 넘기는게 기본인데 트리거는 그게 안되나.. 좀 찿아봐야지.. 지도상의 자원값을 읽어서 배율값만큼 적용하는 트리거 입니다. 여기서 수치 제한이 524287 인 이유가 있습니다. "변수 설정" 에서 "유닛 자원" 값을 읽어올시 "정수"값으로 가져옵니다. (...? 메모리상에는 분명 실수형으로 알고 잇는데) "유닛 속성 설정" 에서는 값을 넣을시 "실수"형으로 들어갑니다...(.... 2018. 10. 6.
효과 있는지 모르는 최적화 가이드 - 시간 증폭, 동작, 카탈로그 이번엔 모든 유닛에 시간 가속을 거는 게임특성을 만들겁니다.시간 가속을 걸려면 동작이 필요합니다.게임특성은 10개 정도 만들겁니다. 여기서 게임 특성 갯수에 맞게 동작을 여러개 만든다?그것도 게임특성으로 적용되는거라서 10개의 동작중에 1개만 쓸걸?그러면 1개의 동작에 변수값을 대입하는 방법을 쓰자! 스샷처럼 동작을 하나 만듭시다. 시간증폭을 복사하면 되긴 하는데, 시간 배속에는 다른 설정값도 적용되있어서 그건 따로 수정하셔야 됩니다.시간 배속에다라 에너지 회복 보정이 걸려있는건데,전 에너지 회복도 그대로 유니 할거니가요.아래 스샷 보면서 알아서 수정합니다 게임 특성은 전 다음과 같이 했습니다 트리거는 2개 만들건데게임 초기화시 특성값 설정할 트리거와유닛 생성시 시간증폭을 걸 트리거시간증폭 트리거는 "게.. 2018. 10. 6.
효과 있는지 모르는 최적화 가이드 - 보급품 제한 증가, 변수 관리, 게임 특성 최적화 진행중에 스샷 찍은거라 게임 특성 id는 건너띄어 버렸지만 아무튼.위 스샷같이 보급품 제한을 게임 특성으로 설정하는 기능을 작성 했습니다.근데 메모리가 넉넉한 경우라면 굳이 변수관리가지 신경슬 필요 없어요.C++ 같은거 하는 사람들한테나 저런게 신경쓰이는거지.. 그리도 최적화는 최적화니.. 스샷을 보면 라이브러리에 전역 변수인"보급품 변수"가 있습니다.근데 저 전역 변수는 게임 끝까지 남아있습니다.보급품 제한값을 담는 변수는 게임 지도 초기화시 한번만 필요한데 말이죠.그래서 변수를 지역 변수로 옮겨서 트리거가 끝나면 변수 메모리도 지워지게끔 할겁니다. 완성본 밑에 올리는 라이브러리 사용시 "특성ID" , if문에 걸린 비교값, 모드 메뉴의 게임 특성을 전부 수정하셔야 작동됩니다. 2018. 10. 6.
효과 있는지 모르는 최적화 가이드 - 지뢰 깔기, 임의 유닛 처치 , 유닛 그룹 -- 일단 최적화 전 위처럼 "플레이어 그룹의 각 유닛 선정" 사용시 임의의 1개 유닛이 선택되지 않습니다."유닛 그룹"에 최근 등록된 유닛을 기준으로 선택됩니다. 그로인해 시간이 지날경우 지뢰 파괴 생성이 반복되면서, 아래 스샷같이 하단 에 생성되는 지뢰들은 우선 파괴 되고,랜던 생성되면서 위로 쏠립니다. -- 최적화 1단계 스샷처럼 처치 라인의 명령어를 바꿈으로서 해당 현상 해결 -- 최적화 2단계저는 위에서 "조건에 일치하는 구역내 유닛"이 최적화 관점으로 맘에 안들었습니다.제 생각에 저것의 작동방식이 1. 전체 지도에서 유닛을 스캔2. 유닛 필터 적용3. 플레이어 필터 적용4. 유닛 유형 적용5. 걸러진 목록중에서 마지막것부터 갯수맡큼 목록 다시뽑음이렇게 될거란 말이죠.그런데 유닛 생성시 이미 그.. 2018. 10. 6.