Auto Patching mechanism

  • Two Factor Authentication is now available on BeyondUnreal Forums. To configure it, visit your Profile and look for the "Two Step Verification" option on the left side. We can send codes via email (may be slower) or you can set up any TOTP Authenticator app on your phone (Authy, Google Authenticator, etc) to deliver codes. It is highly recommended that you configure this to keep your account safe.

Discord

surveying the wreckage...
Nov 6, 2002
639
0
0
Somewhere on Route 666
The_Head said:
At first I though great. No more people joining games and finding out that they aint got a patch. But reading this an auto update would indeed be annoying. I think having a pop up when you go to online play saying "There is a new UT200X Patch out, visit www.Unrea....." etc. Give it a clicky link so you can go straight and download it or can choose to leave it.

Yep. That's the way it should be. :tup:

kafros said:
2. You cannot play on this server.

I hope EPIC chooses (2).

Dedicated servers should be auto-patched to the latest version!!!

You're obviously one of the guys whose high- paid job it is to make one's working life utter misery. Nice to finally meet you.

kafros said:
There is NO WAY for EPIC to introduce NEW CODE THAT OPTIMISES THE GAME because they HAVE TO MAKE SURE YOU (that said no to the download link) CAN STILL PLAY.

I've got one simple word for you: WRONG. Your understanding of how the process works is wrong, wrong, wrong, it's just plain unattached to reality in even the most basic ways.

As an example, look here at the combined changelogs for the first two patches to UT2004:

Page @ unrealadmin.org

First you'll note the disclaimer at the top:

the changelog said:
This patch is completely compatible with the retail version - servers and clients of any flavor can connect with each other.
This patch will not overwrite your ut2004.ini and user.ini files, except to update settings as necessary. This patch includes all changes made in Patch 1.

That's in reference to patch 2, but it's also true for patch 1. Seems pretty clear to me, but just to elucidate: unpatched clients could connect to patched servers. Patched clients could connect to unpatched servers. There was no need to install this patch in order to keep playing or serving the game.

Now let's go down to the patch 1 changelist at the bottom and take a look at a couple of changes made:

the changelog said:
- call takefallingdamage() on wall dodge to prevent it being used as an exploit for avoiding damage on long falls
(can still use wall dodging anywhere you could before, you just take damage if you are falling too fast).

- force same character as player is using - players using bForceDefaultCharacter must use a valid forced character as their own model

- Fixed Leviathan pushing exploits by limiting the Leviathans max speed.

Those are all exploit fixes, every one. I'm not entirely sure that the Leviathan- pushing fix worked... but the first one (which prevented players from avoiding fall damage altogther by walldodging at the bottom of a long fall) and the second one (which allowed players to view all other players as Gorge while themselves playing as Matrix) definitely did work. Go ahead and look through those (rather long) changelogs and take a look at all the other great stuff that Epic "couldn't" do thanks to the patch being optional. :rolleyes:

Now. Some servers ran those patches, some didn't. Some clients ran those patches, some didn't. Whether or not the changes were felt ingame was entirely dependent on whether the patch was installed on the server. Those servers that didn't run it chose not to do so because with both patches, particularly the windows versions, problems were rampant but nowhere near universal. If a problem isn't universal, it generally doesn't get prompt 2- day service from Epic.

And now let me explain to you how the UT2004 servers are run: in brief, it's done out of pocket. An admin either rents the server from a service provider, rents space at a colocated data center, or else kicks out the dough for his/ her own private T3 line and builds the server machine as well -- all from his/ her own funds. Option 1 is NOT cheap. Option 2 is even more expensive, and option 3 pretty much requires that you're fairly wealthy.

And so what you're asking is that these people pay all that money to a 3rd party so that Epic can force them to install a hurry- up early patch that may very well make their server either unplayable or unpopular for God only knows how long. There's a reason Communism failed, you know... :p

If you think this is such a good idea, here's what: just before UT2007 comes out, go rent a server for it (shouldn't cost you more than about $150 US per month) and then install each and every patch that comes out. Hope you've got a big bottle of Excedrin... the installs themselves are fairly easy and your provider will probably do them for you. The nightmare begins after installation.


