[PLUGIN] Network v0.3a update***

This forum is currently in read-only mode.
From the Asset Store
Fantasy Game includes more than 600 sound effects inspired by hit computer games like World of Warcraft and Diablo.
  • Hey, I've picked up the source code for the Network project.

    It won't build 'cause of no 'atlstr.h' ...This seems to be avail. in non-express 2010. Any known work-arounds? (Aside from buying VS.)

    Thanks! &Sorry to be brief. Gotta get to work...!

    Not sure if this will help you out, but it looks like someone made a free replacement to the ATL files: tech.groups.yahoo.com/group/wtl/message/12850

    Edit: Nevermind, looks like what you really want is available from this Windows Driver Kit msdn.microsoft.com/en-us/windows/hardware/gg487428

    At least, that's what I read here stackoverflow.com/questions/71659/how-to-add-wtl-and-atl-to-visual-studio-c-express-2008

  • Humm, the WDK did kinda-sorta work. There are still some small issues that I couldn't be bothered to fix just yet. I have lots of other stuff going on right now too...

    ...But I did wanna write back and thank-you for your post. This looks to be a solution.

  • I've a problem, when i try the example game, packets are send every tick o_o so the chat is bugged.

    And do that with my game too :(

    Someone know how to fix that ?

  • playerelite, that's probably the lag-packet-drop-resend cycle I've run into as well. Basically once the latency is enough that packets start dropping I think the program resends them (this extra traffic causes more to drop until all packets are constantly being resent).

    Are you testing within a LAN network? or over the Internet to other parts of the country/countries?

  • playerelite, that's probably the lag-packet-drop-resend cycle I've run into as well. Basically once the latency is enough that packets start dropping I think the program resends them (this extra traffic causes more to drop until all packets are constantly being resent).

    Are you testing within a LAN network? or over the Internet to other parts of the country/countries?

    Hello Jayjay, i'm testing in lan on the same computer :)

    That's strange :/

  • Hmm, that should work.. try PixelPeopleOnline source code and see if you have the same problem (it's in the Your Creations forum here: Pixel People Online)

  • Make exe files from your project, start every exe (server, game executables) with winxp compatibility mode + as administrator.

    Fixed for me the issue. I'm currently waiting for scidave 's reply for a fix for that <img src="smileys/smiley2.gif" border="0" align="middle" />

    edit: I have win7, winxp users(I think) don't need to do this.

  • Make exe files from your project, start every exe (server, game executables) with winxp compatibility mode + as administrator.

    Fixed for me the issue. I'm currently waiting for scidave 's reply for a fix for that <img src="smileys/smiley2.gif" border="0" align="middle" />

    edit: I have win7, winxp users(I think) don't need to do this.

    Interesting, on my Win7 and WinXP pc's I never had issue on the same computer.

    However, if that fixes the issue in general then I'm extremely happy <img src="smileys/smiley17.gif" border="0" align="middle" />

  • For me, the example shooter when I tried it the first time, it worked great. Me and my friend both had winxp(I'm pretty sure, but not to 100%).

    Later, when I made my own example(now on win7) it didn't work anymore(it was the same .exe, I didn't recompiled it). So I tried the perfect working example from scidave and look deeper in the cap to determine the error I made. But it also didn't work anymore. Me and my friend needed to run on compatibility mode. That worked to both, the old .exe and a newer recompiled .exe from scidaves example shooter.

    Also, me and Wolod ran the game and he has winxp. He just started the game.exe and connected to my pc via hamachi or real ip, not sure. It worked. I'm almost sure, setting only the server to compatibilimode didn't work. At least, my game.exe needed it too.

    I really hope, this plugin runs stable anyday, so I can use it for any of my projects. I would even donate if someone makes a stable network plugin with a few features to determine the players via ID etc.^^

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • For me, the example shooter when I tried it the first time, it worked great. Me and my friend both had winxp(I'm pretty sure, but not to 100%).

    Later, when I made my own example(now on win7) it didn't work anymore(it was the same .exe, I didn't recompiled it). So I tried the perfect working example from scidave and look deeper in the cap to determine the error I made. But it also didn't work anymore. Me and my friend needed to run on compatibility mode. That worked to both, the old .exe and a newer recompiled .exe from scidaves example shooter.

    Also, me and Wolod ran the game and he has winxp. He just started the game.exe and connected to my pc via hamachi or real ip, not sure. It worked. I'm almost sure, setting only the server to compatibilimode didn't work. At least, my game.exe needed it too.

    I really hope, this plugin runs stable anyday, so I can use it for any of my projects. I would even donate if someone makes a stable network plugin with a few features to determine the players via ID etc.^^

    Work ! Thanks ;)

    But i've a question, if the guys who play the game don't start it with XP compatibility, does they will flood my server by sending a lot of packets ? If yes, how to kick clients who send too much packets ?

    EDIT : And i have a bug, when the username or password contains the letter "n", username or password isn't send correctly (for example : if i choose the username "unknow", my username will be "u", and if i choose the username "n" my username will be "")

  • As far as I know, the will client send out position updates(in the most cases)? If they are flooding, the player would glitching around. But we really should wait for scidaves reply here, or someone, who is more adept in networking, especially with your "n" problem.

    edit: or make a condition, when the client sends out packets, create a sprite at a random position <img src="smileys/smiley36.gif" border="0" align="middle" />, thats my chaotic method to proof is something is happen rapidly^^ (of course you should choose another method or at least stop creating sprites at 100 or more automaticly, or just make a textbox log which is more professional)

    There's also a "disconnect" action for the game.cap you could use. But I'm not sure how to make the condition, which compares how many packets sent out in a second or every 5 seconds.

  • I have a question, to everyone with a little more network-/programming knowledge. When I try to run a server.exe, build with the network plugin, directly on a server I've rent (tried it on an old minecraft server^^) it won't start of course, since server don't have directx support, they just can start normal applications.

    Here comes the question: When I start construct and click on "new -> new application", I can't put the network object into my project, because it's made for the directx part I think.

    Is it possible(after the main bugs are fixed), to make a seperate copy of the network plugin just for the "application" mode in construct?

    You get my point?^^

  • That's a brilliant idea zyblade! Such app will come very handy.

  • I need help for something,

    I've make an account system, work great, and for the spawn system i've do that :

    -> On packet type ("spawn")

    -> SHIP('username') different to global('username')

    -> SHIP_2('username') different to GetToken(Network.PacketData,1,":")

    DO : SHIP_2 create object at X, Y

    SHIP_2 set value username to GetToken(Network.PacketData,1,":")

    Work great if they are only 2 ships on the map, if they are more than 2 ships, when the 3st ship_2 join the map, he make lot of ship_2 because the condition (SHIP_2('username') different to GetToken(Network.PacketData,1,":") work with only 1 SHIP_2, i've try to place SHIP_2 in the family ENEMY and do : ENEMY('username') different to GetToken(Network.PacketData,1,":") but do the same)

    How to fix it ?

  • But i've a question, if the guys who play the game don't start it with XP compatibility, does they will flood my server by sending a lot of packets ? If yes, how to kick clients who send too much packets ?

    EDIT : And i have a bug, when the username or password contains the letter "n", username or password isn't send correctly (for example : if i choose the username "unknow", my username will be "u", and if i choose the username "n" my username will be "")

    Hey all,

    It is awesome to see use from the plugin. I wish it was more stable...I'll work on compiling a new build from the latest version of ENET, I doubt it will fix the compatibility mode issue but it needs to be updated anyway.

    There is an option to detect clients sending large number of packets to the server and kick them...I just haven't exposed that feature in the plugin.

    Some of the features that could be exposed:

    enet.bespin.org/group__peer.html

    As far as the "n" issue I'm not sure why that would be an issue. I don't check for "n" in the plugin so it should be processed like any other character. Can somebody else confirm this bug?

    EDIT: On the question about using the plugin for non-directX there should be no reason that it wouldn't work. I must have compiled in a directX library or perhaps put some code in directx required file...there is no reason it has to use directX. While I can't guarantee doing anything else I should be able to release an updated plugin for the application runtime in a couple weeks.

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