paintball-competitions-and-tournaments
Tạo một hệ thống bảng điểm tuỳ chỉnh cho cuộc thi vẽ bóng
Table of Contents
Tại sao bảng ghi chép được tùy chỉnh
Trong bóng sơn, các trận đấu rất nhanh và quyết định sẽ diễn ra trong vài giây.
- Các bản cập nhật điểm phản ánh các loại bỏ, bắt cờ, hoặc chỉ mục tiêu dựa trên phương pháp này ngay lập tức.
- khả năng cho phép nhiều định dạng -- từ 3 đội ngũ người đàn ông đến trò chơi kịch bản lớn -- mà không cần phải tạo ra một mẫu cứng nhắc.
- Sự tham gia của khán giả qua đồ họa động, đồng hồ hẹn giờ sống và các thống kê cụ thể của đội.
- Lỗi người ) bằng cách tự động hóa mục nhập dữ liệu qua máy tính bảng hoặc thiết bị trọng tài.
- Cơ hội để hiển thị logo, tên sự kiện và bộ màu tự chọn.
Với một giải pháp tùy chỉnh, bạn cũng có thể sở hữu dữ liệu. sau đó bạn có thể phân tích lịch sử, hiệu suất người chơi, và xu hướng giải đấu - một điều không thể với tờ giấy sử dụng hoặc hệ thống đóng cửa. một hệ thống máy tính không đầu như Directus hiện đại làm cho điều này không chỉ có thể mà có thể lặp lại thông qua sự kiện.
Name
Trực tiếp là một mã nguồn mở không đầu (CMS) hoạt động như một hậu phương mạnh mẽ cho ứng dụng bảng điểm của bạn. Nó cung cấp một giao diện sạch, thân thiện với người dùng cho các nhà quản lý để quản lý các nhóm, khớp, và điểm mà không cần viết một dòng mã duy nhất. Nó là RTET và MQL APIs, kết hợp với hỗ trợ mạngSoet thời gian thực, tạo cho nó một sự lựa chọn lý tưởng cho một hệ thống bảng ghi trực tiếp.
Thiết lập một dự án chỉ đạo
Bạn có thể chạy Chỉ thị trên máy chủ của bạn (tự động chạy) hoặc sử dụng dịch vụ Chỉ điểm Mây cho một kinh nghiệm quản lý. Đối với một cuộc thi đấu, tự lập lập trên mạng lưới địa phương có thể được thích hợp để tránh sự cố. Hãy theo dõi những bước này:
- Cài đặt Chỉ thị qua Docker hoặc một nút trực tiếp.js triển khai. Hướng dẫn [FLT: 0] [FLT: 0] [FLT: 1] sắp xếp tiến trình trong vài phút.
- Cấu hình cơ sở dữ liệu (Biểu đồ tần xuất, MYSQL, QL, hồi kết thúc bằng hệ thống) là lý tưởng để dùng hệ thống ngoại tuyến.
- Thiết lập một người dùng quản trị và tạo ra một dự án đặc biệt cho giải đấu của bạn.
- Hãy bật trình đơn “Một mô- đun thời gian thực nếu bạn định sử dụng các ổ cắm Web để cập nhật điểm ảnh ngay.
Thiết kế mô hình dữ liệu
Bảng số liệu của bạn nên phản ánh cấu trúc của giải đấu.
- Tes - Tên, logo (địa chỉ Mạng hình ảnh), danh sách (liên lạc với người chơi), màu chính.
- Players - tên, số, nhóm (so sánh), số lượng tùy chọn (tiểu thức, số chết, hit).
- Matches [FLT:] [LT:1] [bắt đầu, lĩnh vực, bắt đầu thời gian, trạng thái, sống, hoàn thành, làm thêm], thời gian.
- Scress - phù hợp (so sánh), đội (soveation), giá trị điểm, nhãn thời gian (đặc biệt hữu ích cho việc ghi trực tiếp), gõ cửa biến cố (lication, obcture, catch, obcture, obcuff, etc.).
- Những sự tương đồng để theo dõi các sự vi phạm (hoặc, lớn, bất bình đẳng) với người chơi và các mối quan hệ tương thích.
- Các sự kiện Match . Một bản ghi lại tất cả các sự kiện quan trọng (sự thay đổi, hình phạt, thời hạn) cho việc kiểm tra và kiểm tra lại.
Dùng các trường liên hệ chỉ dẫn (nhiều lần với nhau, nhiều điểm tương đồng với nhau) để liên kết các bộ sưu tập này. Chẳng hạn, một que diêm có thể có hai đội (hoặc nhiều hơn nữa cho định dạng đa mục) và nhiều mục nhập được ghi vào khác nhau. Hãy xem xét thêm một [FLT: 0] bộ sưu tập [FLT: 1] nếu bạn dự định chạy nhiều sự kiện từ cùng một ví dụ, chương trình trực tiếp - giải trí có thể có lịch trình và quy tắc riêng.
Đặt quyền hạn để chỉ có trọng tài xác thực có thể ghi điểm, trong khi giao diện bảng ghi công cộng chỉ cần đọc những dữ liệu gần đây nhất. Bạn cũng có thể tạo một “chức vụ ghi chữ số với quyền ghi hạn chế để phù hợp với địa vị và điểm số.
Tin tức thời gian thực sự cập nhật
Giải đấu sơn di chuyển nhanh chóng - delays trong hiển thị điểm hiển thị sự nhầm lẫn. Chỉ thị [FLT: 0] Mô- đun thời gian [FLT: 1] cho phép bạn đăng ký thay đổi trong bất kỳ bộ sưu tập nào. Khi một thẩm phán cập nhật điểm hay thay đổi trạng thái tương ứng, giao diện điều khiển nhận được tin nhắn ngay bằng WebSocket.
Dùng nó:
- Cài đặt trong dự án giao diện điều khiển của bạn.
- Tạo một kết nối WebSocket tới ví dụ Chỉ thị của bạn.
- Được gán cho “các phân tích viên của bộ sưu tập sách này, hoặc“ so sánh bộ sưu tập sách của người Mác - ca - ri với bộ sưu tập của người Do Thái thời nay.
- Hãy lắng nghe , , và các sự kiện và cập nhật UI phù hợp.
Cách này loại bỏ nhu cầu thăm dò và đảm bảo rằng mọi thiết bị xem bảng ghi điểm sẽ đồng bộ hoá. Đối với các giải đấu lớn với nhiều trận đấu cùng lúc, hãy xem xét sử dụng các kênh WebSocket được đo để khớp ID đặc biệt để giảm băng thông.
lặn sâu: Quản lý kết nối ổ cắm Mạng
Khi xây một bảng điểm mạnh mẽ, xử lý sự kết nối giảm xuống một cách duyên dáng. Đặt phụ thuộc vào và các sự kiện từ trình khách khớp Web. Khi ngắt kết nối theo cấp số nhân (Otrience) - bắt đầu chậm 1 giây và tăng gấp đôi lên 30 giây. Trực tiếp Mô- đun thời gian thực gửi nhịp tim mỗi 30 giây theo mặc định; nếu bạn bỏ lỡ ba lần tim đập, bạn sẽ an toàn để giả định sự kết nối bị mất. Hãy hiển thị một chỉ thị một số nhỏ kết nối bị mất kết nối lại trên bảng ghi điểm để kiểm tra. Như vậy, các chỉ dẫn điều khiển có thể giảm đi các phiên bản chọn trong vòng thăm dò ý kiến thức của hệ thống Mạng.
Xây dựng màn hình trước
Giao diện điều khiển là những gì người chơi, trọng tài, và khán giả thực sự thấy. bạn có thể xây dựng nó như một ứng dụng web, một giao diện bảng tính tận tụy, hoặc thậm chí một bảng điều khiển màn hình lớn.
Chọn khung
Bất kỳ khung JavaScript hiện đại (hình thức, Vue, Svelte, hoặc thậm chí valuy JS) sẽ hoạt động. Nếu các nhân viên của bạn không phải là công nghệ cao, một trang HTML + CN đơn giản với một văn lệnh nhỏ dễ dàng nhất. Để có tính tương tác cao cấp hơn, phản ứng với chỉ thị là một sự lựa chọn vững chắc. Vue 3 với cấu trúc ADI cũng kết hợp với dữ liệu thời gian thực [FT:6] hay tính hiệu chỉnh tùy biến.
Đối với các đội thích một giải pháp nhẹ nhàng, hãy xem xét bằng cách sử dụng [FLT: 0] Alpine.js nó cho phép bạn thêm hành vi phản ứng để tĩnh HTML không xây dựng. Có thể lý tưởng cho các giải đấu nhỏ nơi bạn muốn sửa đổi bảng ghi số trên ruồi.
Kết hợp với chỉ thị SDK
Directus cung cấp cho cả một khách hàng và một khách hàng thật sự trong thời gian đó.
- Sử dụng hệ thống điều hành ROR để tải dữ liệu khớp ban đầu và thông tin đội.
- Chuyển sang WebSocket để truy cập trực tiếp.
- Thiết kế giao diện người dùng để cập nhật các điểm mà không cần nhấp nháy (sự chuyển đổi CNSS).
Dòng chảy tích hợp ví dụ:
- Xác thực giao diện điều khiển (nếu cần) hoặc dùng biểu tượng chỉ dùng cho hệ thống đọc tập tin ADI.
- Lấy danh sách khớp hiện tại từ Chỉ điểm.
- Mỗi trận đấu được tổ chức, cho thấy hai đội và điểm hiện tại của họ.
- Thuyết phục thay đổi “bộ sưu tập các trang web và phục hồi lại điểm số.
Để giữ bản cập nhật điểm UIP, hãy gõ: nếu nhiều sự kiện ghi được trong vòng vài phần nghìn giây, nhóm chúng thành một bản trình đơn đơn bằng cách cập nhật trạng thái bị tắt (v. d., yêu cầu AnimationFrame hay 100m debounce).
Thiết kế giao diện người dùng
Độ sáng là quan trọng nhất.
- Tên nhóm (lớn, tương phản màu sắc).
- Số điểm (rất lớn, rất dễ đọc từ xa - mimum 80px font chữ số cho điểm chính).
- Một đồng hồ hẹn giờ (tần hoặc giờ chạy).
- Một “người chỉ huy của phái này là người duy nhất có thể làm điều đó ”.
- Lựa chọn: loại trừ hoặc giết tỉ lệ tử vong của người chết theo từng số liệu.
Dùng màu sắc trái ngược cao (v. d., văn bản màu trắng trên nền tối) và tránh làm rối màn hình. Thiết kế hỗ trợ bảo đảm bảng ghi điểm trông tốt trên cả một chương trình TV 50 inch lẫn bảng cân nhắc. Đối với màn hình ti vi, hãy xem tỷ lệ hình nền 16:9 với một ô xem riêng lẻ; đối với màn hình trọng tải di động, hãy sử dụng một bố trí gọn gàng hơn với nhiều thanh khớp.
Hiển thị điểm số, điểm và trạng thái khớp
Dòng dữ liệu hoạt động như thế này:
- Một trọng tài bước vào một điểm (hoặc một sự kiện loại trừ) trên một đơn điện thoại di động. Yêu cầu đó được gửi cho Directus ADI.
- Chỉ thị lưu hồ sơ và phát thanh một “sự kiện tạo ra các máy tính xách tay qua WebSetet.
- Giao diện điều khiển nhận được sự kiện, cập nhật tình trạng địa phương và tái lập điểm số.
- Trình tổng số thời gian có thể được xử lý cạnh máy chủ (dùng đồng hồ cục bộ) hay máy phục vụ chỉ thị cho trường bắt đầu/ chấm. Để có thể xử lý tính chính xác, hãy dùng phương pháp cạnh máy phục vụ: khi một trận đấu bắt đầu, trọng tài đặt trường [FLT: 7], và các giao diện điều khiển tính còn lại từ đó. Máy phục vụ cũng có thể cập nhật một trường mỗi giây bằng một dòng chảy trực tiếp hay một điểm tùy chỉnh.
Để phù hợp với hoàn cảnh, hãy để trọng tài thay đổi trường hợp ở Directus (v. d., từ “truyệt bài cho đến việc chơi“ phát triển ”.
Tính năng khoá của bảng ghi riêng
Ngoài những điều cơ bản, hãy xem xét những tính năng tiên tiến này để làm cho cuộc thi đấu của bạn nổi bật:
- Xem khớp mạng [FLT: 1] - Nếu giải đấu của bạn chạy đồng thời, bảng ghi điểm có thể hiển thị tất cả các trận đấu hoạt động hoặc cho phép chuyển đổi giữa các trường. Dùng bố trí lưới với 2x2 hoặc 3x2 bảng hiển thị đafield.
- Diễn lại hoặc chậm tiến ).
- Sự kết hợp của Người bảo trợ . Giao diện có thể hiển thị một người tài trợ ngẫu nhiên trong một thanh bên hay giữa. Hãy dùng một tập hợp Chỉ thị cho “người bảo trợ bằng trường ảnh và thứ tự. Giao diện có thể hiển thị một người tài trợ ngẫu nhiên trong mỗi 30 giây hoặc trong bộ in bọ chét.
- Chương trình truyền [FLT: 1] Nếu bạn phát thanh giải đấu trực tuyến, nhúng bảng ghi điểm với tôi khung hoặc tùy chỉnh RTMP. Nhiều công cụ truyền như OBS có thể thu được một cửa sổ duyệt; thiết kế bảng ghi số với một nền trong suốt để chứa dữ liệu cho trò chơi.
- Chế độ sao lưu [FLT: 1] [cho dù với hệ thống số, luôn luôn có thẻ ghi và bút sẵn sàng. Ngoài ra, tạo một trang phụ ngắt kết nối đơn giản để cửa hàng có số điểm trong địa phương và đồng bộ khi mạng trở về.
Cấp cao: Bảng ghi đè lên các dòng trực tiếp
Nếu bạn dự định sống theo dòng, hãy tạo một trang HTML riêng biệt tối ưu hóa cho hệ thống OBS. Gỡ bỏ mọi gốc, sử dụng vị trí tuyệt đối, và vạch trần biến CSS cho màu sắc của đội và điểm số. Hãy dùng một trang trong suốt [FLT: 10]. Nằm trang này như một nguồn duyệt ở OBS, và nó sẽ cập nhật theo thời gian thực khi có sự thay đổi.
Những bước tiến
Theo quy trình có cấu trúc này để xây dựng bảng điểm của bạn từ đầu đến đi lưu lại.
Bước 1: Định nghĩa quy tắc và cấu hình
Trước khi viết bất kỳ mã lệnh nào, tài liệu chính xác hoạt động như thế nào. Điểm nào cần thiết phải chạm vào cờ? Có quy tắc thương xót không? Liên kết thêm giờ được giải quyết như thế nào? Quy tắc này quy định kiểu dữ liệu của bạn. Ví dụ, nếu đếm điểm loại trừ, bạn cần một tập hợp riêng biệt để loại bỏ sự kiện. Cũng xác định giới hạn thời gian, điểm phạt, và bất kỳ tình huống đặc biệt nào như cái chết đột ngột.
Bước 2: Đặt các tập hợp chỉ thị
Ghi vào dự án Chỉ thị và tạo các tập hợp được nêu ra trước đó. Thêm các quy tắc hợp lệ (chẳng hạn, điểm số không phải số nguyên âm). Cấu hình quyền cho “nhận diện cho phép ghi vào mục nhập và trạng thái phù hợp với người chơi) trong khi“ vai trò công cộng (được dùng bởi giao diện người điều khiển) chỉ đọc quyền truy cập. Hãy dùng quyền hạn của Chỉ định của trường « Chỉ định giới hạn » nếu có thông tin liên lạc với người chơi nào nên bị ẩn.
Bước 3: Xây dựng điểm kết thúc ADI hoặc dùng chỉ đạo SDK
Bạn có thể sử dụng điểm kết thúc giao diện điều khiển của Directus trực tiếp từ giao diện điều khiển, hoặc xây dựng các điểm kết thúc kiểu ADI (v. d. để tính tổng số từ nhiều sự kiện). Đối với phần lớn các giải đấu, các điểm kết thúc được tạo ra, các điểm kết thúc được xây dựng bởi máy phục vụ và WebSocket là đủ. Hãy dùng các [FLT: 0] D [FT] D [FT: 1] để đơn giản hóa và xác thực thời gian đăng ký. Nếu bạn cần phải đồng bộ hoá thời gian máy phục vụ bên cạnh máy phục vụ, hãy tạo một điểm bổ sung trực tiếp để kết thúc bổ sung [FLTTT] [FTT] qua một công việc dòng chảy hay c.
Bước 4: Phát triển thành phần trước
Tạo trang hiển thị cho khán giả và bảng điều khiển để xem trọng tài. Giữ cho khán giả xem chỉ đọc và tập trung vào các yếu tố lớn, rõ ràng. Bảng điều khiển có thể được gọn hơn với nút và hình dạng. Dùng hoạt hình CSS để thay đổi điểm (v. d., một đèn nháy ngắn khi bảng điều khiển, xem xét sử dụng thiết kế di động đầu tiên với các nút có thể dễ dàng được gắn vào trong khi đeo găng tay.
Bước 5: Thử nghiệm với các khớp thật
Chạy việc thực hiện khớp với những người tình nguyện làm trọng tài và người chơi. Mô phỏng nhiều trường hợp: thay đổi nhanh, nhiều trường, các cuộc gọi phạt và vấn đề mạng. Hãy kiểm tra xem bảng ghi lưu đó tự động kết nối lại nếu kết nối rơi xuống. Kiểm tra tính năng hoàn thành (nếu thực hiện) và đảm bảo điểm cuối cùng không thể được thay đổi sau khi kết thúc trận đấu. Cũng thử nghiệm cú ngã ngắt kết nối: tháo nút cắm và kiểm tra xem bảng ghi lưu cuối cùng có thể hiển thị các điểm được hay bảng điều khiển thay đổi sau đó.
Bước 6: Triển khai và đào tạo
Khởi động giao diện điều khiển trên máy chủ cục bộ hay máy đám mây. Đối với các sự kiện ngoại tuyến, chạy Chỉ thị và giao diện điều khiển trên máy tính xách tay có điểm nóng WiFi. Dùng trình soạn thảo Docker để gói Chỉ dẫn và máy phục vụ mạng nhỏ nhẹ (như Nginx hay Caddy) cho giao diện điều khiển. Trọng tài liệu hướng dẫn về cách sử dụng bảng điều khiển- làm nó dễ nhất có thể: một phím gõ để tăng điểm số của nhóm, một nút để dừng/ dừng thẻ truy cập nhanh. Cũng chạy thẻ hỗ trợ thêm trên hệ thống giấy trong trường hợp hệ thống bị lỗi.
An ninh và cho phép trực tiếp
Bởi vì bảng ghi số là một hệ thống được truy cập nhiều vai trò, an ninh là quan trọng. bắt đầu bằng việc tạo ra ba vai trò trực tiếp:
- Quản trị -- truy cập đầy đủ vào tất cả các bộ sưu tập và thiết lập (được sử dụng bởi các nhà tổ chức giải đấu).
- Referee [viết quyền truy cập vào các điểm số, trạng thái khớp, hình phạt và các sự kiện trùng khớp.
- Pblic > đọc chỉ những điểm được ghi, phù hợp (chỉ những người có địa vị “sống sót hoặc“ lập lại ”), đội ngũ và cầu thủ.
Dùng hệ thống cho phép Directus để áp dụng những điều này ở cấp thu thập. Để có thêm sự bảo mật, hãy giới hạn quyền truy cập trọng tài bằng địa chỉ IP nếu bảng điều khiển chỉ được dùng trên những bảng nhất định. Hãy bật trình điều khiển HTTPS trên chỉ thị, đặc biệt nếu bạn để nó lên mạng để phủ.
Cách tô sáng các bảng điểm trực tiếp
Một giải đấu có thể có hàng chục trận đấu xảy ra cùng một lúc để giữ cho webSocket có thể trả lời:
- Chỉ có những bộ sưu tập thường thay đổi (v. d., và . Tránh quy định những bộ sưu tập tĩnh như trừ khi cập nhật thông tin trong sự kiện.
- Chẳng hạn, đăng ký với bộ lọc để giảm tiếng ồn.
- Trên giao diện điều khiển, cập nhật UI debounce. Nếu nhiều sự kiện ghi được trong cùng khung hoạt hình, hãy chia chúng thành một bản cập nhật DO.
- Tên và logo của nhóm nhớ tạm trong bộ duyệt địa phương để khỏi bị ngắt mọi đường dẫn.
- Đối với những giải đấu rất lớn (hàng trăm người chơi), người chơi paginate lấy số liệu và nạp chúng theo yêu cầu.
Mẹo cho việc giải quyết thành công
- Giữ mạng đơn giản. Dùng mạng WiFi riêng lẻ với dây băng thông đủ. Tránh kết nối thiết bị công cộng; dùng bảng đã dùng để cân nhắc lại. Xem xét mạng 5 GHz để can thiệp thấp hơn.
- Hãy hủy dữ liệu ban đầu. Nạp tất cả tên của nhóm, lịch trình khớp và logo vào giao diện điều khiển khi khởi động để một webSetoutages không làm hỏng màn hình ngay lập tức.
- Dùng hậu phương ) có một trang HTML tĩnh với các trường nhập tay như một phương pháp cuối cùng, đồng bộ hoá tập tin JSON cục bộ mà có thể tải lên sau này.
- Đánh dấu độ chính xác giờ ). Nếu dùng trình đồng hồ chấp nhận máy phục vụ, bảo đảm thông điệp Web của bạn bao gồm thời gian máy phục vụ chính xác để tránh bị trôi giữa các thiết bị. Hoặc dùng ) [FLT:] phương pháp cho ứng dụng khách để có thêm khoảng thời gian chính xác.
- . Dùng phông chữ lớn và độ tương phản cao cho người xem với hình ảnh bị khiếm thị. Cung cấp thông tin phản hồi âm thanh (a buzzer) cho các sự kiện quan trọng như bắt đầu/end. Hãy dùng vùng để thông báo thay đổi điểm cho người đọc màn hình.
- Plan để có năng lượng. Tất cả các thiết bị cần được sạc đầy, và có các dự phòng cho pin và dải điện. Chạy máy tính bảng ghi số trên một UPS nếu có thể.
- Mô hình dữ liệu ) Giữ biểu đồ các bộ sưu tập và các mối quan hệ để các tổ chức giải đấu tương lai có thể dễ dàng sửa đổi hệ thống.
Kết thúc
Một hệ thống bảng điểm tùy chỉnh được xây dựng trên Directus biến đổi một giải đấu sơn cầu từ điểm bằng tay hỗn loạn thành một trải nghiệm chuyên nghiệp, hấp dẫn. bằng cách sở hữu mô hình dữ liệu và điều khiển cập nhật thời gian thực, bạn có thể có được sự linh hoạt để thích nghi với bất kỳ quy tắc nào trong khi giữ cho người chơi và khán giả thông báo mỗi giây của trận đấu. với các bước được nêu ra ở đây từ mô hình dữ liệu để triển khai bạn có thể tạo ra một bảng ghi điểm chạy trên giải đấu và gây ấn tượng với tất cả mọi người trên sân đấu.
Để đọc thêm, hãy tìm hiểu trang web [FLT:] ), [FLT:] luật , và các chương trình phát triển web thực tế về việc xây dựng bảng điều khiển thời gian thực , [FLT:] [FL:5] hoặc [FL:6] [FL:6]. Giải đấu sơn tiếp theo sẽ không bao giờ nhìn giống nhau.