Biljarda spēles pirmkods: iekšā astoņu bumbu HTML5 pakotnē
Fizika, noteikumi, datora pretinieks un saglabājumi atsevišķos failos: ko satur Velvet Pool pirmkods un ko pircējs maina vispirms.

Biljarda spēles pirmkods ir vērts pirkuma, ja trīs lietas atrodas atsevišķos, lasāmos failos: bumbu fizika, astoņu bumbu noteikumi un datora pretinieks. Ja tās ir sapinušās kopā, katra izmaiņa galda krāsā vai datora grūtības pakāpē kļūst par atkļūdošanas sesiju. Velvet Pool, mūsu astoņu bumbu sagatave, tur tās atsevišķi, un šis ceļvedis iet cauri tās pakotnei failu pēc faila.
Mēs aplūkojam, kā kods ir organizēts, ko pircējs parasti maina vispirms, kā to hostēt vai ietīt lietotnē, ko licence atļauj un ko izdevums neietver. Katrs failu nosaukums zemāk nāk no pircēja ceļveža, kas ir kopā ar spēli.
Īsumā: Velvet Pool ir vienkāršs JavaScript uz WebGL2, bez 3D bibliotēkas un bez būvēšanas soļa. Jūs rediģējat failu, kopējat to spēles mapē un pārlādējat lapu.
Ko satur šis biljarda spēles pirmkods
Velvet Pool ir gatava astoņu bumbu spēle, nevis dzinējs vai sākuma komplekts. Lejupielādē ir četras mapes: game/ ir gatavā versija augšupielādei, source/ ir tā pati spēle izstrādātāja izdevumā ar README, package.json un testiem, documentation/ satur ilustrēto ceļvedi angļu un portugāļu valodā, bet THIRD-PARTY-LICENSES/ glabā fontu licenču tekstus.
Pati spēle spēlē astoņu bumbu ar faulēm, ball-in-hand (bumba rokā) un solids or stripes (pilnās vai svītrainās bumbas). Ir trīs datora līmeņi: Easy (vieglais), Medium (vidējais) un Hard (grūtais). Ir bezmaksas treniņa galds ar undo (atsaukt), bumbu novietošanu un re-rack (pārkārtošanu), kā arī divu spēlētāju spēles vienā ierīcē. Spēlētāji baltajai bumbai pievieno follow, draw vai side spin, un vietējie sasniegumi atver piecus galda pārklājus un piecus kiju stilus. Saskarne ir pieejama 14 valodās.
- Steks: vaniļas JavaScript, ES moduļi un WebGL2. Nav Three.js vai citas koda bibliotēkas.
- Kods: vienkāršs, formatēts JavaScript failos source/src un game/src. Nekas nav samazināts vai apvienots kopā.
- Testi: pēc izvēles, ar Node.js 20 vai jaunāku. Tie pārbauda fiziku, astoņu bumbu noteikumus, datora spēles un tulkojumu atslēgas.
- Versija rakstīšanas brīdī: 1.1.0, atjaunota 2026. gada 22. oktobrī.
Skatiet Velvet Pool lapu, demo un rokasgrāmatu
Kā faili ir sakārtoti
game/ un source/ izmanto vienu un to pašu izkārtojumu, tāpēc ceļš vienā mapē norāda uz to pašu failu otrā. Biljarda spēlei svarīgākais ir nodalījums starp src/core/ (simulācija un noteikumi) un src/game/ (viss, ko spēlētājs aizskar).
- src/core/physics.js: bumbu simulācija, griešanās un malas atsitiens.
- src/core/rules.js: astoņu bumbu noteikumi un faulu lēmumi.
- src/core/ai.js: kā datora pretinieks izvēlas sitienu.
- src/game/controls.js: mērķēšana, spēka un griešanās ievade.
- src/game/progress.js: sasniegumi, galdu pārklāji, kiji un spēles punktu skaitīšana.
- src/game/i18n.js: teksti 14 valodās, uzskaitīti LANGS.
- src/game/localRecords.js: vietējā rezultātu vēsture.
- src/game/audio.js: efektu un mūzikas atskaņošana.
- css/style.css un css/fonts.css: tēma, adaptīvs izkārtojums un fontu deklarācijas.
- assets/: māksla, audio un fonti, ar logotipu failiem mapē assets/logo/.
Tā kā fizika, noteikumi un dators ir atsevišķi moduļi, varat padarīt datoru piedodošāku, nepieskaroties bumbu kustībai, vai mainīt faula noteikumu, nepārkonfigurējot malas. Šis nodalījums ir galvenais, ko meklēt jebkurā biljarda kodā, ko pērkat.
Ko pircējs maina vispirms
Vairums projektu seko vienai kārtībai. Sāciet ar to, ko redz spēlētāji, tad pārejiet pie tā, ko viņi izjūt, un noteikumus atstājiet pēdējiem, jo noteikumi ir visvieglāk ieviesējamā vieta kļūdai.
- Zīmols: aizstājiet logotipa failus mapē assets/logo/ un pielāgojiet atbilstošos izmērus CSS. Baltā etiķete ir atļauta, tāpēc jūsu vai jūsu klienta nosaukums var aizstāt mūsu.
- Galda izskats: krāsas un fonti atrodas css/style.css. Galdu pārklājumu un kiju definīcijas atrodas progress.js. Saglabājiet to ID stabilus, citādi spēlētāji zaudē jau atvērtos kosmētikas elementus.
- Teksti un valodas: katra frāze atrodas i18n.js. Rediģējiet nepieciešamo formulējumu; valodu saraksts ir LANGS.
- Datora grūtības pakāpe: sitienu izvēle atrodas ai.js. Regulējiet pa vienam līmenim un nospēlējiet pilnu spēli pret to.
- Fizika: berze, griešanās un malas atsitiens atrodas physics.js. Mazas izmaiņas šeit dod lielu efektu, tāpēc pēc katras palaidiet testus.
- Noteikumi: mājas variācijas pieder rules.js. Pārbaudiet faulus un bumbu rokā ar rokām, ne tikai ar testu komplektu.
Darbplūsma visiem ir vienāda: rediģējiet failu mapē source/, kopējiet to uz to pašu ceļu mapē game/, pasniedziet mapi pār HTTP un pārlādējiet. Pircēja ceļvedis iesaka mainīt vienu funkciju vienlaikus un pēc katras izmaiņas pārbaudīt izvēlni, spēli, pauzi, rezultātu ekrānu un pārlādēšanu.
Hostēšana, iegulšana vai ietīšana lietotnē
Hostēšana ir vienkāršākā daļa. Augšupielādējiet visu, kas atrodas game/ mapē, piemēram, public_html/velvet-pool/, saglabājiet apakšmapes un atveriet adresi. Serverī nav npm, termināļa, PHP, datubāzes vai konta. Pietiek ar plānu, kas pasniedz statiskos failus pār HTTPS.
- Neatveriet index.html ar dubultklikšķi: pārlūki bloķē spēles moduļus pie file://. Vietējam testam palaidiet python -m http.server 8765 mapē game/.
- Ja ekrāns paliek tukšs, pārbaudiet, vai WebGL2 ir ieslēgts un vai failu nosaukumos saglabājas lielie un mazie burti.
- Ja pārlūks noraida moduli, jūsu serveris sūta .js ar nepareizu MIME tipu.
- Iframe iekšienē portālā atļaujiet pilnekrāna režīmu un automātisko atskaņošanu.
Viss, kas spēlei vajadzīgs izpildes laikā, atrodas game/ iekšienē, tāpēc nekas netiek ielādēts no CDN vai citas vietnes. Jaunas lapas ielāde joprojām sasniedz jūsu hostu, tāpēc tā nav instalējama bezsaistes lietotne. Tā darbojas uz skārienekrāniem: spēlētāji mērķē uz galda un velk spēka kontroli.
Natīvo lietotņu projekti nav pakotnes daļa. Ja vēlaties spēli Google Play vai App Store, viens izplatīts ceļš ir ietērpt to ar Capacitor, kas ir daudzplatformu natīvs izpildlaiks mobilo lietotņu veidošanai ar tīmekļa kodu. Veikala projekta izveide un uzturēšana ir jūsu darbs vai pakalpojums, ko piedāvājam atsevišķi.
Ko šis izdevums neietver
Velvet Pool ir vietējās pārlūka versijas izdevums. Tam nav tiešsaistes daudzspēlētāju režīma vai privātu istabu, tiešsaistes ranga, mākoņa kontu un reklāmu SDK. Divi cilvēki var spēlēt vienā ierīcē, un personīgie rezultāti no atbilstošām datora spēlēm tiek saglabāti pārlūkā. Treniņi un spēles vienā ierīcē rezultātu nesaglabā.
Tiešsaistes spēlei vajadzīgs jūsu pašu serveris un izstrāde. Tas ir īsts projekts, tāpēc budžetējiet to no sākuma, nevis gaidiet, ka sagatave izaugs līdz tam. Ja jūsu katalogam vajadzīgas vairāk sporta spēles, arī šīs divas tiek pārdotas kā gatavi pārlūka izdevumi hostēšanai.
Puttide: 3D minigolfs ar 30 bedrēm, arī vaniļas JavaScript
Golazo: galda futbols ar 50 valstu komandām
Licence un cena vienā rindkopā
Velvet Pool cenrādī maksā 39 USD. Līdz 2026. gada 30. novembrim Black Friday akcija dod 15% atlaidi katrai sagatavei, tāpēc tā maksā 33,15 USD, un pasūtījumos ar divām vai vairāk sagatavēm vēl 5% līdz 20% atlaide. Katrs pirkums ir bezterminu nekskluzīva licence vienam gala produktam, jūsējam vai viena klienta. Šajā produktā drīkstat mainīt kodu, mākslu un audio un uzlikt savu zīmolu. Spēlētāji var piekļūt bez maksas vai caur reklāmām. Sagatavi vai tās kodu atsevišķi pārdot nedrīkstat. Atbalsts ietver 6 mēnešus, vai 12, ja norēķinā pievienojat paplašinājumu; pielāgots darbs, hostings un SDK vai portāla integrācija tiek cenoti atsevišķi.
Izlasiet pilnos licences un atbalsta noteikumus
Biežāk uzdotie jautājumi
Vai biljarda spēles pirmkods ir lasāms vai samazināts?
Lasāms. JavaScript failos source/src un game/src ir vienkāršs un formatēts, bez samazinātiem vai apvienotiem failiem.
Vai man vajadzīgs Node.js vai būvēšanas solis?
Nē. Rediģējiet failus mapē source/ un kopējiet tos uz game/. Node.js 20 vai jaunāks vajadzīgs tikai tad, ja vēlaties palaist izvēles testus.
Vai varu padarīt datoru vieglāku vai grūtāku?
Jā. Datora sitienu izvēle atrodas src/core/ai.js, atsevišķi no fizikas, tāpēc varat to regulēt, nemainot bumbu kustību.
Vai tas darbojas tālruņos?
Jā. Ir atbalstīta skārienievade, un vadība pielāgojas ekrānam. Nepieciešams WebGL2, un veiktspēja ir atkarīga no ierīces, tāpēc pārbaudiet tālruņus, ko izmanto jūsu spēlētāji.
Vai spēlētāji paturēs progresu, ja pārvietošu spēli uz jaunu domēnu?
Nē. Saglabājumi pieder pārlūka domēnam, tāpēc domēna maiņa sāk spēlētājus no jauna. Izvēlieties galīgo adresi pirms palaišanas.
Vai varu pievienot tiešsaistes daudzspēlētāju režīmu?
Ne tikai ar šo izdevumu. Tam vajadzīgs jūsu pašu serveris un izstrāde. To varam cenot kā pielāgotu darbu.
Kam der šis biljarda kods
Tas der portālam vai vietnei, kas vēlas astoņu bumbu spēli savā katalogā, aģentūrai, kas piegādā zīmola biljarda spēli vienam klientam, un izstrādātājam, kurš vēlas izlasīt, kā rakstīta biljarda fizika un noteikumi, bez 3D bibliotēkas traucējumiem. Mazāk tas der, ja plāns balstās uz tiešsaistes spēlēm vai kopīgu rezultātu tabulu.
Pirms pirkšanas nospēlējiet demo telefonā un klēpjdatorā un atveriet rokasgrāmatas failu karti. Ja nodalījums starp fiziku, noteikumiem un datoru atbilst tam, kā plānojat strādāt, pārējais ir dažu pēcpusdienu izmaiņas.
Izmēģiniet Velvet Pool demo un nopērciet licenci
Vajadzīgas izmaiņas vai vairākas licences? Pieprasiet piedāvājumu
