Velojet's Recent Forum Activity

  • DarkevilPT

    It's best if you can tell me what actions(events), conditions and expressions are missing from my PhotonClient behavior that you need to use in editing your event sheet, in order to get your game to work the way you want.

  • Personally I think you should make a thread for the Photon plugin in the Plugins subforum, as people are more likely to see it there and know it exists. A lot of people want to do multiplayer and this plugin should make it accessible to them. Some people would be scared off with the first page talking about potential and having to read through 12-17 pages to find your work ...es, I am planning to make a separate thread. As I mentioned, I'm awaiting feedback from people who try it out, so I can first weed out any glitches. Particularly, I'd like reports from Taurian, who started this thread, and bertelmonster2k from Photon/ExitGames.

    ... Tried installing it from your link on page 13, but I get this error: ...Thndr

    PhotonClient is a behavior, so it needs to be installed in the behaviors folder.

    I just wanna understand why when I put MyPlayer on the construct visual and export it, it doesn't appear at the start of the game and I need to click some keyboard move key to make it appear. ...

    Update: Ha and why when moving top it stops after a while? (I don't need them moving but I see that happening...).DarkevilPT

    Check your server installation. It's giving 404 errors for:

    darkevilpt.byethost7.com/tugafighterdev/photon/Photon-Javascript_SDK.js

    darkevilpt.byethost7.com/tugafighterdev/css/photon_client-inputs.css

    darkevilpt.byethost7.com/tugafighterdev/cloud-app-info.js

    darkevilpt.byethost7.com/tugafighterdev/inputs_header.txt

  • DarkevilPT

    What action/event, condition or expression do you need to be added to my PhotonClient behavior?

    ... All I need is to get both connected and some message appears when player 1 is connected Like > Player 1 Connected.

    For Player 2 is connected or awaiting for player 2 to establish connection. When both are connected is up to me to code and instructions ...Can't you use the existing condition 'New web player has joined' for that?

    Give me an example of what additional action, condition or expression you want to put into your C2 game that you can't put at the moment.

    I'll be happy to add it for you :)

  • jayderyu

    Thanks very much for your comments - all very helpful and forward-looking!

    * Photon server: after some initial work with Photon Server, I abandoned it in favour of Photon Cloud, mainly because of one of the factors that you identify: "The server side API is in C#". I thought it would just impose another limitation on C2 developers if they had to do server-side coding in another language. That's why my MultiPlayer behavior uses a NodeJS backend.

    * Photon Cloud: the big downside here is that it doesn't allow authoritative server management, so although it takes away the burden of server-side coding, it means that C2 developers have to build game logic into the client - with all the gotchas that entails.

    Wink

    Thanks for your positive comments! While I agree that three minds working together can be better than one, I think that in this case, our approaches are along such different lines that. at this stage, it's probably better to pursue our individual lines of development (while definitely keeping a close eye on what each other is doing <img src="smileys/smiley2.gif" border="0" align="middle"> ).

    For the record (as I've just said in another thread), my aim has been to produce plugins/behaviors (MultiPlayer and PhotonClient) that operate at a much higher level of abstraction than awarmenhoven is proposing, in order to make it as easy as possible for those who want to get into multiplayer gaming but have limited experience of low-level networking - or simply prefer to work with higher level operations. So, here's the very different basic set of ACEs in my C2 plugins/behaviors:

    • Condition: New web player has joined
    • Condition: Web player has been updated
    • Condition: On collision with another player
    • Condition: Web player/s to be created
    • Condition: On my player moved
    • Condition: Web player has left (use this to destroy the associated sprite)
    • Condition: Game server is ready
    • Action: Set the web player's ID (from the C2-allocated UID)
    • Action: Initialise data of web player to create (from the server-allocated client ID and its current x/y coordinates)
    • Expression: Get current X co-ordinate of web player
    • Expression: Get current Y co-ordinate of web player
    • Expression: Get web player's C2 UID
    • Expression: Get number of web players to make (on joining game)
    • Expression: Get the player's server-allocated UID
    • Expression: Get the player's name
    • Expression: Get the player's current score
    • Expression: Get the player's current health
  • For the record, as the developer of two multiplayer plugins (MultiPlayer and PhotonClient), I'll just set out here what my angle is on awarmenhoven's proposal:

    My aim has been to produce plugins/behaviors that operate at a much higher level of abstraction, to make it as easy as possible for those who want to get into multiplayer gaming but have limited experience of low-level networking - or simply prefer to work with higher level operations. So, here's the very different basic set of ACEs in my C2 plugins/behaviors:

    • Condition: New web player has joined
    • Condition: Web player has been updated
    • Condition: On collision with another player
    • Condition: Web player/s to be created
    • Condition: On my player moved
    • Condition: Web player has left (use this to destroy the associated sprite)
    • Condition: Game server is ready
    • Action: Set the web player's ID (from the C2-allocated UID)
    • Action: Initialise data of web player to create (from the server-allocated client ID and its current x/y coordinates)
    • Expression: Get current X co-ordinate of web player
    • Expression: Get current Y co-ordinate of web player
    • Expression: Get web player's C2 UID
    • Expression: Get number of web players to make (on joining game)
    • Expression: Get the player's server-allocated UID
    • Expression: Get the player's name
    • Expression: Get the player's current score
    • Expression: Get the player's current health

    I'll continue on this development line, but follow awarmenhoven's work with great interest <img src="smileys/smiley20.gif" border="0" align="middle">

  • This is great, jayderyu!! I'm really impressed - particularly by the smoothness of motion.

    I think I'll back out of this multiplayer plugin business and leave the field to you <img src="smileys/smiley2.gif" border="0" align="middle" />

  • ... If you want as much control over the game as possible then have the clients only send the inputs ('key down', 'mouse clicked at x,y') and have the server 'play' the game using constructs events, collisions etc. and send the x,y, effects, instances created/destroyed back to the client. ...

    That's exactly how my MultiPlayer behavior/NodeJS server functions. A demo is currently running on the Nodejitsu cloud platform (which uses automated clustering).

  • DarkevilPT

    Thanks for your compliments!

    It's up to the Scirra and Photon teams whether it becomes an official addon.

    Good luck with Constructing your game. Please feel free to ask if you need help with using my PhotonClient behavior.

    scidave

    Thanks for your excitement and stamp of approval! It means a lot, coming from someone who's put so much time and effort into developing a CC networking plugin.

    You're quite right - my aim has been to make a high-level plugin that makes it possible for someone who doesn't want to get their hands dirty with sockets and servers to make a multiplayer game.

    MrOtton

    I'm waiting for people to try it out and give me feedback before I develop it further ;)

  • SgtConti

    Could you please explain further:

    "If button pressed: build soldier and send "build enemy Soldier" to Client2"

    Is that another player that you can control? How would you control its actions as well as your own player's actions? Multiplayer usually means that you're just controlling your own player and its actions are reproduced on another player's display.

    jayderyu

    Thanks very much for your support and confidence!

  • LucasTorres

    Have a look at my two multiplayer plugins. In both, C2 is used as a front end to take input from each player and to display the current game state. In the first (MultiPlayer), you need to program the game logic server-side; in the second (PhotonClient), no server-side programming is needed, and most of the game logic is handled by your C2 code:

    1) MultiPlayer (NodeJS server - you need some server-side JavaScript experience if you want to adapt my server code).

    2) PhotonClient (Photon Cloud server - no server-side programming needed here, but it does mean that you have fewer options for management of your game).

  • SgtConti

    Try my two multiplayer plugins:

    1) MultiPlayer (NodeJS server - you need some server-side JavaScript experience if you want to adapt my server code; C2 doesn't extend to server programming).

    2) PhotonClient (Photon Cloud server - no server-side programming needed here, but it does mean that you have fewer options for management of your game).

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • And the last question, which is likely to frequently asked on the forum, but still going to ask it again ... Is it possible with Construct 2 to create a game with simple but nice multiplayer for 2-4 players? Is there a plugin or some internal functions of the program?

    marsep

    Yes, it is.

    Try my two multiplayer plugins,:

Velojet's avatar

Velojet

Member since 22 Nov, 2011

Twitter
Velojet has 1 followers

Trophy Case

  • 13-Year Club
  • x3
    Coach One of your tutorials has over 1,000 readers
  • x2
    Educator One of your tutorials has over 10,000 readers
  • Email Verified

Progress

16/44
How to earn trophies