No more "Challenge Shopping"

I think I have a good idea. Maybe for personal challenges to people you know that are online, you could watch the same battle at the same time, so instead of deploying my ships and then sending the challenge, which my friend then opens, deploys his crap and sends it back to me at which point we both countdown to start our parallel battles (its the same but not exactly). Instead I send my an invite to a Battle Room, which allows us to deploy at the same time and then when he ready ups I start it and we both see the same thing. Also the invite needs to be accepted or denied within like 5 mins before getting auto-deleted because this is for personal battles instead of Challenge Shopping as I like to call it. Plus this could allow for teams too say me and my newer friend versus another friend. The point is this game could really use synchronous battles.

Empire and Tribe Admiral
Portal8229

This sounds like it could be workable, though I might make the following clarification/change:

Player A sends challenge to Player B, indicating a desire to use the Battle Room.

Player B sets up his response deployment and sends the invite.

Once both players are logged into the Battle Room, Player B starts the combat.

The entire fight actually runs on Player B’s machine; Player A is simply viewing it as well.

This kind of software is out there in a number of forms (we used it a lot at my last job). However, it’s often pretty touchy stuff, especially when dealing with moving video. Sometimes it just craps out entirely.

Still a very good idea though.

You need an enormous amount of bandwidth to cope with stuff like that over the web. There aren’t just 5 or 6 avatars moving, like an MMO, but maybe 400 spaceships and 800 missiles. It would be nice…

I can understand why you couldn’t send a streaming video of a current game in action, but I don’t think that’s necessary. You already have all the necessary graphics and videos on each computer, you just have to tell the game to re-create them.

As far as I know, the game is broken down into micro-turns where each module is processed each turn. What if the game was processed on both machines, and they were sharing text data to better synchronize the turns?

I’m assuming that some kind of debugging tool was made at some point that exported the activities of each turn into a text or data file…

Is something like that plausible or am i just showing off some extreme naivety?

Yeah I didn’t so much mean streaming video as so much making the dice roll in the same fashion its weird when were both watching the same thing yet I see that all my friends frigates are gone yet he see he still has like 3 left, its those type of discrepancies that break immersion so to speak. Maybe instead of getting a bunch of servers or something, utilize LAN and Hamachi allowing easy internet play under the guise of LAN, since this is for friends it would be too hard, to share your Hamachi IP address.

There are two types of play in the game today (correct me if I’m wrong):

  1. Against the computer…
  2. Against a “challenge” (downloaded from the server)…

You’re proposing a third (I think…)

  1. Against a friend, fleet to fleet (with one computer acting as “Boss” and the other as “Display”)…

I like this idea (opens a whole new section of game play without modifying existing ones). For cliffski; there is one simple model that would allow this to work without using your bandwidth: P2P. Demigod and World Of Battles both have P2P engines (you have to open ports on your firewall (port forward on your wireless or router) to get it to work).

Then you could exchange fleets in real time and watch them battle together (one machine doing all the calculations and sending positions to the display machine for it to display to the other participant).

It does take a central server to create the hookups (or Moonbase Commander had an alternative way of finding each other, but it’s been so long…). The hookups require no more bandwidth than the forum does, to login and see if other users are online…

Just a thought :slight_smile:

Against a friend or against anyone looking for a fight…

Couldn’t you tweak the RNG (initilialize with the same number) so both battles play out identically, and completely offline?

I was thinking of the same thing… you take the ship configs and deployments of everything involved in the battle, smush it all together, and take a sha-1 or md5 hash of it. Then use that as your random number seed. A battle could be replayed any number of times on any number of computers and would always have the same result; but if you move one ship by a tiny amount or change the orders on a ship or swap out one module, the seed changes and everything plays out differently.

Unfortunately randomizers are not identical across machines. Vista, XP, Win7, Linux, Mac all have different randomizer tables… It would be difficult to get machines to make the same calculations…

As I said, I think a “master-slave” approach would work better…

What if instead we keep the battle room idea, but just as a lobby for battles that would involve more than two players?

Well, A, you can program your own random number generator to work the same independent of platform :stuck_out_tongue:

And B: it’s the method used in all RTS games (pretty much anyway), and certainly doable (though tough).

It’s really not that tough. Cliff may or may not want to do it, but it’s not a big problem, programming wise. There are about a hundred PRNG (Pseudo-random number generator) libraries out there that could be used and the biggest part of the problem would be picking which one. :slight_smile:

I stand corrected, there are a few ways to make the battles play out the same on different computers.

OK,

@Portal8229
I don’t think anybody has realized how awesome your idea truely is. You just created multiplayer GSB!! Let me layout what I mean…

I login to a Battle Lobby, similar to a forum login.
I see a list of games “in progress”, “available”, “last five wins” (with winning player name).
I also see a list of players not in games, and in games.
(No chat to save bandwidth)
I create a Battle Room.
I set the game to 8 players, 2 teams (a 4v4 match) (I could password protect the room, or set it to “friends only”).
I set the pilots and monetary limit.
(My game shows up in the available list with game type “Team” (FFA, 1V1 are the other options) and 1/8 in the room, pilot and monetary limit)
I click “Ready” and I see others are ready (saved deployments).
(As soon as I click ready I upload my fleet (like a challenge) and I download any other fleet that is ready, and begin to slowly poll until all are ready)
(As soon as I have all the fleets, the simulator is launched automatically)
(When the battle is over, and I close “Stats” I am dropped back into the Battle Room)

Everyone just saw the same battle due to PRNG.
We chat offline, skype, some other way (to save bandwidth). Now we can play 1v1, 2v2, 1v1v1, etc…

@searcher8
I saw your post after I wrote all of the above…

Wow, this would be so cool, four ways to play:

  1. Against the computer…
  2. Against a “challenge” (downloaded from the server)…
  3. Battle Room - “live” games…
  4. And soon Campaign…

Ack, I can’t believe there aren’t a hundered post here saying how much we want this!! Do I need to draw out the screens to make it more clear?

I agree that it sounds like a good idea. I think 4v4 team matches might be a little over the top to start with, but in general I get what you are saying.

But I’m not super enthusiastic about this because of all the other things Cliff has to work on; the Gratuitous Campaign of course, and the fourth race expansion pack, and then hopefully a break from new features for a while to work on code quality (reduce the Gratuitous Crashing and give us some Gratuitous Stability instead).

Having said that, if Cliff implemented it tomorrow I wouldn’t complain. :slight_smile:

Can we name it something else?
Having spaceships fight in our Battle Room feels a little too Ender’s Game to me.

This would make this game honestly I can’t think of a feature that when looking at longevity lasts longer than multi-player. With something liken this and Steam Cloud support you would definitely see sales skyrocket.

Randomized missions. Adds a lot of lifespan to a game.

Yes, yes you do need to draw out the screens to make it more clear.