View unanswered posts | View active topics It is currently Wed Dec 11, 2024 11:21 am



This topic is locked, you cannot edit posts or make further replies.  [ 92 posts ]  Go to page Previous  1 ... 3, 4, 5, 6, 7  Next
 So, hacking multiplayer in should be possible. 
Author Message
User avatar

Joined: Thu Jan 18, 2007 5:16 am
Posts: 397
Location: Back at DRL for a while?
Post Re: So, hacking multiplayer in should be possible.
Yeah, it's like Daman said: The only thing you're assuming is being sent to a client would be movement data, meaning that terrain data and physics data would not be transferred. Feasible, but problematic. The other player is likely to get stuck in a hole which doesn't exist in one of the client's games due to the randomness of weapons and other things in the game.

Quote:
...that would minimise errors due to lag and mean you wouldnt have to send the data from every ♥♥♥♥ MO in the game...

Uh wait, so you're telling me NOT to simulate any objects other than player-controlled ones? Because that's the way that 95% of the games work in the gaming world, right? So I'm not going to tell the client about how the crate I just spawned in Gmod is moving? And I'm not going to tell my clients about the dropship which just gibbed into over 9000 pieces, 50 of which can kill an actor? Wow, sounds like some plan. Curse and don't expect courtesy from me.
Even though each dropship in the game explodes in the same way, the way in which they are destroyed are unique to every game due to the entropy of the weapons in the game and the entropy of emitters.

Quote:
all of this could be applied to an NPC (for actors) or the fired bullet/gib/particle in the clients/hosts game

There are a LOT of particles in movement in a good game of Cortex Command. And even if it's only sending the information about them once and hoping the physics engine will get the particles where they're supposed to be, imagine the lag spikes a frag grenade would cause, not even beginning to mention dropships gibbing, sprayers, diggers, shotguns and other things in CC which require the physics sim to do a ton of work.

Quote:
the physics arent that random, so you dont need to send all the data.

Wait, so there are DEGREES of randomness? I thought you were smarter than this. Just because I have to chose from numbers the set [1,2] doesn't mean that both players will choose 1 or 2. If something is random, there is always the chance that you will have a mismatch between players, and if that happens, you will have problems. Think about what you're saying. Something is either random or constant and there is no gray area between the two. It's like life and death. You can't say "Poison is somewhat deadly." If it kills you, it's deadly. There's no "degree" of death; if you die, you're dead.

And Daman, send me a link to a multiplayer particle physics game. I would really like to see one in action. If you're thinking of something like Worms or Gunbound, read up. Those games don't truly have particle physics. CC has more than a few particles flying around at any given moment and, if you think about it bit wise, requires a fair amount of speed from your processor. The Internet has not come even close to reaching the point where I can simulate a computer at full speed over an average broadband connection because there just isn't enough room for all that data to be transferred at instantaneous speed.


Thu Sep 11, 2008 12:13 am
Profile
User avatar

Joined: Fri Jan 26, 2007 3:22 am
Posts: 1451
Post Re: So, hacking multiplayer in should be possible.
Quote:
If you're thinking of something like Worms or Gunbound, read up.


No actually I am thinking of games that are NOT ♥♥♥♥ and that we play on IRC but you're never there so ha-ha

read up- gusanos

also no internet restrictions do not matter here itt we make up reasons as to why Data decided not to implement multiplayer


Thu Sep 11, 2008 2:54 am
Profile
User avatar

Joined: Tue Dec 12, 2006 3:10 pm
Posts: 495
Location: Uncertain quantum state
Post Re: So, hacking multiplayer in should be possible.
Random numbers random numbers...


Wikipedia on pseudo-random number generator


There is no friggen true randomness using computers. FINAL.
(I doubt even CC does THAT)
If you just initialize the P-rng with the same seed on both clients, same things happen.

Didn't anyone really care to point it out?


Thu Sep 11, 2008 6:23 am
Profile
User avatar

