एक टैप में फिर मेज़ पर
नतीजे की स्क्रीन अब वही बाज़ी दोबारा शुरू कर सकती है, और «क्विक मैच» आपको एक और खाली कमरा खोलने के बजाय उस कमरे में डालता है जो पहले से भर रहा है।

आसान शब्दों में
बाज़ी शुरू करने का सबसे अच्छा पल वही सेकंड है जब पिछली बाज़ी ख़त्म होती है। सबूत हमारे सामने था और हम उसे गँवा रहे थे: दूसरी बाज़ी के लिए लौटे खिलाड़ियों में से आधे से ज़्यादा ने उसे पहली बाज़ी ख़त्म होने के दो मिनट के भीतर शुरू किया — और उस पल हम उन्हें सिर्फ़ लॉबी का एक लिंक देते थे, जहाँ मोड चुनना, सीटों की संख्या चुननी, कमरा बनाना और इंतज़ार करना पड़ता था।
अब नतीजे की स्क्रीन पर «फिर खेलें» बटन है। एक टैप और आप नई बाज़ी में हैं: वही मोड, वही सीटों की संख्या, खाली कुर्सियाँ पहले से भरी हुई, और बाज़ी पहले से चालू। कोई लॉबी नहीं, कुछ सेट करने की ज़रूरत नहीं।

«क्विक मैच» उसी समस्या का दूसरा आधा हिस्सा है, लॉबी में। पहले यह एक ऐसा बटन था जो कुछ नहीं करता था। अब यह आपको चुने हुए मोड के सबसे अच्छे खुले कमरे में डालता है: पहले वह जिसे कोई असली व्यक्ति चला रहा है, फिर वह जो शुरू होने के सबसे क़रीब है, और अंत में वह जो सबसे लंबे समय से इंतज़ार कर रहा है। और अगर जुड़ने के लिए वाक़ई कुछ नहीं है, तभी यह आपके लिए कमरा खोलता है।
तकनीकी जानकारी
रीमैच सर्वर पर कोई नया एंडपॉइंट नहीं जोड़ता। यह ठीक वही करता है जो खिलाड़ी हाथ से करता है — कमरा बनाना, बॉट्स को एक-एक कर बैठाना (कॉल अगली ख़ाली कुर्सी चुनती है, इसलिए समांतर कॉल एक ही कुर्सी के लिए भिड़तीं), फिर बाज़ी शुरू करना — और हर क़दम उसी खिलाड़ी के अधिकार से होता है, इसलिए ख़ुद बनाए कमरे पर लागू हर नियम यहाँ भी लागू है।
यह इसलिए मायने रखता है कि बटन कौन दबा रहा है। पहली बाज़ी छोड़ने के दस में नौ मामले हार मानना हैं, दिवालिया होना नहीं — तो आम स्थिति यह है कि खिलाड़ी उस बाज़ी को छोड़ रहा है जो बाक़ी सबके लिए अभी चल रही है। यह काम करता है क्योंकि जो खिलाड़ी बाज़ी से बाहर हो गया, वह अब «बाज़ी में» नहीं गिना जाता — एक साल पहले किसी और वजह से आया नियम आज रीमैच बटन को वैध बनाता है।
«क्विक मैच» अपना फ़ैसला एक शुद्ध फ़ंक्शन में रखता है, इसलिए इसे लॉबी और डेटाबेस के बिना परखा जा सकता है। मोड यहाँ फ़िल्टर है, पसंद नहीं: ब्लिट्ज़ चुनने के बाद आधे घंटे की क्लासिक बाज़ी में गिरा दिया जाना, एक पल इंतज़ार करने से बुरा होता।
// lib/lobby/quickMatch.ts — which open room to try, in order
.sort((a, b) => {
// 1. a human host: pool the people who are actually online
if (a.creator_is_bot !== b.creator_is_bot) return a.creator_is_bot ? 1 : -1;
// 2. fewest free seats: a nearly-full room starts sooner
const freeA = a.max_players - a.player_count;
const freeB = b.max_players - b.player_count;
if (freeA !== freeB) return freeA - freeB;
// 3. oldest: whoever has waited longest gets company first
return Date.parse(a.created_at) - Date.parse(b.created_at);
});एक ही विकल्प की जगह पूरी क्रमबद्ध सूची लौटाई जाती है, क्योंकि सीटों की गिनती एक क्षण का चित्र है: कॉल करने वाला सूची में तब तक नीचे बढ़ता है जब तक कोई जुड़ाव वाक़ई सफल न हो — और यही दो लोगों को आख़िरी कुर्सी के लिए भिड़ने पर दोनों के अकेले रह जाने से बचाता है।
