Ceļvedis

Ritma spēles pirmkods: nošu kartes, laiks un dziesmu pievienošana

Kā Riffvolt glabā 12 dziesmas un 48 kartes, kur tiek izlemts laiks un punkti un kas vajadzīgs, lai pievienotu savu dziesmu.

Riffvolt grafika: četru joslu nošu šoseja rozā, dzeltenā, zilā un zaļā krāsā ved uz apgaismotu koncertu skatuvi ar pūli un elektrisko ģitāru.

Ritma spēles pirmkods patiesībā ir divas lietas: kods, kas vērtē laiku, un dati, kas saka, kad katra nota nonāk. Pircēji gandrīz vienmēr vēlas mainīt otro, jo jaunas dziesmas padara ritma spēli par jūsējo. Riffvolt, mūsu četru joslu roka ritma sagatave, glabā dziesmu sarakstu vienā manifesta failā un katru nošu karti atsevišķā failā, tāpēc dziesmas pievienošana ir datu darbs ar skaidru kontrolsarakstu.

Šis ceļvedis iet cauri pakotnei: ko tā atskaņo, kur dzīvo laiks un punkti, kā pievienot dziesmu, kā pārbūvēt un hostēt, ko licence atļauj un ko izdevums neietver. Failu nosaukumi nāk no pircēja ceļveža, kas ir kopā ar spēli.

Vienu lietu jāatceras jau no sākuma: atšķirībā no dažām mūsu sagatavēm Riffvolt pēc pirmkoda vai dziesmu maiņas vajag pārbūvi. Piegādātās spēles mapes hostēšanai vajag tikai statisku tīmekļa hostu.

Ko atskaņo šis ritma spēles pirmkods

Riffvolt ir gatava četru joslu roka ritma spēle pārlūkam. Spēlētāji nospiež nošas laikā, tur garās nošas līdz galam, liec tās ar whammy un piepilda ROCK skalu, kas aktivizē overdrive: gaismas šovu bez punktiem, kas beidzas pie jebkuras kļūdas. Laika precizitāte veido punktus un kombo.

  • 12 pilnas dziesmas, katrai Easy, Normal un Hard kartes, plus Rock God (roka dievs), kas atveras pēc turnejas: kopā 48 nošu kartes.
  • Turneja caur četrām vietām, Garage (garāža), The road (ceļš), Festival (festivāls) un Arena (arēna), katrā trīs dziesmas. Zvaigznes no pirmajām divām atver encore (bisi), un tā pabeigšana atver nākamo vietu, ar stāsta ainām un kosmētiskām balvām, piemēram, trasēm un rāmjiem.
  • Brīvā spēle: jebkura dziesma jebkurā grūtības pakāpē, ar personīgiem ierakstiem katrai dziesmai pārlūkā.
  • Vadība: D, F, J un K pēc noklusējuma, joslu pieskārieni skārienekrānā vai spēļu kontrolieris. Taustiņu piesaiste ir sadaļā Settings (iestatījumi).
  • Ērtums: audio kalibrēšana nobīdei, kas palīdz ar Bluetooth austiņām, samazināta kustība un fotosensitīvs režīms, kas mazina mirgošanu un zibeņus.
  • 14 saskarnes valodas.

Skatiet Riffvolt lapu, demo un rokasgrāmatas

Kā faili ir sakārtoti

Lejupielādē ir game/ (izvietojamie faili), source/ (TypeScript projekts), documentation/ (ilustrētas rokasgrāmatas angļu un portugāļu valodā) un licenses/ (trešo pušu paziņojumi). source/ iekšienē dziesmu datu un spēles loģikas nodalījums ir tīrs.

  • public/manifest.json: dziesmu katalogs ar katras dziesmas ilgumu, audio versiju un kartes ceļiem.
  • public/charts/: 48 nošu kartes.
  • public/audio/: skaņu ieraksti.
  • src/core/chartValidate.ts: kartes shēma un laika pārbaude.
  • src/core/judge.ts: laika vērtējumi.
  • src/core/scoring.ts: punktu un kombo noteikumi.
  • src/game/campaign.ts: turnejas progress.
  • src/game/session.ts: dziesmas dzīves cikls un rezultāta aprēķins.
  • src/i18n/locales.ts: 14 saskarnes vārdnīcas.
  • src/net/localRecords.js: vietējie personīgie ieraksti.
  • src/ui/style.css: saskarne un adaptīvs izkārtojums.

