20초마다 색이 바뀌고 빨라진다 — 난이도 곡선과 페이즈 팔레트
「네온 다이브」는 시간이 갈수록 빨라지다가 어느 순간부터 페이즈 단위로 계단처럼 오른다. 속도 공식 하나에 상한을 걸어 만든 난이도 곡선, 속도에 맞춰 줄어드는 스폰 간격, 2페이즈부터 나오는 좁은 틈 벽, 페이즈마다 바뀌는 배경·블록 색을 숫자와 코드로 정리했다.
애드소프트 기술블로그
애드소프트 박재호입니다. IIS·ASP.NET 웹 서비스와 메일서버를 직접 운영하고, Unity 게임과 데스크톱 앱을 만들며 겪은 문제와 해결 과정을 기록합니다.
「네온 다이브」는 시간이 갈수록 빨라지다가 어느 순간부터 페이즈 단위로 계단처럼 오른다. 속도 공식 하나에 상한을 걸어 만든 난이도 곡선, 속도에 맞춰 줄어드는 스폰 간격, 2페이즈부터 나오는 좁은 틈 벽, 페이즈마다 바뀌는 배경·블록 색을 숫자와 코드로 정리했다.
피하기만 하는 게임은 금방 지루해진다. 블록을 40px 안쪽으로 스치면 점수를 주는 니어미스, 3초 안에 이어 가야 하는 콤보 배수, 블록보다 작게 잡은 판정 박스, 바로 재개하지 않는 일시정지까지 「네온 다이브」의 손맛을 만든 규칙과 코드를 정리했다.
바 하나를 좌우로 끌어 떨어지는 블록을 피하는 세로 화면 반사신경 게임 「네온 다이브」를 Unity 6로 만든 기록. 게임 규칙, 파티게임에서 가져온 코드 골격, 브라우저 버전 공개까지 연재 첫 글로 정리했다.
Cliply 설정 창의 항목(단축키, 자동 실행, 복사됨 표시, 언어, 테마, 글꼴)과 다크 테마·영어 화면을 화면으로 보고, JSON 내보내기·가져오기로 백업하고 다른 PC로 옮기는 방법, 데이터 위치, 새 버전 교체와 제거까지 정리하며 사용 가이드 연재를 마친다.
예시 스니펫 대신 내가 쓰는 명령어를 넣을 차례다. 관리 창의 구성과 단축키, 태그 입력, 빠른 검색에서 바로 새 스니펫을 만드는 방법, 그리고 {{이름}}·{{이름:기본값}} 변수를 어디에 어떻게 넣으면 좋은지 예시와 함께 정리했다.
스니펫이 늘어나면 단어 하나로는 결과가 너무 많아진다. Cliply 빠른 검색에서 쓸 수 있는 네 가지 문법(여러 단어, #태그, @언어, "구문")과 조합 방법, 결과가 나오는 순서, 짧은 검색어가 동작하는 방식을 실제 화면으로 정리했다.
스니펫 노트 앱 Cliply를 내려받아 실행하고, 콘솔에서 단축키로 팝업을 열어 명령어를 찾고, 변수를 채워 붙여 넣기까지의 기본 흐름을 화면 순서대로 정리했다. 설치 없이 zip을 풀어 실행하는 방법과 처음 실행할 때 뜨는 경고도 함께 다룬다.
InfraWatch를 개발 PC에서 Web Deploy 원격 배포로 운영 서버에 올리고, 첫 배포 때 부딪힌 문제를 정리했다. PowerShell 5.1의 인수 따옴표와 인코딩 함정, NAT 루프백, 화면 가로 넘침, 바깥에서 실제 요청으로 한 노출 점검과 쿠키 Secure 누락까지 다룬다.
처음엔 SSH로 메일 서버에서 postqueue를 원격 실행하려 했지만, SSH도 없고 Rspamd는 루프백에만 열린 다른 PC라 같은 워커를 에이전트 모드로 두고 웹 API로 통신하게 바꿨다. API 키 해시 인증, 10분 예약, 큐 지연 사유 묶기, 멀티테넌트 도메인 자동 등록까지 정리했다.
점검 결과를 메일 알림으로 바꾸는 규칙을 DB와 메일을 모르는 순수 함수로 분리하고 표 형태 테스트로 고정했다. 상태 전이 표, DedupeKey 설계, 만료 임계값 1회성, 복구 알림 조건, 1분 간격 재시도와 영구 오류 구분, 하루 1회 일일 요약까지 정리했다.