Author Topic: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!  (Read 20050 times)

Offline Coppermantis

  • Hero Member Mark III
  • *****
  • Posts: 1,212
  • Avenger? I hardly know 'er!
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #15 on: December 02, 2011, 10:46:42 pm »
I'm getting a new error. It won't let me connect, saying that it "refused attempt by player account to connect because it is already in use".. It could be because the civ level passed 6 and Therefore I can't connect, or some reason. I dunno.

EDIT1: Saw an issue in mantis about this, so it's not just me.

EDIT2: Why did I write "thingamabob" in the middle of my post?
« Last Edit: December 03, 2011, 12:57:32 am by Coppermantis »
I can already tell this is going to be a roller coaster ride of disappointment.

Offline @B0FH

  • Full Member Mark II
  • ***
  • Posts: 162
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #16 on: December 02, 2011, 11:08:40 pm »
Not sure what particular part of my setup causes issues (I'm sure it's me, as AIW also gets this), but my locally hosted game (same machine) doesn't show up to myself or others browsing for me (manual connecting works perfectly, and is already an enjoyable experience :D)

Windows 7 x64
Windows Firewall (only, ports allowed, exe allowed)
AVG AV (free AV, not the "Internet Suite")
Netgear DG834 Router (ports open and forwarded)

Offline superking

  • Hero Member Mark III
  • *****
  • Posts: 1,205
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #17 on: December 03, 2011, 05:24:02 am »
AVWW seems so simple... how can it be difficult to implement synced netcode here when we have havoc physics and particle spam and twitch based combat working in the likes of halflife 2? I mean, take Soldat. partcile spam everywhere, physics, and completely reaction based; works fine. diabolo 2 coop can have ridiculous numbers of projectiles, partciles and monsters everywhere, and yet functions fine on 56k. Why has this game - with few monsters, almost no physics and  few projectiles onscreen at once- so much harder to sync up?

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #18 on: December 03, 2011, 08:23:32 am »
AVWW seems so simple... how can it be difficult to implement synced netcode here when we have havoc physics and particle spam and twitch based combat working in the likes of halflife 2? I mean, take Soldat. partcile spam everywhere, physics, and completely reaction based; works fine. diabolo 2 coop can have ridiculous numbers of projectiles, partciles and monsters everywhere, and yet functions fine on 56k. Why has this game - with few monsters, almost no physics and  few projectiles onscreen at once- so much harder to sync up?
And we did have it sync'd in roughly the diablo-2 way about a month ago.  The result was not pleasing, as you could fire a shot that looked like it hit but did not because the server said it didn't.  Or you could get hit by a shot that looked like it should miss you but didn't because the server said it hit you.  Diablo 2 did not have this problem because Diablo 2 simply didn't rely anything like that heavily on fine-grained projectile collision.

From a networking perspective, AVWW's in-chunk combat is a shmup, and I don't actually know of any shmups with network multiplayer.  I may have missed them, though.

Soldat does look closer to what we're doing, but I haven't played it so I can't say for sure.  Do you ever get shot when it looked like the shot's trajectory missed you, or miss another player when it looked like your shot's trajectory should hit them?  That kind of "he shot me around a corner!" effect in fps games, etc.

Anyway, the problem isn't the amount of data, the problem is latency: it's not unreasonable for the game to need to support situations where the packets take 200ms to get from the client to the server, or worse.  So: how much can positions change in 200ms?  Quite a lot.  There's a variety of approaches to this problem, most of the ones I've seen fall in these categories:

1) Design the game so that rapid position changes don't happen as much.
2) Design the game so that exactly where you are doesn't matter as much (this was our initial approach, and probably would have worked for something Diablo-esque or certainly something WoW-esque).
3) Give players an MP experience that differs from SP in that they can miss shots that looked like they should hit and get hit by shots they thought should miss (this would have been the inevitable result of our initial approach).

We decided that it was most important for the combat in MP to feel like the combat in SP, so that's basically what it is: all the really combat-relevant bits are simulated locally with just some updates being sent to the server and from there to other clients but almost all of that is just for visual reference, etc.