Look, I'm not really arguing that this shouldn't happen. There's no need for that because I can guarantee you that at least for PC, it won't happen. I'm just trying to explain to you why that is. Srry if I've sounded a little uptight, but the very idea makes my skin crawl.

I doubt you've been around to see patching of UT games in action, but I can assure you of two things:

1. The bugs that need fixing after initial release are substantial, but not game- breakers. The game will be playable and enjoyable right out of the box unless you're extremely picky.

2. The patches come fairly quickly at first. Skipping a patch or even two only means a delay of a month or so before you finally find one you want to use.

The system is fine as is, with the exception that more notification needs to be made. As for "transparency," I don't want to play on servers with lazy admins... those servers usually die pretty quickly anyway. There are plenty of resources available to keep admins active and informed of what's going on with the game, and the better ones take advantage of them.

Mmmkay? :)
 
Last edited:

Discord

surveying the wreckage...
Nov 6, 2002
639
0
0
Somewhere on Route 666
Bazzi said:
Seems that you got it all wrong what kafros wrote.
Re-read it.

Uh... no. How else am I supposed to interpret this:

There is NO WAY for EPIC to introduce NEW CODE THAT OPTIMISES THE GAME because they HAVE TO MAKE SURE YOU (that said no to the download link) CAN STILL PLAY.

?!

There is in fact a way for Epic to introduce new code and they do it all the time. Or is it just the case that no new code has been introduced at all and all servers and clients are still running the game as it was when first released?

Or, possibly, is this some strange language that only looks like English and is in fact something else?

:rolleyes:

Maybe you should explain it to me then, as I'm evidently too thick to read my own native language.

And while you're at it, try rereading my post. I gave a very clear example of an official patch that "optimized" the game while retaining backward compatability... which is exactly what the above quote maintains can't be done.
 
Last edited:

kafros

F1 manta tryouts
Jan 21, 2005
331
0
0
49
Under Articstronghold's bridge
[Apoc]Discord said:
You're obviously one of the guys whose high- paid job it is to make one's working life utter misery. Nice to finally meet you.

To answer this quickly:

I am one of those guys whose middle - paid job was hell while trying to have every different version combination of (my) software compatible.

And guess what: When I found a better way to do things (that would speed up the program), if that would break multiple version compatibility I just scraped it! Who do you think got hurt from that? me? no! the customer!

And to put it in UT context:

When EPIC was doing UT2004 they anounced that it would be compatible in netcode with UT2003. Later they droped it because (as said by cliffyB) they had more optimised net code for UT2004 that was incompatible with UT2003.

Imagine if UT2004 was a patch!

IF you are a developer ask yourself: how many times have you released something that you later find out you can do better/faster?

Most of the times better/faster needs radical code redesign and a change in the way you model your data (e.g. the data UT sends back and forth between server & client to keep the game state in sync).

And please read my previous posts again for the benefits of fast bug-crashing and game cheating prevention.

Guild Wars has a very successfull implementation of auto-patching. I took part in 3 of their beta events and it was nice to see bugs reported and resolved in a matter of hours!

[Apoc]Discord also know this:
Before you judge a man walk a mile in his shoes.
This way when you judge him you are a mile away....and you have his shoes ;)
 

Discord

surveying the wreckage...
Nov 6, 2002
639
0
0
Somewhere on Route 666
kafros said:
[Apoc]Discord also know this:
Before you judge a man walk a mile in his shoes.
This way when you judge him you are a mile away....and you have his shoes ;)

OK, so that crack about the IT dep't was an unwarranted venting of work- a- day spleen. I do apologize, sincerely. :)

However, I still think you've got a really terrible idea by the tail here. And now, to bidness:

please read my previous posts again for the benefits of fast bug-crashing and game cheating prevention.

Nobody's doubting that that would be a nice thing. My point here is that issues arising from massive discrepancies in hardware and software make it such that that kind of speedy resolution of issues is in all likelihood completely impracticable.

In other words, you're saying "it'll be awesome if it works" and I'm saying "it won't work." Potential benefits don't enter into the question. Maybe with any other company it would work... but I've seen Epic go at it and I just don't think they can do to UT what you're asking them to do.



