Navigation

    Colyseus
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Users
    1. Home
    2. bralz
    3. Posts
    • Profile
    • More
      • Continue chat with bralz
      • Flag Profile
      • Following
      • Followers
      • Topics
      • Posts
      • Best
      • Groups

    Posts made by bralz

    Tracking status of a game across multiple arena instances?

    Hello,

    I recently upgraded to the powered ascent plan. However, the additional game servers has caused a problem for my deployment.

    As part of my deployment, each game goes through a graceful shutdown process. The game cannot be reloaded until this process is complete, or it may corrupt the game. This was not a problem when I only had one server, as I could check for whether that game was still running.

    However, now that there are multiple instances I need a solution for checking every running instance for the game's status.

    Is there any way to query the game rooms for all running instances in order to check whether a game is still live? Thanks.

    e: or alternatively, is there some sort of built-in redis pubsub solution I could use to track active games across all instances?

    posted in Colyseus Arena - Cloud Hosting •
    RE: Documentation on deploying with HTTPS? (solved)

    The issue was that you should not specify the port 2567 when using wss.

    However, I am now getting CORS errors attempting to connect.

    EDIT: And that issue was that protobuf files don't seem to get copied into lib as part of the default build process. I had to cp them in myself.

    I would still like to know however if it's possible to override CORS to only allow certain websites to connect.

    posted in Colyseus Arena - Cloud Hosting •
    Documentation on deploying with HTTPS? (solved)

    I would like to use the Arena cloud service for hosting the server, but it needs to be HTTPS enabled. Could you provide a guide on how to set this up with an Arena-hosted server?

    Currently I am following this topic (https://discuss.colyseus.io/topic/598/how-to-deploy-https-and-wss-solved) using self-signed certs from openssl but this gives me a ERR_CERT_AUTHORITY_INVALID error when attempting to connect through wss.

    How can I acquire a certificate for my Arena server?

    posted in Colyseus Arena - Cloud Hosting •
    Please add a removal method for onMessage for clients

    There is a method "removeAllListeners()" that removes ALL listeners from a client. I would suggest a method of removing a specific onMessage listener by name.

    A useful pattern for in socket.io is to emit some message and then await a Promise for its broadcast back. This allows you to chain the response as part of a parent function. However, its safest to then do a socket.off() for that message type once you've gotten it back. I'd like this same ability when using Colyseus, thanks.

    posted in Questions & Help •
    Colyseus for a turn-based singleplayer game with server authority?(solved)

    Hello. I have recently deployed a GameFi application (https://hashandslash.io/) that is a singleplayer, turn-based roguelike game. As it's GameFi, the game needs to be server authoritative despite being singleplayer.

    Originally I wrote the game server in socket.io from scratch, and I'm looking for a solution that will scale automatically before I take it to Mainnet. So I have some questions about Colyseus:

    1. I currently update the client by sending a single protobuf message containing the results of each turn. Does Colyseus support protobufs for gamestate updates?

    2. It looks like Colyseus is designed for realtime games specifically. I only need to send a gamestate update whenever a player submits a valid turn. Is there an option for turn-based gamestate updates?

    3. While the game is singleplayer, I also give other players the option to observe a game by joining its socket.io room. Is this something I can recreate in Colyseus? Would I be able to give players a global list of active games across whatever horizontal scaling you're using?

    4. I need to be able to encrypt/decrypt certain server-side messages which are stored in a DLT. Does Colyseus support any kind of key rotation/management system for individual games? (This one isn't too big of a deal as long as I can use the aws sdk).

    5. Lastly, there's various DLT-related stuff the server needs to do, including storing and accessing private keys. Is there any limitation wrt outbound traffic (specifically to the Interplanetary File System) on Colyseus, and does Colyseus have a guarantee as to account privacy (no individual employee has access to a client's server info)?

    Thanks.

    posted in Questions & Help •