게임/아레스 라이즈 오브 가디언즈
아레스 라이즈 오브 가디언즈 보스 타이머 만들기
AIPRODIGY
2023. 12. 31. 12:41
반응형
아레스 라이즈 오브 가디언즈에서 필드보스의 경우에는 보스타임이 알람으로 떠서 좋은데, 일반 필드 네임드의 경우 알림이 뜨지 않아서 계속 보스모양을 클릭하고, 봐야하는 불편함이 있다.
그래서 만든게 바로 보스타이머!!
PC 로 게임을 하시는 경우 보스타이머를 띄워놓고 보면 좀 더 편하지 않을까 생각해서 만들어 봤다.
보통 디코로 봇을 만들어서 관리하시는분들도 많은데,
나같은 경우는 라이트 유저라서 봇으로 하기보다는 가끔 필드 네임드 잡으러갈때 사용하려고 만들었다.
1. 제작 방법
1) 구글시트를 사용하여 제작
2) 보스의 젠시간 파악 - 리젠 반복 시간 작성
3) 나왔던 시간을 값으로 변경
4) 현재시간과 비교하여 가장 가까운 값부터 정렬
5) 현재시간과 비교하여 현재시간이 지난 경우에는 리젠시간을 더해주는 앱스크립트 작성
6) 현재시간을 계속 추출하기 위한 트리거 작성
7) 웹 또는 모바일에서 잘 볼수 있도록 웹문서로 변경
2. 보스리젠시간 파악
첫시간 | 반복시간 | ||||
위치 | 보스명 | 시 | 분 | 시 | 분 |
에단평원 | 은두쿠 메카버스터 | 13 | 30 | 1 | 30 |
에단평원 | 프레거 | 15 | 30 | 1 | 30 |
에단평원 | 고르곤 | 19 | 0 | 1 | 30 |
엘리아평원 | 아르고낙 | 21 | 10 | 1 | 30 |
엘리아평원 | 우르칸 | 12 | 40 | 1 | 30 |
엘리아평원 | 카락 | 13 | 10 | 1 | 30 |
루나산맥 | 디오라 | 12 | 20 | 2 | 0 |
루나산맥 | 하말 | 16 | 50 | 2 | 0 |
루나산맥 | 불칸 | 17 | 50 | 2 | 0 |
루나산맥 | 검사제로스 | 13 | 20 | 2 | 0 |
자리스유적지대 | 제노스팅거 | 13 | 20 | 2 | 40 |
자리스유적지대 | 썬더봄바드 | 14 | 0 | 2 | 40 |
자리스유적지대 | 그람 | 12 | 40 | 2 | 40 |
자리스유적지대 | 어쌔신슬로터 | 17 | 20 | 2 | 40 |
오쿨루스제도 | 켈라 | 13 | 30 | 2 | 0 |
오쿨루스제도 | 라이돈 | 14 | 10 | 2 | 0 |
오쿨루스제도 | 볼테온 | 16 | 50 | 2 | 0 |
갈라테아빙하 | 스톤피스트 | 13 | 40 | 2 | 40 |
갈라테아빙하 | 알파 | 13 | 0 | 2 | 40 |
갈라테아빙하 | 티폰 | 22 | 20 | 2 | 40 |
갈라테아빙하 | 헬기브 | 12 | 20 | 2 | 40 |
엘리아평원 | 페네트라 | 20 | 40 | 24 | 0 |
오쿨루스제도 | 에이드라 | 20 | 45 | 24 | 0 |
갈라테아빙하 | 아페칸 | 20 | 50 | 24 | 0 |
모리아기지1 | 검사 제로스 | 21 | 0 | 2 | 0 |
모리아기지1 | 고르곤 | 20 | 0 | 2 | 0 |
모리아기지2 | 아르카스 | 21 | 0 | 2 | 0 |
모리아기지2 | 어쌔신슬로터 | 20 | 0 | 2 | 0 |
모리아기지3 | 헬기브 | 20 | 0 | 2 | 0 |
3. 보스리젠시간을 비교하기 편하도록 값으로 변경
=C3*60+D3
와 같이 간단하게 시간에 60을 곱하여 분으로 변경 하였음
4. 변경한 값을 기준으로 제일 빠른 시간이 나오도록 정렬
=query(A3:G31,"select A,B,C,D order by G asc")
값 | 위치 | 보스명 | 시 | 분 | |
810 | 엘리아평원 | 우르칸 | 12 | 40 | |
930 | 자리스유적지대 | 그람 | 12 | 40 | |
1140 | 갈라테아빙하 | 알파 | 13 | 0 | |
1270 | 엘리아평원 | 카락 | 13 | 10 | |
760 | 루나산맥 | 검사제로스 | 13 | 20 | |
790 | 자리스유적지대 | 제노스팅거 | 13 | 20 | |
860 | 에단평원 | 은두쿠 메카버스터 | 13 | 30 | |
1010 | 오쿨루스제도 | 켈라 | 13 | 30 | |
1070 | 갈라테아빙하 | 스톤피스트 | 13 | 40 | |
800 | 자리스유적지대 | 썬더봄바드 | 14 | 0 | |
800 | 오쿨루스제도 | 라이돈 | 14 | 10 | |
840 | 루나산맥 | 디오라 | 14 | 20 | |
760 | 갈라테아빙하 | 헬기브 | 15 | 0 | |
1040 | 에단평원 | 프레거 | 15 | 30 | |
810 | 루나산맥 | 하말 | 16 | 50 | |
850 | 오쿨루스제도 | 볼테온 | 16 | 50 | |
1010 | 자리스유적지대 | 어쌔신슬로터 | 17 | 20 | |
820 | 루나산맥 | 불칸 | 17 | 50 | |
780 | 에단평원 | 고르곤 | 19 | 0 | |
1340 | 모리아기지1 | 고르곤 | 20 | 0 | |
900 | 모리아기지2 | 어쌔신슬로터 | 20 | 0 | |
1240 | 모리아기지3 | 헬기브 | 20 | 0 | |
1245 | 엘리아평원 | 페네트라 | 20 | 40 | |
1250 | 오쿨루스제도 | 에이드라 | 20 | 45 | |
1260 | 갈라테아빙하 | 아페칸 | 20 | 50 | |
1200 | 모리아기지1 | 검사 제로스 | 21 | 0 | |
1260 | 모리아기지2 | 아르카스 | 21 | 0 | |
1200 | 엘리아평원 | 아르고낙 | 21 | 10 | |
1200 | 갈라테아빙하 | 티폰 | 22 | 20 |
5. 현재시간과 비교하여, 현재시간이 지난 경우에는 시간업데이트 앱스크립트 작성
function createSchedule() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("아레스");
var lastRow = sheet.getLastRow();
var currentDate = new Date();
var currentMillis = currentDate.getTime();
for (var i = 3; i <= lastRow; i++) {
var description = sheet.getRange(i, 2).getValue();
var startTime = sheet.getRange(i, 3).getValue();
var startMinute = sheet.getRange(i, 4).getValue();
var repeatHour = sheet.getRange(i, 5).getValue();
var repeatMinute = sheet.getRange(i, 6).getValue();
// 현재 시간에 시작 시간과 분을 더합니다.
var scheduledTime = new Date(currentMillis);
scheduledTime.setHours(startTime);
scheduledTime.setMinutes(startMinute);
// 현재 시간보다 시작 시간과 분이 작을 경우에만 동작
if (scheduledTime.getTime() < currentMillis) {
// 현재 시간을 기준으로 반복하는 시간을 더합니다.
scheduledTime.setHours(scheduledTime.getHours() + repeatHour);
scheduledTime.setMinutes(scheduledTime.getMinutes() + repeatMinute);
// 시작 시간과 분에 반복 시간과 분을 더한 값을 갱신합니다.
sheet.getRange(i, 3).setValue(scheduledTime.getHours());
sheet.getRange(i, 4).setValue(scheduledTime.getMinutes());
}
}
}
6. 트리거 생성
7. 모바일에서 잘 볼수 있도록 세팅
8. 웹으로 게시 후 단축 URL 지정
이렇게 하면 자동으로는 5분단위로 갱신되며, 새로고침시에는 1분단위로
보스 리젠 시간이 나오게 됩니다.
다른게임도 이런식으로 작성이 가능합니다.
반응형