As far as the monster positions, we do want to make it better in terms of it being obvious that the positions are supposed to be different, and hopefully in terms of the positions not diverging as much (the problem there is that a melee monster either has to diverge or be less-effective against spread-out players), but in practice it feels a lot more fun than the previous model, so we took this set of problems rather than the others :)
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Hyfrydle

  • Hero Member
  • *****
  • Posts: 587
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #19 on: December 03, 2011, 08:54:26 am »
Just experienced a MP battle and it worked really well I didn't notice any problems. Quite smooth with the odd slowdown but nothing game breaking.

Offline Endymion

  • Newbie Mark III
  • *
  • Posts: 41
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #20 on: December 03, 2011, 09:08:06 am »
From a networking perspective, AVWW's in-chunk combat is a shmup, and I don't actually know of any shmups with network multiplayer.  I may have missed them, though.
I don't really know anything about the subject and I have no idea how relevant this is considering it's meant for fighting games but there's http://ggpo.net/
« Last Edit: December 03, 2011, 09:09:54 am by Endymion »
I'm making videogames! You can read more about whatever I'm doing here

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #21 on: December 03, 2011, 09:35:27 am »
From a networking perspective, AVWW's in-chunk combat is a shmup, and I don't actually know of any shmups with network multiplayer.  I may have missed them, though.
I don't really know anything about the subject and I have no idea how relevant this is considering it's meant for fighting games but there's http://ggpo.net/
Huh, interesting.  It seems they took another approach I hadn't thought of: "If the simulations diverge, GGPO rolls back to the most recent accurate state, corrects the mistake, and jumps back to the current frame, all before the player can notice."

Of course, even if I'd thought of it, I'd never have tried it for AVWW: roll back to the most recent accurate state?  The game state is mighty big, and what happens if you just killed the overlord which has all kinds of macrogame implications, etc?  Rolling all that stuff back would be messy and honestly do we _want_ it to try something like that just because of some latency?  So it sounds like a promising model for very finite games (as that webpage says, it's for arcade-style games) but just couldn't fit a huge-going-on-infinite world.  Interesting to hear about, though :)
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Spikey00

  • Lord of just 5 Colony Ships
  • Master Member Mark II
  • *****
  • Posts: 1,704
  • And he sayeth to sea worm, thou shalt wriggle
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #22 on: December 03, 2011, 09:27:08 pm »
Congratulations on the first multiplayer release for AVWW!

As for the shmups with network multiplayer, I do know there is Phantasmagoria of Flower View (random video) which is a competitive 1v1 game.  There is a lot happening in the game, most significant is that both sides of the field can be seen and enemies that are destroyed in proximity to the small circle bullets are sent over to the opponent's field in real-time. 

The original developer couldn't implement a proper netplay with anything beyond LAN latency and so the game would run at terrible framerates intercontinental or even locally to keep in sync (and thus the simulation speed was rendered unplayable), but it was eventually fixed when "adonis," a third-party fix emerged that's separate from the game's exe but launches the game when ready.  Keep in mind that this is a game developed in Japan, so I have no idea where this fix came from and how it works, but from personal experience it worked fine even with a peer in the EU with ~200ms ping.

Adonis can be found here, but as a non-programmer I don't know if you can decompile or examine the technicalities of the exe/dll.
I'd take a sea worm any time over a hundred emotionless spinning carriers.
irc.appliedirc.com / #aiwar
AI War Facebook
AI War Steam Group

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #23 on: December 03, 2011, 09:52:16 pm »
Congratulations on the first multiplayer release for AVWW!
Thank you :)

Quote
As for the shmups with network multiplayer, I do know there is Phantasmagoria of Flower View (random video) which is a competitive 1v1 game.  There is a lot happening in the game
Whoa.  Yeah, quite a lot :)

Quote
most significant is that both sides of the field can be seen
It would be tricky, possibly involving atomic clocks in the shot on both sites to correlate what you're seeing, but recording both computer screens and then playing them back side-by-side you would see that what you're seeing on the "remote client" side of your screen is at least sometimes different from what the other guy is seeing on his "local" side of the screen.

Quote
and enemies that are destroyed in proximity to the small circle bullets are sent over to the opponent's field in real-time.
I had to watch closely to make sure I knew what you meant: notice, and this is critical, that there is a travel time between the kill near the small circle bullet and the actual spawning of the shot on the opponent's side of the field.  That travel time (which looks to be at least half a second, from what I'm seeing) allows the other machine to "catch up" and be ready for the spawn (presumably, the actual spawn point is known from the moment of the kill).