Tā kā tiesnesis un punktu skaitīšana ir atsevišķi faili, varat padarīt laika logus stingrākus vai piedodošākus, nemainot punktu uzkrāšanu, un otrādi. Šo nodalījumu meklējiet jebkurā ritma kodā.

Pievienojiet savu dziesmu soli pa solim

Šo izmaiņu ritma spēļu pircēji jautā pirmo. Pakotnē nav kartes redaktora, tāpēc kartes raksta kā datus, un rokasgrāmata precīzi saka, ko katram failam vajag.

  1. Ievietojiet ierakstu mapē public/audio/. Izmantojiet tikai audio, kam jums ir tiesības jūsu gala produktam.
  2. Izveidojiet vienu karti katrai atbalstītajai grūtības pakāpei mapē public/charts/. Katrai kartei vajag atbilstošu songId, difficulty, audioVersion, offset un notis pa kārtai.
  3. Pievienojiet dziesmu failam public/manifest.json ar unikālu id, ilgumu, BPM, tēmu, audioVersion un kartes ceļiem.
  4. Pārbaudiet katru karti ar validatoru chartValidate.ts.
  5. Nospēlējiet visu skaņdarbu katrā grūtības pakāpē, lai apstiprinātu sinhronizāciju. Validators pārbauda struktūru un laika noteikumus, nevis to, vai nota jūtas pareizi.
  6. Pārbūvējiet un augšupielādējiet jauno būvi.

Ja vēlaties visu jaunu skaņu celiņu, nevis vienu papildu dziesmu, plānojiet darbu pa kartēm: 12 dziesmas četrās grūtības pakāpēs ir 48 kartes, un katra no tām pirms izlaišanas ir pelnījusi pilnu nospēlēšanu.

Pārbūve un ko vēl mainīt

Ieteicams Node.js 24 LTS. source/ iekšienē palaidiet npm ci, tad npm run typecheck un npm run build, un publicējiet tikai dist/ saturu. npm run preview pasniedz vietējo būvi pārbaudei. Neaugšupielādējiet node_modules/. Vite izmanto relatīvu bāzi, tāpēc būve darbojas apakšmapē. Piegādātais izpildlaiks ir formatēts lasīšanai; rokasgrāmata lūdz pārbūvējot paturēt minify:false un cssMinify:false, lai nākamais cilvēks to joprojām varētu lasīt.

  1. Zīmols: krāsas un izkārtojums failā src/ui/style.css, kā arī jūsu logotips. Baltā etiķete ir atļauta, tāpēc jūsu zīmols var aizstāt mūsu.
  2. Teksti: src/i18n/locales.ts valodām, ko piegādājat.
  3. Turneja: vietu secība un tas, kas ko atver, failā campaign.ts.
  4. Grūtība: laika logi failā judge.ts, tad punktu un kombo noteikumi failā scoring.ts.
  5. Dziesmas: pēdējās, jo katrai jaunai kartei vajag pilnu nospēlēšanu.

Veidojiet dublējumu pirms rediģēšanas, mainiet vienu funkciju vienlaikus un pēc katras izmaiņas pārbaudiet izvēlni, dziesmu, pauzi, rezultātu ekrānu un pārlādēšanu. Saglabājiet vienumu ID un saglabājumu atslēgas stabilas, lai esošie spēlētāji paturētu savus ierakstus.

Hostēšana vai iegulšana portālā

Augšupielādējiet game/ saturu mapē savā HTTP(S) hostā, saglabājiet relatīvos ceļus un atveriet adresi. PHP, datubāze vai konts nav vajadzīgs. Neatveriet index.html caur file://; vietējam testam palaidiet python -m http.server 8765 mapē game/.

  • Pārlūkam vajadzīgs: JavaScript, ES moduļi, Canvas 2D un Web Audio.
  • Pārlūki atbloķē audio tikai pēc pirmā pieskāriena vai klikšķa, tāpēc klusais pirmais ekrāns ir normāls.
  • Iframe iekšienē atļaujiet pilnekrāna režīmu un automātisko atskaņošanu.
  • Pasniedziet .js ar JavaScript MIME tipu, nekad kā text/plain.
  • Visi izpildlaika resursi, fonti un bibliotēkas atrodas būvē. Obligāta CDN nav, bet tā nav instalējama bezsaistes lietotne.