Joined: Sun Jul 13, 2008 9:57 am
Posts: 4886
Location: some compy
Post Re: So, hacking multiplayer in should be possible.
yes,. they did. someone was talking about seeded physics, i wasnt sure if cc used them so i didnt comment.
if it does that makes most of this so much simpler.
sigh, more long posting..

CherryT wrote:
Yeah, it's like Daman said: The only thing you're assuming is being sent to a client would be movement data, meaning that terrain data and physics data would not be transferred. Feasible, but problematic. The other player is likely to get stuck in a hole which doesn't exist in one of the client's games due to the randomness of weapons and other things in the game.

no they arent. we are compensating for all weapons and player interactions to minimise/remove this. and no vanilla weapons create holes, only rockets/dropships do that, and even then, actors can get past without much hassle. +the ship will crash in the same place in client and host's game.
limbpaths are static, so we dont have to worry about that.

Quote:
Uh wait, so you're telling me NOT to simulate any objects other than player-controlled ones? Because that's the way that 95% of the games work in the gaming world, right? So I'm not going to tell the client about how the crate I just spawned in Gmod is moving? And I'm not going to tell my clients about the dropship which just gibbed into over 9000 pieces, 50 of which can kill an actor? Wow, sounds like some plan. Curse and don't expect courtesy from me.
Even though each dropship in the game explodes in the same way, the way in which they are destroyed are unique to every game due to the entropy of the weapons in the game and the entropy of emitters.

no, i said not all MOs. i didnt mean no MOs.
50 can kill an actor? only send them then.
and i dont mean send the particles code, i mean send how to project it. the client already has the particles code.
Code:
0.2365897252
0.6578623563

wow, that was all of 26 bytes. with 10 place floats. 50 particles = 1.27 kB oh noes!
so someone on dialup with all the other packets flying around could take at least 5 dropships exploding a second. their processor is more likely to have trouble with the ramifications of that than their internet. the full 9000 would only take 222 kB, but as you said, most of them cant kill an actor, or really effect much, just dust the terrain.

Quote:
There are a LOT of particles in movement in a good game of Cortex Command. And even if it's only sending the information about them once and hoping the physics engine will get the particles where they're supposed to be, imagine the lag spikes a frag grenade would cause, not even beginning to mention dropships gibbing, sprayers, diggers, shotguns and other things in CC which require the physics sim to do a ton of work.

thats right, requires the sim to do work. if you give the particles the right projections (angle and velocity) they will end up in the same place. each particle need only be given these two variables, the rest (positioning, material, gibimpulselimit, whatever) is in their .ini or the sim. i can see diggers making some lag, but only if used constantly by a few actors. this is why i think multiplayer CC should not use modded factions, as things like DSTech's diggers and melee weapons would make a lot of lag. but anything vanilla doesnt actually use that many particles. even jetpacks, rockets and dropship engines dont really output that much.

Quote:
Wait, so there are DEGREES of randomness? I thought you were smarter than this. Just because I have to chose from numbers the set [1,2] doesn't mean that both players will choose 1 or 2. If something is random, there is always the chance that you will have a mismatch between players, and if that happens, you will have problems. Think about what you're saying. Something is either random or constant and there is no gray area between the two.

yes there is. not all of the parts of physics are random, bounce isnt and i dont think friction is either. the only parts of the physics that are random are emmisions and gibs. controlling these factors removes the random part of the physics sim and lets the deterministic part of it do the main brunt of the work. the main basis of most of this multiplayer is syncronising these random factors. we arent going to let the game engine randomise it in both games, we are going to use the owner's number in both games. for example if someone shoots an AK, the bullet'll come out at the same angle and velocity in the client and the host.

Daman wrote:
Yeah no you'd have to send any active particles as most of them run off random numbers.

