Vodič

Izvorna koda igre domine: pravila, računalniški tekmeci in 58 testov

Kaj vsebuje paket Pip Club Dominoes, katera pravila igra, kje spremeniti besedila in ploščice ter kaj ne vključuje.

Grafika Pip Club Dominoes: rakun, lisica in črna mačka v kapuconih nasmejani sedijo ob okrogli mizi s tremi domino ploščicami ob sončnem zahodu.

Izvorna koda igre domine se zdi preprosta, dokler ne preverite robnih primerov. Kdo začne, ko nihče nima dvojne ploščice? Kaj se zgodi, ko je kup prazen in oba igralca passata? Kako se računajo točke ob koncu zaprte runde? Predloga, ki na ta vprašanja odgovori v kodi in to dokaže s testi, je vredna več kot tista z lepšimi ploščicami. Pip Club Dominoes, naša predloga double-six, ima 58 avtomatiziranih testov, ki pokrivajo pravila, računalniškega nasprotnika, razporeditev mize, shranjevanje in 14 prevodov.

Ta vodnik razloži, katera pravila igra igra, kako je paket organiziran, kaj lahko spremenite z urejevalnikom besedil in kaj zahteva ponovno gradnjo, kako jo gostiti in kaj dovoljuje licenca. Imena datotek so iz ilustriranega vodnika za kupce, ki je priložen izdelku.

Ena stvar je pomembna pred vsem drugim: Pip Club igrate proti računalniku. Nima spletnega načina in načina za dva igralca na eni napravi.

Pravila, ki jih igra ta izvorna koda igre domine

Pravila so tisto, kjer se predloge za domine najbolj razlikujejo, zato jih preverite glede na to, kaj pričakujejo vaši igralci. Pip Club igra klasično igro z blokom double-six, en igralec proti enemu računalniškemu nasprotniku.

  • 28 ploščic od 0 do 6. Vsak igralec dobi 7, preostalih 14 ostane v kupu.
  • Najvišja dvojna ploščica začne. Brez dvojnih ploščic začne najvišja vsota, pri enaki vsoti pa najvišja polovica.
  • Miza ima vedno dva konca, A in B. Ploščica se mora ujemati s koncem, nič se ujema z ničem.
  • Dvojne ploščice lahko ležijo prečno, nikoli ne tvorijo razvejanja in nikoli ne dajo dodatnega poteza.
  • Če se ne ujema, vlecite po eno ploščico, dokler ne morete igrati. Če je kup prazen in se ne ujema, passate.
  • Domino: kdor izprazni roko, dobi vsoto, ki je ostala v roki nasprotnika.
  • Lock (zaklep): dva zaporedna passa ob praznem kupu zaklenejo mizo. Nižja vsota zmaga za razliko, enaka vsota pa je neodločena.

Quick Round (hitri krog) se konča po enem krogu. Points Match (tekma do točk) igra kroge, dokler nekdo ne doseže 50 ali 100. Kampanja ima 9 srečanj v 3 poglavjih, po eno na vsakem zbirališču, in vsaka zmaga prinese pečat.

Kaj je v paketu

Igralci se pomerijo s tremi računalniškimi nasprotniki, vsak s svojo osebnostjo: rakun DJ Rico, lisica deskar Faísca in mačka umetnica Nix, vsak na stopnji Easy (lahko), Normal (normalno) ali Hard (težko). Ploščice, ki jih je mogoče igrati, svetijo, miza prikazuje, kam bo padla ploščica, namig pa predlaga potezo. Obstajajo tri zbirališča (Rooftop, Skate Park in Midnight Arcade), šest zbirateljskih sklopov ploščic, pečati kampanje in statistika. Miška, dotik in tipkovnica delujejo vsi.

  • game/: pripravljena za gostovanje, z index.html, pip.config.js, modules/, lib/, assets/ in licenses/.
  • game/lib/phaser.js: Phaser 3.90.0, berljiv, pod licenco MIT.
  • source/: urejljiv TypeScript, grafika, glasba, prevodi in avtomatizirani testi.
  • documentation/index.html in DOCUMENTATION.html: vodnik za kupce v 14 jezikih, ki se odpre brez povezave.
  • THIRD-PARTY-LICENSES/: obvestila za Phaser in pisavo Barlow Condensed.

