Show Dev: 클릭할 수 없는 Idle Tycoon 게임
Source: Dev.to
내가 지금까지 만든 가장 어리석은 게임
클릭해도 아무 일도 일어나지 않는 타이쿤 게임을 만들었습니다. 업그레이드 버튼도 없고, 프레스티지 루프도 없으며, “쿠키를 두드리는” 도파민도 없습니다. 탭을 열면 숫자만 올라갑니다. 그게 전부입니다. 바로 그게 게임입니다.
이 게임의 이름은 The Lazy Tycoon이며, 아이들 장르의 가장 순수한 표현입니다: 플레이어가 완전히 제거되었습니다.
이것은 일종의 농담으로 시작되었습니다. “아이들” 게임들은 실제로는 아이들이 아니라는 불만을 가지고 있었는데, 대부분의 액션 게임보다 더 많은 클릭을 요구합니다. 그래서 논리적인 최종점을 만들었습니다: 당신이 보는 동안 스스로 플레이되는 게임.
왜 플레이어를 없앴을까?
내가 해본 모든 아이들 게임은 결국 스프레드시트 숙제로 변합니다. 메타가 요구하기 때문에 47분마다 프레스티지 버튼을 눌러야 합니다. “아이들”이라는 부분은 온보딩 튜토리얼이 속이는 거짓말입니다.
입력을 완전히 없애면 몇 가지 흥미로운 일이 일어납니다:
- 게임은 읽기 쉬워야 합니다. 조작할 수 없으니 화면에 보이는 모든 숫자는 스스로를 설명해야 합니다.
- 템포는 생동감을 느껴야 하지만 주의를 보상하지는 않아야 합니다. 보는 것은 선택 사항이어야 합니다.
- 설계해야 할 실패 상태가 없습니다. 그냥 분위기와 복리 이자만 있으면 됩니다.
숫자가 성장하는 모습을 보는 것이, 아무것도 할 수 없다는 사실을 받아들였을 때 놀랍도록 편안합니다. 증분 게임계의 밥 로스라고 할 수 있죠.
전체가 AI로 생성됨
게임 로직을 직접 손으로 작성하지 않았습니다. 전체 앱—경제 곡선, 사업 이름, 틱 루프, UI—모두 LLM을 이용해 생성하고 반복했습니다. 저는 제약 조건(“플레이어 입력 없음, 생동감 있어야 함, 숫자는 믿을 만하게 복리돼야 함”)을 주고 그대로 진행했습니다.
이것은 더 큰 실험의 일환입니다: 저는 이런 앱들을 작은 공장처럼 운영하고, 각각을 독립된 Railway 서비스에 배포합니다. 하나의 앱, 하나의 컨테이너, 하나의 서브도메인. 생성 과정이 엉뚱해져도 영향을 받는 범위는 그 하나의 어리석은 게임뿐입니다.
틱 루프는 예상대로 지루합니다:
useEffect(() => {
const id = setInterval(() => {
setEmpire(prev => {
const income = prev.businesses.reduce(
(sum, b) => sum + b.rate * b.level * b.multiplier,
0
);
return {
...prev,
cash: prev.cash + income,
businesses: maybeAutoUpgrade(prev.businesses, prev.cash + income),
};
});
}, 1000);
return () => clearInterval(id);
}, []);
게임이 내리는 유일한 “결정”은 maybeAutoUpgrade—가장 ROI가 좋은 사업에 현금을 재투자하는 작은 휴리스틱입니다. 단일 setInterval 위에서 돌아가는 가짜 CEO라고 보면 됩니다.
코드 리뷰에서 변호하고 싶은 이상한 선택들
- 영구 저장 없음. 탭을 닫으면 제국이 사라집니다. 이것은 기능입니다—앱을 의무가 아니라 경험으로 만들죠. FOMO도 없고, 저장을 뒤로 돌리는 행위도 없습니다.
- 앱당 하나의 서비스. 제가 생성하는 각 어리석은 앱은 자체 Railway 배포를 가집니다. 과잉인가요? 물론입니다. 하지만 하나만 삭제하거나 재배포해도 다른 것에 영향을 주지 않으며, 콜드 스타트 비용도 사실상 제로입니다.
- 클라이언트‑전용 상태. 백엔드가 없습니다. 경제는 전부 React 상태에 살아 있습니다. 두 개의 탭을 열면 두 개의 우주가 생기는데, 이는 아무것도 하지 않는 게임에 철학적으로 맞는 설정입니다.
배운 점
상호작용을 없애면 UI 디자인이 정말 솔직해집니다. 플레이어가 할 일이 없으니 모든 픽셀은 제자리를 차지해야 합니다. 원래 생성했던 HUD의 절반 정도를 잘라냈고, 남은 절반은 그만큼 더 좋아졌습니다.
또한, 작은 이상한 앱들을 생성해 각각을 독립된 서비스에 배포하는 것이, 하나의 거대한 모노레포에 장난을 유지하는 것보다 훨씬 재미있습니다.
직접 해보기
탭을 열고, 아무것도 하지 말고, 부자가 되세요(가짜 돈이지만).
👉 lazy-tycoon.edgecasefactory.com
마우스를 본능적으로 잡으려 한다면, 축하합니다—당신은 게임이 풍자하려는 문제를 정확히 짚어낸 겁니다.