Systems Overview

Architecture, config overview, ceremony flow, roles, and Forever Rings integration

Architecture

Key files:

  • shared/config.lua handles venues, roles, rings, bar settings, after-party timing, tutorial reminders, and Forever Rings loading.

  • shared/lang.lua holds the localized text.

  • server/server_open.lua and server/webhook.lua are the main open server hooks.

  • client/client_open.lua holds the proposal animation hook and shared prop helpers.

  • client/music.lua handles the DJ playlist and audio flow.

  • escrow server and client files run proposals, check-ins, ceremony flow, and item handling.

Items

Main items:

  • proposal_ring

  • engagement_ring

  • wedding_ring

  • wedding_guestbook

  • divorce_papers

Config.RemoveDivorcePapersAfterUse controls whether divorce papers are removed after use.

Config overview

Important values:

  • Config.TestMode

  • Config.Debug

  • Config.EnviForeverRings

  • Config.PlayProposalAnimation

  • Config.StartCeremonyCommand

  • Config.Rings

  • Config.WeddingLocations

  • Config.Roles

  • Config.OpenBar

  • Config.AfterPartyTime

  • Config.TutorialNotify

Roles and flow

Typical order:

  1. proposal

  2. engagement

  3. planner assigns the ceremony roles

  4. couple checks in at the guest book

  5. staged altar and bridal entry flow

  6. minister starts the ceremony command

  7. ceremony finishes, rings are awarded, and the after-party starts

Common roles include:

  • bride

  • groom

  • minister

  • best man

  • maid of honor

  • planner

  • DJ

  • guest

Config.TutorialNotify helps guide each stage.

Commands

The packaged role-set commands include:

  • setBride

  • setGroom

  • setMinister

  • setBestMan

  • setMaidOfHonor

  • setGuest

  • setPlanner

  • setDJ

The minister starts the vows with Config.StartCeremonyCommand.

There is also an emergency stop path.

Forever Rings

If Config.EnviForeverRings is enabled and the resource is started first, the script pulls engagement ring config from Forever Rings at runtime.

Wedding bands still use the wedding config unless you extend that logic yourself.

Open files

Main open edit points:

  • client/client_open.lua

  • server/server_open.lua

  • server/webhook.lua

Last updated