Grafika in glasba sta izvirni sredstvi izdelka, licencirana kupcu skupaj z izdelkom. Vmesnik je v 14 jezikih in sledi jeziku brskalnika; glas ni posnet, zato vsaka vrstica nasprotnika sledi izbranemu jeziku.

Oglejte si Pip Club Dominoes: demo, vodnik in ceno

Spremenite brez gradnje: pip.config.js

Poleg index.html je pip.config.js. Odprite ga v poljubnem urejevalniku besedil, spremenite vrednost, naložite datoteko in ponovno naložite stran. Tam so tri nastavitve.

  • title: naslov zavihka v brskalniku.
  • saveKey: ime, pod katerim se shrani napredek. Privzeto je pip-club.
  • defaultLanguage: začetni jezik. Če je prazno, igra sledi brskalniku.

Na živem spletnem mestu ne spreminjajte saveKey. Drug ključ pomeni, da igra prezre obstoječi napredek in začne nov shranjeni napredek, kar je koristno za drugo kopijo in boleče za posodobitev.

Kje so besedila, grafika in ploščice v izvorni kodi

  • Besedila in prevodi: source/src/ui/i18n.ts in source/src/ui/locales/.
  • Grafika likov, prizori in logotip: source/src/assets/club/.
  • Glasba: source/src/assets/music/.
  • Barve ploščic: source/src/art/palette.ts in source/src/art/tileArt.ts.
  • Testi: source/tests/.

Tipično delo z blagovno znamko poteka v tem vrstnem redu: logotip in grafika prizorov v assets/club/, nato paleta ploščic, nato besedila v lokalizacijah. White label je dovoljen, zato lahko vaša blagovna znamka nadomesti našo. Spreminjanje igre računalnika ali pravila je globlje delo; teste zaženite pred in po spremembi, ker pokrivajo oboje.

Če gradite majhen katalog namiznih iger, dve drugi naši predlogi dobro sodita zraven te.

Ludo Cats: Ludo z mačički, računalnik na treh stopnjah ali prijatelji na eni napravi

Boba Club: pasjansa Klondike s kampanjo 12 razdelitev

Ponovna gradnja po urejanju TypeScript

Mapa game/ je že zgrajena, zato za namestitev igre ni treba Node.js. Potrebujete ga samo po spremembi izvorne kode.

  1. Namestite Node.js 22.12 ali novejši (vodnik je bil preizkušen z 22.23). npm pride z njim.
  2. Odprite terminal v mapi source/, kjer sta package.json in package-lock.json.
  3. Zaženite npm ci. Namesti natančno zaklenjene različice Phaserja, Vite, Vitesta in TypeScripta.
  4. Zaženite npm test (58 testov) in npm run typecheck. Pred gradnjo popravite napake.
  5. Zaženite npm run build. Izhod je source/dist-static/, z index.html, modules/, lib/, assets/ in licenses/.
  6. Varnostno kopirajte gostovano igro, nato naložite vsebino mape dist-static/ natanko tako kot game/.

Vodnik svari pred npm audit fix in npm update, ker spremenita preizkušene različice. Če se pojavi težava s paketi, obnovite priloženi par package.json in package-lock.json.

Gostovanje na vašem spletnem mestu