It's a very impressive achievement, particularly with the adonis fix, but it's not breaking through the wall that constrain us (and ultimately that wall is the speed of light, particularly since multiplayer can involve clients with shortest-signal-paths 12,000 miles long, minimum latency about 64ms).  Certainly, an alternative "lateral solution" to our "just let the enemies be different places" would be "everyone gets their own screen, in split-screen view" and no two players are ever on the same screen.  But that would break down with lots of players in a given chunk, and folks like to see the other players.

Another thing we could do is actually have each "monster spawning" event (either loading a chunk with monsters in it or a nest spawning, etc) spawn X separate monster entities (X = number of players in chunk) and everyone sees all of them but you can only shoot "yours" and the updates on the other ones would only be periodic but could probably be smoothed somehow or another.  We considered this approach multiple times, but it really didn't seem to fit that all bosses would be that way.  Some would fit fine with it (fairies, etc), but a skelebot overlord... in the end, the current model seems better than that.

But we're certainly looking for ways to improve both the model and how it is presented :)
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Zenchess

  • Newbie Mark II
  • *
  • Posts: 10
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #24 on: December 04, 2011, 04:04:09 am »
  I've played a lot of multiplayer games, and I would be very surprised if a valley without wind could not have decent multiplayer in the traditional (everything syncing up within reason) sense. 

  I think the most obvious example is terraria - terraria has beautiful multiplayer.  It's even a similar style of game!  2d platformer with tons of projectiles that can be fired, and even PVP combat! 

  I was also a little surprised by the over 200 ms comment - it's well known that 200 ms is too high for any real time multiplayer game with twitch reflexes.  That's why servers for games like...say...subspace-continuum/battlefield 3/counterstrike/street fighter/netrek/quake/rise of flight/ er, etc. all have servers in different countries and what not so that you can get ideally an under 100 ms ping time.  For instance getting < 100 ms ping time to anyone in the usa is usually not a problem unless they have some kind of crappy connection.  I can never play a game like street fighter 3 on GGPO against someone in japan - it would have ms of 200-250, and would be laggy as all heck (and the rollback at that lag time makes the game completely unplayable).   



  I'm also a programmer and know a little about networking, (but have never written heavy duty networking code for a multiplayer game).  I'm very interested in this subject so when I have some more time I'll come up with more game examples and a better post on this topic =)

   Oh yeah - and when me and my friend were playing we got some kind of error that told us to tell the developers regarding networking.  From the top of my memory I think it had something to do with object id 1317 not existing or something.  - i'm not sure if that will be in some kind of log but if so let me know and I'll dig it up for you guys. 


Offline Mánagarmr

  • Core Member Mark V
  • *****
  • Posts: 4,272
  • if (isInRange(target)) { kill(target); }
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #25 on: December 04, 2011, 04:26:13 am »
I'm not usually one to complain or question decisions, but in this case I must say that the non-syncing of enemy positions is a definitive deal breaker for me. It completely shatters the illusion and enjoyment of playing together with someone. It's like we're playing separate single player games and see "shadows" of what the other person is doing echoing on our screen, but completely unrelated to what is actually going on. It's hard to explain.

As far as gameplay goes, I would rather get hit by "missing shots" than playing "alone, but not". AVWW will remain a pure SP game for me, I'm afraid. But thankfully, the SP part is looking up to be absolutely fantastic, which is awesome!
Click here to get started with Mantis for Suggestions and Bug Reports.

Thank you for contributing to making the game better!

Offline Hyfrydle

  • Hero Member
  • *****
  • Posts: 587
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #26 on: December 04, 2011, 06:31:49 am »
I'm not usually one to complain or question decisions, but in this case I must say that the non-syncing of enemy positions is a definitive deal breaker for me. It completely shatters the illusion and enjoyment of playing together with someone. It's like we're playing separate single player games and see "shadows" of what the other person is doing echoing on our screen, but completely unrelated to what is actually going on. It's hard to explain.

As far as gameplay goes, I would rather get hit by "missing shots" than playing "alone, but not". AVWW will remain a pure SP game for me, I'm afraid. But thankfully, the SP part is looking up to be absolutely fantastic, which is awesome!

