paintball-competitions-and-tournaments
Krijoni një sistem të personalizuar të studjos për turneun tuaj të lymbollit
Table of Contents
Pse ka rëndësi një tabelë e personalizuar me pikë?
Në stof, ndeshjet janë të shpejta dhe vendimet ndodhin në sekonda.
- Realt Time recizes që pasqyron eleminimin, kapjen e flamurit ose pikët e bazuara në një çast.
- Support për formate të shumëfishta Nga 3-0 vetë ekipet në lojëra të mëdha skenarësh pa detyruar një model të ngurtë.
- ] Angazhim spektator i përpunuar nëpërmjet grafikëve dinamikë, kohëmatës të gjallë dhe ekipeve të veçanta.
- Reved gabim njerëzor duke automatizuar hyrjen e të dhënave nëpërmjet pllakave apo pajisjeve arbitra.
- Mundësitë e organizimit për të shfaqur logo, emrat e ngjarjeve dhe skemat e personalizuara të ngjyrave.
Me një zgjidhje të personalizuar, mund të keni të dhëna, mund të analizoni më vonë histori të ngjashme, performancë të lojtarëve dhe prirje turneu, diçka e pamundur me fletë letre të disponueshme ose sisteme pronetariale të mbyllura.
Duke kërkuar direktiva për në fund të bordit
Direktus është një ndërfaqe miqësore e hapur e burimeve CMS pa krye që vepron si një backend i fuqishëm për programin tuaj të shënuar. Ai siguron një ndërfaqe të pastër, të përdoruesit dhe miqësore për administratorët për të menazhuar ekipet, ndeshjet, dhe rezultatet pa shkruar një linjë të vetme kodi. RTST dhe GraphQL API, kombinuar me mbështetjen reale të Web Socket, për ta bërë atë një zgjedhje ideale për një sistem të drejtpërdrejtë të shënuar.
Krijimi i një projekti direkt
Mund të vraposh direkt në serverin tuaj (vetrisht) ose të përdorësh shërbimin Ree Directus për një përvojë të menaxhuar. Për një rregullim turneu, vetëpritja në një rrjet lokal mund të preferohet të shmangë mungesën e vonesës. Ndiq këto hapa:
- Instalo direkt përmes Docker ose një vendosje të drejtpërdrejtë të Node.js. Udhëzuesi zyrtar për të filluar me shpejtësi përshkruan procesin në minuta.
- Konfiguro bazën tuaj të të dhënave (PostgreSQL, MySQL, SQLite-QQLite është ideal për përdorim jashtë linje).
- Cakto një përdorues admin dhe krijo një projekt specifik për turneun tënd.
- Aktivo modulin hynë në punë të faqes nëqoftëse planifikon të përdorësh WebSoockets për të kryer ndryshime në çast.
Projektimi i modelit të të dhënave
Skema juaj e pikëve duhet të pasqyrojë strukturën e turneut. Krijoni koleksione (tabelë) në Directus për:
- Teams name, logo ( URL e imazheve), Lista (interfaqja e lojtarëve), ngjyra kryesore.
- Pys name, numër, ekip (përfshirje), statiscione opsionale (liminacione, vdekje, hits).
- rreth, fushë, fillon koha, gjendja (në pritje, drejtpërdrejt, përfunduar, jashtë orarit), kohëzgjatjen.
- Clocces (përkthimi), ekipi (përmbledhje), vlera e pikave, etj., etj., kohatamp (veçanërisht e dobishme për notat e gjalla), pikët e llojit të veprimtarisë (liminimi, kapja e flamurit, etj.).
- , për të gjurmuar shkeljet (minor, major, diskualifikim) me lojtarët dhe marrëdhëniet e ndeshjeve.
- Evente të ashpra log log log i të gjitha ngjarjeve të rëndësishme (ndryshimet e përgjithshme, dënimet, kohëmatet) për rilojë dhe auditim.
Përdor fushat e marrëdhënieve drejtpërmendura (shumë toolione, shumë prej tyre) për të lidhur këto koleksione. Për shembull, një Match mund të ketë dy ekipe (ose më shumë për formate multi-team) dhe shumë hyrje të regjistruara në kohë të ndryshme. Mendoni për shtimin e një të mbledhjes së dy ekipeve [[FL:1] në qoftë se planifikoni të zhvilloni ngjarje të shumta nga i njëjti shembull direkt intimit mund të ketë edhe planet e rregullave të veta.
Vendos të drejtat që vetëm arbitrat e identifikuar të mund të shkruajnë pikë, ndërsa në krye të targës publike duhet të lexojnë vetëm të dhënat më të fundit. Mund të krijosh gjithashtu një rol ♫scorekear me akses të kufizuar në lidhje me statusin dhe pikët vetëm.
Reale hynë në kohë të re me kohë reale
Turni i pingpondbollit lëviz shpejt në menyrë të shpejtë në paraqitjen e resurse. Direktus-0] Moduli i Reales ju lejon të abononi në ndryshimet në çdo koleksion. Kur një arbitr azh azhor azhornton një rezultat apo një ndryshim të statusit të ndeshjeve, fronti merr të dhënat menjëherë nëpërmjet Web Socket.
Për ta përdorur:
- Instalo në projektin tuaj të parë.
- Krijo një lidhje WebSoocket me instancën tuaj Directus.
- Regjistro tek koleksioni ♫ crescores ose ♫matches për ngjarjet reale.
- Dëgjo për , , dhe ngjarje dhe përditësim UI në përputhje me këtë.
Kjo metodë eliminon nevojën për anketim dhe siguron që çdo pajisje që shikon dërrasën të mbetet e sinkronizuar. Për turne të mëdha me shumë ndeshje të njëkohshme, konsideroni përdorimin e kanaleve WebSowete të përshtatura me ID të veçanta të ndeshjeve për të reduktuar mangwidth.
Deve i thellë: Administrimi i lidhjes së soceteve
Kur ndërton një tabelë të fuqishme pikash, lidh lidhjen me njëri-tjetrin. Regjistrohu tek dhe ngjarje nga klienti WebSowet. Në mungesë, zbatoje rilidhjen eksponenciale me një vonesë 1-sekonda dhe dyfisho deri në 30 sekonda. Moduli direkt i kohës dërgon rrahjet çdo 30 sekonda nga para, nëse nuk i jep tre rrahjet e zemrës, ai merr masa të sigurta ndaj lidhjes. Shfaq një tregues të vogël të lidhjes së humbur në stafin e kontrollit për të kontrolluar rrjetin e parë. Kështu që çdo sekonda mund të ketë mbetur në dispozicion për të parë.
Ndërtimi i ekranit të parë
Në të vërtetë, në pjesën e përparme mund ta ndërtoni si një aplikacion në internet, një ndërfaqe të dedikuar tablet ose edhe një tabelë të madhe ekrani.
Zgjedhja e kornizës
Çdo kuadër modern JavaScript (Reakt, Vue, Svelt ose edhe vanilje JS) do të funksionojë. Nëse stafi juaj i turneut është joteknik, një faqe e thjeshtë HTML + CSS me një skenar të vogël mund të jetë më e lehtë. Për ndërveprim më të avancuar, reagimi me Directus SDK është një zgjedhje solide.
Për ekipet që preferojnë një zgjidhje të lehtë, konsideroni përdorimin alpine.j të lejojnë të shtoni sjelljen reaktive në HTML statik pa një hap ndërtimi. Kjo mund të jetë ideale për turne të vegjël ku ju dëshironi të ndryshoni tabelën e pikëve në mizë.
Ingranalizimi me SDK e Drejtpërdrejtë
Drejtpërdrejtësi ofron edhe një klient RIST, edhe një klient real në kohë të lirë.
- Përdor RREST API për të ngarkuar të dhënat e para të korrespondueshme dhe informacionin e ekipit.
- Kalo tek abonimet në Internet Socket për rifreskot e drejtpërdrejta.
- Dizenjo rezultatet e UI pa regëtuar (ndihmë e tranzicionit të CSS-së).
Rrjedhja e integrimit në Shembull:
- Autentifikimi i faqes (nëse nevojitet) ose përdor një tabelë publike të lexueshme vetëm me anë të një aPI.
- Merr listën aktuale të ndeshjeve nga Directus.
- Për çdo ndeshje aktive, shfaq dy ekipet dhe rezultatet e tyre aktuale.
- Regjistro tek ndryshimet në koleksionin e ♫Receres dhe ripërcakto shfaqjen e pikëve.
Për të mbajtur UI acqui, rezultatet e rezultateve të grupit janë të ndryshme: nëse ndodhin ngjarje të shumta brenda disa milisekondave, grupojini ato në një version të vetëm duke përdorur një përditësim të deblauduar të shtetit (p.sh., kërkesë për animationFrame ose një deblog 100 metra).
Duke përcaktuar interfaqen e përdoruesit
Një plan i mirë i shënimeve përfshin:
- Emrat e ekipit (me ngjyra të mëdha e të ndryshme).
- Numri i numrave (shumë i madh, i lehtë për t'u lexuar nga një distancë 80px 80 megameum).
- Një kohë (numërim ose ora e kaluar) e ndeshjes.
- Një tregues i hynësatës (p.sh. hynë në lojë, hynëll, hynëll, hynëll, ⇩Final.).
- Në mënyrë të veçantë: eliminimi i kundërvepron ose vrasja e një raporti vdekjeje për statistikat individuale.
Përdor ngjyra të larta (p.sh. të bardha në sfond të errët) dhe shmang ngastradimin e ekranit. Për të qenë i sigurt projekti i bërë me pamje të njëjtë siguron që tabela e pikëve të duket e mirë si në një tabletë 500 inçe TV ashtu edhe në një tabletë arbitri. Për të parë një raportim të plotë me një pamje të plotë të bërë nga viti 16:9; për ekranet e arbitrave celularë, përdorni një plan më kompakt me tabllov për tabela të shumëfishuara.
Shfaqet numri i madh i njerëzve, oraret dhe gjendja e plotësimit
Të dhënat funksionojnë kështu:
- Një arbitr hyn në një rezultat (ose një veprimtari eleminimi) në një formë të lëvizshme.
- Drejtpërdrejtë shpëton rekordin dhe transmeton një veprimtari ♫Carting' nëpërmjet WebSoocket.
- Në finalen e tij do të zhvillohet veprimtaria, do të rinovojë shtetin e vet lokal dhe do të rishpërndajë rezultatin.
- Kohëmatësi mund të trajtohet me anë të klientit (duke përdorur një orë lokale) ose server për fushat e Directionus për të filluar/fund. Për saktësi, përdor serverin (për hyrje në hyrje: kur niset një ndeshje, arbitri përcakton fushën dhe frontend llogarit kohën e mbetur nga kjo. Serveri mund të përditësojë gjithashtu një fushë [F[LT:8] çdo sekondë nëpërmjet një rrjedhe të drejtpërdrejtë ose një fundi të vogël të personalizuar.
Për statusin e korrespondencës, le të ndryshojnë admiruesit fushën e statusit në Directus (p.sh., nga ♫setup (e qeshura) në ♫ në ♫finishedʼ). Një model i përbashkët është të kesh një pamje të panelit të kontrollit të ʼ për arbitrat me butona për të filluar/ndaluar kohën, për të rritur rezultatet dhe për të thirrur dënimet. Ndërtoni këtë si një faqe të veçantë që kërkon autentifikiminuse Directuse Directouss (Iroususts i ndërtuar) për rolin e bazuar në të mbrojtur atë.
Veçoritë kyçe të një sistemi të personalizuar shënimesh
Përtej bazave, merr parasysh këto veçori të përparuara për ta bërë turneun tuaj të dukshëm:
- Pikëpamjet e ndeshjeve të mëdha në qoftë se turneu juaj shkon në fusha të njëkohshme, tabela e pikëve mund të tregojë të gjitha ndeshjet aktive ose të lejojë kalimin midis fushave. Përdor një plan të rrjetit me 2x2 ose 3x2 panele për ekrane multi280field.
- Rifillim apo ngadalësimi imotion jo për vetë tabelën e pikëve, por shtresa e të dhënave mund të mbështesë veprimet ♫undo/lotedia) në mënyrë që të korrigjoni gabimet. Zbatimi i një logke të të gjitha ndryshimeve me stamps; paneli i kontrollit mund të përfshijë një buton قundo e fundit, i cili përmbys ngjarjen më të fundit.
- integrim Sponsor logo të filamentit në një krah ose në mes të ndeshjeve. Përdor një koleksion Directus për ♫sponorët e tij me një fushë figure dhe një renditje të llojit. Fronti mund të tregojë një sponsor të rastësishëm çdo 30 sekonda ose t'i shfaqë ato në një këpusëse.
- AP për valëzimin në qoftë se ju transmetoni turneun online, e kaloi tabelën e pikëve me i kornizë apo porosi RTMP. Shumë mjete të valëzimit si OBS mund të kapin një dritare shfletuesi; projekton dërrasën me një sfond transparent kështu që ajo mbingarkon ushqimin e lojës.
- modaliteti rezervë edhe me një sistem dixhital, gjithmonë kanë një kartë të shtypur dhe një stilolaps gati. Përveç kësaj, krijo një faqe të thjeshtë të thjeshtë jashtë linje që përmban pikë në storage lokale dhe sinkronizon kur kthehet rrjeti.
Të detajuara: Mbikqyrje me stenda për Rrymat e gjalla
Nëse planifikoni të jetoni në drejtim të rrjedhës, krijoni një faqe të veçantë HTML të optimizuar për OBS. Hiqni të gjitha sfondet, përdorni pozicionin absolut dhe ekspozoni variablat CSS për ngjyrat dhe rezultatet në mënyrë që ekipi i përurimit t'i rregullojë ato lehtësisht. Përdor një transparent me . Përditësoi këtë faqe si një burim shfletimi në OBS, dhe do të përditësojë në kohë reale si rezultat i ndryshimit.
Shembull aksioni
Ndiq këtë proces strukturues për të ndërtuar dërrasën tënde të pikëve nga e para në të gjithë jetën.
Hapi 1: Përcakto rregullat e turneut dhe lëvizjet
Para se të shkruani ndonjë kod, dokumentoni saktësisht si funksionon. A kërkon një pikë që të prekë flamurin? A ka një rregull mëshire? Si zgjidhen lidhjet jashtë orarit? Ky rregull përcakton modelin tuaj të të dhënave. Për shembull, nëse eliminimi i pikave numërohet, ju duhet një koleksion i veçantë për të eleminuar ngjarjet. Gjithashtu përcakton limitet kohore, lehtësimet e pikës së dënimit dhe çdo skenar special si vdekja e papritur.
Hapi 2: Caktoni koleksionet direkt
Fut në projektin tuaj Directus dhe krijo koleksionet e përshkruar më parë. Shton rregulla të vlefshme për shembull, rezultatet duhet të jenë jo negative të plotë. Konfiguro të drejtat për rolin e ʼrefereeeee dhënë për të lejuar hyrjen në numrin e vendeve dhe statusin e ndeshjeve, ndërsa roli ♫publi publik (i përdorur nga frontend) ka lexuar vetëm hyrjen. Përdor të drejtat e fushës Directus (infots i kontaktit në fushë) duhet të jenë të fshehura.
Hapi 3: Ndërtoni pikat e fundit API ose përdorni direktus SDK
Mund të përdorni rrjedhat e fundit të krijuara nga pjesa e fundit, ose mund të ndërtoni e personalizuara API, nëse keni nevojë për logjikë shtesë biznesi (p.sh., për të llogaritur shumat nga shumë ngjarje). Për shumicën e turneve, të ndërtuara (EST) dhe të fundit të ueb-Souckes janë të mjaftueshme. Përdor Directus SDK [FIT:1] për të thjeshtuar autifikimin dhe abonimet real. Nëse serveri ka nevojë për sinkronizimin e kohës, krijo një ikonë direkt që përfundon në çdo [LTL] me anë të një pune të dytë.
Hapi 4: Zhvilloni Komponentet e Frontit
Krijoni faqet e display për spektatorët dhe panelin e kontrollit për arbitrat. Mbani pamjen spektatore të lexuar në vetëm dhe përqendrohuni në elemente të mëdha e të qarta. Paneli i kontrollit mund të jetë më kompakt me butona dhe forma. Përdor animacionet CSS për ndryshimet në pikavarazh (p.sh., një rrufe e shkurtër kur një rezultat rritet). Për panelin e kontrollit, konsideroni përdorimin e një dizajni të lëvizshëm me butona të mëdhenj që mund të shtypen lehtë edhe kur mbajnë doreza.
Hapi 5: Provoje me ndeshje të vërteta
Zbaton praktikën me vullnetarët që veprojnë si arbitra dhe lojtarë. Simuloni skenarë të ndryshëm: ndryshime të shpejta të rezultateve, fusha të shumëfishta, thirrje penalie dhe çështje të rrjetit. Kontrollo që WebSoket rilidh automatikisht në rast se lidhja bie. Kontrollo pjesën e jashtme (nëse zbatohen) dhe sigurohu që rezultatet përfundimtare nuk mund të ndryshohen pasi të përfundojë ndeshja. Gjithashtu provo pasojat jashtë linje: çkyçoje rrjetin dhe verifikoje se tabela ende tregon rezultatet e fundit të njohura dhe se paneli i kontrollit mund të jetë i sinkronizuar më vonë.
Hapi 6: Hapi i parë dhe Shtabi i Trenave
Deploje pararojën në një server lokal ose një stendë resh. Për ngjarjet jashtë linje, vrapo Directus dhe në një laptop lokal me një të nxehtë të WiFi. Përdor Docker Harcoi për të bashkuar Directs dhe një server të lehtë web (si cynx ose Kaddy) për pjesën e përparme. Rekruse në mënyrën se si duhet përdorur paneli i kontrollit e bën atë sa më të thjeshtë: një runt për të rritur rezultatin e ekipit, një buton për të filluar/ndaluar kohën. Ripjeton gjithashtu një rezultat backup në sistemin manual të dështimit në sistemin e rasteve të plotë.
Siguria dhe të drejtat në Direct
Për shkak se tabela e pikëve është një sistem i drejtpërdrejtë i aksesuar nga role të shumta, siguria është kritike.
- Administrator hyrje të plotë në të gjitha koleksionet dhe rregullimet (përdorur nga organizatorët e turneut).
- Referie shkruaj mundësinë e përdorimit të rezultateve, statusit të ndeshjeve, gjobave dhe ngjarjeve të ndeshjes. Lexo aksesin në ekipe, lojtarë dhe turne.
- Public [vetëm qasje në pikë, ndeshje (vetëm ata me status ♫livet ose ♫finished (1]), ekipe dhe lojtarë.
Përdor sistemin e të drejtave të Drejtit për t'i zbatuar këto në nivelin e mbledhjes. Për siguri shtesë, kufizon hyrjen në arbitr nga adresa IP nëse paneli i kontrollit përdoret vetëm në pllaka specifike. Aktivo HTTP-të në instancën tuaj Directus, veçanërisht nëse e ekspozoni atë në internet për mbishkimin e mbialjeve.
Optimizim për pikët e gjalla
Një turne mund të ketë dhjetra ndeshje njëkohësisht.
- Vetëm abonohu në koleksionet që ndryshojnë shpesh (p.sh., dhe ). Mos u përzie në koleksione statike si po të mos freskohen gjatë veprimtarisë.
- Përdor parametrat e filtrit Directus (FLT) për t'u regjistruar vetëm në të dhënat përkatëse. Për shembull, abonohu në me një filtër për të reduktuar zhurmën.
- Në front, denonconi të dhënat e UI. Nëse ngjarjet e shumëta arrijnë brenda të njëjtit kornizë animacioni, mbledhini në një përditësim të vetëm të DOM.
- Emrat dhe logot e ekipit të Cache në vendin e shfletuesit të saj (Shtorazhi lokal) në mënyrë që të mos kenë nevojë të lidhen me çdo lidhje.
- Për turne shumë të mëdhenj (qinda lojtarë), paginate statiste dhe ngarkojnë ato me kërkesë.
Këshilla për zbatimin e suksesshëm
- Mbajeni rrjetin të thjeshtë. Përdor një rrjet të vetëm WiFi me një grup të përshtatshëm. Shmang lidhjen e pajisjeve publike; përdor pllaka të dedikuara për arbitrim. Të shqyrtojmë një rrjet të vogël të GHz për ndërhyrje më të ulët.
- Cache të dhënat fillestare. Ngarkoni të gjithë emrat e ekipit, oraret e ndeshjeve dhe logot në pjesën e përparme në nisje në mënyrë që një dalje e ueb Socket nuk e thyen menjëherë shfaqjen.
- Përdor një pengesë. Hab një faqe statike HTML me fusha të input manual si një mjet i fundit, sinkronizuar me një file lokal JSON që mund të ngarkohet më vonë.
- Përcakto saktësinë e kohëmatësit. Nëse përdor një kohëmatës në server (FLT):, sigurohu që mesazhet e internetit të përfshijnë kohën e saktë të serverit për të shmangur kalimin midis pajisjeve. Alternativisht, përdor metodën [FT:17] për klientin në intervale më të sakta.
- Shqyrto açesibilitetin. Përdor shkronja të mëdha dhe kontrast të lartë për shikuesit me dëmtime vizuale. Jep vlerësime audio (një gumëzhimë) për ngjarje të rëndësishme si përputhje me fillimin/fund. Përdor rajone për të njoftuar ndryshimet e pikave për përdoruesit e ekranit.
- Plan për pushtet. Të gjitha pajisjet duhet të jenë të ngarkuara plotësisht, dhe të kenë rezerva për bateri dhe rripa energjie. Zbatoni laptopin e pikave në një UPS nëse është e mundur.
- Dokument model të dhënave tuaja. Mbaj një diagram të koleksioneve dhe marrëdhënieve kështu që organizatorët e ardhshëm të turneut mund ta ndryshojnë lehtësisht sistemin.
Konfinitimi
Një sistem i rregulluar i shënimeve të ndërtuara në Directso transformon një turne bojale nga pikët kaotike manuale në një përvojë profesionale, përfshirëse. duke zotëruar modelin e të dhënave dhe duke i dhënë fund të rejave reale në kohë, ju fitoni fleksibilitet të plotë për t'u përshtatur me çdo rregull të caktuar, duke mbajtur lojtarët dhe spektatorët të informuar çdo sekondë të ndeshjes. me hapat e përshkruara këtu nga modelimi i të dhënave për të vendosur të dhënat e tua mund të krijoni një tabelë që shkon në mënyrë të përsëritur në turne dhe të impresionojë të gjithë në terren.
Për lexim të mëtejshëm, eksplorojeni faqen Directus [[FT:1], rregullat e turneut APPA dhe praktik të zhvillimit të uebit mbi ndërtimin e stendave të kohës reale me Vjue.j [[FT:5] ose [FLT] [FL6] React:React [F7] Just do të shikoni kurrë të njëjtën gjë.