Mini Kraken logo
Mini Kraken전자 RPG
도구커뮤니티프로젝트 지원
로그인

유용한

  • 홈
  • 블로그
  • 후원자
  • 사이트맵
  • Owlbear 확장 프로그램

둘러보기

  • Discord 봇
  • 도구
  • 시스템
  • 주사위 굴리기
  • 이름 생성기

소개

  • 팀
  • 크리에이터
  • 사명
  • 주사위 문서
  • 목표

법적 고지

  • 이용약관
  • 개인정보
  • 데이터와 AI

2026 ERPG - Mini Kraken. 모든 저작권이 보유되어 있습니다.

BACK TO BLOG
커뮤니티

새롭게 태어난 Fortuna: 당신의 테이블을 위한 더 빠르고 안정적인 Discord 봇

2026년 6월 19일
8 min

새롭게 태어난 Fortuna: 당신의 테이블을 위한 더 빠르고 안정적인 Discord 봇

Fortuna는 오랫동안 수많은 Discord 서버에서 주사위를 굴리고, 코인을 관리하고, 캠페인이 순조롭게 굴러가도록 도와왔습니다. 하지만 무대 뒤에서는 모든 일을 한꺼번에 처리하는 하나의 거대한 프로그램으로 점점 불어나 있었고, 이음매가 슬슬 드러나기 시작했죠. 그래서 오래 살아남은 모든 프로젝트가 결국 마주하는 그 일을 했습니다. 바닥부터 전부 다시 만든 겁니다.

새로운 Fortuna는 응답이 더 빠르고, 부하 속에서도 더 든든하며, 저희가 개선하기에도 훨씬 수월하고, 여러분의 테이블과 함께 성장할 준비가 되어 있습니다. 그 작업의 대부분은 여러분 눈에는 절대 보이지 않는 곳에서 이뤄졌는데, 사실 그게 핵심입니다. 하지만 그 결과는 여러분이 실제로 사용하는 모든 곳에서 드러납니다. 무엇이 바뀌었고 왜 그게 중요한지, 그 전체 이야기를 들려드릴게요.

옛 Fortuna, 그리고 다시 만들어야 했던 이유

원래의 Fortuna는 흔한 방식 위에 지어졌습니다. Discord와 항상 열려 있는 영구 연결, 즉 Discord에서 게이트웨이라고 부르는 것을 붙잡고, 자신이 들어가 있는 모든 서버에서 벌어지는 모든 일을 쉬지 않고 듣는 봇이었죠. 봇이 커지면서 늘어난 부하를 감당하기 위해, 그 연결은 *샤드(shard)*라고 불리는 여러 개의 병렬 사본으로 쪼개졌습니다. 샤드 하나하나가 별개로 돌아가는 프로세스였고, 각각을 지켜보고, 재시작하고, 건강하게 유지해야 했습니다.

이 방식은 작동합니다. 그리고 여러 해 동안 잘 작동했죠. 하지만 분명한 대가가 따릅니다. 항상 연결되어 있는 봇은 아무도 명령어를 입력하지 않을 때조차 끊임없이 메모리를 쓰고 상태를 붙들고 있습니다. 봇이 볼 수 있는 모든 서버, 채널, 멤버가 그만큼 무게를 더했죠. 샤드 하나가 삐끗하면, 한 무더기의 서버가 그 여파를 느낄 수 있었습니다. 게다가 새 기능 하나를 추가할 때마다, 이미 열 가지 일을 동시에 하고 있는 프로그램 사이로 그것을 조심스레 꿰어 넣어야 했습니다.

저희는 더 가벼운 것을 원했습니다. 할 일이 있을 때 일하고, 없을 때는 조용히 있고, 하나씩 따로 고치거나 확장할 수 있는 작은 조각들로 만들어진 것을요.

새로운 구조, 쉽게 풀어서

요즘 Discord 봇에는 명령어를 처리하는 더 나은 방법이 있습니다. 연결을 열어 둔 채 기다리는 대신, 누군가 실제로 슬래시 명령어를 사용할 때만 Discord가 봇을 불러내도록 하는 거죠. Discord가 명령어를 포장해 단 한 번의 안전한 웹 요청으로 보내면, 봇이 응답합니다. 상시 연결도 없고, 놀고 있는 동안의 무게도 없습니다. 아무 일도 일어나지 않을 때 봇은 거의 아무것도 쓰지 않습니다.