no they dont. materials fall apart when a cirtain amount of force is put on them. stuff does the same bounce over and over. still dont believe me about that one? get any bouncy laser. shoot it at something not moving. if it bounces off in a stream of laser, its bouncing off at the same angle. if it blooms and makes a messy web of particles, your cc works differently to mine. this makes me think that friction would have to be constant aswell, because the particles have friction exerted on them when they hit aswell.

Quote:
gusanos

this is a liero clone, and i didnt think that many particles really did much in this, its all very deterministic if youve ever modded it before.. i suppose they would have to allow for weapons with spread over the net somehow though, like the shotgun/supershotgun... so i suppose it might be relevent.. that or maybe it just hopes for the best, which is why spread-y weapons work really badly in lag.. eh. im uncirtain how relevent it is.

wtfl;dr: more rebuttals and explanations.


Thu Sep 11, 2008 9:04 am
Profile WWW
User avatar

Joined: Fri Jan 26, 2007 3:22 am
Posts: 1451
Post Re: So, hacking multiplayer in should be possible.
findude wrote:
Random numbers random numbers...


Wikipedia on pseudo-random number generator


There is no friggen true randomness using computers. FINAL.
(I doubt even CC does THAT)
If you just initialize the P-rng with the same seed on both clients, same things happen.

Didn't anyone really care to point it out?



Hur hurr guys loko I can read a wikipedia article on random numbers look I am so smart! dis mus meen dat u cna do alz dis vwith lua wlolol1!1!!


@GETI

Hey thanks for writing up that essay that really says nothing

Quote:
this is a liero clone, and i didnt think that many particles really did much in this, its all very deterministic if youve ever modded it before.. i suppose they would have to allow for weapons with spread over the net somehow though, like the shotgun/supershotgun... so i suppose it might be relevent.. that or maybe it just hopes for the best, which is why spread-y weapons work really badly in lag.. eh. im uncirtain how relevent it is.


The summary of this paragraph is "HEY I DON'T KNOW ANYTHING". No ♥♥♥♥ it's a Liero clone? CC is a Liero clone if you come down to that. Gusanos = CC with less particles.


Fri Sep 12, 2008 3:07 am
Profile
User avatar

Joined: Sun Jul 13, 2008 9:57 am
Posts: 4886
Location: some compy
Post Re: So, hacking multiplayer in should be possible.
Daman wrote:
@GETI
Hey thanks for writing up that essay that really says nothing
The summary of this paragraph is "HEY I DON'T KNOW ANYTHING". No crap it's a Liero clone? CC is a Liero clone if you come down to that. Gusanos = CC with less particles.


Gusanos != CC
it runs on a completely different engine, is scripted differently. the only simmilarities between them are/will be lua and violence. particles work quite differently in gusanos.

and wth, whos side are you on?

my argument/interpretation of how this will work.. in clarity. as is pretty much at the start of this topic anyway.

players start up the multiplayer level. it opens up a GUI where you input a nick, then it opens up the lobby of games, which is essentially just a bunch of IP addresses with a player's nick next to it. you either host and wait for someone to join, or join (by clicking or else) and the GUI becomes a little meter up the top showing you how many packets per second you are receiving, once you have synced with their scene.

lets take prom grounds for the example. the host is now the red team. the client is green.
as the host plays, the lua script in the background sends the following things, as packets of data, through irc if you like.
Player Data
Code:
AI Mode (int)
Ammo (int)
Jet level (float)
Aim Angle (float)
Keys Pressed (weve covered this)
Sharp (bool)
Firing (bool)

----
each 5 seconds
Code:
active player's HP

When a Weapon is picked up, dropped, or is knocked out of one's hands/gibbed
Code:
<List of inventory> //the weapons should probably just have an index.

When a shot is fired.
Code:
Bullet Angle (float)
Bullet Velocity (float)

----
when a HD/TDExplosive explodes or something Gibs, for each particle
Code:
Angle (float)
Velocity (float)

----
when an order is made
Code:
type of craft
name of craft
<list of inventory>
position (x)

