Bethesda, please put this in the next PC patch

Post » Mon May 28, 2012 12:29 am

I want a option to disable the horse when I fast travlin, when you meet some bad guy/s the horse attack and I want it to get out of my way, I have the redeye horse.
User avatar
adame
 
Posts: 3454
Joined: Wed Aug 29, 2007 2:57 am

Post » Sun May 27, 2012 11:01 pm

people easily forget the simple fact that optimizations in code meant for ONE platform may not work for others, like the PC only benefitting from such code optimization leaving the 360 and PS3 in the dust.

I'd even bet real money that this is the main reason why.
User avatar
dell
 
Posts: 3452
Joined: Sat Mar 24, 2007 2:58 am

Post » Sun May 27, 2012 8:01 pm

As far as I remember this SKSE consists in replacing the original TESV.exe by another one that someone I know nothing about has made. So, yeah, I don't want this in my computer. Whatever it does, I probably don't need it because my game works fine. :wink:
Sorry someone already flamed you about this, but I just wanted to make sure this is clear to everyone: SKSE uses skse_loader.exe which calls TESV.exe and injects the SKSE code. Bethesda has always been OK with this method since Morrowind (MGE, OBSE, FOSE, etc.), and the SKSE team has been working on projects since then.

It doesn't replace TESV.exe at all.
User avatar
Jeffrey Lawson
 
Posts: 3485
Joined: Tue Oct 16, 2007 5:36 pm

Post » Sun May 27, 2012 6:10 pm

people easily forget the simple fact that optimizations in code meant for ONE platform may not work for others, like the PC only benefitting from such code optimization leaving the 360 and PS3 in the dust.

I'd even bet real money that this is the main reason why.

Well..

A thing like: if (player->hitpoints() < 0)

without inlining would be something like:

mov ecx, [eax]
mov ecx, [ecx+64]
push eax
call ecx
save registers
create stack frame
mov eax, [ebp-4]
mov eax, [eax+152]
clean stack frame
restore registers
ret
cmp eax, 0


On any system in machine language.

With inlining it is:

mov eax, [eax+152]
cmp eax, 0

It's basically less instructions, which should benefit any system.
User avatar
Sarah Edmunds
 
Posts: 3461
Joined: Sat Jul 08, 2006 8:03 pm

Post » Sun May 27, 2012 10:10 pm

people easily forget the simple fact that optimizations in code meant for ONE platform may not work for others, like the PC only benefitting from such code optimization leaving the 360 and PS3 in the dust.

I'd even bet real money that this is the main reason why.
See my earlier post. Console builds are compiled seperately.
User avatar
Eilidh Brian
 
Posts: 3504
Joined: Mon Jun 19, 2006 10:45 am

Post » Mon May 28, 2012 1:44 am

people easily forget the simple fact that optimizations in code meant for ONE platform may not work for others, like the PC only benefitting from such code optimization leaving the 360 and PS3 in the dust.

I'd even bet real money that this is the main reason why.
It's the compiler's job to do the optimizing, and this mod is just a brute-force method to apply some weak optimizations in speed-sensitive code on the pre-made executable. Bethesda wouldn't have to do anything other than click some check-boxes, and it would automatically make even more optimized code when building the executable. It would be very similar when building the 360 or PS3 versions. Just click some check-boxes, and the compiler handles the rest.

I bet dollars to donuts that the 360 version had some optimizations applied. Old hardware such as that running smoothly with a completely unoptimized build? Hardly. Don't forget this game is designed to run on the same hardware as Oblivion, which only needed a 2GHz single-core CPU on the PC while Skyrim needs a 2.4GHz dual-core CPU. Why such a large bump in the PC requirements, when the 360 hardware hasn't changed at all?

You can't force the compiler to use inlining. In Visual Studio, for a release build I think the default is: let the compiler decide. There is a forceinline directive, but even that does not force the compiler to inline the method, it will generate a warning though if the compiler doesn't inline the method.
Any optimizer worth its salt will inline simple functions that are marked inline (or defined in the class definition, which is implicitly marked as 'inline'). The only time it won't inline such functions is if it thinks doing so will actually make the code perform worse overall. It doesn't have to inline anything, no, but it would be stupid not to as it will result in less code that runs faster. An optimizer that doesn't optimize code it should know it can is broken... unless it's explicitly prevented from doing so (by Bethesda disabling it).
User avatar
katsomaya Sanchez
 
