Google App Engine kullanarak istemci / sunucu oyunu nasıl yapılır (Eğitici arıyorsunuz)


11

(NOT: Bu, SO'da sorduğum ve GameDev <utanç içinde kafayı asın> hakkında geçici olarak unutmuş olduğum bir sorunun kopyasıdır.

Ben arka istemci (şartname gereksinimi) olarak Google Apps Engine kullanarak ilk istemci / sunucu oyunu yapmaya çalışıyorum Ben öğreticiler (Java) yaptım, ama hepsi son derece tarayıcı merkezli görünüyor.

Temel olarak, (mobil, önemli değil) uygulamamın olmasını istiyorum:

  • Kullanıcının bir oyun hesabı oluşturmasına izin ver (Google hesabı DEĞİL!)
  • Bu hesapla giriş yapın.
  • Sunucuya hesap tanımlı bir istek göndermek için "MARCO" düğmesine basın.
  • Sunucudan "POLO" yanıtı alın.
    • Web sayfası olarak değil, veri olarak (JSON nesnesi, XML-DOM veya benzeri).

Herkes bana bunu başarmak için iyi bir öğretici / örnek proje / ayrıntılı okuma işaret edebilir? Eminim ki, bir kez çalıştıktan sonra, geri kalanını yapabilirim - ama "başlangıç ​​kapısında takılıp kaldım" sorununu yaşıyorum, temel hesap girişini çalıştıramıyorum ve HTML olmayan veri alışverişi.

Teşekkürler!


Sunucu tarafı Java veya Python ile mi yazılacak? Sunucudaki basit bir veritabanı yeterli olacak mı yoksa çok fazla oyun mantığı gerçekleştirmeniz mi gerekiyor?
Alex Schearer

@Alex: Java ile yazıyorum. Sorumun neden önemli olduğundan emin olmasam da, hem basit bir veritabanı hem de bazı oyun mantığı olacak. Sıkıştığım kısım kullanıcı kimlik doğrulaması kurulumunda. Marco / Polo örneği sadece önemsiz bir oyun-veri alışverişi idi, ancak sorun yaşadığım kilit nokta kullanıcı kimlik doğrulama şeyleridir.
Olie

Yanıtlar:



0

Basit bir şey için python kullanmanızı tavsiye ederim (ve genel olarak python GAE deneyimi oldukça iyidir.)

Basit bir uygulama motoru öğretici ve dokümantasyon ne yapmak istediğiniz için yeterli eminim. 3 denetleyiciye sahip bir uygulama oluşturmak istiyorsunuz (kimlik bilgilerini kontrol edin, kimlik bilgileri oluşturun ve marco-polo'ya cevap verin).

Github'da uygulama motoru için açık kaynak kodlu python kodu örnekleri ve resmi sitede birçok belge var, denemeye devam et ve bir duvara girerseniz belirli bir soru sor

Umarım yardımcı olur!


Yeni bir dil (python) öğrenmek istemci-özelliğinde değildir; Java'yı biliyorum ve zaman kısıtlamasındayım. Nesne hiyerarşisi birbirine benzemeli, değil mi? Sorduğum şeyin çok çok basit olduğunu anlıyorum. Ama öğreticileri yaptım ve bu sadece benim için tıklamıyor. Ayrıca, öğreticiler ne istediğimi tam olarak göstermiyor ve "Google hesabı olmayanlar" a nasıl dönüştürüleceğini tam olarak anlayamıyorum.
Olie

0

Benim için tıklanmayan kısım - ve şüphelendiğim gibi, çok çok basitti - bunun sadece doPost () (veya doGet () uygulamasını gerçekleştirme meselesi olması ve yazma cevaplayıcıya geri dönelim.

Ayrıca, web.xml dosyasında (savaş klasöründe) yanıtlayıcı sınıf adlarını ve URL'lerini ayarlama konusunda ilk kez doğru bir şekilde takip etmediğim bazı bitler de vardı.

Bir kez ben (web.xml) doğru ayarlanmış var, o zaman doPost () rutin sadece satırlarında bir şey oldu:

public void doPost(HttpServletRequest req, HttpServletResponse resp)
  throws IOException {
    String reqTypeStr = req.getParameter("reqType");
    if (reqTypeStr.equalsIgnoreCase("marco")
        resp.getWriter().println("Polo!");
    else
            resp.getWriter().println("huh?");
}

Sayısız başka ayrıntı var ama bunlar beni en çok kapatan ikisi. Bu basit engeli aştığımda, diğer her şey çok hızlı bir şekilde birlikte aktı.


NOT: Bu hala bana iyi bir öğretici / izlenim işaret etmiyor, bu aslında sordum ne olduğunu, birisi beni bunlardan biri parlak bir işaret eğer, ben doğru cevap olarak işaretleyeceğim.
Olie
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.