이전 버전(Rev#15)에서 계산이 잘못되고 있는 독일 서버와의 시차 문제를 해결했다.

(시차 계산을 거꾸로 하고 있었다!)

 

이제 정상적으로 표시되도록 수정했다.

 

 

----

 

상세 설명:

 

 

1. 도착시각(숫자) --> 시간값으로 변환 --> 서버 도착시각 + GMT시차 --> 시차 보정(시간 단위만) --> 서버시각(현재시각)과의 차이 계산

 

이렇게 해야 정상인데

 

2. 도착시각(숫자) --> 시간값으로 변환 --> 서버 도착시각 + GMT시차 --> 시차 보정(초단위까지) --> 서버시각(현재시각)과의 차이 계산

 

이렇게 해서 시간 차이가 약간씩 더 어긋나고 있었다.

 

예를 들어, 현재 시각(서버 기준)이 오전 0시 정각이고, 함대 도착시각은 2시 정각이라고 할 때,

독일과 한국은 현재 8시간 차이가 나므로 한국 시각으로는 각각 오전 8시와 10시가 되는 것이 정상인데,

이 때 서버(독일)시각과 내 컴퓨터 시각이 8시간 1분 20초 차이가 나고 있다면,

실제로 한국 시각으로는 각각 오전 8시 1분 20초와 10시 1분 20초로 표시된다.

 

그런데 도착시각(숫자) 값을 시간값으로 변환하면 오전 10시가 되므로(서버시각 기준 값이 한국 표준시로 표현되니까)

이 값과 서버시각과의 차이를 계산할 때는 GMT 시간 차이인 8시간만 빼면 정확한 서버기준 도착시각(2시)이 되며, 이 도착시각에서 서버기준 현재시각(0시)을 빼면 정확히 2시간이 남게 된다.

 

그런데 2번과 같이 계산하면, 오전 10시에서 8시간이 아닌 8시간 1분 20초를 빼게 되므로 서버기준 도착시간이 1시 58분 40초라는 엉뚱한 값으로 계산되고 여기서 현재시각을 빼면 2시간이 아니라 1시간 58분 40초가 남은 것으로 잘못 표시되는 것이다.

즉, 서버 시각과의 차이를 보정할 때 1분 20초는 무시되어야 정확한 계산이 되는 것인데 위 2번과 같이 계산하면 남은 시간이 1분 20초 더 어긋나는 버그(!)가 있었던 것이다.

 


ogameskript1.5_kr_16d_thermidor.user.js



'Game: O-Game' 카테고리의 다른 글

oBrowser2+란?  (0) 2008.12.05
O-Game 브라우저 Vol.2+ (v1.16)  (0) 2008.11.27
O-Game 브라우저 Vol.2 (v1.15)  (0) 2008.11.12
O-Game 브라우저 Vol.2 (v1.14)  (0) 2008.10.29
오게임 스크립트 v1.5 Rev#15 (thermidor 수정버전)  (0) 2008.10.26


Posted by 떼르미
,


자바스크립트를 허용해주세요!
Please Enable JavaScript![ Enable JavaScript ]