Sofa_King's Forum Posts

  • Well, I just realized that I have been using the r248 release (beta). I must have updated without realizing. Anyways, I tried an older release and this issue goes away. So it must be something related to this beta release.

    The shitty thing is that it wont let me roll back my most current save, so i'm stuck working on r248 now.

    Is this something I should report to the Construct head honchos?

    EDIT:I was able to easily migrate all the recent progress into an older non-r428 save. So all is well with me now :)

  • Yeah, I realized that after posting the screenshot. Really the only important part is that it gets stuck at:

    If TP2_LO1_Progress = 10.11 and Is ready for input

    When I disable the 'Is ready for input' condition, the peer is able to progress onto and gets stuck at the next condition:

    If Peer message Send_... and TP2_LO1_Progress = 10.12

    This is the reason why I put the Is ready for input condition there in the first place, to make sure the host is ready to receive and transmit the data.

    What is the correct way to use this condition?

    Why is there a communication breakdown between the host and the peer?

    Everything was working perfectly until a couple days ago. It is super strange because all my older backups are hitting the same issue in the same place.

  • Some additional info on this;

    As far as I can tell, the host is able to see and seems willing to accept the peer into the room. It looks like nothing has changed on the hosts end. The peers alias, ID, etc is all getting picked up successfully by the host.

  • Hi all. I'm running into a weird error where the peers are indefinitely waiting for the 'ready for input' trigger from the host. At first I thought it might be that I deleted something important by accident, so I went to a really old back up and even this old copy hits the same problem.

    Has something recently changed in/on/with the signaling server?

    Here is a screenshot of the events where the peers are getting stuck. I can see that the peers are getting stuck at 'TP2_LO1_Progress = 10.11'. They are sitting there and waiting for the secondary 'Is ready for input' condition to trigger.

  • Just an additional note:

    This guy wrote about this a long time ago. He came to the same conclusion that I have; There should be another way, but making two rooms works pretty well also.

  • Then the method of moving to a new room upon starting a game would be the most suitable, as you can then display only rooms that have space as options to join

    Yeah, I think you're right. It seems to be the only way. I do feel like Mr. Ashley could potentially consider adding more control over the room state at some point in the future. I'm not the only one who has asked this question.

    But until then...

    I'll have the host broadcast the new room name, have the peer save the new name in a global variable, and on the game start all peers leave the room and join the correct room.

    Thanks oosyrag for the help!

  • The first solution I tried was to auto kick any people trying to join the room. The issue I have with this is that, when the peer requests a 'room list', the room list is pulled based on its state.

    The current room will be locked in practice, but there is no way for the C3 multiplayer system to know this. So I will have many people trying to join games and they have no way of knowing if it is open or closed.

    The idea of forwarding them to the next open game is good, but it doesn't really work for me, since each active game is highly customized. So there is no such thing as 'the next room' for me.

    I wish I could just have the host lock the room.

  • The only thing I can think of is to use an intermediary "matchmaking" room. Then create a new private non-autojoining room when the number of peers are determined.

    Hi oosyrag! Yes, I saw this in some other posts. It would work, but it seems inefficient. All my players would need to join a room, then all leave, and join a new room. I feel like adding a [Host > 'lock room'] would make waaaaay more sense.

    I appreciate the help though. If I cant find a better way, then I guess ill have to do this.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Just gonna give this one little bump, in the hopes that someone smart might have missed it. :)

  • I did some research into servers. They look nice, but in the end I opted for the C3 multiplayer plug in. If you can make one of the players a host, then really you dont need a server.

    I would highly recommend going all the way through the Construct Multiplayer tuts to begin with.

    I think the process is pretty smooth when using the stock plug in. Some real tricky things to note are:

    • The plugin is really good at sending numbers but not strings
    • There should be some built in system to deal with different speeds. In my game, once all the things are loaded and ready to go, I have all the peers send a message to the host. Once the host has received a message from all the peers, then the host 'broadcasts' a 'START' trigger.
    • The 'setbit' stuff looks really confusing on the surface, but once you give it a little time, you'll realize its actually real simple. It's almost like a mini 8 box array or something. With it, you can easily send all sorts of commands from the peer to the host while also using very minimal data, and hence little lag.
    • The easiest way to get started would be to reimagine the game in your head to fit one of the Construct multiplayer templates. There are lots of little things where, if you do it wrong, it wont work. So just following the tut step by tep to begin with is helpful.

    thanks

  • I would like to be able to trigger an event (from the host) that changes the rooms 'locking' state from 'unlocked' to 'locked'.

    There is an option when creating the room, to trigger a lock room when the room hits the max number of peers, but this wouldn't work for me since the host of my game should be able to start the game with any number of peers connected.

    • I could think of one possible way... Is it possible for the host to change the 'max peer' to a lower number at some point AFTER the game has already been created?
    • Is there a way for the host to just 'lock' the room?

    Thanks friends

  • I've noticed that the hot new thing is to have online 'WebXR' capabilities. Perhaps this could be possible for Construct in the future?

  • You can view any website through the oculus 2 quest. If you publish your Construct 3 to a web site you can view it in VR.

    That's good that we are able to view a static 2d representation of our creations, like we could on our phones, but I think that defeats the main purpose/idea of VR itself. Similar is watching video online. There are websites that have normal 2d videos, that you can watch through the Oculus browser. There are 180* and 360* videos, that allow you to turn your head and see things happening off screen. Then there are truer 3D creations that allow you to move forward and backward in the scene.

    I am look to climb up this hierarchy, probably starting with 180/360 scenes that have an illusion of depth created through parallax scrolling and z layers.

  • Sorry for reviving an old thread, but this is exactly what I was going to ask. Like the OP, we all know that Construct is traditionally for 2D games and that an engine like Unity is more suited for these purposes, buttttt...... screw that! I love Construct. We have parallax scrolling and Z layers and so many other wonderful things that can make this possible.

    Does anyone have any tips on where to get started? Are there any good tut's on this? Any good threads that I should read through?