----
when an actor dies (if it gibbed the particle data has 500ms (too much?) to arrive until the rest are randomised, so gibbing will be on a slight delay.)
Code:
actorindex
gibbed (bool)

please note that both players send this, if there is a conflict the actor dies regardless.
----
each 30 seconds/2 min (depending on how much it affects lag)
Code:
<owned actors> // to the form actorindex, posx, posy, HP, to prevent a lagged bullet from causing "ghosts" or actors being in different positions.

----
on quit
Code:
HasResigned


all of these packets are sent with headers, for example, through IRC a particle from something gibbing could be
Code:
&GIB|gib#|parent's locationx|parent's locationy|angle|velocity

which would spawn a gib at the correct offset, moving at that angle and velocity when something is received through the IRC room, the script checks for a &, see's GIB after it and knows that the code following it with have 5 sections, in that order.
any particles not defined will gib randomly, which is fine for things like blood (not gore) and dust. (to cut down on lag)
everything is applied to an NPC or MO in the other players game, so details for every position of every MO doesnt have to be sent, just the ones that are getting created and are important.

if this is sent over IRC, yes, it will be possible to make stuff spawn randomly. but who cares.

this continues while the game happens, until someone sends the HasResigned message or times out, probably after a hang of more than 5 seconds.

so anyway, back to prom grounds.
host (red) robot jets over to the wall, sending a bunch of packets about its movement, and jet levels. as the green clone walks into view (because of the packets received from the client) the robot fires his SMG at the clone (causing a temporary swarm of 26 byte packets as each bullet is fired) until he dies. the client confirms this death.

basic basic description.
i know its a lot of coding, but it would work. you dont have to send every bit of detail, its not that serious!

tl;dr: geti is on something. srsly. cmon, this dude believes multiplayer is possible and is willing to post that much? pff.

:) calm down people, its not a big deal. itd just be nice to see.


Fri Sep 12, 2008 4:45 am
Profile WWW
User avatar

Joined: Fri Jan 26, 2007 3:22 am
Posts: 1451
Post Re: So, hacking multiplayer in should be possible.
Geti wrote:
Daman wrote:
@GETI
Hey thanks for writing up that essay that really says nothing
The summary of this paragraph is "HEY I DON'T KNOW ANYTHING". No crap it's a Liero clone? CC is a Liero clone if you come down to that. Gusanos = CC with less particles.


Gusanos != CC
it runs on a completely different engine, is scripted differently. the only simmilarities between them are/will be lua and violence. particles work quite differently in gusanos.


I never said Gusanos = CC. Learn to read.

Gusanos runs on a completely different engine from Liero. It is scripted differently. The only similarities between them are/will be theme and violence. Particles work quite differently in Liero.

See I can pull a HEY I KNOW NOTHING LET'S JUST TYPE WORDS IN paragraph too.

Gusanos = CC with less particles.

And I love how you're going on with that IRC bull♥♥♥♥ which is not going to be possible for making multiplayer run at a decent speed. We'd be using luasocket and using several ports for hosting and receiving data. That'd be the only way it wouldn't lag horribly.

I love how you don't account for any particles at all in there, by the way.


Fri Sep 12, 2008 11:53 am
Profile
User avatar

Joined: Thu Jan 18, 2007 5:16 am
Posts: 397
Location: Back at DRL for a while?
Post Re: So, hacking multiplayer in should be possible.
Ok, look. Why don't we stop with all the long posting bullcrap based primarily on speculation and either:

a. Script a suitable net interface. This, surprisingly, is an extremely effective method to get people to realize something is possible.

b. Shut up and realize that going back and forth about computer and video game theory based on something that no one but Data knows about for pages and pages of essentially wasted space on the Data Realms server is pointless. No one's predictions in this thread, including mine, are ever going to be realized to be 100% true unless Data releases the source for Cortex Command or converts to programming the entire game in Lua. So, until then, why even bother?

