Rhythm game source code: note charts, timing और गाने जोड़ना
Riffvolt 12 tracks और 48 charts कैसे रखता है, timing और scoring कहाँ तय होते हैं, और अपना गाना जोड़ने में क्या लगता है।

Rhythm game source code असल में दो चीज़ें है: वह कोड जो timing का फ़ैसला करता है, और वह डेटा जो बताता है कि हर note कब आएगा। खरीदार लगभग हमेशा दूसरी चीज़ बदलना चाहते हैं, क्योंकि नए गाने ही rhythm game को उनका बनाते हैं। Riffvolt, हमारा चार-lane वाला rock rhythm template, गानों की सूची एक manifest फ़ाइल में रखता है और हर note chart अपनी अलग फ़ाइल में, इसलिए गाना जोड़ना एक साफ़ checklist वाला डेटा का काम है।
यह गाइड पैकेज के बारे में है: यह क्या चलाता है, timing और scoring कहाँ रहते हैं, गाना कैसे जोड़ें, कैसे rebuild और host करें, licence क्या अनुमति देता है, और edition में क्या नहीं है। फ़ाइलों के नाम game के साथ आने वाली buyer guide से हैं।
शुरू से याद रखने वाली एक बात: हमारे कुछ templates के उलट, Riffvolt को source बदलने या गाने जोड़ने के बाद rebuild चाहिए। दी गई game फ़ोल्डर होस्ट करने के लिए सिर्फ़ एक static web host चाहिए।
यह rhythm game source code क्या चलाता है
Riffvolt browser के लिए एक तैयार चार-lane rock rhythm game है। खिलाड़ी समय पर notes मारते हैं, लंबे notes को अंत तक दबाए रखते हैं, whammy से उन्हें मोड़ते हैं और ROCK gauge भरते हैं, जो overdrive शुरू करता है: एक light show जो कोई अंक नहीं जोड़ता और किसी भी miss पर खत्म हो जाता है। Timing की सटीकता score और combo बढ़ाती है।
- 12 पूरे tracks, हर एक के Easy, Normal और Hard charts, साथ में Rock God, जो tour के बाद खुलता है: कुल 48 note charts।
- चार venues (Garage, The road, Festival और Arena) में tour, हर venue में तीन गाने। पहले दो venues के stars encore खोलते हैं, और encore पूरा करने पर अगला venue खुलता है, साथ में story scenes और trails व frames जैसे cosmetic इनाम।
- Free play: कोई भी गाना, कोई भी difficulty, और हर गाने के personal records browser में गाने-दर-गाने सहेजे जाते हैं।
- Controls: डिफ़ॉल्ट रूप से D, F, J और K, touch screen पर lanes पर टैप, या gamepad। Key bindings Settings में हैं।
- आराम: offset के लिए audio calibration, जो Bluetooth headphones में मदद करता है, reduced motion, और एक photosensitive mode जो flashes और lightning को नरम करता है।
- 14 interface languages।
Riffvolt की listing, demo और manuals देखें
फ़ाइलें कैसे व्यवस्थित हैं
Download में game/ (deploy होने वाली फ़ाइलें), source/ (TypeScript project), documentation/ (English और Portuguese में चित्रित manuals) और licenses/ (third-party notices) हैं। source/ के भीतर गाने के डेटा और game logic का बँटवारा साफ़ है।
- public/manifest.json: गानों की सूची, हर गाने की अवधि, audio version और chart paths के साथ।
- public/charts/: 48 note charts।
- public/audio/: track की recordings।
- src/core/chartValidate.ts: chart schema और timing validation।
- src/core/judge.ts: timing के फ़ैसले।
- src/core/scoring.ts: score और combo के नियम।
- src/game/campaign.ts: tour की प्रगति।
- src/game/session.ts: एक गाने का lifecycle और result की गणना।
- src/i18n/locales.ts: 14 interface dictionaries।
- src/net/localRecords.js: स्थानीय personal records।
- src/ui/style.css: interface और responsive layout।
क्योंकि judge और scoring अलग फ़ाइलें हैं, आप timing windows को ज़्यादा सख़्त या नरम बना सकते हैं, बिना यह छुए कि अंक कैसे जुड़ते हैं, और उल्टा भी। किसी भी rhythm code में यही बँटवारा देखें।
अपना गाना जोड़ना, चरण दर चरण
Rhythm game के खरीदार सबसे पहले यही बदलाव पूछते हैं। पैकेज में कोई chart editor नहीं है, इसलिए charts डेटा के रूप में लिखे जाते हैं, और manual बताता है कि हर फ़ाइल को क्या चाहिए।
- Recording को public/audio/ में रखें। सिर्फ़ वही audio इस्तेमाल करें जिसके अधिकार आपके end product के लिए आपके पास हों।
- public/charts/ में हर समर्थित difficulty के लिए एक chart बनाएँ। हर chart को मेल खाता songId, difficulty, audioVersion, offset और क्रम से notes चाहिए।
- public/manifest.json में गाना जोड़ें, एक अनोखी id, अवधि, BPM, theme, audioVersion और chart paths के साथ।
- हर chart को chartValidate.ts के validator से जाँचें।
- Sync की पुष्टि के लिए हर difficulty पर पूरा track खेलें। Validator structure और timing नियम जाँचता है, यह नहीं कि कोई note सही लगता है या नहीं।
- Rebuild करें, फिर नया build upload करें।
अगर आप एक अतिरिक्त गाने की बजाय पूरा नया soundtrack चाहते हैं, तो काम को chart-दर-chart योजना बनाएँ: चार difficulties पर 12 गाने यानी 48 charts, और हर एक को रिलीज़ से पहले पूरा खेलकर देखना चाहिए।
Rebuild और बाकी क्या बदलें
Node.js 24 LTS सुझाया गया है। source/ के भीतर npm ci चलाएँ, फिर npm run typecheck और npm run build, और सिर्फ़ dist/ की सामग्री publish करें। npm run preview जाँच के लिए स्थानीय build serve करता है। node_modules/ upload न करें। Vite एक relative base इस्तेमाल करता है, इसलिए build किसी subfolder में भी काम करता है। दिया गया runtime पढ़ने के लिए formatted है; manual कहता है कि rebuild करते समय minify:false और cssMinify:false रखें, ताकि अगला व्यक्ति उसे अब भी पढ़ सके।
- Brand: रंग और layout src/ui/style.css में, साथ में आपका logo। White label की अनुमति है, इसलिए आपका brand हमारे brand की जगह ले सकता है।
- Texts: src/i18n/locales.ts में, उन भाषाओं के लिए जो आप देंगे।
- Tour: venues का क्रम और क्या क्या खोलता है, campaign.ts में।
- Difficulty: judge.ts में timing windows, फिर scoring.ts में score और combo के नियम।
- Songs: सबसे आख़िर में, क्योंकि हर नए chart को पूरा खेलकर देखना होता है।
संपादन से पहले backup लें, एक बार में एक सुविधा बदलें, और हर बदलाव के बाद menu, एक गाना, pause, result screen और reload टेस्ट करें। Item ids और save keys स्थिर रखें, ताकि मौजूदा खिलाड़ियों के records बचे रहें।
होस्ट करना, या portal में embed करना
game/ की सामग्री अपने HTTP(S) host के एक फ़ोल्डर में upload करें, relative paths वही रखें, और पता खोलें। PHP, database या account नहीं चाहिए। index.html को file:// से न खोलें; स्थानीय टेस्ट के लिए game/ के भीतर python -m http.server 8765 चलाएँ।
- Browser को चाहिए: JavaScript, ES modules, Canvas 2D और Web Audio।
- Browsers audio सिर्फ़ पहले टैप या क्लिक के बाद खोलते हैं, इसलिए पहली screen का चुप रहना सामान्य है।
- iframe में fullscreen और autoplay की अनुमति दें।
- .js को JavaScript MIME type के साथ serve करें, कभी text/plain के रूप में नहीं।
- सभी runtime assets, fonts और libraries build के भीतर हैं। कोई अनिवार्य CDN नहीं है, पर यह installable offline app नहीं है।
Saves browser origin से जुड़े होते हैं, इसलिए game को दूसरे domain पर ले जाने से खिलाड़ी नए सिरे से शुरू करते हैं। इस edition की save keys हमारे portal editions से अलग हैं। Native app projects शामिल नहीं हैं; store release अलग काम है।
इस edition में क्या शामिल नहीं है
Riffvolt local browser edition है। इसमें online rooms या multiplayer नहीं हैं, online ranking या साझा leaderboard नहीं है, advertising SDK या account नहीं है, chart editor नहीं है, native apps नहीं हैं और hosting नहीं है। Personal records और tour की प्रगति खिलाड़ी के browser में ही रहती हैं।
अगर music game आपके catalogue में फ़िट होता है, तो हमारे दो और timing-आधारित templates उसके साथ जँच सकते हैं।
Pinloop: 30 targets वाला एक-बटन timing arcade game
Ricopop: 50 levels वाला ricochet arcade game
Licence और कीमत
Riffvolt की सूची मूल्य $49 है। 30 नवंबर 2026 तक Black Friday promotion 15% छूट देता है, इसलिए इसकी कीमत $41.65 है, और एक order में दो या अधिक templates लेने पर 5% से 20% तक bundle छूट मिलती है। Licence स्थायी और गैर-विशेष है, एक end product के लिए, आपके या एक client के लिए। आप code, art और audio बदल सकते हैं, हमारे brand की जगह अपना लगा सकते हैं, और game को मुफ़्त में या ads के साथ दे सकते हैं। शामिल tracks को उसी end product के हिस्से के रूप में इस्तेमाल करें; template, उसका code या उसके assets अकेले दोबारा बेचना मना है। Support छह महीने शामिल है, या extension के साथ बारह महीने; नए गाने, integrations और hosting का अलग से quote दिया जाता है।
अक्सर पूछे जाने वाले प्रश्न
क्या मैं rhythm game source code में अपने गाने जोड़ सकता हूँ?
हाँ। audio जोड़ें, हर difficulty के लिए एक chart और public/manifest.json में एक entry बनाएँ, charts को validate करें, उन्हें पूरा खेलें, फिर rebuild करें। Chart editor शामिल नहीं है।
क्या Riffvolt चलाने के लिए Node.js चाहिए?
दी गई game फ़ोल्डर होस्ट करने के लिए नहीं। Node.js 24 LTS सिर्फ़ तब rebuild के लिए सुझाया गया है जब आप TypeScript बदलें या गाने जोड़ें।
क्या यह touch screens और gamepads के साथ काम करता है?
हाँ। खिलाड़ी lanes पर टैप कर सकते हैं या gamepad इस्तेमाल कर सकते हैं, और controls Settings में सेट होते हैं। प्रदर्शन device पर निर्भर है, इसलिए जिन devices को आप लक्ष्य करते हैं उन पर टेस्ट करें।
Bluetooth headphones और latency का क्या?
Settings में audio calibration है, जो audio offset सेट करता है और Bluetooth headphones में मदद करता है।
क्या कोई online leaderboard है?
नहीं। Personal records हर गाने और difficulty के लिए खिलाड़ी के browser में सहेजे जाते हैं। कोई remote प्रतिद्वंद्वी या साझा rankings नहीं हैं।
इसे किसे खरीदना चाहिए
Riffvolt उस portal या site के लिए ठीक है जो अपने catalogue में music game चाहती है, उस studio के लिए जो एक client को branded rhythm game दे रहा है, और उस developer के लिए जो पढ़ना चाहता है कि Canvas 2D और Web Audio वाला game TypeScript में timing का फ़ैसला कैसे करता है। अगर आपको गैर-developers के लिए visual chart editor या online competition चाहिए, तो यह कम फ़िट है; दोनों custom काम हैं।
