OhMyGame
OhMyGame은 AI로 게임을 만들 수 있는 오픈소스 스튜디오로, 디자인·구축·플레이테스트·출판을 하나의 앱에서 모델 키와 함께 수행합니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기miaucraft bridge: self-updating plugin that connects mc server and website through a database
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Paper plugin (Java 21, Paper 1.21.x) that mirrors a Minecraft server into Supabase for the Miaucraft website: online players, stats, achievements, live positions, TPS, status, whitelist, in-game ⇄ web chat, an optional live map, plus an owner-facing diagnostics/action queue and a self-updater.
SinkManager queues (coalesced per conflict key, flushed in foreign-key order every 5 s, bounded, per-sink exponential backoff) using the service-role key from the server's local config.yml. Never commit that file.whitelist_commands, bridge_commands (owner actions — a fixed set of symbols, never a console string), chat_messages (kind web, treated as untrusted and sanitised before being broadcast).remote-config.json in this repo (polled; update.* and credentials are deliberately local-only).sendAsync; Bukkit API calls are scheduled onto the main thread; nothing slow runs on it. A transient database outage only grows the bounded queues and backs sinks off (max 60 s).mvn test # 79 unit tests
mvn package # target/miaucraft-bridge-plugin.jar
cd dev/db-tests && npm install && npm test # SQL regression tests for the migrations (in-process Postgres, no Docker)
dev/supabase/migrations/ is the ordered chain. 20260101000000_init … 0500 are the local-dev reconstruction plus the production fixes; 0600_security_hardening is written against the real production schema and is guarded so the local chain still runs. Rollbacks live in dev/supabase/rollbacks/ (outside the chain on purpose). The SQL tests replay a prod-shaped baseline (dev/db-tests/baseline.sql), the migration, and the rollback.
Compatibility: every deployed plugin version (≤ 2.6.1) keeps working after 0600 — the plugin only uses the service role (bypasses RLS), and the migration keeps its grants.
Servers update themselves from plugin-update.json on main. Each release must be signed; servers on 2.7.0+ refuse an unsigned or wrongly signed manifest.
One-time setup (already done on the maintainer's machine; the public key is compiled into UpdateSignature.RELEASE_PUBLIC_KEY):
java dev/ReleaseSigner.java gen %USERPROFILE%\.miaucraft\release-signing.key
Back that file up and keep it out of the repository. To rotate the key, release a build signed with the old key that contains the new public key.
Release:
powershell -File publish-release.ps1 -Version 2.7.0 -SiteRepo C:\path\to\miaucraft
The script bumps pom.xml, runs the tests, builds, checks plugin.yml, copies the jar to releases/, signs (version, sha256) and writes the manifest. Then commit plugin-update.json and releases/*.jar (and the mirrored bridge/ in the site repo) and push. Old servers ignore the extra signature field.
Local dev servers: dev/publish-update.ps1 writes an unsigned manifest, so set update.require-signature: false in that dev server's config.yml (never in production).
See the comments in src/main/resources/config.yml. Notable keys: enabled (master kill switch), update.require-signature / update.public-key, update.auto-apply (default false), bridge.retention.purge-hours.
See the site repository's docs/SECURITY-AUDIT.md for the combined audit. Rules this plugin relies on: the service-role key stays in config.yml only; rows written by website users are validated by database policies and sanitised here; updates are verified (https, size cap, sha256, Ed25519 signature, plugin.yml version match, atomic install).