So what, someone's wrong on the Internet. And there comes a point in time where one realizes that your arguments have essentially been distilled down in to guesses about the topic you're discussing. It's time to shut up until you have irrefutable proof that you are correct. You're never going to convince the other you're right until you have evidence in your favor. This goes for both Daman and Geti, as well as myself.

Also, Geti, since you seem to know so much on the topic of programming, why don't you start the net interface? I don't mean this sarcastically. You seem to have considerable knowledge in this realm, so why not prove us all wrong by creating multiplayer-over-internet CC? And don't give me the "I don't know Lua." speech. If you've gotten to the point where you're analyzing data in binary on the fly and thinking about things in terms of packets and such, you certainly have the ability to code multiplayer for Lua. It's just a matter of learning the language and what sort of modules you need to use to accomplish your goal. Since it seems your irrevocable ideal to tell us how possible Internet CC is, stop arguing with people who are mistaken and show them the truth. I can't argue "CC INTERNET IS IMPOSSIBLE BLAH BLAH BLAH." if I'm sitting there playing a game of it against you. So stop inaction and take action.

Also, if you want people to take you more seriously, learn to use proper English grammar, ie: capitalize your letters.


Sat Sep 13, 2008 12:08 am
Profile
User avatar

Joined: Sun Jul 13, 2008 9:57 am
Posts: 4886
Location: some compy
Post Re: So, hacking multiplayer in should be possible.
I'm getting through my exams, then learning how to implement luasocket and actor controls. sadly, i dont have much time on my hands at the moment.

and i agree, i really dont care too much for arguing pointlessly. Ill have a look at tim's irc scene Lua soon and see how plausible the concepts there are for multiplayer use, with adaptation of course.

Cheers for being so reasonable cherry.


Sat Sep 13, 2008 12:39 am
Profile WWW
User avatar

Joined: Fri Jan 26, 2007 3:22 am
Posts: 1451
Post Re: So, hacking multiplayer in should be possible.
CherryT wrote:
Also, if you want people to take you more seriously, learn to use proper English grammar, ie: capitalize your letters.


And stop trying to refer to using IRC as being possible to multiplayer.

That's just dumb. God.


Sat Sep 13, 2008 2:58 pm
Profile

Joined: Tue Apr 29, 2008 10:17 pm
Posts: 14
Location: Ground Zero, Hell Freeze
Post Re: So, hacking multiplayer in should be possible.
-Incredibly long sigh-

Alright...
I am not a competent coder, I've obviously not made my own game.
I can read code. I can understand code. I understand the existence of limitations in said code. I also know that we have Loo-ah now... which opens many new doors for CC.
I've never hacked multiplayer, The only thing I've ever hacked was an artificial server I fabricated on a separate computer of mine.
My I.Q. isn't high enough for me to be classified as a Genius.
Hell, my rating on the Geek Test barely cleared 75%.

I, however, can see idiotic squabbling, which isn't difficult in the least.

This thread started off with someone pitching a theoretical method for making a choppy multiplayer system in CC, without the aid of DaTa.

Afterward, people came in, and depending on how intelligent they were, screamed either a random spew of "LUL, THIS MAKES SENSE BECAUSE YOU SAID IT. WOOT!", "THIS IS DUM HE SAID NU", or, pitched a valid argument as to why a previously stated method was impossible, or gave a method of their own.

The obvious issues that have been stated a billion times over include:

1. DaTa said no. (To making MP officially)
2. Physics-desync
3. The amount of data needed to be transferred to duplicate physics on both ends.
4. Inequality of Client Hardware.
5. The uburness of CC's physics.
6. The effects of unequal outputs over an extended period of time.
7. DaTa said no.
8. More crap.

Now.
I'm not going to bother pitching my ideas for how to make 'dis ♥♥♥♥' work.

However:
If you are a naysayer, shut the hell up unless you have something to say that will help the topic move one. There is no point in saying "I DONT HTINK IT WILL WURK" unless you give new, existent reasons why.