Posts: 3368
Joined: Tue Jun 13, 2006 5:03 am

Post » Mon May 28, 2012 2:52 am

people easily forget the simple fact that optimizations in code meant for ONE platform may not work for others, like the PC only benefitting from such code optimization leaving the 360 and PS3 in the dust.

I'd even bet real money that this is the main reason why.
So? It's easy enough to release different binaries for different platforms. This is already the case with the PS3 afterall, not to mention that's why you have different release channels like Steam and XBox Live. Frankly, the binary for each platform should be optimised for that platform to being with, it's crazy not to.
User avatar
Taylah Haines
 
Posts: 3439
Joined: Tue Feb 13, 2007 3:10 am

Post » Mon May 28, 2012 3:08 am

The sad thing is: people are spending hunderds of euros/dollars to make their games run faster on their machines. More expensive CPUs, more expensive videocards, etc. People are buying completely new machines for Skyrim.

While a few hours work by Bethesda (or a few days at most maybe) would have given all their customers on PC performance as if their PCs were worth several hunderds euros/dollars more. Think of all the "lost money" because of this.

And who says they have shipped optimized executables for PS3 or Xbox ? They might have missed a huge opportunity there too.
User avatar
Kari Depp
 
Posts: 3427
Joined: Wed Aug 23, 2006 3:19 pm

Post » Sun May 27, 2012 6:09 pm

Sadly, to you your "few hours of work" could have been many more months of QC. Checking to make sure that the updated code works with everything in the game.

This is something you people forget when you hail the benefits of a random mod. Sure it may "work for you", but it still won't work for many others. There's also the issue of release for multiple platforms, keeping everything as clean and in order as possible for ease of use in the end.

All this shows is that many of the users here don't understand how this engine works. Period. There's a lot more to it than what has already been done.
User avatar
Latino HeaT
 
Posts: 3402
Joined: Thu Nov 08, 2007 6:21 pm

Post » Mon May 28, 2012 4:45 am

Yeah go to bed; maybe it'll teach you to respect others who don't think like you, genius.

Right. Clearly we should all aspire to respect people that blindly accuse some of the most respected, hard-working faces of the modding community with creating viruses with absolutely no proof whatsoever while said modders freely provide source code. These are modders whose script extenders were necessary for all of the best mods in Oblivion, Fallout 3, New Vegas, and soon Skyrim, and who update their script extenders almost without fail within hours of a Beth patch.

Clearly.

Genius.
User avatar
Lucky Girl
 
Posts: 3486
Joined: Wed Jun 06, 2007 4:14 pm

Post » Mon May 28, 2012 1:42 am

The whole point behind Beth adding this to an official patch is that Im sure there are ways that they can actually improve upon what the modder has done, and when their work is done they just have to upload the file to steam. Doing it this way each player gets the changes made to their system by just downloading an automatic patch, while leaving it to the modders requires people actually looking for the files and doing the work themselves. DOH.....

As for me I would rather Beth just to do the job themselves so that i dont have to do anything on my part, especially considering the fact that Windows svcks and requires a full whipe every 1-2 years. And the last thing I want to do after reinstalling skyrim is having to look for a 100 player made optimizations in order to get the game to run good.


Also while their at it, it would be nice if they would optimize Skyrim for 64bit systems for systems with 4-8 core cpu's.
User avatar
Laura Samson
 
Posts: 3337
Joined: Wed Aug 29, 2007 6:36 pm

Post » Sun May 27, 2012 6:17 pm

Right. Clearly we should all aspire to respect people that blindly accuse some of the most respected, hard-working faces of the modding community with creating viruses with absolutely no proof whatsoever while said modders freely provide source code. These are modders whose script extenders were necessary for all of the best mods in Oblivion, Fallout 3, New Vegas, and soon Skyrim, and who update their script extenders almost without fail within hours of a Beth patch.

Clearly.

Genius.
Never used their stuff; never had to. Morrowind, Oblivion, Skyrim work fine as they are for me.
User avatar
JAY
 
Posts: 3433
Joined: Fri Sep 14, 2007 6:17 am

