Yes, you heard me…

We’re testing some sweet little fixes and changes to 1.31 this weekend:

– $here, kitty kitty,
– Auto-approval of contact reports,
– Fix for the shadow-flash thing,
– Likely fix for Mission Results Pending,
– Some itty performance tweaks that nobody will notice but you might notice under-performance a little less often,
– The No-Fire-Zone only takes effect once the facility becomes spawnable.

I’d like to hope some of Ramp’s improvements to the capture feedback went in, but I haven’t had chance to check, and at this point we are in feature freeze so we can roll this baby out.

Gophur has, on several occasions, said “we just need to go ahead and make contact reports auto-approved” but changed his mind before getting around to ticketing it.

So while looking into a Mac problem with posting contact reports this week, rather than add the bevy of debugging needed to track it down, I … uhm … de-cluttered the code to simplify it. Assuming you consider the approval system to be clutter, which I chose to ;)

I then checked that in and made the argument that since the system it was in had been removed, I had fixed the Mac bug :)

Reviewing my Nettersheim footage powered up the light-bulb on what was causing that annoying “flash” of shadow we all see in 1.31 (you can see it most clearly at the start of Part 3). It’s obviously something to do with the hand-off from a physics-driven entity to a corpse. The client guys tell me they fixed it but – watching those videos, it seems to me that it’s peculiar to when the corpse is not on simple, flat ground, but is in contact with some kind of non-terrain entity like a building (the first guy that dies in Pt3 is just touching the corner of the building, the second guy is touching the crates, etc).

I look forward to it being fixed.

I’ve no idea how long the Mission Results Pending bug has been with us. It is some kind of weird-ass timing issue caused by the way we despawn players. Specifically, though, I managed to determine it is caused by a rare race condition (that is virtually impossible to reproduce with the debugger running due to some dynamics of how the debugger affects CPU instruction ordering).

The client asks the host where it should despawn to, the host tells it, the client initiates a despawn, carefully annotating to itself that it is no-longer connected to the “cell host”. Just as it is about to close the cell connection, the client somehow receives a last message from the cell, telling it where to despawn to. When the client tries to act on this, it interprets the “not connected to the cell host” status as “already despawned” and cancels the despawn attempt.

And then it closes the cell host connection.

Since the client has just lost a connection to something and there is no despawn request attempt pending, it attempts to reconnect to the last thing it was talking to. Oh dear, that is the cell host.

It actually got more complicated from there – but the solution was relatively simple :)

“$here” (or %here for those of you who don’t have dollar symbols on your keyboards) is a macro for “The capture building (and %age progress on it) or town I am in”. So if you step into the Antwerp North Armybase bunker and there is 70% on the bar, “I’m in %here!” becomes “I’m in Antwerp North Armybase (70%)!”. If you step out of the building and type “And also %here” it becomes “And also Antwerp”.

GM’s will be pleased to note I’ve fixed some commands that weren’t working

if ( _isConnected(cellHost) )
fail ;

While ‘fail’ is not the actual C++ used, it is a more accurate description.

if ( _isConnected(cellHost) /*->*/ == false /*<-*/ )
return false ;

HCs might be happy to know that the “Threat Level” script and the “Next Move” alert script are running again (although this is already live).

If you’re eager to see these fixes/changes get rolled out soonish, drop in to the beta this weekend.

I’ll be on the beta mid-afternoon Saturday, and if there are a few other people on, I might break out one of the recordings :)

One Comment

Afraid to say I just got mission results pending twice in a row in

Leave a Reply

Name and email address are required. Your email address will not be published.

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <pre> <q cite=""> <s> <strike> <strong> 

%d bloggers like this: