guardar variable de incremento en una db?



  • digamos que tengo una variable de incrementos de los puntos en un juego de phasser, como la guardo en una base de datos, no importa si es sql o noSql


  • Mod

    No creo que usar una DB sea una buena idea... si solo vas a almacenar un score te recomiendo hacerlo de esta manera, lo he probado y funciona : https://pastebin.com/ahcMEA8g

    Dime si te ha sido de ayuda.

    saludos :D


  • administrators

    Queda un poco fuera de la programación de Phaser pero he aquí como lo haría con Ruby usando SQLite3:

    Fichero servidor.rb

    require "sinatra"
    require "sqlite3"
    
    get "/puntos/:usuario/:puntos" do
        usuario = params["usuario"]
        puntos = params["puntos"]
        begin
            db = SQLite3::Database.open "datos.db"
            db.execute "CREATE TABLE IF NOT EXISTS Puntos(Id INTEGER PRIMARY KEY, User TEXT, Puntos INTEGER)"
            db.execute "INSERT INTO Puntos (User,Puntos) VALUES('#{usuario}','#{puntos}')"
        rescue SQLite3::Exception => e
            puts e
        ensure
            db.close if db
        end
    end
    

    En JavaScript actualizarías la puntuación así

    var xhr = new XMLHttpRequest();
    xhr.open("GET","/puntos/USUARIO/PUNTOS_NUEVOS")
    xhr.send();
    

    De todos modos concuerdo con @TrinityCore en que quizá no sea la mejor opción. Esto añade una complejidad muchas veces innecesaria.



  • gracias por sus respuestas, estoy desarrollando un video juego para el proytecto final de la universidad en ese proyecto tengo q realizar el juego como tal con bases de datos y demas, juego en phaser en tiempo real utilizare node js con socket.io y aparte de eso necesito tulizar bases de datos para guardar informacion d elos usuarios que jueguen, como sera un juego online, cad ausuario almacenara una estadistida s de sus scores o de sus datos personale sd elogin, por eso la pregunta.. gracias



  • habia pensado utilizar mongo db o alguna db no relacional


  • Mod

    Bueno, si debes de utilizar una base de datos si o si, entonces esta bien....

    Por otro lado yo lo haría con php/mysql y ajax mediante jquery o angular.

    Aquí esta el código por si quieres darle un vistazo: https://pastebin.com/LtMDqqVZ

    saludos y suerte con ese proyecto! :D



  • ya quedo, el proyecto tiene que ser con mongo db, nodeJs,express,phaserJs alguna recomendacion? o tutorial?


  • Mod

    Realmente no se entiende lo que estas buscando, o por lo menos yo no comprendo.

    Estaría bueno que colocaras información sobre los lenguajes en los que debes trabajar, porque de lo contrario yo me molesto en hacerte un ejemplo en PHP que finalmente no te sirve.

    No es que me moleste, de hecho disfruto haciendo ejemplos para las personas que requieren ayuda, a lo que voy es que mientras mas detallada sea la información de lo que debes hacer y/o utilizar, mas precisa sera también la respuesta que podamos brindarte, y así mas rápido obtendrás una solución.

    saludos!



  • TrinityCore... tienes toda la razon disculpa amigo, el juego lo desarrollare todo cn javaScript, del lado del cliente utilizafre phaser, del servidor utilizare node.jsy base de datos utilizare mongo db, ahora la gracia es crear un juego donde se registren los usuarios (no se si con phaser pueda hacer un login de usuarios, si no la verdad es algo que no se como podria hacerlo, si sabes te agradeceria)el juego sera de miniGames donde los usuarios hagan un record un score y se guarde en el usuaroil y en la base de datos y asi poder mostrar una tabla con los mejores puntajes


  • Mod

    La verdad no se si puede crearse algo así como un "LogIn" solo con phaser, digo, no he intentado ni indagado sobre eso, pero, ¿debes hacerlo si o si en phaser?, es decir, ¿no puedes usar solo JavaScript puro?

    Si puedes, entonces solo es cuestión de crearte una clase o simplemente una función que registre o logee al usuario en caso de que la cuenta ingresada exista.

    La verdad no se sobre MongoDB pero le echare un ojo porque parece interesante.

    Aqui te dejare un enlace que parece bueno, mas si ya sabes la syntaxis de ese lenguaje:
    Inserción y Consulta de datos con MongoDB

    No creo que deba de ser tan complicado, teniendo en cuenta que lo que necesitas es simplemente Insertar, Actualizar y Consultar datos; Básicamente con solo un par de lineas deberías de lograr el cometido.

    De todos modos, mañana me pondré a la practica con MongoDB para hacer esas tres cosas y así espero poder darte una respuesta mas certera o un ejemplo.

    Mientras tanto quedara que intentes o que otro usuario que maneje MongoDB te de la respuesta.

    saludos!



  • gracias!1 si pues actualmente estoy viendo unos tutoriales de nodejs y mongoDB, por ahora cree un registro de usuarios con node js,express,jade y mongodb, ya me esta guardando los datos en la db, pues ire intentando de todas las formas posibles, cada ves q avanzo un paso me salen nuevas dudas, ya hora tengo otra, al utilizar jade y con phaser.. de todas maneras muchas gracias, todo lo poco que vaya aprendiendo lo dejare aqui, espero que con esto salga algo bueno para despues poder explicarlo y poder ayudarle a mas personas


  • administrators

    Phaser es una librería de juegos, los logins y demás no se consideran parte del gameplay por lo que no te va a ayudar Phaser en ello (pero tampoco te lo va a poner más difícil, ahí está la ventaja de Phaser respecto a otras librerías). Simplemente la manera estándar de un formulario en el cliente (ni siquiera hacer falta JavaScript para el formulario) y con Express manejas todo.

    No hace falta usar Jade (que ya no se llama así, se llama ahora Pug por temas legales) si no lo vas a usar. Con HTML normal y corriente, Express funciona igual y puedes tener formularios igualmente de Login.

    Quizá te lie esto un poco más, si es así, ignóralo, pero existe una librería der Node .js llamada Passport.js que tiene logins sociales. Puedes hacer que los usuarios no tengan que registrarse ni recordar una contraseña, solo un botón y entran con su cuenta de Google o de Facebook.

    De todos modos, si ya has conseguido insertar datos en MongoDB fantástico, ya el resto vas a ver como no es tan complicado.



  • hola admin!!! gracias por tus datos!!!! sii en esas estoy ya estoy haciendo conexciones node, mongo, y si pues usare express y mirare tu libreria, la gracia seria un login sea cm sea y despues me entre al phaser, mongo lo puedo usar con pug o sin pug entonces no hay lio, estoy es aprendiendo para guardar digamos los puntajes y y asociarlos al registro del usuario, y crear una tabla en donde todos los usuarios registren su puntaje y asi puedan competir por quien sea el mejor, si tienes mas ayudas con gusto las leooo y gracias !!!


Accede para responder
 

Has perdido la conexión. Reconectando a Gamedev Hispano.