PDA

View Full Version : My Experience Testing Real-Time Worms


robowurmz
29 Nov 2008, 20:09
This is so awesome it deserves its own thread.

Recently, Entuser asked me on MSN if I would like to test the new Real-Time Worms section of Project X.
Of course, I agreed.

After some minor hitches (turned out there was an error the first time, and my connection was partly to blame as well) we got a game going.

I must say, Entuser is a genius and a half! I've never seen anything like it! It was great fun. We didn't play for long, because I had to go, but he's got some really nifty stuff going on. Such as when you die, you respawn, so it's sort of like a first-person shooter in that respect. I was roping around near the start of the game, and he took a couple potshots at me with a shotgun. Then we went inside a fort and started attacking eachother with grenades and so on. Then we had an Uzi fight. It was really really awesome! Having to squirm back for cover and attempt to dodge bullets was quite cool, and being able to chuck a grenade into an alcove next to him and see him get blown a little distance away, (then get up and shoot me, who fell back into some water) was really really cool.


I can't wait to try a rope race. It'll actually be a realtime race!

I'll let you know about any other games I play with it. Discuss.

bonz
29 Nov 2008, 20:26
I can't wait to try a rope race. It'll actually be a realtime race!
This would be the last thing I'd try to do with real-time Worms. :p

I think a CTF or AvA on one of Squiffel's large maps could be nice.
That would require hard-coded rules for the destruction of the flags though, because it could get hectic in real-time.

robowurmz
29 Nov 2008, 20:28
This would be the last thing I'd try to do with real-time Worms. :p

I think a CTF or AvA on one of Squiffel's large maps could be nice.
That would require hard-coded rules for the destruction of the flags though, because it could get hectic in real-time.

That's true. CTF would indeed be interesting.

Run
29 Nov 2008, 20:34
I'm intruiged.

How simple is it to set this up?

bonz
29 Nov 2008, 20:48
Me too.
Throw together a quick tutorial on how to set it up and tell us about the problems you encountered.

That is, if you're allowed to give out the new real-time build.

jsgnext
29 Nov 2008, 21:05
im happy to see this topic....i though that project was abandoned by entuser,but now i see i was wrong....projectX itself is amazing but a realtime worms.....its just too much for me.
I really wanna check this out.

kikumbob
29 Nov 2008, 23:38
It sounds more intruiging than Leiro at the moment, I must say.

[UFP]Ghost
30 Nov 2008, 05:56
1. cool
2. Do roping worms interact?
3. Do you know how the coding is going and when-ish he thinks he will release it?

robowurmz
30 Nov 2008, 10:37
I don't think I'm allowed to give out the module.

However, this is how it's set up.

The person hosting starts a single/multiplayer game (that is, not on Wormnet at all). For a 2-player game, it goes thus: You use the scheme for RT worms (as it has infinite time to prevent things like turns happening etc), and choose a map.

Both people must know what the map is going to be, and both must have that map.

You choose 2 teams, one red, one blue and have 1 worm each on those teams. Then, you start your offline match. When the game begins, you open the chatbox with Page Down, and type in "/real_host". The game then listens for incoming connections.

The game setup is exactly the same on the client computer; the names of the teams do not have to be the same though. When the game begins for that player, they type "/real_join (I.P address of host)". Of course, this can be annoying to have to get the IP address and so on, and I had a few problems with him not being able to ping my computer; so we used Hamachi to get a stable and fast connection. This of course would mean it'd be easier for more than 2 people to play, if they all joined the same hamachi network.


Then, if the connection is successful, you'll be able to chat with eachother in the chatbox, and, of course move your worms about. The host is always team red, the next player team blue, and so on. We haven't tested with more than one worm on each team yet.

One tiny glitch is that when using a mouse-based weapon, or moving the camera, is that the camera tries to refocus on your worm, making the camera all jittery and making it hard to aim airstrikes etc.


The module seems to work fairly well, but it's not ready for release. We will probably have to do some stress testing, and now and again lag happens and you miss your foe.

We haven't tried roping at eachother.

Muzer
30 Nov 2008, 10:41
Looks awesome.

/me wishes wormkit worked on linux

franpa
30 Nov 2008, 14:31
the anti-sink feature isn't new, what would be good would be taking damage from the plop even if you have enough health to respawn, say 15 damage or something?

