Rozwiązanie jest proste, zmień bazę danych na mongodb, jest to baza danych, która przechowuje dane w formacie JSON, np.
{
życie: 100,
poziom: 50,
nick: 'crool'
}
przy dodawaniu nowego obiektu, w tym przypadku użytkownika mongodb automatycznie nadaje obiektowi swój identyfikator (ObjectId)
Do pracy z mongodb szczególnie polecam moduł mongoose, masz tutaj przykład kodu:
const mongoose = require('mongoose'); // definujesz obiekt reprezentujący modul
mongoose.connect('mongodb://localhost:27017/'); //łączysz z bazą danych
let userModel = new mongoose.Schema({ //tworzysz nowy schemat przechowywania danych
lvl: Number, //podajesz nazwe klucza i rodzaj np. Number, String, Array
hp: Number,
nick: String
},{
collection: 'users' //nazwa kolekcji
});
let userModelToUse = mongoose.model('users', userModel);
io.on('newUser', (user) => {
let newUser = new userModelToUse({ //tworzysz nowy obiekt oparty na schemacie, dane jak lvl możesz pobrać z socketów
lvl: user.lvl,
hp: user.hp,
nick: user.nick
});
newUser.save(); //nastepnie zapisujesz usera w bazie
});
io.on('findUser', (userId) => {
userModelToUse.findById(userId, (err, results) => { //szukasz usera
//result to twój user :)
});
});
Myślę, że zrobiłem żadnego błędu, polecam dokumentacje mongoose, tam dowiesz się więcej
PS
W czym robisz gierke? Jak chcesz mogę Ci pokazać moją w nodejs po stronie serwera i canvasie po stronie clienta, pozdrawiam