अगर यह मैं था, मैं इसे जमीन से सॉकेट के साथ बनाऊंगा। भेजने के लिए डेटा की मात्रा बहुत कम है, और टर्न-आधारित प्रकृति थोड़ा विलंबता को अस्वीकार्य बनाती है।
असली सवाल, मेरी राय में, इस पर आपको कौन सी अतिरिक्त सुविधाएँ चाहिए। क्या खेल सत्र लगातार हैं (क्या कोई बाहर निकल सकता है और फिर से जुड़ सकता है, क्या खेल को बचाया जा सकता है, आदि)? यदि आप एक सभ्यता शैली को सहेज रहे हैं, तो आप संभवतः सभी ग्राहकों के लिए डेटा को सहेजना चाहते हैं, या सत्यापन के लिए सर्वर द्वारा प्रदान की गई कुंजी के साथ सेव क्लाइंट साइड में हैं।
क्या आपको किसी भी प्रकार के बीच-बीच में रिपोर्टिंग की आवश्यकता है, जैसे "प्लेयर 2 एक इकाई को स्थानांतरित कर रहा है" या "आपका प्रतिद्वंद्वी AFK हो सकता है"? यदि ऐसा है तो आप सॉकेट कनेक्शन को खुला रखना चाहते हैं।
आम तौर पर बोलना, जब तक कि कुछ विचलित करने का कारण नहीं है, मैं सर्वर को जितना संभव हो उतना गूंगा और सरल रखूंगा। डिबग करने के लिए कम छोड़ देता है। मैं भी सादे पाठ प्रोटोकॉल का उपयोग करना पसंद करता हूं, क्योंकि मैं अपने सर्वर को वास्तविक गेम क्लाइंट के बिना टेलनेट का उपयोग करके परीक्षण कर सकता हूं (जो किसी समस्या में संदिग्ध हो सकता है), लेकिन यह डेटा के विंडशर हेरफेर को प्रोत्साहित करता है (जो आप शायद करेंगे) वैसे भी जांच करें)।
संपादित करें: यदि खेल केवल 1-ऑन -1 गेम का समर्थन करता है, तो सहकर्मी से सहकर्मी कनेक्शन देखने लायक हो सकते हैं।