Akuryou13
30 Nov 2008, 15:09
interesting. I look forward to this being refined and made available to the public. could be an entertaining experience.

jsgnext
30 Nov 2008, 15:17
I admit i didnt like the idea of /real_join IP.....coz that means u can only play with friends...whatever i wanna test that stuff.

Konar6
30 Nov 2008, 18:03
I admit i didnt like the idea of /real_join IP.....coz that means u can only play with friends...whatever i wanna test that stuff.
That only means you have to arrange the game in advance.

jsgnext
30 Nov 2008, 19:37
That only means you have to arrange the game in advance.

yep...thats wht i meant....but u cant arrange the game in advance with people you dont know.....i think it would be like 100 times better if u could host this kind of games in wormnet,thats all.

EDIT: i know this is imposible for realtime worms for now.

Konar6
30 Nov 2008, 20:49
I'm definitely looking forward to this, the CTF mode gameplay would look like Soldat (http://www.soldat.pl). :) And real time races (rope, bungee, battle, chute) could be very interesting. Although the game in this mod will lose some of its characteristic (I hope this is the right word) - you wouldn't have so much time for chatting or planning your moves while others are playing as in turn-based game. I'm not gonna play real time intermediate or real time shoppers or other unfitting schemes for it though. :p Keep up the good work!

PS: Will the final version run via WormKit (wkPX.dll) ?

robowurmz
1 Dec 2008, 07:23
the anti-sink feature isn't new, what would be good would be taking damage from the plop even if you have enough health to respawn, say 15 damage or something?

When you fall in the water, you take the equivalent fall damage back at your spawn point. So you do get hurt. Also, when you lose all your health you respawn too.

franpa
1 Dec 2008, 11:51
yea, but you don't take damage from plopping, you are only taking damage from whatever caused you to fall into the water :/

robowurmz
1 Dec 2008, 17:25
Playing some more of it now... bungeeing into water causes a crash. About to try a 3-player match...

yakuza
1 Dec 2008, 17:26
Playing some more of it now... bungeeing into water causes a crash. About to try a 3-player match...

Please keep us updated in your wormy happenings on a minute to minute basis.

Or maybe write an actual review?

robowurmz
1 Dec 2008, 17:34
Yakuza, stuff it, ok?

I've had it up to here with you right now, if you're not just going to grow up and get on with life then you can at least just shut up and watch.

yakuza
1 Dec 2008, 18:04
Yakuza, stuff it, ok?

I've had it up to here with you right now, if you're not just going to grow up and get on with life then you can at least just shut up and watch.

Hay guys I'm going to play RT worms in like 5 minutes after tea are you excited I am excited can you feel the excitement.


All I'm saying is, stop with the diary entries and write an actual review or informative post, seeing as you're having the privilege of testing it for whatever reason.

kikumbob
1 Dec 2008, 18:56
I'm not entirely sure what the problem is with his "diary entries." I've found every single one of his posts interesting.

On second thoughts, no. I don't want to know what your problem is. I won't agree with it anyway.

GreeN
1 Dec 2008, 18:56
Writing a review would definitely be more informative for people, but in all respect, Robo has no obligation to write anything at all. Considering his experiences are (Apparently) not yet over, a review in the near future would be a far better idea than making an attempt at a half-informed opinion at the moment.

So yes, Yakky, stop being a know-it-all :P

Muzer
1 Dec 2008, 18:59
I'm not entirely sure what the problem is with his "diary entries." I've found every single one of his posts interesting.
I concur.

jsgnext
1 Dec 2008, 19:28
will the final version run like a wormkit module?? (i mean a .dll wich can be played in wormnet)....or we will have to host a game with the /real cmd??

robowurmz
1 Dec 2008, 19:33
I don't know if the final version will run via WormNet, but I suppose it will.

The 3-player game ended just after it begun (it worked though), so we didn't test that out so much. You see, the guy hosting crashed. This was also the first match I've had by joining somebody else's game. And the command is "/real_connect", not "/real_join", my bad there.
3 players worked just fine, we all had control over a worm on our team, we could chat and move and so on. When the connection was lost, the game ended as if it were a normal draw.

