Projects » The Assembly Rooms Dance Card System

THE ASSEMBLY ROOMS DANCE CARD SYSTEM v2.0 "Conducted with Propriety"

A period ballroom dance card system for OpenSimulator

------------------------------------------------------------ WHAT IT IS ------------------------------------------------------------

Bring the elegance of a Regency assembly ball to your region. Ladies wear a dainty dance card on the wrist, gentlemen carry a Pocket Program (HUD), and an Assembly Rooms Board in the ballroom keeps the whole evening in order - the programme of dances, who has engaged whom, and every rule of proper ballroom etiquette. Gentlemen touch a lady's wrist card to request a specific dance. The lady receives a polite request and may Accept or Decline. The Master of Ceremonies calls each dance from the board, announces the couples, and privately reminds every dancer of their partner. No hover text. No MOAP. Every display is drawn with osSetDynamicTextureData. A complete, ready-to-rez boxed version is FREE on the Neverworld Marketplace - rez the board and start your ball. These scripts are here for builders who wish to make their own.

------------------------------------------------------------ FEATURES ------------------------------------------------------------

- Programme-based dance cards: the MC lists the evening's dances (title and music) in a notecard; dancers claim specific dances

- One central board manages every dancer - no crossed wires between cards, no public chat spam - Requests arrive one at a time; each dialog carries its own request number, so a reply can never land on the wrong gentleman

- Etiquette enforced automatically:

- Only upcoming dances may be booked

- No one is engaged twice for the same dance

- Limit on dances with the same partner (default 2)

- Optional limit on dances per card

- Unanswered requests expire politely

- Period-appropriate messages, delivered privately

- Release a dance - your partner is informed with regret

- Open or close your card at any time

- Inclusive roles: Lead, Follow or Either - any two dancers may pair

- MC controls: Start Ball, Next/Previous Dance, Announce, open/close requests, list dancers, reload programme, reset the ball

- The ball saves itself - a board reset or region restart picks up mid-ball

- Edit and save the programme notecard; the board reloads it instantly

------------------------------------------------------------ THE SCRIPTS ------------------------------------------------------------

1. Assembly Rooms Board.lsl Goes in the board rezzed in the ballroom. ONE per region. The brain of the system: reads the "Ball Program" notecard, registers dancers, brokers every request, enforces etiquette, runs the MC menu, draws the programme on its face, and saves the ball to a "Ball Save" notecard.

2. Assembly Rooms Dance Card.lsl ONE script used in BOTH worn items: - Assembly Rooms Dance Card (ladies - worn on the wrist) - Assembly Rooms Pocket Program (gentlemen - worn as a HUD) A thin client: it finds the board, registers its wearer, draws their card, and passes touches to the board. All rules live in the board.

3. Ball Program (notecard) Settings and the evening's dances, in order: BALL_NAME = The Royal Winter Assembly MAX_PER_PARTNER = 2 Minuet | Boccherini - Minuet in A Quadrille | Lanner - Quadrille

------------------------------------------------------------ REQUIREMENTS (OSSL) ------------------------------------------------------------

Board: osSetDynamicTextureData, osMakeNotecard

Cards: osSetDynamicTextureData osSetDynamicTextureData is allowed on most grids. osMakeNotecard is a higher-threat function that some grids restrict to estate owners/managers. Without it, everything works, but the ball will not survive a board reset or region restart.

------------------------------------------------------------ QUICK BUILD ------------------------------------------------------------

BOARD: Flat box, Ivory/Cream, FULL BRIGHT on. Name it "Assembly Rooms Board". Add Assembly Rooms Board.lsl, the Ball Program notecard, and the two worn items below (Copy + Transfer).

LADY'S CARD: Small flat box, ivory, full bright. Name it "Assembly Rooms Dance Card". Add Assembly Rooms Dance Card.lsl. Attach point: Left Hand or Left Wrist.

POCKET PROGRAM: Flat box, ivory, full bright. Name it "Assembly Rooms Pocket Program". Add the SAME Assembly Rooms Dance Card.lsl. Attach point: HUD.

Tip: the prim colour IS the background - the scripts draw dark named colours on top. Use a light colour with full bright for best results.

------------------------------------------------------------ HOW AN EVENING RUNS ------------------------------------------------------------

Ladies - Touch the board, choose "Lady's Card", wear it.

Gentlemen - Touch the board, choose "Pocket Program", wear it. Touch a lady's wrist card to request a dance.

The MC - Touch the board: Start Ball, then Next Dance for each dance in the programme.

------------------------------------------------------------ NOTES ------------------------------------------------------------

- Board and cards talk on channel -77310. For a second board in the same region, change BOARD_CH in both scripts.

- Before boxing your own copy, use Reset Ball and make sure the "Ball Save" notecard is removed from the board.

- Up to 20 dances per programme. Enjoy the ball - and do mind your manners!




Added by: Gundahar Bravin✦
Last Update: 12 hours ago
Project Category: Dancing
👍 1 like

Code

File name Added By Last Updated Actions
Assembly Rooms Board.lsl Gundahar Bravin✦ 13 hours ago View
Assembly Rooms Dance Card System Set-Up Guide.txt Gundahar Bravin✦ 13 hours ago View
Ball Program.txt (example) Gundahar Bravin✦ 13 hours ago View
Dance Card.lsl - Lady's Dance Card AND Gentleman's Pocket Program (Same Script) Gundahar Bravin✦ 13 hours ago View


Comments

No comments yet