Re: cheating. The way you're describing it, it goes like this: one day, some bad person discovers that he can exploit the game to make it do... something, we'll call it The Cheat. This guy goes online and executes The Cheat and within 48 hours The Cheat is widely known to everybody, confirmed in 10 demos with screenshots and GUID hashes, Epic has created new code to disallow it, and they're ready to distribute.

IRL it doesn't work that way. Cheats can take weeks/ months to become confirmed, regardless of any time involved in creating a fix.

And anyway, I've found Epic's response times to clearly identifiable shennanigans to be quite acceptable as is. The three exploit fixes quoted in my previous post were all from patch #1, which was released IIRC within just a couple of weeks.

Your tendency here is to exaggerate their potential reaction time a long way towards the short end of the spectrum and their actual reaction time a long way towards the long end of the spectrum. I've found Epic's overall responsiveness to new problems to be quite satisfactory. Others will disagree, but IMO these people aren't being realistic.



Imagine if UT2004 was a patch!

OMG! The difference in size between 2k3 and 2k4 was 3 full CDs. That's 2 and a quarter gigabytes. I'm sorry, I just don't want my machine downloading that kind of quantity without my knowledge or consent.

When EPIC was doing UT2004 they anounced that it would be compatible in netcode with UT2003. Later they droped it because (as said by cliffyB) they had more optimised net code for UT2004 that was incompatible with UT2003.

Most patches under the current scheme replace UT2004.exe... which means that C++ source code is in fact altered... or can be at any rate. What makes your example there a bad one is that by the time they came up with all those improvements (and indeed, a new 2.5 iteration of the current engine), they were already looking at making a new game. With intent to sell, naturally. No way would they throw that cash away just to patch UT2k3. They didn't patch 2k3 after 2k4 was released, because A. it would have cut into sales and B. 2k3 was such a total flop that nobody really seemed to mind.


Guild Wars has a very successfull implementation of auto-patching. I took part in 3 of their beta events and it was nice to see bugs reported and resolved in a matter of hours!

Again, from a look at their site, we're talking about a single- platform application. Further, it's an MMORPG, which has far different staffing expectations from a FPS... not to mention that the game company runs (and monitors) the servers, not end users. And on top of that the experience you described was from a Beta, which is to say, a controlled circumstance with a limited number of participants. That's a far cry from the heavily- modded, chaos- infested thing that is UT in the wild.


No, the time to make "major design changes" is before general release, not after. I've read everything you have to say on the subject and frankly I'm still firmly convinced that it's a bad idea. Epic's been doing this for quite a while now, and a lot of us on the consumer end have been doing it just as long... and in the main it works just fine the way it is.
 

kafros

F1 manta tryouts
Jan 21, 2005
331
0
0
49
Under Articstronghold's bridge
Each Guild Wars beta had more than 100,000 concurrent players (no typos read ign, gamespy previews).

My example on UT2003->UT2004 was to show a situation were something beneficial for the players (new batter/faster net code) was never introduced to UT2003.

You do not seem to grasp the importance of being able to change the modeling of the game data in order to make it faster/better (such thing will 100% break version compatibility)

Here is an example: Let's see an implementation of UT client - server communication during a typical game (I do not know how EPIC does is this is just an example which shows a radical data modeling change).

The player dodges right and fires a shot off his shock rifle aiming at a particular coordinate.

The client sends an XML message containing a request to do the above to the server:
<UT>
<ACTION WEAPON="SHOCK RIFLE" MODE="PRIMARY" AIM="X,Y,Z" />
<ACTION DODGE="RIGHT" JUMP="NO" />
</UT>

The server decodes this and replies with a new XML message that lets the client update its location and know if he hit something.

3 months later someone at EPIC goes: hey let's dump this inefficient XML crap and encode the info in the messages with a better way. So we will cut the volume of data sent and improve online experience.

New message format:
1. Each action is encoded in 8 bytes
2. First byte is the type of action (256 actions)
3. Second byte is the first attribute of the action (256 possible attribute values for 1st attribute)
etc.

