lennaert's Recent Forum Activity

  • I had actually just asked you to take a look at the involved scripts, the plain JS files, yours in combination with the webrtc.js file. Not to spent days on end debugging a library.

    Seeing as construct 2 does not support OSX, I was not under the impression you would even have an Imac available in your development team, which would render your debugging capabilities to nill.

    I must say I find it a bit weak on your end to mention it could kill ALL productivity for a c3 release .. as if you would be trying to get the community to back your decision ... kinda lame if you ask me.

    More so, I would imagine participants of this community not minding if c3 would take a week longer to be released if we would have Multiplayer functionality between Android and Itune apps within a couple days.

    But that is just me guessing.

    Also, you mentioning they are "probably/likely" building their own well tested version .... well ... if thats you just grabbing ideas from your ass, then fine ... but please mention so, so I don't go chasing something you pulled from your butt ....

    finer details ....

    [quote:2l3cwtym]Apple’s Job Post for WebRTC

    WebKit Media Engineer – WebRTC

    Job Number: 43451266

    Santa Clara Valley, California, United States

    Posted: Oct. 19, 2015

    Weekly Hours: 40.00

    So you might imagine ... this will take a bit longer then "soon"

    Oh, and I could also point out they might go With OpenWebRTC, which is compatible with Microsoft Edge ... but not directly with Googles variant. Oh my ......

    Update to the current problem with iosrtc:

    Construct 2 scripts do something which allows the Datachannel to be used without the need for a local audio or video feed.

    The IOS versions all use the WebRTC to make audio/video chat, and all connections are initiated with the need for video or audio.

    I been trying to adapt the code to initialize the RTCDataChannel by itself, without the need for the audio/video feed, but so far been unsuccessful.

    PS: a neato side fact, there are more IOS apps running audio/video chat implementations with WebRTC, then there are Android apps using WebRTC for communication.

  • No, I do not want to get dragged in to debugging somebody else's poor-quality non-standards-compliant WebRTC code.

    Dragged in lol, cheese ashley .. you can be an arrogant ass at times.

    And how the heck do you come up with poor quality none standard ??? Is that your arrogance getting the better of you ?

    Seriously ... iosrtc exposes the functionality from google code, and the library is build upon the google build tools ...

    w3c compliant and all ....

    but ... you just go ahead and shoot it down before even considering it ... wtf do you even come to the forum.

  • This is why we avoid relying on any third-party non-browser implementations of browser features. They're always buggy, incomplete or have other major drawbacks like poor performance. Basically unless the library advertises that it passes a comprehensive standards-compliant test suite, it's probably useless. If anyone finds something that actually works smoothly we could think about supporting it more directly, but if not I think it would be better to wait until Apple add built-in support (which rumour has it they are working on).

    I have boiled the performance problems down to an implementation problem:

    Host, chrome on windows

    Peer, chrome on windows

    Peer IOS app

    I made a test app to track whats happening as my OSX skills are rather poor.

    Now I found that the chrome < = > chrome as expected, flawless

    but the ios < = >chrome is doing something I can not explain atm

    It seem, that the IOS app is sending out like between 2 ,and 4 packages, with something between 250 and 300 bandwidth OUT

    but on the chrome end it is receiving 10 to 15 packages, with over 500k of bandwidth .... IN

    And this only happens when the IOS is connected.

    Also, in the console I see a lot of dropped packages NOT containing the magic number.

    So, somewhere in the implementation I am guessing the wrong Send commands are being used, or even double.

    I think that if we can get this sorted, it will work as desired. But my skills in RTC are meager.

    Ashley

    If you I send you the WEBRTC.js file created on on my system, would you mind laying it next to your c2m-* .js files and see where the snag occurs/happens ?

    Something tells me you might be able to sort it a lot quicker then I can.

    Because, the slowness only occurs when it sending data.

  • Ashley: this seems cool. Can you integrate it directly in the export?

    Not sure that is smart to trial yet.

    Performance is a bitch though

    This was an understatement.

    The iosrtc plugin bogs down the cpu, causing low fps to just a couple, and causing timeouts in the c2mp, making it drop connections and the iOS client not even able to process all the incoming data. (which in my test was relatively small and using an ipad3)

    I have been tampering with the cordova-plugin-webrtc too, which has lots of similarities to the cordova-plugin-iosrtc, but seems to work a lot smoother ... sadly, only half of the functionality .... seems the DataChannel binary stuff is not implemented.

    I am relatively new to Mac os development, but if there is someone here on scirra who's a bit more acquainted with the OSX and the debugging tools accompanied with xcode, then please team up with me for a bit, and we'll nail this puppy.

    ATM I am trying to rebuild the library, seeing if some other build parameters might favor the outcome.

  • I got it to work. With all functionality from the c2 multiplayer.

    No shimming required, apart from some adaptions.

    Just keep in mind the cordova library already contains everything required ... so after exporting you are required to take some bits out of the c2 plugin and change the intitiation to use the cordova lib.

    RTCPeerconnection and RTCSessionDescription and RTCIcecandidate are already handled by the iosrtc plugin. So remove those definitions in c2mp.js and c2mp-peer.js.

    Also add cordova.plugins.iosrtc. to the initiator:

    c2mp-peer.js

    this:

    this.pc = new RTCPeerConnection({"ICe etc etc etc

    to:

    this.pc = new cordova.plugins.iosrtc.RTCPeerConnection({"ICe etc etc etc

    and voila, all work out of the box, even the IsSUpported

    Performance is a bitch though

  • Peer: create dagger, set speed, set deccelaration, en Object.asjson to host, host creates new object and set json from the multiplayer message, and transmits the same mutliplayer message with the json code to the other peers.

    This works fastest. As it takes all the values/layer/location/acceleration/bullet state/etc etc in the json info and uses it to set the object state.

    for host and other peers simply create the dagger on layer 0 at 0,0 then set the object to the the multiplayer message having the json.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • With unreliable the package is not checked for delivery, and thus not broadcasted again if it never arrived.

    With reliable there is a verification of package arrival, and if the message had an error it is retransmitted.

    This happens in milliseconds.

  • client input value is the value of the synched objects variable on the peer end, which gets updated to the host, which uses the information to set the objects value/position/angle to be synched to the other peers.

  • This is a bit of a feature request, inquiry ...

    Sometimes I find my self working on a couple projects at the same time.

    Or have multiple projects open for various reasons such as building exported packages for various platforms.

    Sometimes my capx's require minor adjustments or tweaks and when having edited those, I find myself watching the exporter ......

    Now, I could open another instance of construct 2, but I would prefer to keep working in the one application.

    What would be a nice feature is that when I press export in one opened project, that that project becomes locked and perhaps opens a dedicated exporting in progress tab for that project.

    Locked projects obviously can not be edited.

    But what would be nice if I could still open other projects or edit ones already open. (not locked)

    I would imagine if I try to export a second project, it would become queued for exporting once the other project has finished exporting.

    This would allow me to line up a couple exports too.

    Is this an odd request ? or would you just advise to open other instances of construct 2 ?

    Thoughts ?

  • cybertron7 lennaert The probelem is not in construct 2

    I posted the solution above.

    The security kep the app from opening an un specified URL, due to security measures.

    You can either add approved URLs to the internal/external whitelist of the intelxdk settings for your app or add an astriks "*" to allow all.

  • > I'm fairly certain I've done this before...

    >

    > On Touch -> MyButton = Browser Location ("www.example.com")

    >

    > So it works when testing.

    >

    > When I export and try on my Android Device, the browser doesn't open or respond at all!

    >

    > Any one know why?

    >

    I am running into the exact same thing.

    Adding an astrix to the internal whitelist on intelxdk solves the problem .... (or specify urls)

    <_<

  • I'm fairly certain I've done this before...

    On Touch -> MyButton = Browser Location ("www.example.com")

    So it works when testing.

    When I export and try on my Android Device, the browser doesn't open or respond at all!

    Any one know why?

    I am running into the exact same thing.

lennaert's avatar

lennaert

Early Adopter

Member since 8 Oct, 2013

Twitter
lennaert has 13 followers

Connect with lennaert

Trophy Case

  • 11-Year Club
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Forum Hero Made 1,000 posts in the forums
  • x5
    Popular Game One of your games has over 1,000 players
  • Famous Game One of your games has over 10,000 players
  • x2
    Coach One of your tutorials has over 1,000 readers
  • Educator One of your tutorials has over 10,000 readers
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • Enduring Visitor Visited Construct.net 90 days in a row
  • RTFM Read the fabulous manual
  • x2
    Great Comment One of your comments gets 3 upvotes
  • Delicious Comment One of your comments gets 10 upvotes
  • Email Verified

Progress

25/44
How to earn trophies