DUTOIT's Recent Forum Activity

  • Salt

    recieved = data&salt

    salt2=right(recieved, count)

    salt=salt passed

    else

    failed

    DuckfaceNinja is lightyears ahead of everyone when it comes to multiplayer. Whatever he says, he has good reason for saying it. So go with his expertise

  • Of the top of my head...

    Use functions, and make the param the action... then pass the array data retrieved with action to the function and execute accordingling...

    damn that made no sense - lol.

    If you know how to retrieve data from array, then Check the tutorial section for callbacks, advanced callbacks.

    Function 1 gets the action

    and returns the action

    Function2 executes the action

    You'll have to play around. But functions are just that, a way for you to write your own functions... They are by far the BEST feature in construct2.

  • I'm not sure how that works. IIRC I bought the paid version (if there is even a distinction anymore) but i've never seen ads in it. how are they unique?

    Skyline Skater for iOS is a great example of really using all social media hooks to generate posts, tweets and ad views.

    You'll have to ask my son, lol. No what I understand, or rather what I saw, is as you progress in game, you get a tv spot, you can watch a ad and get whatever it is you get. Sometimes to move on requires you to watch ad (video or full page - i think)

    I haven't looked for awhile. I put kids tablet into flight mode. Disables ads - shht, you aren't supposed to know.

    But some of these big games really make use of every avenue, and they do it in style.

  • Thanks for your contribution, 'much appreciated !

    Very instructional tutorial & videos, btw I have little first hand experience of databases and connectivity, so that'll definitely be useful !

    That being said, I don't think this solution satisfies the "secure" criteria I am after. Storing scores in a shared location the developer controls is one thing, but there is no safety or control on the game logic itself.

    As long as the game logic is running on the player's machine, and not a developer-controller server/host, there is nothing preventing a cheating user to hack the gameplay logic locally to submit bogus scores and feed the database with random values.

    Hence the need for all players to be clients/peers, i.e. only displaying the state of the game sessions, but not running any actual critical game logic.

    I guess for very simple games with few updates it would be possible to have that logic running as a php module on an actual server and query things via http requests, but while I'm no web-tech expert this sounds clunky and inefficient.

    Obviously the solution to this problem is known, and has been used in games for ages : use a server/client architecture ; but since Construct 2 has a host/peer architecture built-it, I am trying to see if there is a way to mimic and reproduce that behaviour in an "easy" and practical way with the tools that are already available.

    You will never be able to stop cheats or hacks. No system is secure.

    There is no solution to this problem, and since people started cheating, the only solution is to adapt.

    It isn't feasible to stop cheating. You can just put in place some basics (salt everything) to discourage the majority, but you will get a few who just gotta hack it.

    Sorry, haven't got a solution - shrugs

    But peer talks to host, have server run chrome and let server be host, when peers join, let host add peers data to database.

  • No experience in it sorry, but the way cut the rope 2 incorporates it into the game itself is brilliant. Definitely would love to do the same, in some form or another.

  • That's why it's not included, it's obfuscated at export-time to help prevent reverse engineering of your projects.

    Just use an instance variable with the object name.

    That's what I do, also makes it easier to use one sprite, multiple image frames and name them multiple things...

    Blue, red, green, etc etc and can do it via array or start of layout... much more flexible.

  • You can have all peers communicate with a central "hive" Even if you are running multiple instances of the game 100 rooms with 10 players each... you can still send info to

    A hive that would be an external database

    Lets say

    mysql

    and players would send info to a php file which would interact with database

    Getting and writing data is easy enough - couple tutorials already using mysql and php.

    Couple of unknowns exist, you obviously can't write ever tick, or even every second unless you have a monster database server, or bridged (is that correct term?), but you will bottleneck...Because you will be limited by concurrent connections.

    So when to pass the data on???? And what are the consequences? Lag, game freeze, etc

    A single high scoreshould be fairly easy to do... (tongue in cheek, nothing is easy - lol)

    I've been experimenting, not successfully with a multiplayer save feature... "I'm talking about trying to save players game whilst using the multiplayer plugin"

    So it stores users login credentials and game progress in webstorage (fair enough), but I've been trying to store it in a "hive" an external server.

    The idea is to have a login system that logs user into multiplayer game, but also logs them into hive, and then loads their game progress.

    Why? Why not, I'm thinking along the lines of boardgames, card games, something where I can play a game with my family over the weekend, and next sunday it is all still there where "we" left off.

    Of course, time restraints and everything takes a bit of a back seat.

    But running multiplayer games. Limited to max users. or even independant single player games -no problem for highscore.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • > It is a lot easier than syncing, but duckfaceninja can correct me if I am wrong, I think it is a little slower, so animation might have a delay.

    >

    Shockingly, I find using instance variable is much easier than send message, which I did not expect. I'm now certain that instance variable is the way to go for movement animation.

    RisenFear

    I made a tutorial on this subject. Basically the similar thing with syncing movement, what differs is how to use the setbit/getbit conditions to trigger the animation.

    Will have a play around this weekend... very surprising indeed. Might have to change a lot of my existing work - lol.

    Nice tutorial. I need to crank out a few in the coming weeks... been meaning too, just end of year time restraints.

  • Load json into array. Use array to list/sort/edit whatever

  • Wow, this is super useful... Seriously...nca@troublesum... Thank you for sharing.

  • Simple is always better

  • >

    > > DUTOIT will you be entering?

    > >

    >

    > I'm seriously considering it.

    >

    Awesome, I say go for it Nothing to lose (cept time, maybe your head at the odd bug, oh and a chunk of your freedom).. BUT potentially a lot to gain.

    I see I can't gift the license away - lol, not that I will win. I have a few already, liceneses. But seriously considering challenging myself to do some short little games over a 30 day period. Possibly some kid games for my little one.

DUTOIT's avatar

DUTOIT

Member since 17 Jul, 2013

None one is following DUTOIT yet!

Trophy Case

  • 11-Year Club
  • x5
    Coach One of your tutorials has over 1,000 readers
  • Educator One of your tutorials has over 10,000 readers
  • Email Verified

Progress

14/44
How to earn trophies