This is an exagerrated example since EPIC programmers are way too good to make such an inneficient communications method in the first place. I just made it like that so that it is easy to understand as an example.

If you do not have an auto-patching system you would never see the second implementation.





To finish up I will quote Bazzi:

There are always issues, it's best to patch them quickly and for everyone than relying on people to download it from the official website where it appears 3 weeks late.

Yes this is the real life for software: THERE ARE ALWAYS ISSUES.
 

Discord

surveying the wreckage...
Nov 6, 2002
639
0
0
Somewhere on Route 666
Heh. What you're talking about effectively amounts to a complete restructuring of a big chunk of the engine as a free gift to end- users. If they're going to do that kind of major overhaul, they're not going to release it as a patch to the current game... they're going to make a new engine and a new game. Seriously, why do all that work and not get paid for it?

So you see, I do grasp the very real and concrete importance of changing "the modeling of game data."

Your example about UE2.5 is just further proof of what I'm talking about. You're taking it out of context as if they had new netcode just lying around, which they didn't. They didn't develop the changes in question until they were already working on a new game... that code revision would never have been issued as a patch to 2k3, it's that simple. Method of delivery is therefore pretty well irrelevant. Once the new game is on, the old game is dead... pretty much for simple economic reasons.

Patches to current games amount to minor tweaks, and ever thus shall it be. Given that state of things, I would still much rather have plenty of notice, a changelog and the option to roll back if things go horribly, horribly wrong. Under your system, if I find myself on the short end of a bug that effectively bricks the game but only for about 10% of users (and that's a lot more common than you may think), well then I'm just screwed until they recognize, then solve, then test, then patch the problem -- and in the meantime my month- old $40 game is just dead space on my HD. The way things currently stand, all I have to do is backup my UT2004\System directory before patching, and I'll never miss a beat. So no, a quick, mandatory patch isn't best for everybody at all. I'm a lot more interested in uptime than transparency... and I think anybody who suffered through the early days of Steam will agree with me here.
 

Bazzi

Wearing pink
Apr 22, 2001
629
0
0
Germany
www.bazzinet.info
[Apoc]Discord said:
Heh. What you're talking about effectively amounts to a complete restructuring of a big chunk of the engine as a free gift to end- users. If they're going to do that kind of major overhaul, they're not going to release it as a patch to the current game... they're going to make a new engine and a new game. Seriously, why do all that work and not get paid for it?

So you see, I do grasp the very real and concrete importance of changing "the modeling of game data."

Your example about UE2.5 is just further proof of what I'm talking about. You're taking it out of context as if they had new netcode just lying around, which they didn't. They didn't develop the changes in question until they were already working on a new game... that code revision would never have been issued as a patch to 2k3, it's that simple. Method of delivery is therefore pretty well irrelevant. Once the new game is on, the old game is dead... pretty much for simple economic reasons.

Patches to current games amount to minor tweaks, and ever thus shall it be. Given that state of things, I would still much rather have plenty of notice, a changelog and the option to roll back if things go horribly, horribly wrong. Under your system, if I find myself on the short end of a bug that effectively bricks the game but only for about 10% of users (and that's a lot more common than you may think), well then I'm just screwed until they recognize, then solve, then test, then patch the problem -- and in the meantime my month- old $40 game is just dead space on my HD. The way things currently stand, all I have to do is backup my UT2004\System directory before patching, and I'll never miss a beat. So no, a quick, mandatory patch isn't best for everybody at all. I'm a lot more interested in uptime than transparency... and I think anybody who suffered through the early days of Steam will agree with me here.

I 100% disagree there, because:

1) Improved customer support will pay off later, happy customers likely buy another game by that company.
2) New free content and BC breaking patches are pretty much reality in strategy games. Even Starcraft (1998 title!) requires the users to be patched in order to play online.
 

Zur

surrealistic mad cow
Jul 8, 2002
11,708
8
38
48
Sounds like Steam (referring to original post).
 

kafros

F1 manta tryouts
Jan 21, 2005
331
0
0
49
Under Articstronghold's bridge
Azura said:
Sounds like Steam (referring to original post).

You got it wrong. This is what I wrote:

Kafros said:
I would like to see patches to be auto-applied as soon as you go on-line