Entuser is mainly updating the module here and there, fixing some bugs and reducing lag.

I await further developments.

Muzer
1 Dec 2008, 19:37
I don't know if the final version will run via WormNet, but I suppose it will.

The 3-player game ended just after it begun (it worked though), so we didn't test that out so much. You see, the guy hosting crashed. This was also the first match I've had by joining somebody else's game. And the command is "/real_connect", not "/real_join", my bad there.
3 players worked just fine, we all had control over a worm on our team, we could chat and move and so on. When the connection was lost, the game ended as if it were a normal draw.

Entuser is mainly updating the module here and there, fixing some bugs and reducing lag.

I await further developments.

Oh, and this is my thread, and I'll write however I damn well please, Yak.

That's a good point; how does worm selection work? I think a good idea would be to have tab pressable at any time, and maybe add an option to make the other worms you aren't controlling invincible. Also, mae sure there's a delay between firing weapons.

In fact, make sure he has addressed everything on http://worms2d.info/Real_Time_Worms

robowurmz
1 Dec 2008, 19:43
Oh, we haven't tried more than one worm per team; we had three players this time around. I suppose when he gets round to it, we could test more than one worm. He probably will implement most of the features seen on the Database.

Metal Alex
1 Dec 2008, 20:02
This is looking awesome... Just a question: Does it work as a patch, making you uninstall the last one, as a wormkit module, or as stand alone module, like "place file on x file"

robowurmz
1 Dec 2008, 20:08
It replaces the old PX module for Wormkit, and comes with a PX file. It also comes with a game scheme that has infinite time and loads of weapons for maximum funzies.