Saglabājumi pieder pārlūka domēnam, tāpēc spēles pārvietošana uz citu domēnu sāk spēlētājus no jauna. Šim izdevumam ir savas saglabāšanas atslēgas, atšķirīgas no mūsu portālu izdevumiem. Natīvo lietotņu projekti nav iekļauti; veikala izlaidums ir atsevišķs darbs.

Ko šis izdevums neietver

Riffvolt ir vietējās pārlūka versijas izdevums. Tam nav tiešsaistes istabu vai daudzspēlētāju režīma, tiešsaistes ranga vai kopīgas rezultātu tabulas, reklāmu SDK vai konta, nošu kartes redaktora, natīvo lietotņu un hostinga. Personīgie ieraksti un turnejas progress paliek spēlētāja pārlūkā.

Ja mūzikas spēle atbilst jūsu katalogam, blakus tai var noderēt vēl divas mūsu laika balstītās sagataves.

Pinloop: viena pogas laika arkādes spēle ar 30 mērķiem

Ricopop: atsitienu arkādes spēle ar 50 līmeņiem

Licence un cena

Riffvolt cenrādī maksā 49 USD. Līdz 2026. gada 30. novembrim Black Friday akcija dod 15% atlaidi, tāpēc tā maksā 41,65 USD, un vienā pasūtījumā ar divām vai vairāk sagatavēm pievienojas 5% līdz 20% komplekta atlaide. Licence ir bezterminu un nekskluzīva, vienam gala produktam, jūsējam vai viena klienta. Kodu, mākslu un audio drīkstat mainīt, savu zīmolu aizstāt ar mūsējo un piedāvāt spēli bez maksas vai ar reklāmām. Iekļautos celiņus izmantojiet kā šī gala produkta daļu; sagatavi, tās kodu vai aktīvus atsevišķi pārdot nedrīkstat. Atbalsts ietver sešus mēnešus vai divpadsmit ar paplašinājumu; jaunas dziesmas, integrācijas un hostings tiek cenoti atsevišķi.

Izlasiet pilnos licences noteikumus

Biežāk uzdotie jautājumi

Vai varu pievienot savas dziesmas ritma spēles pirmkodam?

Jā. Pievienojiet audio, vienu karti katrai grūtības pakāpei un ierakstu failā public/manifest.json, pārbaudiet kartes, nospēlējiet tās un pēc tam pārbūvējiet. Kartes redaktors nav iekļauts.

Vai man vajag Node.js, lai izmantotu Riffvolt?

Lai hostētu piegādāto spēles mapi – nē. Node.js 24 LTS ieteicams tikai tad, ja pēc TypeScript maiņas vai dziesmu pievienošanas vēlaties pārbūvēt.

Vai tas darbojas ar skārienekrāniem un spēļu kontrolieriem?

Jā. Spēlētāji var pieskarties joslām vai izmantot spēļu kontrolieri, un vadība tiek iestatīta sadaļā Settings. Veiktspēja ir atkarīga no ierīces, tāpēc pārbaudiet tās, uz kurām orientējaties.

Kā ar Bluetooth austiņām un latentumu?

Iestatījumos ir audio kalibrēšana, kas iestata audio nobīdi un palīdz ar Bluetooth austiņām.

Vai ir tiešsaistes rezultātu tabula?

Nē. Personīgie ieraksti tiek saglabāti katrai dziesmai un grūtības pakāpei spēlētāja pārlūkā. Nav attālinātu pretinieku vai kopīgu reitingu.

Kam to vajadzētu pirkt

Riffvolt der portālam vai vietnei, kas vēlas mūzikas spēli savā katalogā, studijai, kas piegādā zīmola ritma spēli vienam klientam, un izstrādātājam, kurš vēlas izlasīt, kā Canvas 2D un Web Audio spēle TypeScript vērtē laiku. Mazāk tas der, ja vajadzīgs vizuāls kartes redaktors cilvēkiem bez programmēšanas vai tiešsaistes sacensības; abi ir pielāgots darbs.

Izmēģiniet Riffvolt demo un nopērciet licenci

Jaunas dziesmas vai zīmola versija? Pieprasiet piedāvājumu