Post » Sun May 27, 2012 4:13 pm

People who know little about coding have no legitimate opinion on this matter.

Bethesda rushed this game, and in doing so made a lot of really painful mistakes.

The End.
User avatar
JaNnatul Naimah
 
Posts: 3455
Joined: Fri Jun 23, 2006 8:33 am

Post » Sun May 27, 2012 6:02 pm

The really obvious reason to include this in *official* vs. *unofficial* patches is so that later version (mandatory updates) won't break this fix, when the author(s) may or may not be available to update the patch later.

Say patch 1.9 breaks the fix - and the mod author isn't available?

It's not like the Sword of Hello Kitty Texture or whatever optional thing you have installed - for me, 1.3 doesn't work without this (no I don't know why, don't ask).
User avatar
Juliet
 
Posts: 3440
Joined: Fri Jun 23, 2006 12:49 pm

Post » Sun May 27, 2012 6:38 pm

http://www.gamesas.com/topic/1321657-tesv-acceleration-layer-offers-cpu-optimization-massive-possible-performance-increases-now-in-skse-plugin-format/



It just boggles the mind how modders can figure this out without the mod kit, yet the developers can not do this themselves.

Please put this in the next patch. Or atleast hire the guy that did this because he's obviously better suited to these things than the guys that work over there.

laa rolls out... no thank you from the community just more insults/ complaints.

Merry Christmas Bethesda. I for one love the game.

If your just focusing on dlc thats fine by me. Keep at it (but take a break first!!/ happy news years)
User avatar
Julie Ann
 
Posts: 3383
Joined: Thu Aug 23, 2007 5:17 am

Post » Sun May 27, 2012 6:43 pm


As far as I remember this SKSE consists in replacing the original TESV.exe by another one that someone I know nothing about has made. So, yeah, I don't want this in my computer. Whatever it does, I probably don't need it because my game works fine. ;)

Tbh I don't understand why you are gaming on PC if you are so afraid of third party/community tools. PC gaming is all about player-to-player and community, unlike console gaming(which is strictly developer-to-player and the scope of community is limited by the developers).

And also, what makes you trust Bethesda more than SKSE team. Because Bethesda is a big and "professional" company while the SKSE team is formed only by a small group of people with similar interests? Last I check some days ago the bank I usually use has leaked/sold my personal information along with those of others to some other people, and the bank is probably 100 times bigger and more "professional" than Bethesda.

The script extender team has been around since Morrowind and hundreds of thousands of people have used their tools and works. I see no reason to trust them less than Bethesda.

And now what they found is mainly a method to increase performance. Bethesda only has to use this method, without integrating SKSE itself.

And according to your trust-bethesda-but-none-else logic, should Bethesda choose to do this, isn't it fine to you as well?
User avatar
Ricky Rayner
 
Posts: 3339
Joined: Fri Jul 13, 2007 2:13 am

Post » Mon May 28, 2012 2:58 am

Never used their stuff; never had to. Morrowind, Oblivion, Skyrim work fine as they are for me.

Then how about you get out?

The thread is about their work. If you don't like it, why are you here?
User avatar
JaNnatul Naimah
 
Posts: 3455
Joined: Fri Jun 23, 2006 8:33 am

Post » Sun May 27, 2012 1:46 pm

You might be able to get this implemented, it look a few weeks and a vast amount of threads about the 4GB patch and the major issues of only 2GB's of ram being used but they patched it into the game after that.

Get a large enough voice and they will respond.
User avatar
Cash n Class
 
Posts: 3430
Joined: Wed Jun 28, 2006 10:01 am

Post » Mon May 28, 2012 4:49 am

The only reason not to optimize code is if your code is too complex, platform dependent or buggy for compiler optimizations to work.

When you compile something critical, like the Linux kernel, it is adviced to use a certain compiler (GCC) and a certain version of that compiler to minimize the chance of problems. Besides the kernel and your drivers, which are complex and have platform dependent code, most code can be optimized by a good compiler. Because coding is done in higher level languages, like Java or C++, the compiler can often produce faster code than humans these days.