bonz
2 Dec 2008, 09:11
Robowurmz, how about showing us a gameplay video of all the good stuff?
Either by extracting from the replay file (if that's possible) or by capturing it.

That would be the easiest way.

robowurmz
2 Dec 2008, 11:12
That's an idea. I'll record the next match (as the replays are all screwed up, entirely.)

robowurmz
2 Dec 2008, 13:31
Here's your video folks; sorry about the lousy recording quality. Put in in a rar so that youtube wouldn't screw with it.
Download WormsRTTestVid1.rar (http://host-a.net/DrMelon/WormsRTTestVid1.rar)

Have you got any tips for good recording? I'm only getting 5 FPS with fraps.

Plasma
2 Dec 2008, 14:38
Have you got any tips for good recording? I'm only getting 5 FPS with fraps.
Presuming you already did the minimalisation stuff in Fraps... get a better computer. Even my old one could run Fraps with 3D games perfectly.

jsgnext
2 Dec 2008, 14:44
well...lolz at 00:10 the blue worm uses bazooka and it just disappears without exploding...it looks full of bugs but no that laggy as i though....i hope they finish this project soon.
Presuming you already did the minimalisation stuff in Fraps... get a better computer
or just buy a new video card.....that worked for me in my old computer.

robowurmz
2 Dec 2008, 15:49
I get 60+ FPS in Gmod with high settings; it's just Worms:Armageddon that has a problem.

Everything else records in fraps just fine, it's only W:A that has the very very low FPS of 5.

Akuryou13
2 Dec 2008, 16:08
might be something to do with your video card interacting with W:A?

robowurmz
2 Dec 2008, 16:16
Probably is.
It's strange, it never fluctuates, it just hits straight at 5.

Muzer
2 Dec 2008, 17:20
Here's your video folks; sorry about the lousy recording quality. Put in in a rar so that youtube wouldn't screw with it.
Download WormsRTTestVid1.rar (http://host-a.net/DrMelon/WormsRTTestVid1.rar)
That looks really nice. I think it's a lot less frantic action than I thought it would be, it isn't complete mayhem, which is a good thing IMHO. I eagerly await a release.

robowurmz
2 Dec 2008, 17:45
I think a release is a bit further away now: he's been doing some network optimisation, but now we can't see eachother move, as it were; we are connected, but the moves are not being transferred to eachother, and so we each play our own little game against a non-moving foe. D:

jsgnext
2 Dec 2008, 18:04
I think a release is a bit further away now: he's been doing some network optimisation, but now we can't see eachother move, as it were; we are connected, but the moves are not being transferred to eachother, and so we each play our own little game against a non-moving foe. D:

i prefer a wormnet ver of RT worms in 3 months than a /real one now (im just speculating he is working on that now)

robowurmz
2 Dec 2008, 19:12
No, he's still working on the same old one. He's focusing on getting it stable before anything else.

Muzer
2 Dec 2008, 19:52
No, he's still working on the same old one. He's focusing on getting it stable before anything else.
I do think that it is really great he's managed to get it in a usable state this early on. Actually, there's a point, did he tell you when he started working on it? I'm just interested.

jsgnext
2 Dec 2008, 21:03
I do think that it is really great he's managed to get it in a usable state this early on. Actually, there's a point, did he tell you when he started working on it? I'm just interested.

i think he started after the 3.6.29.0 ver came out,coz the chat offline feature is used in this mod...

franpa
3 Dec 2008, 02:52
Make sure to turn off the background in W:A when playing a game, can help tremendously with lag when using FRAPS.

robowurmz
3 Dec 2008, 12:09
Well, we got the connection bit fixed now, so we can play once again.

However now, if he loses connection with me, W:A sucks up 100% of my CPU and RAM. Some sort of crazy infinite loop in the receiving thread.

pisto
3 Dec 2008, 12:24
I guess that the input is lagged for a time proportional to ping, but does it happen also on the host's side?

robowurmz
3 Dec 2008, 13:54
I am the host. On the client side, the worms die and the game ends, when a connection is lost. However, this time around I am getting major CPU and RAM eatings when the connection is lost. Entuser's one disconnects normally.

yakuza
3 Dec 2008, 14:58
Well, we got the connection bit fixed now, so we can play once again.



What did you do? I'm curious.

robowurmz
3 Dec 2008, 15:58
I'm not a developer of this project, so I don't know what magic he worked.

The next build he gave me was far far more stable, and we found a bug with the worm-to-terrain snapping (which caused a crash if terrain was shot out from under a worm with nowhere to go but water) so he fixed that.

It's gaining stability at a crazy rate, he's doing a really great job. Lag is nearly nonexistant now.

jsgnext
3 Dec 2008, 16:44
i got a question for robowurmz or for someone who tried this out....

When 2 worms use the rope at the same time, u can see both or u only c one worm roping and the other "levitating"??? (i noticed that bug in a old video of a bungeerace with RTworms)

pisto
3 Dec 2008, 16:56
I am the host. On the client side, the worms die and the game ends, when a connection is lost. However, this time around I am getting major CPU and RAM eatings when the connection is lost. Entuser's one disconnects normally.

if this is a reply to my question you didn't understand what I meant: I'm talking about the lag between key press and worm's move (due to the fact that packets on internet don't reach the destination immediatly), but does this lag exists on the host player's pc?

Entuser
3 Dec 2008, 17:09
When 2 worms use the rope at the same time, u can see both or u only c one worm roping and the other "levitating"??? (i noticed that bug in a old video of a bungeerace with RTworms)


Yes, you can see the rope, but of course with small lags.

I'm talking about the lag between key press and worm's move (due to the fact that packets on internet don't reach the destination immediatly), but does this lag exists on the host player's pc?

There is no lag between key press and worm's move for computer , what controlling worm, only for other computers.

Muzer
3 Dec 2008, 18:30
Entuser: Please ensure you address as many of the issues mentioned on http://worms2d.info/Real_Time_Worms as possible.

Metacooler
3 Dec 2008, 21:05
this is clearly the beginning of a new age of worming...really big development that i'm sure many have dreamt of...but i would really like to know what CyberShadow has to say about it...:)

Kelster23
5 Dec 2008, 00:03
Very nice Entuser!
I like what I see :)

franpa
5 Dec 2008, 01:33
There is no lag between key press and worm's move for computer , what controlling worm, only for other computers.

Do you mean that the Host experiences no lag, but the Clients do?

robowurmz
5 Dec 2008, 07:33
No, I think he means that there is no lag between keypress and worm movement on the computer controlling that team; but the other team lags.

franpa
5 Dec 2008, 07:45
that can't be for both players, since it is realtime... either all players lag or everyone but the host, unless you don't like everything being in sync ;)

pisto
5 Dec 2008, 12:11
franpa understood the point.

Dario
5 Dec 2008, 12:21
Worms+real time lag = real pain in the ass.
If there isn't a workaround so that the lag between pressing the key and seeing the response is as close to 0 as possible and "constant", then I don't think it is worth it.

Emphasis on "constant", because in that way if there is a small lag you will at least be able to adapt to it and strike the keys in the exact moment before you want the action to happen. Otherwise all the skills that require perfect timing will simply become a random F(lag).

franpa
5 Dec 2008, 12:39
I believe that requires the ability to run the game in slow-mo to pull off, Dario :/ I do believe you are after something like what is in CnC Red Alert 2?

pisto
5 Dec 2008, 12:56
Emphasis on "constant", because in that way if there is a small lag you will at least be able to adapt to it and strike the keys in the exact moment before you want the action to happen. Otherwise all the skills that require perfect timing will simply become a random F(lag).

that's how any game where an input from 2 or more players is needed (and these inputs go through the internet) works. There's a fixed lag due to the inputs going through the network, and the greater is the ping between the two player (or the player and the server, that's the host) the greater is this delay. If we consider the overhead little and so the ping is equal to the delay, you should expect this lag to last not less than 80-100 ms (0.1 second). This is what our ISP offer us (well, in Italy).
If Entuser implemented the Realtime worms without considering this ping thing, it won't work, unless in a 0 ping connection, like a LAN.
Example: 2 players (A and B), lag=0.5 seconds. one worm for player (wA wB), both at the same start position. Both players press for 2 second the left arrow. You expect both the worm to be at position x at 2 second from game start. Instead, this is what happens, viewing from A's side:
wA starts moving; at 0.5 seconds from game start, input arrives and wB starts moving (after and behind wA); at 2 second, wA stops; at 2.5; wB stops too.
from B's side, same as above BUT swap wA with wB. so the two players have played a different game.
This little difference becomes great when the worms interact with terrain or other worms: for example if wA uses fire punch while walking, on his side wB won't be hurt (because wB is walking behind wA). Instead, on B's side, it's wA to be behind wB, and it will be punched.

CyberShadow
5 Dec 2008, 13:22
Moving your own worm on the screen is lag-free. However, your opponents' actions will not be displayed instantaneously. For example, if an opponent's worm stands still and starts walking, you may see him as standing still and on the next moment, walking at already a certain distance away from his original position. Such sudden "jumps" in your opponents' state can be compensated by adding an input lag for everyone (the kind Dario is talking about), however this is inappropriate in some schemes (e.g. rope-based schemes).

Dario
5 Dec 2008, 16:25
I do believe you are after something like what is in CnC Red Alert 2?
If it is the same as in warcraft III, then yes. It seems to me that, there, there is a "standard lag" for everybody, small enough to allow intensive and accurate control of your units (micro). Also, when one of the players falls back and can't keep up with that standarized lag, the game will be paused for all the other players, while the lagger's game will get speeded up a lot (obviously he won't be able send any commands during that period) to catch up. If one player lagged too much the other's would be given the chance to kick him out of the game.

That was the best solution to lag I've seen, in contrast with Age of Empires where the lag would always be set to be equal to the laggiest of the players. Then at the begining of the match things would be tolerable, but as the number of units multiplied it'd run slower and slower.

Yes pisto, I understand the concept of sync. With warcraft's system the lag does not depend on the pings. If your ping is higher than the max allowed, every once in a while you will see the game cancel your ability to control the units and pause the game for the rest, while you get to see what was really happening, until you catch up with the rest.

pisto
5 Dec 2008, 16:52
Moving your own worm on the screen is lag-free. However, your opponents' actions will not be displayed instantaneously. For example, if an opponent's worm stands still and starts walking, you may see him as standing still and on the next moment, walking at already a certain distance away from his original position.is this what happens with Project X?Such sudden "jumps" in your opponents' state can be compensated by adding an input lag for everyone (the kind Dario is talking about), however this is inappropriate in some schemes (e.g. rope-based schemes).I think this is the best solution (in fact it's the one used by most of the games).

If your ping is higher than the max allowed, every once in a while you will see the game cancel your ability to control the units and pause the game for the rest, while you get to see what was really happening, until you catch up with the rest.
I don't think that this is suitable for a game like Worms. It would be frustrating to lose the control of the worm temporaneously, even worse if you can't predict it.

robowurmz
5 Dec 2008, 17:02
is this what happens with Project X?

Yes, what Cybershadow has described is exactly what it's like!

pisto
5 Dec 2008, 18:07
and what does happen if the worm is hurt, but then the input arrives and such input would have let the worm avoid what harmed it?

robowurmz
5 Dec 2008, 19:23
The worm is hurt.

CyberShadow
5 Dec 2008, 19:57
It shouldn't.

If on your screen the worm is standing still (due to lag) but the opponent has moved it away, and you shoot the worm that's on your screen but the shot misses on your opponent's screen, the shot should be considered missed. If it isn't, then it's a bug/design flaw (you can then force/exploit lag to freeze your opponents).

jsgnext
5 Dec 2008, 20:12
It shouldn't.

If on your screen the worm is standing still (due to lag) but the opponent has moved it away, and you shoot the worm that's on your screen but the shot misses on your opponent's screen, the shot should be considered missed. If it isn't, then it's a bug/design flaw (you can then force/exploit lag to freeze your opponents).

yep....and its too easy to exploit lags (there are a lot of programs to reduce ur internet connection temporally).
i think the problem is to identify who is the lagger and who is the lagged

robowurmz
5 Dec 2008, 21:16
Well, since the lag is so minimal, the worm does not move a far enough distance away not to be hurt in the radius of explosion. If I used a handgun, then it probably would escape damage.

jsgnext
5 Dec 2008, 22:52
im agree with u robowurmz.....but the damage is diferent if u hit a worm in the head than if u hit it on his tail.....so a minimal lag could change the game results (for example if a worm have 25 health and u use shotgun)

KRD
5 Dec 2008, 23:59
And this is why people play real-time 2D shooters based on game and physics engines tailored for the purpose. This normally includes using UDP instead of TCP for network packages, weapon effects that don't rely on pixel-precision, far more simple and effective movement methods and so on.

I don't want to poop on the parade or derail this discussion, but here's one of the nicer such projects if anyone's interested in getting involved or just wants some inspiration for ProjectX:

http://www.teeworlds.com/

Entuser
6 Dec 2008, 10:01
yep....and its too easy to exploit lags (there are a lot of programs to reduce ur internet connection temporally).
i think the problem is to identify who is the lagger and who is the lagged

No problems, it's easy.

im agree with u robowurmz.....but the damage is diferent if u hit a worm in the head than if u hit it on his tail.....so a minimal lag could change the game results (for example if a worm have 25 health and u use shotgun)

Anyway when will be health synchronisation from server.

This normally includes using UDP instead of TCP for network packages, weapon effects that don't rely on pixel-precision

Don't see the difference between protocols for players and lags :confused:

franpa
6 Dec 2008, 10:26
UDP uses less bandwith but is only useful in situations that don't require much integrity... or something like that :/

Muzer
6 Dec 2008, 16:00
I just played a 5-player game of RTW. It was fun but very laggy. But very fun. Very, very fun.

bonz
6 Dec 2008, 16:56
Indeed a lot of fun.
Also, a bit bugged with certain weapons.
Using the teleport caused me to get stuck with only the bazooka...

Muzer
6 Dec 2008, 17:06
Indeed a lot of fun.
Also, a bit bugged with certain weapons.
Using the teleport caused me to get stuck with only the bazooka...
The same thing happened with me 2 rounds before this.

Also, using a kami kills the game it seems.

franpa
7 Dec 2008, 01:51
it disables the weapon panel, which means whatever you were using at the time, becomes infinite shots ;) since you can't change away from it....

I still believe the weapon panel thing is a psuedo random bug, hopefully will be fixed soon :)

franpa
7 Dec 2008, 09:53
Entuser has implemented a working work around for the weapon panel bug :)

xJoEx
20 Feb 2009, 06:13
it might be out by christmas!

Is there any update on the real time worms project? i'm excited to try it!

also does anyone remember the website for it? thanks :)

MihaiS
20 Feb 2009, 08:52
Here's the link to the site: http://worms-px.ru/

PixelP
20 Feb 2009, 21:41
It looks like the site hasn't been updated in a while. I can't wait until there's English documentation and a working script page.