-
the technology is out of scope for me, but I think c4 uses udp (not tcp), which is more or less an asynchronous variety of ip protocol (if i understand it correctly ?). I was thinking that the reason for the invis had only to do with the clients.
this is my reasoning:
premises:
clientx, y and z are playing with an invis player I
1) I may only be invis to clientx, buy clienty, and clientz can see him
2) even though clientx can't see I, his C4 game knows where he is, he is just not visible to the naked eye (his comanche 3d object is not being redrawn), as evidenced by the fact that when I fires weapons they are generated form a distinct moving location
conclusions
1) the server is updating the positions and activity of all live objects, visible and invisible (or not, see case B)
2) since clientx, y, and z are using the same exact game code, the only difference has been some part of information that they did not receive regarding the state of I
possible causes/comments:
Case A
-clientx did not receive a packet that said that client I respawned, therefore clientx is either redrawing the blown up helicopter where it last was, or cannot redraw the helicopter at its current location because there is some piece of information missing (needs a new object ID value ? in order to create the new comanche ?)
-during ci's, restartgames, and player's getting stuck there is some piece of information that involves the state of each player that, when not recieved by a client, results in invisibility only to that client
repair: write some routing that checks that all 16 choppers on clientx (actually on every client's) machine are visible and being redrawn
Case B
-clientx did not receive a packet that said that client I respawned, and therefore client I's chopper actually does not exist on clientx's computer. what clientx sees is the missles being fired, but from a point in space where they start to be drawn, not from an invisible chopper - from a nonexistant one ! why ? cause clientx did not get the tidbit of information that client I got destroyed, and cannot draw the new chopper it doesnt know exists
repair: unknown. however, since a resetgames puts things right, it seems like someone could write a shorter version of resetgames that does not involve re downloading the map, but just retrieving from server the information that clientx needs. for example, suppose clientx had a TSR running in memory that checked to see when a missle was fired, if there was a chopper within 15 meters of it, and if not, to either resetgames or do the new shortreset.
anyway, just some ideas to chew over. It may be that someone like spirit can cable and go invis, or send a malformed packet and do it. but the server is sending out the information on the positions of all the ordinance being fired on a regular basis, so it seems reasonable that either a server side fix or a clientx side fix is not out of the realm of possibility, no matter whether client I is a cheater or just went invis.
-
Wow some possible good ideas there. Is there any relationship to someone being INVIS and their previous death message not showing for the person that can not see the invis player?
Another thought would be: C4 has 2 basic skins that are used for online multiplayer red team / blue team, green, desert. A interesting test would be to have a server and with everyone in the server having only 1 skin available(prolly defintition file,3di file).
I know I've seen players on the same team as me that are INVIS also. But maybe the INVI player has a NULL ID or Skin. The player dies and gets a skin, but it's the wrong team skin, so that player get the next skin, but it's at the end of the list so that player gets a null skin.
I'll also experiment with a 5-8sec respawn timer in the days ahead and see what that does about INVIS. It may help in packets getting lost because of respawning to fast and define a players death slower(better).
-
Null Skin
If this is what is happening it would be pretty easy to prove, in a temporary def assign the NULL ID a mesh(e.g. Hummer) then start playing online, it a player is invis he should appear as a Hummer if thats what you made its mesh.
then we may be able to asign map markers to a new null object ID so they dont use the old ID with a mesh....
-X
-
one thing I didn't really hit on was this: if a guy is cabling, its seems as though because his position is unknown, the server either doesn't send his location, or sends out something (unknown) for his location (if someone created a server object manager/explorer this could be determined in real time). its interesting to note that, for instance, sometimes when I have a ci I wake up dead. So in that case the loss of connection didn't result in my not being killed, whereas when someone cables they disappear and the stingers go right thru them. So in the case of someone cabling, the server treats the connection differently somehow than it does for a CI. I find this very interesting, and investigating what happens during cabling might be very productive towards fixing whatever is being sent, or not being sent, to the server that determines the position and visibility of the player.
-
Maybe the difference between cabling and a CI is that, only the clients downstream is interupted while cabling vs. while in a CI both UP/Down stream would be interupted?? OR??
::
7-8sec respawn timer is what I'm testin in the server for now,, I'll see how that goes before I attempt the testing of a Hummer/Null skin.
UPDATE:::::::::::::::::::::::::::::::::::
7-8sec respawn timer.. I ran a TDM public server with custom maps for 7hrs+ with only 1 reported/UNconfirmed INVIS. Wow it looks very promising so far. But Still needs more testing. If this is a fix or a 99% fix for INVIS it will be in the Host-Mgr.
::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::
-
Congrats Avenger. 99% is a very good chance to having a fix, let me know when the new player manager is out?
-
Well Thanx for the ""Congrats""..
''7-8sec respawn timer.. I ran a TDM public server with custom maps for 7hrs+ with only 1 reported/UNconfirmed INVIS. ''
But like I said it looks very promising. BUT Needs more testing...
Notes:
With a 7-8sec respawn timer, it appears that a player will have to hit the ground and be Good & dead before they can respawn. Reports of being stuck were still present, but seemed less than usual(not sure).
Without a Respawn timer, Maybe the overlap between falling to the ground and respawning has something to do with being invis.(not sure) This could be a graphics issue or a connection packet issue or both.(not sure)
When you die your Comanche skin is exchanged for a wrecked skin with no flight controls. If you imediately spawn before the packets are sent saying that you are alive again, then you are alive with flight controls but keep your last skin which was the wrecked skin, but a wrecked skin is not available for a live player with flight controls so you are skinless, thus invis. (not sure)
-
Makes sense, If you need me to I will help with the testing as would my squad <CoN> just let us know.
-
I can't imagine anyone would mind trading 8 sec for not having to deal with most of the invis issues. coolio, keep up the good work avenger !
-
Hey Avenger :waving.gif: ..... was that the test server we played our match in last night??..........If so I would like to report "0" invis's from the IFS's standpoint for the 3 games played :099.gif: :dance:
-
rgr that Garret,
Yup We had the Respawn Timer running, all of the warm up games were also invis free.
But the INVIS score for the day was 1 confirmed invis and 1 unconfirmed invis in about 5 hrs of serving.
unconfirmed invis is more than likely long passive/popup shots.
While it appears that it is not a 100% fix it does appear to help against invis greatly, so far.
So a running tally so far is:
12hrs
3 reported or questioned invis
1 confirmed invis(SeaSide map)
2 unconfirmed invis
-
Is the spawn-delay making any difference on getting "stuck" in the game? I know a lot of the invisi issues revolve around getting stuck and having to ~resetgames, the player usually comes back invisi to someone...
-
The Respawn Timer (could) be helping the stuck issue. But I can not really tell for sure. And I (could) be wrong. I haven't paid alot of attention to reports of being stuck in the past or present. Many times people get stuck and say nothing and reset.
On the other hand, While seeing an Invis player everyone is pretty good about letting everyone in the server know that someone is Invis.
-
1 Attachment(s)
Hey AV
:LolLolLolLol:
Hi m8 when i played in your test server i did not get stuck once (or twice) as far as i could see the delay timer is a gret sucess in solving manny isues with the game and i would be happy to trade 8 secs anyday!!
I have a feeling that this time could be shortend, because the data packet loss from player to server should = the ping time the player has to the server give it a + 2 second delay and that should sufice!!
well worth a test with 2/3 seconds put in in stead!!
Keep up the GREAT WORK BUDDY!!
:cooldude:
-
We're here and it's like seeing history being made. If this invis issue is fixed, that's going to be great! Man, that was the biggest pain in this game.
Now if we can fix this issue of people killing me all the time, like, So Dam, well, that would be great too. LOL I dont know what's up, but lately, I've been getting my butt whipped by everybody on C4.
Thanks for your work on this deal (fixing the invis issue) Avenger. Cya all around.
Hot
-
Very Possible a shorter timer could work just as good..
My first thought is to make everyone have to hit the ground before they can respawn.
I'm going to test more on the 7-8 sec Respawn Timer before I try shorter Time. Need more of a track record for 7-8 secs. Then compare it to a shorter time.
-
:cool097.gif: rgr buddy
GOOD JOB!!
:099.gif: :yelclap.gif: :2ar15smilie:
-
So a running tally so far is:
16hrs - 3 different days
3 reported or questioned invis
ONLY 2 confirmed invis
2 unconfirmed invis
I do have thoughts of bumping it up to a full 10 secs to try for 100% No Invis. After all that is what we are trying for. But let's see how the 8secs work for a bit.
Side notes:
At present it is set for 8secs. But by the time you see the countdown it could be 7secs or even less. The countdown is located at the top middle of your screen.
While you are in your countdown you can press 'R' to see death messages, etc,,.
________
Thank God, Thank CPD for a great forum and a new look, as well as Thanx to everyone that have posted,e-mailed,PM'ed me ideas on INVIS. All of my grey matter was very stuck with no ideas at all, as I said in my 1st post. So gettin many of us involved in the thought process has sparked ideas to get to this point of a 99% Invis Fix.
-
Ok. Flew 4 maps tonight with the Spawn-delay,I almost always get stuck the first death. Did NOT get stuck tonight. Acted like I was going to get stuck, but the respawn timer kicked in and game resumed as normal and never was invisi(or anyone else). We turned off the spawn-delay in the host manager half way through a map, and immediately had an invisi the next map in rotation....so you are on target for a fix Avenger...... :099.gif:
-
I changed the following settings in c4.cfg
startdelay=8
timeout=8
I'm hoping that this is the same thing ??
-
The start delay is 0-1-2-3 min to start game.
The Timeout is the Respawn Timer. I have never tried adjusting the Timeout in the cfg file. Alot of things will not work by changing the cfg file thats why I built the Host-Mgr.
Let us know if adjusting the cfg file works.
-
Humm an edit change in the client side of C4,instead of having a server edit
for C4. Unless I miss my guess, anyone could make that edit :puzzled:
-
Well as near as I can tell this is a server setting only. The server dictates the Timeout/Respawn Timer for everyone.
-
well, appararently v2 resets the timeout to 0 along with the other cfg settings.
-
Ok this is off topic, but How do you server 1.1.20? I tried the config change and it works, but I would like to change the ver of the server. how can I do it?
-
If you have upgraded your C4 to ver2, then you automatically host version 2 as long as you start the game with the C4v2.exe.... Some delete the V.15 exe when they install v2, some leave both....I do know that Avengers C4UD will be for those that use V2, so it would be wise to upgrade to V2 if you havent already.(Available here at CPD in the Download section)
-
oooooooooops I lied. I have 3 or 4 versions of v2 and it seems I was using the wrong version (DOH !!) whichever one I'm using now accepts the koth, 4 team, and also the timeout setting ( I'm guessing it was the last one you guys posted, I think by bane ??) Anyway, I'm now testing the thing at 8 secs, and I'll let you know if that helps with the invis. I'll play with the time and get back to you when its optimal. (did you guys hex a crack version in there somewhere ? if so, what's the offset, and I'll check to see which ver it is)
thx
-
You'll have to ask Bane.. As far as I know just the game types/NoCd were opened up.
-
c4 exes
There were 3 fixed exes for c4. The original one for version 1.5, Then Inso put one out for version 2 when auto explode was being tested for version 2, Then Bane put out another one for version 2 when he put out the gametype utility for KOTH.
Hope that helps.
-
So far I found that 4 sec timeout works fine, but that was only 10 player for an hour and a half, I just think that the client needs time to resend the data, to the server, and that 2 sec would even work. so long as the ping isnt 2500ms. but those are my thoughts
-
Vesh Fey, Thanx for the Input.
It seems a shorter TimeOut/Respawn Timer does work. I've been using 3-4 secs and still a 99% INVIS Fix. Any others have any input?
-
We've been using the "timeout" config setting in matches with great success. so far, 8 sec worked, and 6 sec worked. gonna try 4 sec next time. 6 sec seems better than 8 sec - 8 sec, with 12 players on fast paced map seemed to lag up map and cause heavy processing - I wonder if the timeout uses old style timers instead of interrupts and bogs down processor ? at anyrate, this is just subjective, so could be mistaken. After a couple of matches with 4 I'll report back, but this seems to be a great success !! good work !!
-
Glad to hear it's working..... I've made some adjustments to the C4GET-Host-Mgr that allow 0,3,4,5,6,7,8,9 for TimeOut Options. What machines/OS bog when TimeOut is used. Maybe newer or bigger Processors can handle it better?
1. PIII 1000-WinXP bogs noticeably
2. PIII 1000(overclocked)-WinXP can barely tell if it bogs at all.
-
I run a 1.2Ghz duron, and a gig of ram. I notice No bog when serving only. only when I serveplay do i notice any bog and then noone else seemed to notice it.