In the past programs would not compile with agressive optimizations. Old versions of the graphical toolkit Gtk+ would fail to build correctly when using compiler optimizations. There was only one explanation for this: the coding svcked. But, when compiling without optimization, using an old 386 instruction set, this code would still run pretty well. The same thing probably happens with Skyrim and its predecessors like Oblivion and Fallout 3. All these games use the same engine that's why all games have the same problems: you can't climb ladders, when you walk into a shop or house stuff can randomly fly through the air and there is the occasional CTD. That doesn't change the fact the optimizing the code will have a good chance of breaking things, like some quests or scripts that will break with this acceleration layer fix. That's probably the reason the devs didn't want to risk breaking things and creating even more bugs by optimizing the code. So I don't think this patch will be included in the official release, unless they can rewrite certain parts of the engine.
User avatar
Tiffany Castillo
 
Posts: 3429
Joined: Mon Oct 22, 2007 7:09 am

Post » Mon May 28, 2012 4:48 am

That doesn't change the fact the optimizing the code will have a good chance of breaking things, like some quests or scripts that will break with this acceleration layer fix. That's probably the reason the devs didn't want to risk breaking things and creating even more bugs by optimizing the code. So I don't think this patch will be included in the official release, unless they can rewrite certain parts of the engine.
Leaving off optimizations because code breaks from it is essentially the "nuclear option", as someone once described it. It's the "the code is crashing, and we can't make it work without disabling optimizations" fallback, and generally, having your code break because of optimizations usually means the code is already broken, just that the lack of optimizations reduces the risk of an actual crash (while still allowing subtle errors that can become harder and harder to track down, and randomly and unexpectedly blow up). Taking this view, it even explains why results have been all over the map, with some people not experiencing any issues at all, with others running into a few non-game-breaking bugs, and others not being able to play the game at all.