Give it a go you might be pleasently suprised I was also dubious.

Offline Dizzard

  • Sr. Member Mark II
  • ****
  • Posts: 380
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #27 on: December 04, 2011, 06:45:14 am »
I'm not usually one to complain or question decisions, but in this case I must say that the non-syncing of enemy positions is a definitive deal breaker for me. It completely shatters the illusion and enjoyment of playing together with someone.

I'd say this is my big issue with multiplayer so far.

It feels like I'm the one doing all the hard work and the other people are just doing 200m sprints up and down the node.

I do wonder if a game like Terraria can have multiplayer where the enemy stays in the same place for all players then then surely AVWW has no excuse?

Technically it does work but it feels very loose and I imagine it severely damages the chance for strong battle tactics. I get more of a sense that I'm battling on my own and working on my own towards a joint goal (talking to other people on the server and seeing them talking does help though) rather than working with people towards that joint goal.

Sure we're both standing in the same node fighting the monsters/bosses but I feel like I could easily forget they exist and just do my own thing.

edit: I played with hyfrydle again today and to be fair it is more "together" than I was making it out to be. I'm sure it'll improve over time. It's very good for the first mp release.
« Last Edit: December 04, 2011, 08:06:02 am by Dizzard »

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #28 on: December 04, 2011, 09:08:32 am »
Yea, I kind of anticipated that the "enemies in different places" thing would be poorly received, but wanted to give it a shot as it seemed the best compromise between "multiplayer is possible" and "multiplayer doesn't require a refactor of singleplayer".  Perhaps not, it seems ;)

I'm thinking that it may be possible to fix the "enemies in different places" thing, though, even within the context of the current sync model:
1) For each monster, the server "plots a course" for their movements for the next 5 seconds or whatever, and sends that to the clients.
2) The clients just play back that course, no questions asked (this means making sure that any change to the set of things that can physically "block" the monster would have to happen on the server first, but that's basically already true).
3) Every second or so, the server sends out the next second's worth of course, or whatever works out to be a good timeframe.  If the client runs out of "course", that monster just stops moving on that client and when you get the next course update it jumps to the starting spot of that, or something like that (hmm, that could get tricky to get it temporally sync'd, but I don't think it needs to be too exact).

That would get each monster to be basically in the same place on each client, but then there's the problem that if one player can trick a boss into chasing just them they can "tank" the boss while the other players just dps the boss down.  That's fine as far as it goes, but the boss's attack power is the same regardless of the number of players in the chunk (it's the health that's multiplied), so that would basically just make MP battles way easier than SP battles. (edit: a key point here is that the boss can currently shoot all players in range at the same time, the cooldowns are independent)  Of course, it's easy to just multiply the boss's attack power too, but then with any significant quantity of players it's probably just going to one-shot players whether they're trying the "tanking" tactic or not.  For those of you who haven't had the pleasure of vengeful ghosts popping up in the middle of a boss fight: I assure you that it is entertaining, but not as a habit.

So, to address that:

4) If a monster (or maybe just bosses, or maybe just some bosses) is unable to shoot at a player that's in the chunk because they're out of range or something like that, its shots get more powerful against the players it can shoot.

That way if you have some beastly tank that can actually take that kind of damage, you could try that.  If everyone's pretty normal then you'll want most folks to stay where the boss can shoot them to avoid the boss getting too frustrated and just one-shotting whoever he can reach ;)


Anyway, just possible ideas, thoughts?  Would this solve that problem?  Would it cause other problems that are worse?
« Last Edit: December 04, 2011, 09:12:08 am by keith.lamothe »
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Toll

  • Sr. Member Mark III
  • ****
  • Posts: 452
Re: AVWW Beta 0.545, "Multiplayer Public Alpha (Opt-In)," Released!
« Reply #29 on: December 04, 2011, 09:41:48 am »
The immediate thought that springs to mind is that spells with knockback would cause the server to have to recalculate the route, so five seconds might be a bit much (probably better with 2s?). Aside from that, it's pretty hard to say if it'll work or not before seeing it in action.

A thought about attacks though: In your model, melee attacks would become incredibly powerful if it applied to them as well (I would imagine it's relatively rare for two players to be in range of melee attacks at once, after all). As for ranged attacks, it sounds good (assuming it'd still attack every player it's actually able to attack).