If you believe you have an idea, method, or anything of the sort... Think it through... look for flaws in your logic... and if you make a run-through without finding error... then feel free to share.

If you are truly devoted to proving this works... then PROVE THAT IT CAN WORK! Familiar with the saying "Tits or GTFO."?

If you, happen to be part of the vast majority of people with no new insight, do not be a Meme and say "I AGREE... BECAUSE SO AND SO SAYS...>insert quote<".


Edit:
Quote:
And stop trying to refer to using IRC as being possible to multiplayer.

That's just dumb. God.


Tits or gtfo.

Edit Edit:
We can't say breasts anymore? What? We say doughnuts instead!? Since when! -Runs to the CP-

EditEditEdit:
Alright... fixed that tomfoolery... I like to see tits, not doughnuts. Kthxcensor.


Sat Sep 13, 2008 8:28 pm
Profile WWW
User avatar

Joined: Fri Jan 26, 2007 3:22 am
Posts: 1451
Post Re: So, hacking multiplayer in should be possible.
BambikinsBrain wrote:
1. DaTa said no. (To making MP officially) says I can't read that he never gave a definite no.
2. Physics-desync
3. The amount of data needed to be transferred to duplicate physics on both ends.
4. Inequality of Client Hardware.
5. The uburness amount of CC's physics.
6. The effects of unequal outputs over an extended period of time. #2
7. DaTa said no. says I can't read that he never gave a definite no.
8. More crap.


Fixed.

Quote:
There is no point in saying "I DONT HTINK IT WILL WURK" unless you give new, existent reasons why.


IRC will not work for making CC multiplayer because unless you plan on coding an irc daemon from scratch(See: Osu!) it will not work. If you knew anything about IRC you'd know why it wouldn't work.

Quote:
-Runs to the CP-


Hey let's all make some unfunny joke about Chris Hansen.

Disgusting pedophile. Ugh. I can't stand pedophiles, why would you do that to A LITTLE GIRL? Pig disgusting.


Also unless you speak icelandic or something I don't see how I could be interpreted as a female/having DOUGHNUTS.


Sun Sep 14, 2008 2:30 am
Profile

Joined: Fri Mar 16, 2007 1:28 pm
Posts: 328
Location: Finland
Post Re: So, hacking multiplayer in should be possible.
Daman wrote:
BambikinsBrain wrote:
1. DaTa said no. (To making MP officially) says I can't read that he never gave a definite no.
7. DaTa said no. says I can't read that he never gave a definite no.


Fixed.


Actually, he did give a no to us. Read the last message in this topic.


Sun Sep 14, 2008 5:20 pm
Profile
User avatar

Joined: Sat May 05, 2007 6:04 pm
Posts: 2901
Post Re: So, hacking multiplayer in should be possible.
Guys just shut up and read CherryT or Bambikin's posts.
PLEASE.


Sun Sep 14, 2008 7:02 pm
Profile
User avatar

Joined: Fri Jan 26, 2007 3:22 am
Posts: 1451
Post Re: So, hacking multiplayer in should be possible.
AtomicTroop wrote:
Daman wrote:
BambikinsBrain wrote:
1. DaTa said no. (To making MP officially) says I can't read that he never gave a definite no.
7. DaTa said no. says I can't read that he never gave a definite no.


Fixed.


Actually, he did give a no to us. Read the last message in this topic.


It's funny because if you read my post(or Data's) you'd know how stupid you just made yourself look.


Sun Sep 14, 2008 9:20 pm
Profile
Display posts from previous:  Sort by  
This topic is locked, you cannot edit posts or make further replies.   [ 92 posts ]  Go to page Previous  1 ... 3, 4, 5, 6, 7  Next

Who is online

Users browsing this forum: No registered users


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF.
[ Time : 0.085s | 14 Queries | GZIP : Off ]