Skyrim is essentially the same core engine as Morrowind, which was originally developed about 10 years ago (and patched with more and more features since then). It would be extremely irresponsible, IMO, to be so lax with regards to bugs that they simply turn off optimizations to try and hide them, particularly when the engine is going to be used more in the coming years. If this is indeed the case, I have to wonder how much smoother Skyrim's release could've been (that is, less need for critical day-0 or day-1 patches) if they actually focused on real fixes, or fixes that actually work around the issue (even if it's not "proper"/maintainable code that will just be replaced in a future engine update) instead of resorting to 'all optimizations off' to hide bugs. Not only would cleaner code result in a smoother release, but it would also result in a better performing game because optimizations would work.
User avatar
Damned_Queen
 
Posts: 3425
Joined: Fri Apr 20, 2007 5:18 pm

Post » Mon May 28, 2012 4:43 am

Leaving off optimizations because code breaks from it is essentially the "nuclear option", as someone once described it. It's the "the code is crashing, and we can't make it work without disabling optimizations" fallback, and generally, having your code break because of optimizations usually means the code is already broken, just that the lack of optimizations reduces the risk of an actual crash (while still allowing subtle errors that can become harder and harder to track down, and randomly and unexpectedly blow up). Taking this view, it even explains why results have been all over the map, with some people not experiencing any issues at all, with others running into a few non-game-breaking bugs, and others not being able to play the game at all.

Skyrim is essentially the same core engine as Morrowind, which was originally developed about 10 years ago (and patched with more and more features since then). It would be extremely irresponsible, IMO, to be so lax with regards to bugs that they simply turn off optimizations to try and hide them, particularly when the engine is going to be used more in the coming years. If this is indeed the case, I have to wonder how much smoother Skyrim's release could've been (that is, less need for critical day-0 or day-1 patches) if they actually focused on real fixes, or fixes that actually work around the issue (even if it's not "proper"/maintainable code that will just be replaced in a future engine update) instead of resorting to 'all optimizations off' to hide bugs. Not only would cleaner code result in a smoother release, but it would also result in a better performing game because optimizations would work.
Arisu suggested that if the code was optimized using a compiler, and just focusing on this single optimization Arisu did, the benefit in terms of performance would probably be over 100%. Now if doing other optimizations as well with a compiler, the performance increase would be even higher.

My amature guess is that with all these performance optimizations done using a compiler by Bethesda, the performance increase would be so high that Bethesda could actually add in a bunch of not-outdated graphical features as well, like parallax occlusion mapping to make textures not look 2D flat, and more updated lighting system (global illumination perhaps?) and updated shaders and especially a better LOD system (the LOD system they have now is a complete joke for 2011; it's just as bad as Oblivion's except that we got a few 2D distant buildings here and there, but the pop-up apart from that is still just as bad).

I don't know that much about this in depth, but from my amature perspective, I'm getting very disappointed with what Bethesda has done technically.
Apart from 2D volumetric clouds and crappy non-dynamic shadows, this feels basically identical to Oblivion technically.
User avatar
darnell waddington
 
Posts: 3448
Joined: Wed Oct 17, 2007 10:43 pm

Post » Mon May 28, 2012 1:59 am

Arisu suggested that if the code was optimized using a compiler, and just focusing on this single optimization Arisu did, the benefit in terms of performance would probably be over 100%. Now if doing other optimizations as well with a compiler, the performance increase would be even higher.
Sure, inlining and simple code reduction alone can have profound results on generated code, and there's a lot more optimizations can do to make code run faster. Personally, I couldn't imagine releasing any of my own stuff without applying optimizations (unless it was for debug/testing purposes), because I couldn't stand knowing my code is running slower than I know it could be.

A lot of the code I release is of my own making, though, and it's entirely CPU-driven. But a game like Skyrim also throws work to the video hardware and 3rd party code, like DirectX and the Havok stuff. Skyrim being built unoptimized wouldn't affect the performance of the drivers and hardware, or the pre-made 3rd party code, but it would be a bottleneck (eg, the fastest GPU in the world won't do diddly squat if the CPU can't work fast enough to tell the GPU what to do). Optimiziations would definitely improve overall efficiency by having the CPU do less work, but how much of a noticeable performance increase depends on how much of it is being bottlenecked by the unoptimized code, and that's very hard to guess without seeing the source code and proper profiling and timing metrics. Arisu's patch shows there are definite gains to be made, though, particularly on lower-end CPUs.

My amature guess is that with all these performance optimizations done using a compiler by Bethesda, the performance increase would be so high that Bethesda could actually add in a bunch of not-outdated graphical features as well, like parallax occlusion mapping to make textures not look 2D flat, and more updated lighting system (global illumination perhaps?) and updated shaders and especially a better LOD system (the LOD system they have now is a complete joke for 2011; it's just as bad as Oblivion's except that we got a few 2D distant buildings here and there, but the pop-up apart from that is still just as bad).
The shaders are entirely GPU driven. The shaders are passed to the drivers, which do its own processing on them before sending them to the hardware, and the hardware runs it. The lack of optimizations made when building the executable wouldn't affect the drivers or GPU performance, it would just affect the performance of Bethesda's own code that tells the drivers what shaders to use.
User avatar
Alexis Acevedo
 
Posts: 3330
Joined: Sat Oct 27, 2007 8:58 pm

Post » Mon May 28, 2012 3:03 am

Arisu suggested that if the code was optimized using a compiler, and just focusing on this single optimization Arisu did, the benefit in terms of performance would probably be over 100%. Now if doing other optimizations as well with a compiler, the performance increase would be even higher.

My amature guess is that with all these performance optimizations done using a compiler by Bethesda, the performance increase would be so high that Bethesda could actually add in a bunch of not-outdated graphical features as well, like parallax occlusion mapping to make textures not look 2D flat, and more updated lighting system (global illumination perhaps?) and updated shaders and especially a better LOD system (the LOD system they have now is a complete joke for 2011; it's just as bad as Oblivion's except that we got a few 2D distant buildings here and there, but the pop-up apart from that is still just as bad).

I don't know that much about this in depth, but from my amature perspective, I'm getting very disappointed with what Bethesda has done technically.
Apart from 2D volumetric clouds and crappy non-dynamic shadows, this feels basically identical to Oblivion technically.
Hold on a sec. Distant trees and buildings are 3D. But agreed on the lod overall. Guys who made ARMA2, made a much better job on distant lod (and their engine was made in 2000, its just enhanced for modern hardware like Morrowind engine today in Skyrim). And just look at this vid:
http://www.youtube.com/watch?v=8KK6Fo3Y0AU
Can Skyrim engine do this?
Oh yeah, I just forgot, that Skyrim is a console game.
User avatar
Minako
 
Posts: 3379
Joined: Sun Mar 18, 2007 9:50 pm

Previous

Return to V - Skyrim