0 Favourites

[Plugin] Photon Cloud

  • Hi

    I'm sorry about my English

    I would like to ask

    Why does Event 5 " On my room properties change" not work?

    Thank you

    Why does Event 5 " On actor properties change " same not work?

    I am a novice whether there are examples ?

    Thank you

  • Other client joined same room should update property to fire these conditions.

    See demo-test Test button handler.

    Note that in this demo "On ... change" conditions wrongly iterate properties with indices 0 and -1 if number of properties is 0. Check for 0 required before iteration.

  • I'm getting this error:

    ---------------------------

    Construct 2 Check failure

    ---------------------------

    Check failure! This is probably a bug:

    Could not find object's combo property index

    Condition: index >= 0

    File: Projects\ObjectInstance.cpp

    Line: 704

    Function: class cr::pod<class std::vector<struct era::InstanceProperty,class std::allocator<struct era::InstanceProperty> > > __cdecl ObjectInstanceERACallback::GetProperties(void) const

    Build: release 231 (64-bit) checked

    Component: Construct 2 IDE

    (Last Win32 error: 0)

    ...

    I do not see anything plugin related here. Have you reported a bug to Construct 2 developers?

    If you believe that this is plugin bug, please send us simple projects which reproduces it.

  • Photon Javascript SDK and Scirra plugin do not provide server time feature.

    You can implement something similar by pinging master client, measuring round trip time to master and adding half of this rtt to local time returned by master. Between such updates, increase the value according to local time change. The result should be synchronous on all clients even if pings are different.

    how can I make pinging sistem? I can't see in plugin expressions...

  • By ping I meant sending message to master which replies immediately with another message containing its local time.

  • Hello everyone, I was able to discover recently Photon and I came across your interesting exchanges while working for a few days on basic concepts in order to master the beast.

    It was a bit - or even a lot - tricky but much less than with my attempts via Scirra's Multiplayer object in its current state.

    At this stage, I can generate players with permanent update of their position (at each tile change to save bandwidth or at each rounded X or Y coordinate change for more fluidity).

    Each player present in the game - or each new player who joins a party - sees the other players in their true position, the same with bullets which are each attached to a single key and common to all players in order to manage collisions and "paternity" of players for each projectile (no other artificial object to simulate bullets, each bullet = just a real single bullet for everyone and identified by its unique key). A different path than yours Savvy001, but really appreciate your approach on all points !

    Same principle with mobs and pathfinding (a bit more complicated to execute than bullets cause - among other things - a mix with update players position). Here too, the "filiation" of a mob via a unique key and common to all, allows to manage the events of each mob for everyone. Unlike bullets and facing sometimes the complexity of an AI, each MOB is actually controlled by a single player (the one who spawns it), which then redispatches updates to other players. If the "owner" player leaves the game, another player takes over the mob's unique key to control it and continue "raise" updates to, again, other players and so on...

    Well, today I'm at this last point on mobs and it is not finished, I still have a lot of work if I want to continue to improve this part and the whole. That said, it really starts to run well and in a very coherent way, so in the end all my hopes were not in vain.

    I wanted to take this opportunity to tell you that I had many problems with cache functions, however, and using other tricks, I finally get through the "RemoveFromRoomCache" function without Data and just with a past TargetActor argument, to empty the "stack" of events from, for example, all the positions of a single player, in order to add only the last and therefore more recent one.

    Thus, and for example, when a new player joins a current game, he does not have to load all the movements of other players but only their last known position. This inevitably brings an enormous saving in bandwidth but also reinforces the coherence of all positions of all players, whatever the context.

    I have to admit that I didn't get much sleep last 72 hours, drinking a lot of coffee, the multiplayer approach being something very different compared to single/local method and each step can be purely nightmarish... Moreover, the lack of documentation and content for Construct 2 has absolutely not made the job easier.

    However, this was much simpler than with the C2 object! That said, and with the arrival of Construct 3, I guess with hope (and impatience) than Ashley and his team still reserve us other new (“good” lol) surprises on improving and simplifying their multiplayer features too.

    ThePhotons (Vadim), it's been a while since your Scirra SDK seems to exist. Even if it has already been asked here some time ago, could you please give us more information on the future of the plugin, improvement of its integration, new templates for use it correctly and better in Construct 2? I confess that for the moment, the situation is a little bit desertic, and all what we can find is very simple and/or buggy without advanced example.

    Thank for your lighting and your support. Any other Photon feedbacks and information from all of you are welcome.

    Best regards, Sébastien

  • Hi Sebastien

    Since most of Photon features are implemented in C2 plugin, we are focused more on bug fixes and minor updates like new regions addition. Please feel free to report bugs with reproduction details or simple project sample. It's not clear from your message whether cache functions work for you as they supposed to do or not. If something is already reported but still not fixed, please report it again.

    We do not plan to do more examples or tutorials at the moment. We have enough of this for other SDKs which can help to understand Photon usage common practices applicable to any SDK including Scirra C2.

  • Hi again Vadim / ThePhotons,

    Thanks for your attention. Unfortunately I expected an answer of this type concerning the lack of documentation and content, but I will not be discouraged for that, not for the moment! <img src="{SMILIES_PATH}/icon_e_biggrin.gif" alt=":D" title="Very Happy">

    You offer a really cool service that looks very powerful and with a beautiful showcase, so it's really great that you create a "bridge" between Photon and the C2 community of developers and hobbyists. Paradoxically, attract them may not be in your priority but it would still be necessary to provide them with the right keys to use your plugin in the best way. Please, don't forget you offer behind, all this alternative, a professional final product for potential customers. It would be good to be in agreement with that too, isn't it?

    To return to my experience, I've got mostly hashtable errors or nothing happens with "MergeCache, ReplaceCache and RemoveCache" but it's probably due to my usage or I don't know. As I said, I finally manage the cache with my trick of empty everything via "RemoveFromRoomCache" to add only the last entries that interest me and because this is the only clean way for now that I have found to make it work.

    The documentation on your website don't explain really what to do compared to what the plugin seems to offer us.

    For example, what we are supposed to pass in the Data field when we use these three cache options cited?

    https://doc-api.photonengine.com/en/jav ... tants.html

    https://doc.photonengine.com/en/realtim ... hed-events

    I take this opportunity to ask you a final question, on the Photon Dashboard, with a CCU Free Plan (3 BG included bandwith per CCU and month), we can see a monitoring of the consumption for the last 24 hours. Is it obliged to maintain in free plans a vision so reduced in time and concerning only the last entries?

    It seems to me necessary of being able to know what can support a project in total and any other limits using your technology. In short, how to know, understand, optimize (...) what we are really consuming on a month or any time laps if we can't analyze it at all?

  • > I'm getting this error:

    >

    > ---------------------------

    > Construct 2 Check failure

    > ---------------------------

    > Check failure! This is probably a bug:

    >

    > Could not find object's combo property index

    >

    > Condition: index >= 0

    > File: Projects\ObjectInstance.cpp

    > Line: 704

    > Function: class cr::pod<class std::vector<struct era::InstanceProperty,class std::allocator<struct era::InstanceProperty> > > __cdecl ObjectInstanceERACallback::GetProperties(void) const

    > Build: release 231 (64-bit) checked

    > Component: Construct 2 IDE

    > (Last Win32 error: 0)

    > ...

    >

    >

    I do not see anything plugin related here. Have you reported a bug to Construct 2 developers?

    If you believe that this is plugin bug, please send us simple projects which reproduces it.

    I get similar error on any project:

    ---------------------------
    Construct 2 Check failure
    ---------------------------
    Check failure!  This is probably a bug:
    
    Could not find object's combo property index
    
    Condition: index >= 0
    File: Projects\ObjectInstance.cpp
    Line: 702
    Function: class cr::pod<class std::vector<struct era::InstanceProperty,class std::allocator<struct era::InstanceProperty> > > __cdecl ObjectInstanceERACallback::GetProperties(void) const
    Build: release 243 (64-bit) checked
    Component: Construct 2 IDE
    (Last Win32 error: 0)
    
    You are using a 'checked' release of Construct 2, intended for testing, which causes certain errors to be reported this way.  Hit Ctrl+C to copy this messagebox - it's useful information for the developers, so please include it with any bug reports!  Click 'Abort' to quit (unsaved data will be lost!),'Retry' to turn off messages for this session and continue, or 'Ignore' to continue normally.
    ---------------------------
    Keskeytä   Uudelleen   Ohita   
    ---------------------------
    [/code:1ux2cns9]
    
    It's easily reproducible. Create a new project >> add photon >> try to run the demo and you get the error
    If you remove Photon plugin, the error goes away. The same thing happens on any project, except on the sample projects that were created for demonstrating photon. Perhaps something has fundamentally changed compared to the older builds. However, this sort of error can not be reported to Scirra as they will not debug third-party plugins (and this error goes away with the removal of the Photon plugin).
    
    p.s. saw you guys (Photon) at the London Pocket Gamer... great stuff! Too bad the C2 IDE is causing some trouble for implementing your solution currently.
  • Hi Sebastien,

    ...

    I take this opportunity to ask you a final question, on the Photon Dashboard, with a CCU Free Plan (3 BG included bandwith per CCU and month), we can see a monitoring of the consumption for the last 24 hours. Is it obliged to maintain in free plans a vision so reduced in time and concerning only the last entries?

    ...

    Can you please send this question to ?

    Then other guys who can help with dashboard will read and answer.

  • ---------------------------
    Construct 2 Check failure
    ---------------------------
    Check failure!  This is probably a bug:
    
    Could not find object's combo property index
    ...
    [/code:1q38q0u3]
    
    It's easily reproducible. Create a new project >> add photon >> try to run the demo and you get the error
    ...
    
    

    Please choose correct value in Region combo in Photon object properties after adding the object.

    We will fix this in next release.

  • >

    >

    ---------------------------
    > Construct 2 Check failure
    > ---------------------------
    > Check failure!  This is probably a bug:
    > 
    > Could not find object's combo property index
    > ...
    > [/code:3i27ddb3]
    > 
    > It's easily reproducible. Create a new project >> add photon >> try to run the demo and you get the error
    > ...
    > 
    > 
    Please choose correct value in Region combo in Photon object properties after adding the object.
    We will fix this in next release.
    

    Thanks! Seems to work just fine now.

  • ThePhotons. As you may know Construct 3 beta will be released soon, and I was just wondering if you're planning to make a version of your plugin available for Construct 3?

    This blog post covers a bit more about how plugins are handled in Construct 3.

    https://www.scirra.com/blog/193/addons-in-construct-3

    I'd love to import my project to Construct 3, and continue my work there and keep using photon cloud.

  • Hello #ThePhotons,

    I am happy to use this plugin.

    I have one of kind enemy named enemy01, spawn randomly every 3 to 5 second, in 1 minute I have about 20 enemy01, some enemy01 already destoyed outside screen.

    My question is how to create sync for peer for enemy01 position and angle for realtime?, include their existence begin their already created from host side and after peer get login?

    Could you give me some simple example for ease my experiment.

    Thanks.

  • Construct 3

    Buy Construct 3

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

    Buy Now Construct 3 users don't see these ads
  • Hi ThePhotons and community

    The following expressions isn't working when I compile a project with the Minify script option:

    Photon.AppStatsGameCount

    Photon.AppStatsMasterPeerCount

    Photon.AppStatsPeerCount

    They show NaN instead of a number. They are working properly without Minify script.

    Sorry, if someone has already described this problem before.

Jump to:
Active Users
There are 2 visitors browsing this topic (0 users and 2 guests)