Naložite samo vsebino mape game/, tako da je index.html neposredno v ciljni mapi, na primer public_html/games/pip-club/. Poleg njega ohranite assets/, lib/, modules/, licenses/ in pip.config.js ter ohranite velike in male črke v vseh imenih. Ne nalagajte source/, documentation/ ali ZIP datoteke.

  • Deluje katero koli statično gostovanje HTTP(S), v poljubni podmapi poljubne domene, ker igra uporablja relativne poti.
  • Za igranje ni potrebna podatkovna baza, PHP ali storitev Node.js.
  • Odpiranje index.html z računalnika (file://) ni podprto.
  • Gostitelj mora strežati .js, .webp, .woff2 in .mp3 z običajnimi tipi.
  • Igra ne kliče storitev za analitiko, lestvice, plačila ali oglase.

Shranjevanja ostanejo v brskalniku igralca, v IndexedDB ali localStorage, in se ne sinhronizirajo med napravami. Za posodobitev naložite novo game/ čez staro, ohranite pip.config.js in njegov saveKey, in če se stara različica še vedno prikazuje, počistite predpomnjene datoteke, ne podatkov spletnega mesta.

Kaj ni vključeno in licenca

Izdaja nima spletnega ali lokalnega načina za dva igralca, oblačnih shranjevanj, spletne lestvice, nakupov za pravi denar ali SDK za oglase. Nativne aplikacije, gostovanje in razvoj po meri so prav tako zunaj paketa. Dodajanje oglasov, trgovine ali sinhronizacije je delo razvijalca, ki potrebuje vaše lastne račune in odobritve.

Pip Club je na seznamu po 49 $, z akcijo Black Friday do 30. novembra 2026 pa znaša 41,65 $; popust za paket od 5 % do 20 % velja, kadar kupite dve ali več predlog skupaj. Licenca je trajna in neekskluzivna, za en končni izdelek, vaš ali enega naročnika. Kodo, grafiko in zvok smete spreminjati, z blagovno znamko nadomestiti našo ter igralce pustiti notri brezplačno ali z oglasi, vendar predloge ali njene kode same ne smete preprodajati. Podpora traja šest mesecev ali dvanajst z razširitvijo; vse, kar presega namestitev in popravljanje napak, je ponujeno posebej.

Preberite pogoje licence in podpore

Pogosta vprašanja

Ali je izvorna koda igre domine v TypeScriptu ali JavaScriptu?

Izvorna koda je berljiv, neskrčen TypeScript. Pripravljena mapa game/ je zgrajen JavaScript, zato za spreminjanje igre potrebujete orodja za TypeScript.

Ali lahko igrata dva človeka drug proti drugemu?

Ne. Igralci se pomerijo z računalniškimi nasprotniki na eni napravi. Načina za dva igralca, ne spletnega ne lokalnega, ni.

Katero različico domin igra?

Klasična double-six, ena proti ena, z vlečenjem iz kupa, passanjem in pravilom zaklepa. Domino šteje preostalo vsoto nasprotnika, zaklenjena miza pa gre v korist nižje vsote.

Kaj lahko spremenim brez ponovne gradnje?

pip.config.js nastavlja naslov brskalnika, ključ shranjevanja in začetni jezik. Pravila, grafika, besedila in glasba se spreminjajo v izvorni kodi in potrebujejo ponovno gradnjo.

Ali deluje brez povezave?

Ne kliče zunanjih storitev, vendar ni nameščljiva aplikacija za delo brez povezave. Igralci morajo doseči vaš spletni naslov, da jo naložijo.

Ali je to osnova za igro domine, ki jo potrebujete?

Pip Club ustreza spletnemu mestu ali portalu, ki želi klasično namizno igro za vse starosti, studiu, ki za enega naročnika gradi blagovno znamko igre domin, in razvijalcu, ki želi berljiv TypeScript z računalniškim nasprotnikom in pravimi enotnimi testi. Ne ustreza projektu, ki potrebuje, da igralci igrajo med seboj, na spletu ali na enem zaslonu; to je od začetka delo po naročilu.

Igrajte demo Pip Club in kupite licenco

Potrebujete drugačen nabor pravil ali več licenc? Zahtevajte ponudbo