Kafros said:
EPIC releases the fix which is installed to anyone who wants to PLAY online (if you are on DSL and are playing UT offline it does not patch. It patches only if you decide to play online

Steam is NOT like that. Even if you want to play off-line or in your private LAN, the game will still require to connect to steam from time to time (even if you set the option to: do not keep my game up-to-date).

Also keep in mind that Valve made steam so that THEY COULD ACT as DISTRIBUTORS (and get a piece of the pie that publishers + shops get). I think they were even sued for that by their publisher.

Steam is a selling tool more than a development/deployment tool. And for a company the size of Valve it has TOO MANY issues (I will agree on that)
 

Discord

surveying the wreckage...
Nov 6, 2002
639
0
0
Somewhere on Route 666
kafros said:
I quit......


Yaaay! :clap:

Tell you what, I'll even go halfway for you... I'd support an optional autopatcher for the lazy. :p

But just to throw a few more things at you:

1. I don't want my install patched every day, that's for sure. During peak patching times (ie, first 3 months after release), the changelogs are extensive and piecemeal release of changes would essentially amount to a daily upgrade. That's bad news when you're trying to learn a game like UT.

2. I seriously doubt that piecemeal release would necessarily result in faster responses to new problems... as it is, everything gets patched on average every 3-4 weeks. Under piecemeal release, you'd see some changes every day but a lot of these would be things like "corrected spelling error in GUI." The net frequency of substantial and important fixes would likely remain just about the same.

3. As far as your claim that backward compatibility couldn't be broken without an autoupdater goes, I don't buy it for a second. After the ECE was released, the UT2k4 serverbrowser stopped advertising servers versioned below (then current) 3220. If there was a major change coming, that would have been the perfect time to do it.

4. .Exe replacement. Most patches replace UT2004.exe and UnrealEd.exe. Constantly and unnanounced? Please, no... talk about inconvenient. And anyway, how's that going to work if the game has to be running to do it?! :con:

5. "Open source" issues. UT and UScript are designed with modding in mind... it's a key element in the game's design. Constant, unannounced patching could prove to be a major headache for modders.

Bazzi said:
New free content and BC breaking patches are pretty much reality in strategy games. Even Starcraft (1998 title!) requires the users to be patched in order to play online.

Different games, different companies, different business strategies, waaay different networking model. Apples and oranges there.



Look, I see this from tech people all the time, I call it "Elegant Solution Syndrome." They come up with this amazing piece of tech that really seems super sexy to them and think, "this has got to go into the system." And it's got all these awesome features and it's just wonderful... until it turns out to be completely incoherent in relation to the needs/ wants of people who actually use the thing. Then, suddenly, the end- users who start complaining are uncomprehending Philistines who "just don't understand my genius."

When the truth is, you just made a supercool thing that nobody wants.

I don't want an autopatcher. I've been playing this game for 5 years now, I've seen how patching works here, I'm a big boy and know what I'm doing, and I don't want it. I kicked out to buy the games, I kicked out to run the servers, my financial contribution to the whole thing makes me a pretty good customer, so hey... just do me this one favor, willya?
 
Last edited:

samix

New Member
May 15, 2005
2
0
0
I don't think we should have auto-patching, but I would like small patches like Tribes 2 had. They were like 5 megabyte patches, and I think there were 6 of them or something. It all depends on how well the game is polished when it's released, and whether they will wait for the bugs to pile up and fix them all at once or a new patch for each new bug (annoying as hell).
 

Bazzi

Wearing pink
Apr 22, 2001
629
0
0
Germany
www.bazzinet.info
[Apoc]Discord said:
Different games, different companies, different business strategies, waaay different networking model. Apples and oranges there.

I dont accept that. Different companies doesnt really backs your argument up :p

You can make startegy game patches compatible to old versions as well, but still patching is prefered.

I just cannot see why theres so much paranoia there. Also replacing UT2004.exe why should that be inconvenient?

It's more or less a question of evolution, more and more games adopt auto patching for online play. And it is good that way.
 
Well then I believe that the Steam idea would work but allow the manager of the server/servers to have it patch their server or to just be able to say no I don't want to patch my server, same thing would go for the normal game player with no server.

A program like steam but with a questionnaire before the patch is installed asking would you like to patch this game or not.
 

Discord

surveying the wreckage...
Nov 6, 2002
639
0
0
Somewhere on Route 666
Bazzi said:
I just cannot see why theres so much paranoia there. Also replacing UT2004.exe why should that be inconvenient?

Buggers my start menu shortcuts and can cause probs with ASE. :lol:

And then, there's these:

http://www.ataricommunity.com/forums/showthread.php?s=&threadid=468623&highlight=patch+problem

http://www.ataricommunity.com/forums/showthread.php?s=&threadid=429363&highlight=patch+problem

http://www.ataricommunity.com/forums/showthread.php?s=&threadid=412223&highlight=patch+problem

http://www.ataricommunity.com/forums/showthread.php?s=&threadid=427305

http://www.ataricommunity.com/forums/showthread.php?s=&threadid=380827&highlight=patch+problem

http://www.ataricommunity.com/forums/showthread.php?s=&threadid=391202&highlight=patch+problem

http://www.ataricommunity.com/forums/showthread.php?s=&threadid=390541&highlight=patch+problem


Just a sample, happy reading. Option to roll back is crucial for a lot of people... it's not paranoia, it's just common sense. Manual patching/ unpatching keeps things nice.

It's more or less a question of evolution

So are the platypus, the dodo, the blind cave fish and solid state guitar amplifiers. Evolution != improvement.
 
Last edited:

]SideWinder[

Winder of the Sides
Apr 26, 2005
74
0
0
[Apoc]Discord said:
Different games, different companies, different business strategies, waaay different networking model. Apples and oranges there.
Bazzi said:
I dont accept that. Different companies doesnt really backs your argument up :p
I agree there. I don't see how that proves anything.
If you ask me, your arguments in general dont make any sence Giscord.
.exe replacement inconvenient?
how's that going to work if the game has to be running to do it?
Im getting the impretion here that you have never seen an autopatching programe, in most cases (by most I meen all), the auto patching programe closes your game before it starts to patch it.

and as far as your "Elegant Solution Syndrome" stuff goes, I can see it happening. But if you ask me, I dont see it happening over a Autopatcher. There pretty simple really. Take starcrafts for example (because it was mentioned before) all it really does is check a master server to see if your vertion is the same. Then if its not, it says you need the new patch, asks if you want to download it now. If you click yes, it downloads it, cloes starcraft, runs the patch, and restarts starcraft.

I dont see whats so crazy about something like that! Thats all I want from an auto patcher. Nothing more.
 
Last edited:

Discord

surveying the wreckage...
Nov 6, 2002
639
0
0
Somewhere on Route 666
]SideWinder[ said:
your arguments in general dont make any sence Giscord.

That's "sense." And mostly, "Discord." Thx.

And to keep it simple, here it is: I don't want to be autopatched because a lot of times Epic's patches are crapola, and I'd rather wait for one that's trouble- free than have some junk shoved down my throat by an autopatcher. K?

Anyway, odds are excellent that it won't happen... and that's good :tup:. I've been through the patching drama before, and you can either trust me on this or (hopefully not) find out the hard way.
 
Last edited:

Discord

surveying the wreckage...
Nov 6, 2002
639
0
0
Somewhere on Route 666
Well, since I'm about out of steam on this one (pun intended? Dunno...), I'll go here instead:


]SideWinder[ said:
Take starcrafts for example (because it was mentioned before) all it really does is check a master server to see if your vertion is the same. Then if its not, it says you need the new patch, asks if you want to download it now. If you click yes, it downloads it, cloes starcraft, runs the patch, and restarts starcraft.

On the face of it, as long as the patch is in no way required, I'd be fine with something like that.

Easier notification? Great, as long as it doesn't turn into pesterware.

Easier acquisition and install? Hey, awesome.

Easier uninstall? Why yes, you can definitely get a "hell yeah" from me on that one (although that won't happen either :( ).

Latest patch mandatory for online play or running a server? Game downloads stuff without my consent or knowledge? Over my dead frickin' body.