이것이 새 설계의 핵심입니다. 저희는 옛 단일 덩어리를 목적이 분명한 두 조각으로 나눴습니다.

  • fortuna-http — 새로운 핵심부입니다. 모든 슬래시 명령어, 버튼, 메뉴, 폼을 평범하고 상태 없는 웹 요청으로 처리합니다. Discord가 문을 두드리면 Fortuna가 답하고, 그것으로 거래는 끝납니다. 영구 연결을 두지 않고 요청 사이에 서버별 상태를 들고 있지 않기 때문에, 메모리 사용량이 예측 가능하고 별다른 소동 없이 확장하거나 재시작할 수 있습니다.
  • fortuna-gateway — 작고 전담적인 조력자입니다. 몇 가지는 정말로 그 '항상 듣고 있는' 연결이 여전히 필요합니다. 무엇보다 슬래시 명령어가 아니라 채팅창에 직접 입력하는 주사위 굴림을 잡아내는 일이 그렇죠. 그래서 저희는 아주 작은 게이트웨이를 남겨두되, 오직 그 한 가지 일만 하도록 깎아냈습니다. 주사위 굴림처럼 보이는 메시지를 지켜보고, 그것을 핵심부에 넘기고, 나머지는 전부 무시합니다. 흔적이 거의 없는 가벼운 프로그램이며, 명령어를 결코 방해하지 않습니다.

식당에 비유해 볼까요. 옛 Fortuna는 주문도 받고, 홀도 관리하고, 주방도 동시에 돌리려 애쓰는 정신없는 요리사 한 명이었습니다. 새 Fortuna는 주문이 들어오는 즉시 불을 켜는 주방(fortuna-http)과, 문 앞에서 들어오는 손님을 살피는 주의 깊은 안내 직원 한 명(fortuna-gateway)을 갖췄습니다. 각자 자기 일을 잘하고, 서로의 발목을 잡지 않습니다.

이것이 여러분에게 의미하는 것

구조 이야기도 좋지만, 여러분이 서버에서 실제로 체감하게 될 것은 이렇습니다.

더 빠릿한 응답. 명령어 핵심부는 한 가지 일만 하고 놀고 있던 짐을 짊어지지 않기 때문에, 빠르고 일관되게 답합니다. 명령어가 뒤에서 기다려야 할 것이 줄어든 셈이죠.

더 나은 안정성. 두 조각은 서로 독립적입니다. 채팅 굴림 조력자가 재시작이 필요해도, 여러분의 슬래시 명령어는 눈 한 번 깜빡임 없이 계속 작동합니다. 문제가 봇 전체로 번지는 대신 그 자리에 머무릅니다.

압박 속에서도 든든하게. 상태 없는 명령어 핵심부는 서버와 플레이어가 더 몰려도 무게를 쌓아두지 않습니다. 북적이는 밤도 한가한 밤과 훨씬 비슷하게 흘러갑니다.

더 빠른 개선. 깔끔하고 모듈화된 핵심부 덕분에, 주변 전부를 건드리지 않고도 기능을 더하고 고칠 수 있습니다. 새 명령어가 말끔하게 끼워지고, 그만큼 업데이트가 여러분에게 더 빨리 도착합니다.

새로 추가된 모든 것

다시 만든다는 건 한동안 더하고 싶었던 것들을 내놓을 기회이기도 합니다. 새 Fortuna는 알찬 기능 묶음을 들고 옵니다.

  • 지원 티켓. 내장된 티켓 시스템으로, 멤버는 버튼 하나로 비공개 지원 스레드를 열 수 있고, 운영진은 그것을 깔끔하게 처리하고 닫을 수 있습니다. 사라진 DM이나 어수선한 채널은 이제 그만.
  • 제대로 만든 로컬 코인. 각 서버가 자체 코인 경제를 갖습니다. 멤버용 /lc와 모더레이터용 /mod_lc로 잔액을 관리하죠. 보상과 등급이 여러분 커뮤니티 안에서만 유효하게 유지됩니다.
  • 서버 설정. 제대로 된 /config 명령어가 서버별 설정을 한곳에 모아줍니다. 그래서 각 커뮤니티가 자신들의 플레이 방식에 맞게 Fortuna를 조율할 수 있습니다.
  • 캐릭터와 모험. Discord에서 바로 캐릭터를 만들고 관리하며, 그것을 모험과 캠페인으로 정리할 수 있습니다. 번거로운 텍스트 대신 깔끔하고 상호작용형인 폼으로요.
  • 핸드아웃. 단서, 편지, 이미지를 전용 /handouts 흐름으로 테이블에 공유하세요. 좋은 가상 테이블이라면 마땅히 그래야 하는 방식으로요.
  • 체크인. 새로운 /checkin 명령어로 출석을 손쉽게 표시하고 그룹의 진행을 챙길 수 있습니다.
  • 시스템 선택기. 테이블이 사용하는 RPG 시스템을 고르면, 도구들이 실제로 플레이 중인 게임에 맞춰집니다.
  • 소소한 재미. 룰렛을 포함한 새로운 소셜·게임 명령어로, 주사위와 주사위 사이의 순간을 채웁니다.

이 모든 것이 Fortuna가 늘 잘해온 것들과 나란히 자리합니다. 풍부한 주사위 굴림(슬래시 명령어로도, 채팅에 곧장 굴림을 입력하는 방식으로도), 일일 보상, 등급, 상점, 그 밖의 모든 것까지요.

여러분의 언어로 말합니다

가장 큰 편의성 개선 중 하나가 새 핵심부에 곧장 녹아 있습니다. 바로 완전한 현지화입니다. Fortuna는 이제 Discord의 모든 언어, 즉 서른 개가 넘는 로케일을 구사하며, 각 사용자의 Discord 설정에 따라 알맞은 언어를 자동으로 골라줍니다. 명령어 이름, 설명, 응답이 플레이어 자신의 언어로 도착하고, 합리적인 대체 순서가 마련되어 있어 누구도 빠진 번역을 멀뚱히 바라보는 일이 없습니다. 여러분의 테이블이 포르투갈어로 하든, 영어, 스페인어, 프랑스어, 일본어, 혹은 그 사이 어떤 언어로 하든, Fortuna는 각자가 있는 자리에서 맞이합니다.

궁금한 분들을 위한, 내부 들여다보기

기술적인 세부 사항을 좋아하신다면, 저희가 자랑스러워하는 몇 가지 선택을 소개합니다. 관심 없으시면 이 단락은 마음 편히 건너뛰셔도 됩니다.

Discord에서 오는 모든 명령어 요청은 Fortuna가 행동에 옮기기 전에 Ed25519 서명으로 암호학적으로 검증됩니다. 그래서 봇은 변조되지 않은 진짜 요청에만 응답합니다. 명령어 핵심부는 가벼운 Hono 프레임워크와 함께 Bun 위에서 돌아가고, 채팅 굴림 조력자는 정적으로 컴파일된 작은 Go 프로그램으로 아주 작은 흔적만 남긴 채 대기합니다. 둘 다 깔끔한 컨테이너 이미지로 배포되어, 배포가 빠르고 반복 가능합니다. 또한 제대로 된 오류 모니터링을 연결해 두어서, 정말로 무언가 잘못되면 저희가 그것을 알아채고 빠르게 고칠 수 있습니다. 물론 민감한 정보는 절대 기록하지 않도록 신경 쓰면서요.

공유 주사위 엔진은 저희의 다른 도구들을 떠받치는, 신뢰받는 바로 그 계산기입니다. 그래서 Discord에서 굴리든 생태계의 다른 어디에서 굴리든, 한 번의 굴림은 정확히 같은 의미를 갖습니다.

앞으로 굴러갑니다

이 중 어느 것도 Fortuna의 정신을 바꾸지는 않습니다. 여전히 여러분의 주사위를 굴려주고 캠페인을 정돈해 주는 다정한 봇이죠. 바뀐 것은 그 밑을 받치는 토대입니다. 더 가볍고, 더 든든하고, 여러분을 방해하지 않으면서 계속 더 좋게 만들 수 있도록 지어졌습니다.

Fortuna를 여러분의 서버에 추가하고, 새 명령어들을 써보고, 다음에 무엇을 보고 싶은지 들려주세요. 주사위는 여러분이 준비되면 언제든 굴러갈 준비가 되어 있습니다.

계속 읽기

커뮤니티

Arquivos Secretos: 매달 도착하는 Ordem Paranormal의 정사 콘텐츠

2026년 6월 5일
커뮤니티

액추얼 플레이와 스트리밍 붐: RPG 방송은 어떻게 세상을 점령했나

2026년 5월 26일
커뮤니티

Ordem Paranormal과 브라질 RPG 붐

2026년 5월 23일
Online Play

How to Play Tabletop RPGs Online: A Complete Beginner's Guide for 2026

2026년 6월 5일