[Plugin] Photon Cloud

Post your completed addons to share with the community

Post » Wed Jan 18, 2017 8:47 pm

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
Image


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

Image

I am a novice whether there are examples ?
Thank you
B
9
S
2
Posts: 9
Reputation: 1,394

Post » Fri Jan 20, 2017 10:28 am

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.
B
6
S
2
Posts: 144
Reputation: 946

Post » Fri Jan 20, 2017 10:32 am

RayKi wrote: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.
B
6
S
2
Posts: 144
Reputation: 946

Post » Tue Jan 24, 2017 8:14 pm

ThePhotons wrote: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...
B
16
S
5
G
2
Posts: 31
Reputation: 1,720

Post » Wed Jan 25, 2017 3:30 pm

By ping I meant sending message to master which replies immediately with another message containing its local time.
B
6
S
2
Posts: 144
Reputation: 946

Post » Sun Feb 19, 2017 5:14 pm

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
B
33
S
13
G
5
Posts: 42
Reputation: 4,951

Post » Mon Feb 20, 2017 3:33 pm

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.
B
6
S
2
Posts: 144
Reputation: 946

Post » Tue Feb 21, 2017 8:22 am

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! :D

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?

Image
B
33
S
13
G
5
Posts: 42
Reputation: 4,951

Post » Wed Mar 01, 2017 5:52 pm

ThePhotons wrote:
RayKi wrote: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:
Code: Select all
---------------------------
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   
---------------------------


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.
B
13
S
3
G
1
Posts: 71
Reputation: 998

Post » Thu Mar 02, 2017 4:08 pm

Hi Sebastien,
Sebastien wrote:...
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 [email protected] ?
Then other guys who can help with dashboard will read and answer.
B
6
S
2
Posts: 144
Reputation: 946

PreviousNext

Return to Completed Addons

Who is online

Users browsing this forum: No registered users and 3 guests