Zdrojový kód hry pool: vnútri balíka 8-ball v HTML5
Fyzika, pravidlá, CPU a ukladanie v samostatných súboroch: čo obsahuje zdrojový kód Velvet Pool a čo kupujúci mení ako prvé.

Zdrojový kód hry pool sa oplatí kúpiť, keď sú tri veci v oddelených, čitateľných súboroch: fyzika gúľ, pravidlá 8-ball a počítačový súper. Ak sú zamotané dokopy, každá zmena farby sukna alebo obtiažnosti CPU sa zmení na ladenie chýb. Velvet Pool, naša šablóna 8-ball, ich drží oddelene, a tento sprievodca prechádza jej balík súbor po súbore.
Rozoberieme, ako je kód organizovaný, čo kupujúci zvyčajne mení ako prvé, ako ho hostovať alebo zabaliť do aplikácie, čo povoľuje licencia a čo vydanie vynecháva. Každý názov súboru nižšie pochádza zo sprievodcu pre kupujúcich, ktorý sa dodáva spolu s hrou.
Stručne: Velvet Pool je čistý JavaScript na WebGL2 bez 3D knižnice a bez kroku zostavenia. Upravíte súbor, skopírujete ho do priečinka hry a obnovíte stránku.
Čo obsahuje tento zdrojový kód hry pool
Velvet Pool je hotová hra 8-ball, nie engine ani štartovacia sada. Stiahnutie má štyri priečinky: game/ je zostava pripravená na nahratie, source/ je tá istá hra ako vývojárska verzia s README, package.json a testami, documentation/ obsahuje ilustrovaného sprievodcu v angličtine a portugalčine a THIRD-PARTY-LICENSES/ uchováva texty licencií fontov.
Samotná hra hrá 8-ball s faulmi, voľnou bielou guľou (ball-in-hand) a plnými alebo pruhovanými guľami. Sú tri úrovne CPU: Easy (ľahká), Medium (stredná) a Hard (ťažká). Je tu voľný tréningový stôl (practice table) s undo, umiestňovaním gúľ a re-rackom a zápasy pre dvoch na jednom zariadení. Hráči pridávajú k bielej guli follow (dotlačenie), draw (potiahnutie) alebo bočný spin a lokálne úspechy odomykajú päť farieb sukna a päť štýlov tyčiek. Rozhranie je v 14 jazykoch.
- Stack: čistý JavaScript, ES moduly a WebGL2. Žiadny Three.js ani iná knižnica kódu.
- Kód: čitateľný, formátovaný JavaScript v source/src a game/src. Nič nie je minifikované ani zbalené.
- Testy: voliteľné, s Node.js 20 alebo novším. Kontrolujú fyziku, pravidlá 8-ball, zápasy CPU a kľúče prekladov.
- Verzia v čase písania: 1.1.0, aktualizovaná 22. októbra 2026.
Pozrite si stránku Velvet Pool, demo a manuál
Ako sú súbory organizované
game/ a source/ majú rovnakú štruktúru, takže cesta v jednom priečinku ukazuje na ten istý súbor v druhom. Rozdelenie, ktoré je pri hre pool najdôležitejšie, je medzi src/core/ (simulácia a pravidlá) a src/game/ (všetko, čoho sa hráč dotkne).
- src/core/physics.js: simulácia gúľ, spin a odraz od mantinelu.
- src/core/rules.js: pravidlá 8-ball a rozhodnutia o faulach.
- src/core/ai.js: ako CPU vyberá svoj úder.
- src/game/controls.js: vstup pre mierenie, silu a spin.
- src/game/progress.js: úspechy, farby sukna, tyčky a bodovanie zápasov.
- src/game/i18n.js: texty v 14 jazykoch, zoznam jazykov je v LANGS.
- src/game/localRecords.js: lokálna história skóre.
- src/game/audio.js: spúšťanie efektov a hudby.
- css/style.css a css/fonts.css: téma, responzívne rozloženie a deklarácie fontov.
- assets/: grafika, zvuk a fonty; logá sú v assets/logo/.
Keďže fyzika, pravidlá a CPU sú oddelené moduly, môžete CPU urobiť zhovievavejšou bez zásahu do pohybu gúľ alebo zmeniť pravidlo faulu bez nového nastavenia mantinelov. Toto oddelenie je hlavná vec, ktorú hľadať v akomkoľvek billiardovom kóde, ktorý kupujete.
Čo kupujúci mení ako prvé
Väčšina projektov ide v rovnakom poradí. Začnite tým, čo hráči vidia, potom prejdite k tomu, čo cítia, a pravidlá nechajte na koniec, lebo práve tam sa najľahšie zavedie chyba.
- Značka: nahraďte logá v assets/logo/ a upravte zodpovedajúce veľkosti v CSS. White label je povolený, takže vaše meno alebo meno vášho klienta môže nahradiť naše.
- Vzhľad stola: farby a fonty sú v css/style.css. Definície sukna a tyčiek sú v progress.js. Držte ich ID stabilné, inak hráči prídu o kozmetiku, ktorú už odomkli.
- Texty a jazyky: každý reťazec je v i18n.js. Upravte znenie, ktoré potrebujete; zoznam jazykov je v LANGS.
- Obtiažnosť CPU: výber úderov je v ai.js. Ladite po jednej úrovni a odohrajte proti nej celý zápas.
- Fyzika: trenie, spin a odraz od mantinelu sú v physics.js. Malé zmeny tu veľa znamenajú, takže po každej spustite testy.
- Pravidlá: domáce variácie patria do rules.js. Faul a voľnú bielu guľu otestujte ručne aj so sadou testov.
Postup je pre všetky rovnaký: upravte súbor v source/, skopírujte ho na rovnakú cestu v game/, spustite priečinok cez HTTP a obnovte stránku. Sprievodca odporúča meniť jednu funkciu naraz a po každej zmene otestovať menu, zápas, pauzu, obrazovku výsledku a obnovenie stránky.
Hosting, vkladanie alebo balenie do aplikácie
Hostovanie je najjednoduchšia časť. Nahrajte všetko vnútri game/ do priečinka napríklad public_html/velvet-pool/, zachovajte podpriečinky a otvorte adresu. Na strane servera nie je potrebný npm, terminál, PHP, databáza ani účet. Stačí plán, ktorý podáva statické súbory cez HTTPS.
- Neotvárajte index.html dvojklikom: prehliadače blokujú moduly hry na file://. Na lokálny test spustite v priečinku game/ príkaz python -m http.server 8765.
- Ak obrazovka zostane prázdna, skontrolujte, či je zapnutý WebGL2 a či názvy súborov zachovávajú veľké a malé písmená.
- Ak prehliadač odmietne modul, váš server posiela .js so zlým typom MIME.
- Vnútri iframe na portáli povoľte celú obrazovku a automatické prehrávanie.
Všetko, čo hra za behu potrebuje, je vnútri game/, takže sa nič nenačítava z CDN ani z inej stránky. Pri každom novom načítaní stránky sa však stále spojíte s vaším hostingom, takže nejde o aplikáciu na inštaláciu pre offline režim. Beží na dotykových obrazovkách: hráči mieria na stole a ťahajú ovládanie sily.
Projekty natívnych aplikácií nie sú súčasťou balíka. Ak chcete hru na Google Play alebo v App Store, jednou z bežných ciest je obal ako Capacitor, ktorý jeho tvorcovia opisujú ako multiplatformné natívne runtime na tvorbu mobilných aplikácií z webového kódu. Vytvorenie a údržba obchodného projektu je vaša práca alebo služba, ktorú ponúkame samostatne.
Čo vydanie vynecháva
Velvet Pool je lokálna prehliadačová verzia. Nemá online multiplayer ani súkromné miestnosti, žiadny online rebríček, cloudové účty ani reklamné SDK. Dvaja ľudia môžu hrať na jednom zariadení a osobné skóre z vhodných zápasov proti CPU sa ukladá v prehliadači. Tréning a zápasy na jednom zariadení skóre neukladajú.
Online hra potrebuje váš vlastný server a vývoj. Je to skutočný projekt, takže s ním počítajte od začiatku a nečakajte, že šablóna doň vyrastie. Ak váš katalóg potrebuje ďalšie športové hry, aj tieto dve sa predávajú ako hotové prehliadačové verzie na hosting.
Puttide: 3D minigolf s 30 jamkami, tiež v čistom JavaScripte
Golazo: stolový futbal s 50 národnými tímami
Licencia a cena v jednom odseku
Velvet Pool je v katalógu za 39 $. Do 30. novembra 2026 platí promo k Black Friday, ktoré znižuje každú šablónu o 15 %, takže stojí 33,15 $, a objednávky dvoch alebo viacerých šablón dostanú ďalšiu zľavu 5 % až 20 %. Každý nákup je trvalá, nevýhradná licencia na jeden konečný produkt, váš alebo jedného klienta. Kód, grafiku a zvuk v tomto produkte môžete meniť a dať na neho svoju značku. Hráči sa k nemu môžu dostať zadarmo alebo cez reklamy. Šablónu ani jej kód samostatne ďalej predávať nemôžete. Šesť mesiacov podpory je v cene, alebo 12 s rozšírením pri pokladni; zákazková práca, hosting a integrácia SDK alebo portálu sa ponúkajú samostatne.
Prečítajte si úplné podmienky licencie a podpory
Často kladené otázky
Je zdrojový kód hry pool čitateľný, alebo minifikovaný?
Čitateľný. JavaScript v source/src a game/src je čistý a formátovaný, bez minifikovaných alebo zbalených súborov.
Potrebujem Node.js alebo krok zostavenia?
Nie. Upravujete súbory v source/ a kopírujete ich do game/. Node.js 20 alebo novší treba len vtedy, ak chcete spustiť voliteľné testy.
Dá sa CPU urobiť ľahšou alebo ťažšou?
Áno. Výber úderov CPU je v src/core/ai.js, oddelene od fyziky, takže ho môžete doladiť bez zmeny pohybu gúľ.
Funguje to na telefónoch?
Áno. Podporuje sa dotykový vstup a ovládanie sa prispôsobí obrazovke. Vyžaduje sa WebGL2 a výkon závisí od zariadenia, takže otestujte telefóny, ktoré používajú vaši hráči.
Zachovajú hráči postup, ak presuniem hru na novú doménu?
Nie. Uloženie patrí k pôvodu prehliadača, takže zmena domény spustí hráčov od nuly. Pred spustením vyberte finálnu adresu.
Môžem pridať online multiplayer?
Samotnou touto verziou nie. Potrebuje váš vlastný server a vývoj. Môžeme ho ponúknuť ako zákazkovú prácu.
Pre koho sa tento kód pool hodí
Hodí sa pre portál alebo stránku, ktorá chce vo svojom katalógu hru 8-ball, pre agentúru, ktorá doručuje značkovú billiardovú hru jednému klientovi, a pre vývojára, ktorý chce čítať, ako sú napísané fyzika a pravidlá pool bez 3D knižnice v ceste. Menej sa hodí, ak váš plán závisí od online zápasov alebo spoločného rebríčka.
Pred kúpou si demo zahrajte na telefóne aj na notebooku a otvorte mapu súborov v manuáli. Ak rozdelenie na fyziku, pravidlá a CPU zodpovedá tomu, ako plánujete pracovať, zvyšok sú niekoľko popoludní úprav.
