• Duel खुला है Robinhood Chain पर
  • मुक़ाबला लॉन्च करें दो टोकन, तीन पूल, एक ट्रांज़ैक्शन
  • राउंड बंद होने में --:--:--
  • चार घंटे के राउंड विजेता का बायबैक क़ीमत से सीमित है
  • लिक्विडिटी लॉक हमेशा के लिए, कोई टीम टोकन नहीं

कॉन्ट्रैक्ट

Duel छह कॉन्ट्रैक्ट हैं, जिनमें से पाँच Robinhood Chain पर डिप्लॉय हैं और एक कभी डिप्लॉय नहीं होता, और जो चेन के Uniswap V4 डिप्लॉयमेंट पर बने हैं। Solidity 0.8.26, Foundry, OpenZeppelin, v4-core। मुक़ाबले चेन पर रहते हैं: ऐप चेन को साइट के सर्वर के ज़रिए या सीधे पढ़ता है, और उनका इतिहास चेन के इवेंट के एक इंडेक्सर से।

कॉन्ट्रैक्टभूमिका
DuelFactoryएक ट्रांज़ैक्शन में मुक़ाबला लॉन्च करता है: दो टोकन, तीन पूल, लॉक की गई पोज़िशन, क्रिएटर की लॉन्च ख़रीद। आगे के मुक़ाबलों की सीमित कॉन्फ़िगरेशन रखता है; लॉन्च उस कॉन्फ़िगरेशन से बँधता है जो लॉन्च करने वाले ने पढ़ी (configHash), और अगर इस बीच कोई दूसरी लागू हो गई हो तो रिवर्ट हो जाता है।
DuelHookहर मुक़ाबले के तीनों पूलों का साझा Uniswap V4 hook: फ़ीस, एंटी-स्नाइप टैक्स, बदलाव पर बर्न, पुनर्संतुलन, अनुपात का औसत, राउंड और बायबैक, और हर मुक़ाबले का पॉट, क्रिएटर फ़ीस और प्रोटोकॉल फ़ीस।
DuelTokenहर पक्ष का साधारण ERC-20: एक अरब यूनिट, बर्न करने योग्य, बिना मालिक, permit (EIP-2612) के साथ।
DuelRouterतय इनपुट वाला राउटर जिससे ऐप ट्रेड करता है, बिक्री का permit भी शामिल; सिर्फ़ यही किसी पक्ष को कई चरणों में बेचता है, जब उसका ETH पूल बिक्री को एक बार में नहीं ले सकता (SALE_PASSES), और जो वह पूल तब भी वापस नहीं ख़रीद सकता, उसे दूसरे पक्ष से होकर बेचता है (sell)। कोई भी V4 राउटर भी काम करता है, एक ही स्वैप में।
DuelLensसिर्फ़ पढ़ने वाले व्यू, जो ऐप के लिए मुक़ाबले की स्थिति इकट्ठा करते हैं।
DuelSimulatorकभी डिप्लॉय नहीं होता। ऐप एक सिर्फ़-पढ़ने वाली कॉल (state override) के दौरान इसका कोड आपके ही पते पर रखता है, ताकि ट्रेड ठीक वैसे चले जैसे आप उसे भेजते, और बताए कि आपको क्या मिलेगा और पूलों के पुनर्संतुलन के बाद अनुपात कहाँ पहुँचेगा।

वर्शन

यह लॉन्चपैड Duel V1 है, कोड नाम Petunia। इसका हर कॉन्ट्रैक्ट यह बताता है (फ़ैक्टरी, hook, राउटर और lens पर VERSION() और CODENAME()), और इसका लॉन्च किया हर टोकन इसे हमेशा के लिए रखता है (LAUNCHPAD_VERSION() और LAUNCHPAD_CODENAME()): मुक़ाबले का जानकारी सेक्शन इसे वैसे ही दिखाता है जैसे उसके टोकन बताते हैं। बाद में अलग से डिप्लॉय हुआ कोई लॉन्चपैड गिनती आगे बढ़ाएगा, अपने कोड नाम के साथ, और उसके टोकन अपना बताएँगे।

पते

Duel, Robinhood Chain के इन कॉन्ट्रैक्ट पर निर्भर है:

Uniswap V4 PoolManager0x8366a39CC670B4001A1121B8F6A443A643e40951
Universal Router (मेननेट)0x204FAca1764B154221e35c0d20aBb3c525710498
V4 Quoter0x8Dc178eFB8111BB0973Dd9d722ebeFF267c98F94
Permit20x000000000022D473030F116dDEE9F6B43aC78BA3

hook

V4 hook के पते में उन callback की सूची होती है जिन्हें वह लागू करता है। Duel का hook इनका इस्तेमाल करता है:

Callbackयह क्या करता है
beforeInitializehook पर पूल सिर्फ़ फ़ैक्टरी खोल सकती है, और सिर्फ़ किसी मुक़ाबले के रजिस्टर्ड पूल।
beforeAddLiquidityलिक्विडिटी सिर्फ़ फ़ैक्टरी जोड़ सकती है, लॉन्च पर।
beforeRemoveLiquidityहमेशा रिवर्ट होता है: लिक्विडिटी हमेशा के लिए लॉक है।
beforeDonateहमेशा रिवर्ट होता है।
beforeSwapख़त्म हुआ राउंड सेटल करता है, औसत अपडेट करता है, फ़ीस और टैक्स लेता है।
afterSwapउस रकम पर बनने वाली फ़ीस लेता है जिसे स्वैप ने तय नहीं किया, जाँचता है कि पहले से फ़ीस ली गई स्वैप पूरी भरी, फिर तीनों पूलों का पुनर्संतुलन करता है।

फ़ीस hook के return delta से ली जाती है, इसलिए स्वैप को कोई भी रूट करे, यह लागू होती है।

कौन क्या कर सकता है

कौनक्या कर सकता है
कोई भीलॉन्च, ट्रेड, ख़त्म हुए राउंड सेटल करना, क्रिएटर या ट्रेज़री के क्लेम शुरू करना, प्रस्तावित शर्तें उनके 48 घंटे पूरे होने पर लागू करना
मुक़ाबले का क्रिएटरउस मुक़ाबले की क्रिएटर फ़ीस पाना; भूमिका, उसकी फ़ीस के साथ, उसे स्वीकार करने वाले पते को सौंपना
फ़ैक्टरी का मालिकनए लॉन्च रोकना; 48 घंटे बाद आगे के मुक़ाबलों की सीमित शर्तें या प्रोटोकॉल ट्रेज़री बदलना। जमा हुई प्रोटोकॉल फ़ीस, क्लेम के समय की मौजूदा ट्रेज़री को मिलती है। सभी मुक़ाबलों की स्वैप फ़ीस में प्रोटोकॉल का हिस्सा तुरंत घटाना, या फिर बढ़ाना, पर कभी भी उनकी शर्तों से ज़्यादा नहीं।
कोई नहींलिक्विडिटी निकालना, टोकन मिंट करना, पॉट हटाना, चालू मुक़ाबले के ट्रेडरों की दी जाने वाली फ़ीस या उसके क्रिएटर का हिस्सा बदलना, प्रोटोकॉल का हिस्सा किसी मुक़ाबले की शर्तों से ऊपर ले जाना, किसी मुक़ाबले की क्रिएटर भूमिका छीनना, कॉन्ट्रैक्ट अपग्रेड करना

और

  • सुरक्षा: फ़ंड को क्या सुरक्षित रखता है, और इसकी जाँच कैसे हुई।
  • Duel पर बनाएँ: अपने कोड से मुक़ाबले पढ़ना और ट्रेड करना।