mud2048.fun هو استكشافنا لكسب إحساس مجهري بتطوير الألعاب بالكامل. يهدف إلى تجربة النسخة الكاملة من لعبة 2048 الأصلية (play2048.co) من خلال تكرارها لتجربة تطوير اللعبة بالكامل. درجة حرارة الماء، احصل على شعور جسدي بالخط الأول.
هذا المقال هو ملخص للتجارب والأفكار المكتسبة خلال عملية التطوير، وهو مقصود ليلهم القراء.
هذه ربما تكون أبسط محاولة لتطوير الألعاب الكاملة على السلسلة. قبل ذلك، حاولنا تنفيذ نسخة كاملة على السلسلة من لعبة Chrome Offline Dinosaur Game (لعبة Chrome Dino Game)، ولكن في وقت لاحق اكتشفنا أنها لم تكن ذات صلة بتقنية السلسلة الكتلية. بفضل آلية Tick الموجودة في اللعبة، من الصعب إعادة إنتاج نسخة كاملة على السلسلة تكون مشابهة لتجربة اللعب الأصلية.
النسخة الإلكترونية من لعبة Chrome Dino على:https://dinorunner.com/
قد تنطوي هذه القضية على سوء فهم شائع: من الأسهل تنفيذ نسخة كاملة من الألعاب البسيطة. في الواقع، هذا ليس الحال، لأن وقت تأكيد المعاملات على البلوكشين (حتى في الطبقة 2 الرئيسية) لم يصل بعد إلى مستوى وقت استجابة الواجهة للخادم المركزي؛ بالإضافة إلى ذلك، بعد رفع منطق اللعبة إلى السلسلة، يُحدث تعقيدًا هندسيًا لم يظهر في السيناريو المركزي، مما يؤدي إلى حقيقة أن ليس من السهل تنفيذ نسخ كاملة من الألعاب العرضية البسيطة. يفسر هذا أيضًا إلى حد ما تقسيمات بيئة الألعاب الكاملة على السلسلة:
على الأغلب ألعاب الاستراتيجية في الوقت الحقيقي (RTS)، مثل: Loot Survivor، Primodium، Sky Strife، Cellula، إلخ، بالإضافة إلى قواعد Meta (ألعاب القواعد الفرعية/ ألعاب الرمل)، مثل: PixeLAW، Briq، OpCraft، إلخ. كلا أنواع الألعاب تتجنب العيوب الناجمة عن وقت التأكيد الطويل لعمليات تشفير سلسلة الكتل من حيث شكل اللعبة.
الصورة تظهر واجهة بدء تشغيل Sky Strife، الرابط:https://playtest.skystrife.xyz/
MUD هو أول محرك لعبة كامل في نظام EVM (وأول إطار تطوير تطبيق في نظام EVM). يمكن لمحفظة الجلسة المدمجة في المحرك وصنبور سلسلة الاختبار التي يمكن استدعاؤها من خلال واجهة برمجة التطبيقات خفض حاجز الدخول للاعبين.
سبب آخر هو أن MUD مفتوح المصدر ويحتوي على العديد من الوثائق والمواد المجتمعية، ومن السهل البدء في استخدامه. مسألة ما إذا كان محرك اللعبة مفتوح المصدر تثير قضايا نموذج الأعمال التي ستناقش بشكل خاص أدناه.
مقدمة ل MUDs. المصدر:https://github.com/latticexyz/mud
الآن دعونا نأتي إلى النقطة. سنتحدث عن بعض من تجاربنا في استخدام محرك MUD. هناك مستويات صناعية ماكرو-إدراكية ومستويات عملية هندسية ميكرو-رشيقة. هي تستهدف مجموعات جمهورية مختلفة. يمكنك استخدامها بنفسك (تخطي مباشرة). الجزء الذي ليس مثيرًا).
ما هو محرك MUD بشكل عام؟
محرك MUD = قاعدة بيانات على السلسلة + إطار تطوير تطبيقات على السلسلة.
ميزات MUD. المصدر:https://github.com/latticexyz/mud
هذا وجهة نظر تتطلع إلى مجال البلوكشين من مجال الإنترنت (مماثلة إلى حد ما للنظر إلى قوة البحر من منظور قوة اليابسة). بالتأكيد، ليست هذه الوجهة نظر الأنسب، ولكن نظرًا إلى أن البلوكشين لم يحقق بعد الاعتماد الشامل، يجب إصدار منتجات البلوكشين. علينا لا تزال بحاجة إلى جذب المزيد من المستخدمين في مجال الإنترنت، لذلك قد ننظر إلى التحليل من منظور الإنترنت أولاً.
سواء كانت "قاعدة بيانات علاقات على السلسلة" أو "إطار تطوير تطبيقات على السلسلة"، فهي أمور حاسمة لتطوير إيثيريوم، "الكمبيوتر العالمي".
تعلمنا من تطوير تطبيقات الإنترنت: سهولة استخدام برنامج قاعدة البيانات / مدى معقولية تصميم هيكل جدول قاعدة البيانات يحدد بشكل كبير تعقيد تطوير المشروع بأكمله. بعبارة أخرى، يتم تنفيذ تطوير تطبيقات الإنترنت بقاعدة البيانات كنواة، دعونا نسميها "قائمة على قاعدة بيانات".
لنرى ما إذا كان تصميم محرك MUD يتبع أيضًا فكرة "القائمة على قاعدة البيانات". من وجهة نظر التصميم لمحرك MUD، يحل ثلاث مشاكل أساسية:
كيفية جعل البيانات على السلسلة سهلة القراءة والكتابة والتخزين بطريقة اقتصادية،
تزامن البيانات التلقائي بين السلسلة/العملاء،
إدارة تعقيدات تطوير التطبيقات العامة.
لنلق نظرة على السؤال الأول أولا: "كيف يمكن قراءة البيانات الموجودة على السلسلة وكتابتها وتخزينها اقتصاديا بسهولة"。
يمكن تقسيم هذه المشكلة إلى عنصرين:
1> سهل القراءة والكتابة
2> تخزين اقتصادي
بعد عقود من الممارسة في مجال الإنترنت، يُعتبر 'سهولة القراءة والكتابة'، 'قاعدة البيانات العلاقاتية' الحل الأمثل. على الرغم من أن سلسلة الكتل هي نموذج تخزين سلسلة يختلف كثيرًا عن نموذج تخزين قاعدة البيانات التقليدية (انظر الشكل أدناه)، إلا أن هذا النموذج ليس وديًا حتى للعمليات البسيطة في سيناريو واحد (مثل جمع / متوسط مبلغ المعاملة لمجموعة NFT معينة) / العثور على القيم القصوى والدنيا، وما إلى ذلك)، ناهيك عن السيناريوهات المعقدة الأخرى.
مصدر الصورة:https://mempool.space/mining
لذلك، الحل ل MUD هو تنفيذ "قاعدة بيانات علاقية" فوق تخزين متسلسل (المقابل للجدول تحت التخزين في محرك MUD). بالنسبة للمطورين، فإن تجربة الاستخدام هي نفسها كتشغيل قواعد البيانات العلاقية الشائعة (مثل MySQL و SQL Server و PostgreSQL و SQLite وما إلى ذلك). هذا هو في الواقع أكثر ودية لمعظم مطوري الإنترنت. يظهر الشكل أدناه هيكل الجدول المقابل عندما قمنا بتطوير النسخة الكاملة ل 2048 على أساس محرك MUD.
المصدر:https://github.com/themetacat/MUD2048/blob/main/packages/contracts/mud.config.ts
يمكننا تحليل نقطة "التخزين الاقتصادي" من منظور إثريوم، الحاسوب العالمي.
تتبع جميع الحواسيب الحديثة هيكل "فون نويمان"، الذي ينقسم إلى خمسة أجزاء: الإدخال، الإخراج، العملية، التحكم، والتخزين (انظر الشكل أدناه).
الصور تأتي من الإنترنت
من منظور محرك اللعبة كامل السلسلة نفسه ، يمكنه فقط تحسين "التخزين" ، لأن "المدخلات" و "المخرجات" موجودة في الطبقة العليا ولا يمكن التحكم فيها ؛ "العملية" و "التحكم" هي سلسلة كتل Ethereum ما تفعله. باعتباره "برنامجا تطبيقيا أساسيا" يعمل على هذا "الكمبيوتر العالمي" ، يمكن لمحرك الألعاب كامل السلسلة فقط تحسين إدخال "التخزين" من خلاله.
الحل النوعي لتحسين التخزين هو تنفيذ "بتباكينغ" فعال للغاية ومدمج للبيانات الناتجة. نظرًا لأن تخزين البيانات على سلسلة الكتل يتم فرض رسوم عليه بناءً على حجم البيانات، يعني حجم البيانات الأصغر تكاليف تخزين أقل. تعتبر تكاليف التخزين المُحسَّنة بشكل كامل شرطًا أساسيًا لظهور التطبيقات المعقدة على سلسلة الكتل بنطاق واسع. يوضح الشكل أدناه حالة محددة لتحسين التخزين عن طريق MUD. للتفاصيل، انظرمحرك لعبة كامل السلسلة MUD من 0 إلى V2。
Image Source:https://lattice.xyz/blog/mud-zero-to-v2
باختصار، بالنسبة للسؤال الأول، يحل MUD بشكل رئيسي المشكلة من منظور 'قائم على قاعدة البيانات'.
نأتي الآن إلى السؤال الثاني: "مزامنة البيانات التلقائية بين العملاء / العملاء"。
هذه أيضًا وظيفة أساسية تُوفرها محرك MUD، والتي تساعد المطورين على توفير أنفسهم من العمل الشاق في إدارة المزامنة الحالة المعقدة.. الخطة التنفيذية المحددة هي: مزامنة القاعدة البيانات على السلسلة في الوقت الحقيقي على العميل. بمعنى آخر، كل عميل لديه نسخة محلية مدمجة تتزامن مع قاعدة البيانات على السلسلة في الوقت الحقيقي.
تتم هذه العملية بشكل رئيسي من خلال المفهرس في محرك MUD. الصورة أدناه هي الإدخال الرسمي لـ MUD على مفهرس، الذي يستخدم في الغالب في السيناريوهات التي ترغب في بنائها وتشغيلها على خادم المشروع (بالطبع، تنطبق هذه الوصفة أيضًا على المفهرس الذي يعمل تلقائيًا في عميل اللعبة على السلسلة الكاملة).
مصدر الصورة:https://mud.dev/services/indexer
بالنسبة للمطورين، يكون لديهم في البداية قاعدة بيانات على السلسلة مع تجربة مستخدم تقترب من تلك في قاعدة بيانات محلية. ومع ذلك، فيما يتعلق بالتنفيذ الحالي لـ MUD، من الصعب على العميل تنفيذ وظائف مثل إنشاء قائمة عالمية؛ بالإضافة إلى ذلك، ليس من النهج الاقتصادي بالنسبة لكل عميل توليد قائمة عالمية.
ومن جهة أخرى، سيسأل الجميع بالتأكيد: لماذا لا تُنشئ قائمة عالمية على السلسلة؟ السبب في ذلك هو أنه على الرغم من أن محرك MUD قد نفذ قاعدة بيانات علاقية أولية، إلا أن MUD لم يدعم بعد وظائف شائعة مثل جمع/متوسط/الحد الأقصى والحد الأدنى في قواعد البيانات العلاقية.
لذلك، في mud2048.fun، نقوم ببناء عقدة مؤشر MUD على خادم مركزي لتوليد تصنيف لاعبين عالمي على نحو يتناسب تكلفته مع الفائدة (انظر الشكل أدناه).
عنوان الموقع:https://www.mud2048.fun/
ومع ذلك، فإن السماح لكل عميل بامتلاك نسخة في الوقت الحقيقي من قاعدة البيانات على السلسلة لديه أيضًا عيوب. على سبيل المثال، قبل بدء التطبيق، يجب مزامنة البيانات من السلسلة لإنشاء أحدث نسخة من قاعدة بيانات السلسلة محليًا، مما سيزيد من وقت الانتظار لدخول اللاعبين في اللعبة. وعلى علم مسؤولو MUD أيضًا بهذه المشكلة وذكروا حلول تحسين ذات صلة (مزامنة البيانات المقسمة وتخزين التخزين المؤقت للعميل) في الإصدار MUD V2. ومع ذلك، في رأيي، فإنها حلول مؤقتة ولا يمكن حل مشكلة مزامنة السلسلة تمامًا مع مرور الوقت. هناك مزيد من المشاكل مع البيانات.
يبدو أن هذه المشكلة لا يمكن حلها في الوقت الحالي (سيكون من الصعب تحقيق اختراقات رئيسية في كفاءة نقل بيانات الشبكة العامة واسترجاع البيانات المقننة في المدى القصير). نأمل أن يمكن العثور على حل أكثر مناسب مع تكرار MUD. إذا تم حل هذه المشكلة بشكل جيد، فسيمهد ذلك الطريق أيضًا لولادة تطبيقات معقدة على سلاسل أخرى.
الآن نأتي إلى السؤال الثالث: إدارة التعقيدات الشائعة لتطوير التطبيقات
قبل ذلك، كانت معظم التطبيقات على السلسلة في نظام الأيثيريوم بسيطة نسبيًا (المؤشر الهدف هو أن عدد العقود المتورطة في منتج DeFi/NFT/DAO واحد محدود، وفي معظم الحالات فإن إمكانية التحديث بعد النشر ضئيلة جدًا). ولكن بالنسبة لتطوير التطبيقات المعقدة وتحديثات المنطق ومراقبة الوصول وإدارة الإذن، فإن جميع المهام المتكررة التي يجب القيام بها من البداية. لذلك، هناك حاجة كبيرة إلى إطار/محرك عام يمكن أن يساعد المطورين في التعامل مع هذه المشاكل بطريقة موحدة، بحيث يمكن للمطورين أن يكرسوا أنفسهم لتطوير التطبيق.
وظيفة أخرى أساسية تقدمها محرك MUD هي مساعدة المطورين في توفير الوقت في التعامل مع المشاكل المذكورة أعلاه من خلال وحدة World. على وجه الخصوص، توفر World منطق ومراقبة الوصول في الأعلى للمخزن. يوضح الشكل التالي الموقع الرسمي لـ MUD لـ World. الوصف، هذه وظيفة تقدمها أطر تطوير التطبيقات العامة، لذلك لن أدخل في التفاصيل هنا.
مصدر الصورة:https://mud.dev/world/introduction
بالنسبة لتطوير التطبيقات المعقدة، فإن التحكم في الوصول (أو التوجيه) هو رابط مهم في تحديد حجم المشروع الكلي. جودة تصميم التحكم في الوصول تحدد مباشرة تعقيد وسهولة صيانة تطوير التطبيق. من الواضح أن MUD تولي اهتمامًا كبيرًا لهذا الأمر. يظهر الشكل أدناه تحسين وحدة التحكم في الوصول في إصدارات MUD v1 وv2.
مصدر الصورة:https://lattice.xyz/blog/mud-zero-to-v2
المذكور أعلاه هي بعض أفكارنا الهندسية وتجاربنا في عملية تطوير mud2048.fun باستخدام محرك MUD. عمومًا، تتبع محركات MUD أيضًا فكرة "القائمة على قاعدة البيانات"، والتي تتماشى تمامًا مع منهجية تطوير تطبيقات الإنترنت. لذا، لن تشعر محركات MUD بالغرابة لدى مطوري تطبيقات الإنترنت. فيما يلي، سنناقش أفكارنا حول صناعة الألعاب الكاملة السلسلة.
عندما ندخل إلى مجال الألعاب الكاملة السلسلة، الأسئلة الثلاثة التي نطرحها باستمرار على أنفسنا هي:
لماذا يحتاج اللعب بالسلسلة الكاملة؟
أي نوع من الألعاب مناسب للسلسلة بأكملها؟
ما هي العلاقة بين Fully on-Chain و Crypto native؟
التالي نناقش واحدا تلو الآخر:
للسؤال الأول: لماذا نحتاج إلى ألعاب سلسلة كاملة؟
يمكن تقسيم هذه المشكلة إلى مشكلتين فرعيتين.
1> لماذا تحتاج صناعة البلوكشين إلى ألعاب السلسلة الكاملة؟
2> لماذا يحتاج سوق العملات الرقمية إلى ألعاب سلسلة كاملة؟
من وجهة نظر صناعة بلوكشين:
نظام الأثيريوم قد تطور إلى مرحلة تتطلب ظهور تطبيقات معقدة على السلسلة (في الماضي، كانت تطبيقات الديفاي/الدي أو/التوكينات ذات القيمة الغير قابلة للتغيير بسيطة نسبيا، كما يمكن رؤية ذلك من عدد العقود التي تدعم تطبيق معين). مثال آخر هو دعم طبقة الأثيريوم للطبقة 2 بالكامل لسلسلة الألعاب. من وجهة نظر منطقية داخلية، لا يمكن صنع الماس بدون عمل الخزف. تحتاج الطبقة 2 إلى كل عمل الخزف في سلسلة الألعاب بأكملها لتحقيق ذاتها.
لم يكن لدى مجال NFT نموذج جديد لتعزيز تطويره بعد فقاعة PFP. النقطة التي تميز NFT عن ERC-20 هي القابلية للتكامل، ومشهد الألعاب هو المكان الطبيعي لقابلية NFT.
الهدف النهائي للعبة السلسلة بأكملهاالعالم الذاتي" هو تفصيل آخر للشكل النهائي للعالم الرقمي (كان التفصيل الأخير هو "Metaverse" الذي أصبح في حالة من الفوضى بعد الإفراط في تسويقه). كخيال مشترك للبشرية من أجل مستقبل أفضل ، يتمتع العالم المستقل بجاذبية كبيرة ، والعالم بأسره كطريقة مهمة لتحقيق هذا الهدف ، فإن ألعاب السلسلة لديها أيضا آمال كبيرة.
الموقع الرسمي لعوالم الذكاء الاصطناعي:https://aw.network/
بالنظر إلى سوق التشفير:
عند النظر إلى تاريخ تطوير الإنترنت، تكون الألعاب دائمًا الأولى التي تعتمد على حقول التكنولوجيا الجديدة. الألعاب هي تطبيقات المستهلك وأسهل الوصول إلى المستخدمين النهائيين.
نموذج لعبة البلوكشين/GameFi تم تزييفه مؤقتًا، وعاد استكشاف ألعاب البلوكشين إلى أصل الألعاب: اللعب. اللعب القائم على تقنية البلوكشين (الذي يرث بالكامل مزايا وعيوب التكنولوجيا) يعد بتقديم تجارب ونماذج جديدة غير متوفرة في الماضي، مما يجذب المستخدمين.
نأتي إلى السؤال الثاني: أي نوع من الألعاب مناسب للسلسلة بأكملها؟؟
في الوقت الحاضر ، لم تتوصل الصناعة / السوق بعد إلى توافق في الآراء بشأن هذه النقطة. من منظور استقرائي ، الفئتان المذكورتان أعلاه هما استراتيجية الوقت الفعلي (RTS) وقواعد التعريف (قواعد Meta). ومع ذلك ، فإن مشاكل مثل الابتكار غير الكافي ، ونماذج الأعمال غير الواضحة ، والفشل في مطابقة المستخدمين بشكل جيد لا تزال مشاكل لا مفر منها في هذا المجال.
شخصياً، أعتقد أن فئة القواعد الفرعية للميتا لديها إمكانيات أكثر نسبياً، لأنها على الأقل لديها مزيد من الإمكانيات الأصلية على مستوى القاعدة ومستوى التوافق. ومع ذلك، لا يزال في وقت مبكر للغاية ومن الصعب تقييم تأكيده. الصورة أدناه هي واجهة لعبة بكسيلو للقواعد الفرعية الكاملة.
مصدر الصورة:https://twitter.com/0xPixeLAW/status/1704375844674912515
قد تكون قابلية التشغيل البيني بين الألعاب اقتراحا خاطئا لفترة طويلة. على الرغم من أن ألعاب السلسلة الكاملة ترث قابلية التشغيل البيني ل blockchain ، من منظور الأعمال / المنتج / البيئي ، فمن الصعب تخيل منتجين مستقلين يتم تطويرهما للتشغيل البيني على المدى القصير ، وكانت هذه النقطة أيضا في دورة "Metaverse" السابقة. لقد تم تزويرها إلى حد ما.
الآن دعونا نتحدث عن السؤال الثالث: ما هو العلاقة بين السلسلة الكاملة والعملة الرقمية الأصلية؟
أولاً، سيجعل التأكيد المفرط على "على السلسلة بأكملها" الناس يقعون في الدائرة الخبيثة للأصولية. البنية التحتية الحالية للبلوكشين لا يمكن أن تدعم مجموعة واسعة من الألعاب لوضع جميع البيانات/المنطق على السلسلة. بالإضافة إلى ذلك، GubSheep، مؤسس "الغابة الداكنة"،صياغة أوليةتعتبر «العاب كريبتو-ناتيف»، لتفكير في كيفية تعزيز تطور صناعة البلوكشين بأقصى درجة من منظومة التشفير. تعرض الصورة أدناه جزءا من النص الأصلي للعبة جبشيب.
المصدر:https://gubsheep.substack.com/p/the-strongest-crypto-gaming-thesis
المولود الرقمي هو مفهوم له دلالات متغيرة باستمرار وحدود غامضة نسبيًا. هناك تفسيرات مختلفة في مراحل مختلفة من تطوير تقنية سلسلة الكتل.
في عام 2017، تم اعتبار CryptoKitties قمة العملات المشفرة الأصلية؛
في عام 2018، كان Uniswap نموذجًا للعملات الرقمية الأصلية؛
في عام 2020، CryptoArt هو قمة العملات المشفرة؛
في عام 2021، The DAO هو التجسيد الحقيقي للعملات الرقمية;
بحلول عام 2023، يُعتبر الألعاب الكاملة السلسلة، حيث تكون البيانات والمنطق على السلسلة، نموذجًا للعملة الرقمية.
لكن في الأساس، التشفير هو فكرة، ليس دوغما.
الكامل على سلسلة هو منهجية تنفذ التشفير الأصلي، ولكن لا يمكننا أن نقيد بها، تمامًا كما هو الحال مع اللامركزية، الثورة/الثورة المضادة، جميعها مفاهيم نسبية، ومن السهل أن تؤدي إلى نهاية مسدودة إذا تعلقت كثيرًا بالمعنى الحرفي.
إذاً، سواء كانت الألعاب الكاملة السلسلة أو الألعاب الرقمية الأصلية، ما هي الإمكانيات الجديدة التي تحملها؟
أعتقد أنه بعد جعل منطق اللعبة/القواعد شفافة من خلال السلسلة، يمكن لجميع استراتيجيات اللعب أن تنافس بشكل حقيقي. بالطبع، نحتاج إلى العثور على سيناريو يمكن أن يعكس هذه الفوائد. على سبيل المثال، بسبب أن منطق اللعبة على السلسلة، يمكنك كتابة كود العقد مباشرة للعب اللعبة، جنبًا إلى جنب مع استراتيجيات لعب مولّدة بواسطة الذكاء الاصطناعي، قد يسمح لنا بأن نمتلك وكيل لاعب افتراضي فوق المتوسط/لا ينام (هذه الفكرة مستوحاة من Shoshin المستوحاة).
بالإضافة إلى ذلك، محرك لعبة سلسلة كاملة مثل MUD (في الواقع، من الأنسب أن نطلق عليه إطار تطوير تطبيقات سلسلة كاملة)، كجزء من قاعدة بيانات + إطار تطوير تطبيقات، له أهمية ذاتية واضحة في نظام الـ EVMs. ومع ذلك، قواعد بيانات/إطارات تطوير التطبيقات هي سلع عامة وليس لديها نموذج عمل على الإطلاق. لحسن الحظ، هناك آلية رمزية أصلية لسلسلة الكتل، فضلاً عنEIP-6969 يمكن أن يساعد مخطط حقوق ملكية المطور هذا مطوري هذه العناصر العادلة في الحصول على القيمة بطريقة خارجية. هذه هي النقطة التي تتفوق فيها blockchain على Web2.
"التوافق" ليس فقط 51% من قوة الحوسبة، بل هو أيضًا القيم المشتركة التي تتواجد بين المجتمعات/المجموعات. من هذا المنظور، فإن علم الكريبتوغرافيا هو نوع من القيم.
موقع MUD 2048 الرسمي:https://www.mud2048.fun/
مشروع MUD 2048 رمز البرنامج:https://github.com/themetacat/MUD2048
موقع الويب الرسمي لمحرك MUD: https://mud.dev/
الموقع الرسمي لكتاب العوالم الذاتية:https://aw.network/
نظرية اللعب المشفرة الأصلية لـ GubSheep:https://gubsheep.substack.com/p/the-strongest-crypto-gaming-thesis
mud2048.fun هو استكشافنا لكسب إحساس مجهري بتطوير الألعاب بالكامل. يهدف إلى تجربة النسخة الكاملة من لعبة 2048 الأصلية (play2048.co) من خلال تكرارها لتجربة تطوير اللعبة بالكامل. درجة حرارة الماء، احصل على شعور جسدي بالخط الأول.
هذا المقال هو ملخص للتجارب والأفكار المكتسبة خلال عملية التطوير، وهو مقصود ليلهم القراء.
هذه ربما تكون أبسط محاولة لتطوير الألعاب الكاملة على السلسلة. قبل ذلك، حاولنا تنفيذ نسخة كاملة على السلسلة من لعبة Chrome Offline Dinosaur Game (لعبة Chrome Dino Game)، ولكن في وقت لاحق اكتشفنا أنها لم تكن ذات صلة بتقنية السلسلة الكتلية. بفضل آلية Tick الموجودة في اللعبة، من الصعب إعادة إنتاج نسخة كاملة على السلسلة تكون مشابهة لتجربة اللعب الأصلية.
النسخة الإلكترونية من لعبة Chrome Dino على:https://dinorunner.com/
قد تنطوي هذه القضية على سوء فهم شائع: من الأسهل تنفيذ نسخة كاملة من الألعاب البسيطة. في الواقع، هذا ليس الحال، لأن وقت تأكيد المعاملات على البلوكشين (حتى في الطبقة 2 الرئيسية) لم يصل بعد إلى مستوى وقت استجابة الواجهة للخادم المركزي؛ بالإضافة إلى ذلك، بعد رفع منطق اللعبة إلى السلسلة، يُحدث تعقيدًا هندسيًا لم يظهر في السيناريو المركزي، مما يؤدي إلى حقيقة أن ليس من السهل تنفيذ نسخ كاملة من الألعاب العرضية البسيطة. يفسر هذا أيضًا إلى حد ما تقسيمات بيئة الألعاب الكاملة على السلسلة:
على الأغلب ألعاب الاستراتيجية في الوقت الحقيقي (RTS)، مثل: Loot Survivor، Primodium، Sky Strife، Cellula، إلخ، بالإضافة إلى قواعد Meta (ألعاب القواعد الفرعية/ ألعاب الرمل)، مثل: PixeLAW، Briq، OpCraft، إلخ. كلا أنواع الألعاب تتجنب العيوب الناجمة عن وقت التأكيد الطويل لعمليات تشفير سلسلة الكتل من حيث شكل اللعبة.
الصورة تظهر واجهة بدء تشغيل Sky Strife، الرابط:https://playtest.skystrife.xyz/
MUD هو أول محرك لعبة كامل في نظام EVM (وأول إطار تطوير تطبيق في نظام EVM). يمكن لمحفظة الجلسة المدمجة في المحرك وصنبور سلسلة الاختبار التي يمكن استدعاؤها من خلال واجهة برمجة التطبيقات خفض حاجز الدخول للاعبين.
سبب آخر هو أن MUD مفتوح المصدر ويحتوي على العديد من الوثائق والمواد المجتمعية، ومن السهل البدء في استخدامه. مسألة ما إذا كان محرك اللعبة مفتوح المصدر تثير قضايا نموذج الأعمال التي ستناقش بشكل خاص أدناه.
مقدمة ل MUDs. المصدر:https://github.com/latticexyz/mud
الآن دعونا نأتي إلى النقطة. سنتحدث عن بعض من تجاربنا في استخدام محرك MUD. هناك مستويات صناعية ماكرو-إدراكية ومستويات عملية هندسية ميكرو-رشيقة. هي تستهدف مجموعات جمهورية مختلفة. يمكنك استخدامها بنفسك (تخطي مباشرة). الجزء الذي ليس مثيرًا).
ما هو محرك MUD بشكل عام؟
محرك MUD = قاعدة بيانات على السلسلة + إطار تطوير تطبيقات على السلسلة.
ميزات MUD. المصدر:https://github.com/latticexyz/mud
هذا وجهة نظر تتطلع إلى مجال البلوكشين من مجال الإنترنت (مماثلة إلى حد ما للنظر إلى قوة البحر من منظور قوة اليابسة). بالتأكيد، ليست هذه الوجهة نظر الأنسب، ولكن نظرًا إلى أن البلوكشين لم يحقق بعد الاعتماد الشامل، يجب إصدار منتجات البلوكشين. علينا لا تزال بحاجة إلى جذب المزيد من المستخدمين في مجال الإنترنت، لذلك قد ننظر إلى التحليل من منظور الإنترنت أولاً.
سواء كانت "قاعدة بيانات علاقات على السلسلة" أو "إطار تطوير تطبيقات على السلسلة"، فهي أمور حاسمة لتطوير إيثيريوم، "الكمبيوتر العالمي".
تعلمنا من تطوير تطبيقات الإنترنت: سهولة استخدام برنامج قاعدة البيانات / مدى معقولية تصميم هيكل جدول قاعدة البيانات يحدد بشكل كبير تعقيد تطوير المشروع بأكمله. بعبارة أخرى، يتم تنفيذ تطوير تطبيقات الإنترنت بقاعدة البيانات كنواة، دعونا نسميها "قائمة على قاعدة بيانات".
لنرى ما إذا كان تصميم محرك MUD يتبع أيضًا فكرة "القائمة على قاعدة البيانات". من وجهة نظر التصميم لمحرك MUD، يحل ثلاث مشاكل أساسية:
كيفية جعل البيانات على السلسلة سهلة القراءة والكتابة والتخزين بطريقة اقتصادية،
تزامن البيانات التلقائي بين السلسلة/العملاء،
إدارة تعقيدات تطوير التطبيقات العامة.
لنلق نظرة على السؤال الأول أولا: "كيف يمكن قراءة البيانات الموجودة على السلسلة وكتابتها وتخزينها اقتصاديا بسهولة"。
يمكن تقسيم هذه المشكلة إلى عنصرين:
1> سهل القراءة والكتابة
2> تخزين اقتصادي
بعد عقود من الممارسة في مجال الإنترنت، يُعتبر 'سهولة القراءة والكتابة'، 'قاعدة البيانات العلاقاتية' الحل الأمثل. على الرغم من أن سلسلة الكتل هي نموذج تخزين سلسلة يختلف كثيرًا عن نموذج تخزين قاعدة البيانات التقليدية (انظر الشكل أدناه)، إلا أن هذا النموذج ليس وديًا حتى للعمليات البسيطة في سيناريو واحد (مثل جمع / متوسط مبلغ المعاملة لمجموعة NFT معينة) / العثور على القيم القصوى والدنيا، وما إلى ذلك)، ناهيك عن السيناريوهات المعقدة الأخرى.
مصدر الصورة:https://mempool.space/mining
لذلك، الحل ل MUD هو تنفيذ "قاعدة بيانات علاقية" فوق تخزين متسلسل (المقابل للجدول تحت التخزين في محرك MUD). بالنسبة للمطورين، فإن تجربة الاستخدام هي نفسها كتشغيل قواعد البيانات العلاقية الشائعة (مثل MySQL و SQL Server و PostgreSQL و SQLite وما إلى ذلك). هذا هو في الواقع أكثر ودية لمعظم مطوري الإنترنت. يظهر الشكل أدناه هيكل الجدول المقابل عندما قمنا بتطوير النسخة الكاملة ل 2048 على أساس محرك MUD.
المصدر:https://github.com/themetacat/MUD2048/blob/main/packages/contracts/mud.config.ts
يمكننا تحليل نقطة "التخزين الاقتصادي" من منظور إثريوم، الحاسوب العالمي.
تتبع جميع الحواسيب الحديثة هيكل "فون نويمان"، الذي ينقسم إلى خمسة أجزاء: الإدخال، الإخراج، العملية، التحكم، والتخزين (انظر الشكل أدناه).
الصور تأتي من الإنترنت
من منظور محرك اللعبة كامل السلسلة نفسه ، يمكنه فقط تحسين "التخزين" ، لأن "المدخلات" و "المخرجات" موجودة في الطبقة العليا ولا يمكن التحكم فيها ؛ "العملية" و "التحكم" هي سلسلة كتل Ethereum ما تفعله. باعتباره "برنامجا تطبيقيا أساسيا" يعمل على هذا "الكمبيوتر العالمي" ، يمكن لمحرك الألعاب كامل السلسلة فقط تحسين إدخال "التخزين" من خلاله.
الحل النوعي لتحسين التخزين هو تنفيذ "بتباكينغ" فعال للغاية ومدمج للبيانات الناتجة. نظرًا لأن تخزين البيانات على سلسلة الكتل يتم فرض رسوم عليه بناءً على حجم البيانات، يعني حجم البيانات الأصغر تكاليف تخزين أقل. تعتبر تكاليف التخزين المُحسَّنة بشكل كامل شرطًا أساسيًا لظهور التطبيقات المعقدة على سلسلة الكتل بنطاق واسع. يوضح الشكل أدناه حالة محددة لتحسين التخزين عن طريق MUD. للتفاصيل، انظرمحرك لعبة كامل السلسلة MUD من 0 إلى V2。
Image Source:https://lattice.xyz/blog/mud-zero-to-v2
باختصار، بالنسبة للسؤال الأول، يحل MUD بشكل رئيسي المشكلة من منظور 'قائم على قاعدة البيانات'.
نأتي الآن إلى السؤال الثاني: "مزامنة البيانات التلقائية بين العملاء / العملاء"。
هذه أيضًا وظيفة أساسية تُوفرها محرك MUD، والتي تساعد المطورين على توفير أنفسهم من العمل الشاق في إدارة المزامنة الحالة المعقدة.. الخطة التنفيذية المحددة هي: مزامنة القاعدة البيانات على السلسلة في الوقت الحقيقي على العميل. بمعنى آخر، كل عميل لديه نسخة محلية مدمجة تتزامن مع قاعدة البيانات على السلسلة في الوقت الحقيقي.
تتم هذه العملية بشكل رئيسي من خلال المفهرس في محرك MUD. الصورة أدناه هي الإدخال الرسمي لـ MUD على مفهرس، الذي يستخدم في الغالب في السيناريوهات التي ترغب في بنائها وتشغيلها على خادم المشروع (بالطبع، تنطبق هذه الوصفة أيضًا على المفهرس الذي يعمل تلقائيًا في عميل اللعبة على السلسلة الكاملة).
مصدر الصورة:https://mud.dev/services/indexer
بالنسبة للمطورين، يكون لديهم في البداية قاعدة بيانات على السلسلة مع تجربة مستخدم تقترب من تلك في قاعدة بيانات محلية. ومع ذلك، فيما يتعلق بالتنفيذ الحالي لـ MUD، من الصعب على العميل تنفيذ وظائف مثل إنشاء قائمة عالمية؛ بالإضافة إلى ذلك، ليس من النهج الاقتصادي بالنسبة لكل عميل توليد قائمة عالمية.
ومن جهة أخرى، سيسأل الجميع بالتأكيد: لماذا لا تُنشئ قائمة عالمية على السلسلة؟ السبب في ذلك هو أنه على الرغم من أن محرك MUD قد نفذ قاعدة بيانات علاقية أولية، إلا أن MUD لم يدعم بعد وظائف شائعة مثل جمع/متوسط/الحد الأقصى والحد الأدنى في قواعد البيانات العلاقية.
لذلك، في mud2048.fun، نقوم ببناء عقدة مؤشر MUD على خادم مركزي لتوليد تصنيف لاعبين عالمي على نحو يتناسب تكلفته مع الفائدة (انظر الشكل أدناه).
عنوان الموقع:https://www.mud2048.fun/
ومع ذلك، فإن السماح لكل عميل بامتلاك نسخة في الوقت الحقيقي من قاعدة البيانات على السلسلة لديه أيضًا عيوب. على سبيل المثال، قبل بدء التطبيق، يجب مزامنة البيانات من السلسلة لإنشاء أحدث نسخة من قاعدة بيانات السلسلة محليًا، مما سيزيد من وقت الانتظار لدخول اللاعبين في اللعبة. وعلى علم مسؤولو MUD أيضًا بهذه المشكلة وذكروا حلول تحسين ذات صلة (مزامنة البيانات المقسمة وتخزين التخزين المؤقت للعميل) في الإصدار MUD V2. ومع ذلك، في رأيي، فإنها حلول مؤقتة ولا يمكن حل مشكلة مزامنة السلسلة تمامًا مع مرور الوقت. هناك مزيد من المشاكل مع البيانات.
يبدو أن هذه المشكلة لا يمكن حلها في الوقت الحالي (سيكون من الصعب تحقيق اختراقات رئيسية في كفاءة نقل بيانات الشبكة العامة واسترجاع البيانات المقننة في المدى القصير). نأمل أن يمكن العثور على حل أكثر مناسب مع تكرار MUD. إذا تم حل هذه المشكلة بشكل جيد، فسيمهد ذلك الطريق أيضًا لولادة تطبيقات معقدة على سلاسل أخرى.
الآن نأتي إلى السؤال الثالث: إدارة التعقيدات الشائعة لتطوير التطبيقات
قبل ذلك، كانت معظم التطبيقات على السلسلة في نظام الأيثيريوم بسيطة نسبيًا (المؤشر الهدف هو أن عدد العقود المتورطة في منتج DeFi/NFT/DAO واحد محدود، وفي معظم الحالات فإن إمكانية التحديث بعد النشر ضئيلة جدًا). ولكن بالنسبة لتطوير التطبيقات المعقدة وتحديثات المنطق ومراقبة الوصول وإدارة الإذن، فإن جميع المهام المتكررة التي يجب القيام بها من البداية. لذلك، هناك حاجة كبيرة إلى إطار/محرك عام يمكن أن يساعد المطورين في التعامل مع هذه المشاكل بطريقة موحدة، بحيث يمكن للمطورين أن يكرسوا أنفسهم لتطوير التطبيق.
وظيفة أخرى أساسية تقدمها محرك MUD هي مساعدة المطورين في توفير الوقت في التعامل مع المشاكل المذكورة أعلاه من خلال وحدة World. على وجه الخصوص، توفر World منطق ومراقبة الوصول في الأعلى للمخزن. يوضح الشكل التالي الموقع الرسمي لـ MUD لـ World. الوصف، هذه وظيفة تقدمها أطر تطوير التطبيقات العامة، لذلك لن أدخل في التفاصيل هنا.
مصدر الصورة:https://mud.dev/world/introduction
بالنسبة لتطوير التطبيقات المعقدة، فإن التحكم في الوصول (أو التوجيه) هو رابط مهم في تحديد حجم المشروع الكلي. جودة تصميم التحكم في الوصول تحدد مباشرة تعقيد وسهولة صيانة تطوير التطبيق. من الواضح أن MUD تولي اهتمامًا كبيرًا لهذا الأمر. يظهر الشكل أدناه تحسين وحدة التحكم في الوصول في إصدارات MUD v1 وv2.
مصدر الصورة:https://lattice.xyz/blog/mud-zero-to-v2
المذكور أعلاه هي بعض أفكارنا الهندسية وتجاربنا في عملية تطوير mud2048.fun باستخدام محرك MUD. عمومًا، تتبع محركات MUD أيضًا فكرة "القائمة على قاعدة البيانات"، والتي تتماشى تمامًا مع منهجية تطوير تطبيقات الإنترنت. لذا، لن تشعر محركات MUD بالغرابة لدى مطوري تطبيقات الإنترنت. فيما يلي، سنناقش أفكارنا حول صناعة الألعاب الكاملة السلسلة.
عندما ندخل إلى مجال الألعاب الكاملة السلسلة، الأسئلة الثلاثة التي نطرحها باستمرار على أنفسنا هي:
لماذا يحتاج اللعب بالسلسلة الكاملة؟
أي نوع من الألعاب مناسب للسلسلة بأكملها؟
ما هي العلاقة بين Fully on-Chain و Crypto native؟
التالي نناقش واحدا تلو الآخر:
للسؤال الأول: لماذا نحتاج إلى ألعاب سلسلة كاملة؟
يمكن تقسيم هذه المشكلة إلى مشكلتين فرعيتين.
1> لماذا تحتاج صناعة البلوكشين إلى ألعاب السلسلة الكاملة؟
2> لماذا يحتاج سوق العملات الرقمية إلى ألعاب سلسلة كاملة؟
من وجهة نظر صناعة بلوكشين:
نظام الأثيريوم قد تطور إلى مرحلة تتطلب ظهور تطبيقات معقدة على السلسلة (في الماضي، كانت تطبيقات الديفاي/الدي أو/التوكينات ذات القيمة الغير قابلة للتغيير بسيطة نسبيا، كما يمكن رؤية ذلك من عدد العقود التي تدعم تطبيق معين). مثال آخر هو دعم طبقة الأثيريوم للطبقة 2 بالكامل لسلسلة الألعاب. من وجهة نظر منطقية داخلية، لا يمكن صنع الماس بدون عمل الخزف. تحتاج الطبقة 2 إلى كل عمل الخزف في سلسلة الألعاب بأكملها لتحقيق ذاتها.
لم يكن لدى مجال NFT نموذج جديد لتعزيز تطويره بعد فقاعة PFP. النقطة التي تميز NFT عن ERC-20 هي القابلية للتكامل، ومشهد الألعاب هو المكان الطبيعي لقابلية NFT.
الهدف النهائي للعبة السلسلة بأكملهاالعالم الذاتي" هو تفصيل آخر للشكل النهائي للعالم الرقمي (كان التفصيل الأخير هو "Metaverse" الذي أصبح في حالة من الفوضى بعد الإفراط في تسويقه). كخيال مشترك للبشرية من أجل مستقبل أفضل ، يتمتع العالم المستقل بجاذبية كبيرة ، والعالم بأسره كطريقة مهمة لتحقيق هذا الهدف ، فإن ألعاب السلسلة لديها أيضا آمال كبيرة.
الموقع الرسمي لعوالم الذكاء الاصطناعي:https://aw.network/
بالنظر إلى سوق التشفير:
عند النظر إلى تاريخ تطوير الإنترنت، تكون الألعاب دائمًا الأولى التي تعتمد على حقول التكنولوجيا الجديدة. الألعاب هي تطبيقات المستهلك وأسهل الوصول إلى المستخدمين النهائيين.
نموذج لعبة البلوكشين/GameFi تم تزييفه مؤقتًا، وعاد استكشاف ألعاب البلوكشين إلى أصل الألعاب: اللعب. اللعب القائم على تقنية البلوكشين (الذي يرث بالكامل مزايا وعيوب التكنولوجيا) يعد بتقديم تجارب ونماذج جديدة غير متوفرة في الماضي، مما يجذب المستخدمين.
نأتي إلى السؤال الثاني: أي نوع من الألعاب مناسب للسلسلة بأكملها؟؟
في الوقت الحاضر ، لم تتوصل الصناعة / السوق بعد إلى توافق في الآراء بشأن هذه النقطة. من منظور استقرائي ، الفئتان المذكورتان أعلاه هما استراتيجية الوقت الفعلي (RTS) وقواعد التعريف (قواعد Meta). ومع ذلك ، فإن مشاكل مثل الابتكار غير الكافي ، ونماذج الأعمال غير الواضحة ، والفشل في مطابقة المستخدمين بشكل جيد لا تزال مشاكل لا مفر منها في هذا المجال.
شخصياً، أعتقد أن فئة القواعد الفرعية للميتا لديها إمكانيات أكثر نسبياً، لأنها على الأقل لديها مزيد من الإمكانيات الأصلية على مستوى القاعدة ومستوى التوافق. ومع ذلك، لا يزال في وقت مبكر للغاية ومن الصعب تقييم تأكيده. الصورة أدناه هي واجهة لعبة بكسيلو للقواعد الفرعية الكاملة.
مصدر الصورة:https://twitter.com/0xPixeLAW/status/1704375844674912515
قد تكون قابلية التشغيل البيني بين الألعاب اقتراحا خاطئا لفترة طويلة. على الرغم من أن ألعاب السلسلة الكاملة ترث قابلية التشغيل البيني ل blockchain ، من منظور الأعمال / المنتج / البيئي ، فمن الصعب تخيل منتجين مستقلين يتم تطويرهما للتشغيل البيني على المدى القصير ، وكانت هذه النقطة أيضا في دورة "Metaverse" السابقة. لقد تم تزويرها إلى حد ما.
الآن دعونا نتحدث عن السؤال الثالث: ما هو العلاقة بين السلسلة الكاملة والعملة الرقمية الأصلية؟
أولاً، سيجعل التأكيد المفرط على "على السلسلة بأكملها" الناس يقعون في الدائرة الخبيثة للأصولية. البنية التحتية الحالية للبلوكشين لا يمكن أن تدعم مجموعة واسعة من الألعاب لوضع جميع البيانات/المنطق على السلسلة. بالإضافة إلى ذلك، GubSheep، مؤسس "الغابة الداكنة"،صياغة أوليةتعتبر «العاب كريبتو-ناتيف»، لتفكير في كيفية تعزيز تطور صناعة البلوكشين بأقصى درجة من منظومة التشفير. تعرض الصورة أدناه جزءا من النص الأصلي للعبة جبشيب.
المصدر:https://gubsheep.substack.com/p/the-strongest-crypto-gaming-thesis
المولود الرقمي هو مفهوم له دلالات متغيرة باستمرار وحدود غامضة نسبيًا. هناك تفسيرات مختلفة في مراحل مختلفة من تطوير تقنية سلسلة الكتل.
في عام 2017، تم اعتبار CryptoKitties قمة العملات المشفرة الأصلية؛
في عام 2018، كان Uniswap نموذجًا للعملات الرقمية الأصلية؛
في عام 2020، CryptoArt هو قمة العملات المشفرة؛
في عام 2021، The DAO هو التجسيد الحقيقي للعملات الرقمية;
بحلول عام 2023، يُعتبر الألعاب الكاملة السلسلة، حيث تكون البيانات والمنطق على السلسلة، نموذجًا للعملة الرقمية.
لكن في الأساس، التشفير هو فكرة، ليس دوغما.
الكامل على سلسلة هو منهجية تنفذ التشفير الأصلي، ولكن لا يمكننا أن نقيد بها، تمامًا كما هو الحال مع اللامركزية، الثورة/الثورة المضادة، جميعها مفاهيم نسبية، ومن السهل أن تؤدي إلى نهاية مسدودة إذا تعلقت كثيرًا بالمعنى الحرفي.
إذاً، سواء كانت الألعاب الكاملة السلسلة أو الألعاب الرقمية الأصلية، ما هي الإمكانيات الجديدة التي تحملها؟
أعتقد أنه بعد جعل منطق اللعبة/القواعد شفافة من خلال السلسلة، يمكن لجميع استراتيجيات اللعب أن تنافس بشكل حقيقي. بالطبع، نحتاج إلى العثور على سيناريو يمكن أن يعكس هذه الفوائد. على سبيل المثال، بسبب أن منطق اللعبة على السلسلة، يمكنك كتابة كود العقد مباشرة للعب اللعبة، جنبًا إلى جنب مع استراتيجيات لعب مولّدة بواسطة الذكاء الاصطناعي، قد يسمح لنا بأن نمتلك وكيل لاعب افتراضي فوق المتوسط/لا ينام (هذه الفكرة مستوحاة من Shoshin المستوحاة).
بالإضافة إلى ذلك، محرك لعبة سلسلة كاملة مثل MUD (في الواقع، من الأنسب أن نطلق عليه إطار تطوير تطبيقات سلسلة كاملة)، كجزء من قاعدة بيانات + إطار تطوير تطبيقات، له أهمية ذاتية واضحة في نظام الـ EVMs. ومع ذلك، قواعد بيانات/إطارات تطوير التطبيقات هي سلع عامة وليس لديها نموذج عمل على الإطلاق. لحسن الحظ، هناك آلية رمزية أصلية لسلسلة الكتل، فضلاً عنEIP-6969 يمكن أن يساعد مخطط حقوق ملكية المطور هذا مطوري هذه العناصر العادلة في الحصول على القيمة بطريقة خارجية. هذه هي النقطة التي تتفوق فيها blockchain على Web2.
"التوافق" ليس فقط 51% من قوة الحوسبة، بل هو أيضًا القيم المشتركة التي تتواجد بين المجتمعات/المجموعات. من هذا المنظور، فإن علم الكريبتوغرافيا هو نوع من القيم.
موقع MUD 2048 الرسمي:https://www.mud2048.fun/
مشروع MUD 2048 رمز البرنامج:https://github.com/themetacat/MUD2048
موقع الويب الرسمي لمحرك MUD: https://mud.dev/
الموقع الرسمي لكتاب العوالم الذاتية:https://aw.network/
نظرية اللعب المشفرة الأصلية لـ GubSheep:https://gubsheep.substack.com/p/the-strongest-crypto-gaming-thesis