Sameria Posted March 20, 2012 Share Posted March 20, 2012 I upgraded the RAM in my machine from 6GB to 12GB and used the script. It worked great. I look forward to seeing your GUI where it becomes easier to choose which assets that we want to place on the RAM drive. Where I noticed the most difference is in the fleet. Normally during peak server times, I get a black screen where just my UI is present, with this I no longer get that. I can't say for sure yet on planet loading times, but going to compare a little more. Thanks a bunch!!! Link to comment Share on other sites More sharing options...
exca Posted March 20, 2012 Share Posted March 20, 2012 (edited) I can help you with the C# program. I use this language since 9 years or so Edited April 8, 2012 by exca Link to comment Share on other sites More sharing options...
atteSmythe Posted March 20, 2012 Share Posted March 20, 2012 I might be off here, but it looks like it's moving the game's DiskCacheArena from the hard drive to a much faster RAM drive. What exactly and how much is being written to and read from that cache I couldn't tell you but, it should be much faster in RAM. The only drawback I can see, assuming you have sufficient memory not to tax your system, is that the cache is being moved to volatile memory and disappears every time you reboot the computer. That means the cache will have to be restarted from scratch every time you play after a reboot, and that translates to longer load times early on in your game play session. If you play for hours on end, using that cache for longer periods, you'll probably see better performance the longer you play. I'm going to at least skim all 78 pages of this post (*gasp*), but I saw this relatively early in and thought I should comment. I've been using DataRAM's RAMdisk software, and it has a 'best of both worlds' solution for this - it can be set to automatically load and unload and windows start/shutdown, and save its current state to a file. This moves the 'recreation' delay to windows start time (might be noticeable) and windows shutdown time (when you're walking away from the computer anyway). But more importantly, it keeps the state of the drive. For moving non-volatile files to a RAMdisk without having to rebuild your symlinks every time, it'd be nice. You could also keep separate harddisk files for each game you want to speed up, then just load the one for the game you're playing that day. Good utility. Now, back to reading this (excellent) thread... Link to comment Share on other sites More sharing options...
Cwyn Posted March 20, 2012 Share Posted March 20, 2012 I presume the saved settings and exported .xml files will be saved to the local SWTOR folder. But as I don't run the PTR I can't really tell yet. If there might be a fix needed ofc I will change the batchscript. Oh, yeah it turned out to be pretty easy... mklink "<SWTOR Install Location>\Star Wars - The Old Republic\publictest\DiskCacheArena" "T:\DiskCacheArena" followed by adding to the batch... mkdir T:\SWTOR\publictest mklink /J "T:\SWTOR\publictest\settings" "<SWTOR Install Location>\publictest\settings" Link to comment Share on other sites More sharing options...
Ocmer_ Posted March 20, 2012 Share Posted March 20, 2012 I'm going to at least skim all 78 pages of this post (*gasp*), but I saw this relatively early in and thought I should comment. I've been using DataRAM's RAMdisk software, and it has a 'best of both worlds' solution for this - it can be set to automatically load and unload and windows start/shutdown, and save its current state to a file. This moves the 'recreation' delay to windows start time (might be noticeable) and windows shutdown time (when you're walking away from the computer anyway). But more importantly, it keeps the state of the drive. For moving non-volatile files to a RAMdisk without having to rebuild your symlinks every time, it'd be nice. You could also keep separate harddisk files for each game you want to speed up, then just load the one for the game you're playing that day. Good utility. Now, back to reading this (excellent) thread... While you are right that those can save and load ramdrives at bootup, it is pointless in our case. The DiskCacheArena is cleared anyway, to load fresh data. The same happens to the two cache files on local. The settings folder we link back to a real disk so at boot no settings are lost, and the game just recreates the cache files. Saving an images (without cache files) is recomended by me if you add allot of asset files to the ramdisk, so you can load (saved only once after setup) the complete image at once instead of copying files when mounting. Link to comment Share on other sites More sharing options...
Ocmer_ Posted March 20, 2012 Share Posted March 20, 2012 Oh, yeah it turned out to be pretty easy... mklink "<SWTOR Install Location>\Star Wars - The Old Republic\publictest\DiskCacheArena" "T:\DiskCacheArena" followed by adding to the batch... mkdir T:\SWTOR\publictest mklink /J "T:\SWTOR\publictest\settings" "<SWTOR Install Location>\publictest\settings" Tought so they put PTR stuff in a different folder than the real game. Seeing this I won't have to make changes to the batchscript once 1.2 goes live. Link to comment Share on other sites More sharing options...
atteSmythe Posted March 20, 2012 Share Posted March 20, 2012 (edited) While you are right that those can save and load ramdrives at bootup, it is pointless in our case. The DiskCacheArena is cleared anyway, to load fresh data. The same happens to the two cache files on local. The settings folder we link back to a real disk so at boot no settings are lost, and the game just recreates the cache files. Saving an images (without cache files) is recomended by me if you add allot of asset files to the ramdisk, so you can load (saved only once after setup) the complete image at once instead of copying files when mounting. Of course, I haven't had a chance to try this yet, but from my reading, it looked like you had to at least have the scheduler batch file recreate a symlink on the RAMdisk back to the harddrive. It also handles the scheduler work itself so you don't have to mess with it (at the expense of having an advert on their configuration dialog. Thought it might be a useful tool for folks less comfortable with a CLI. It also runs sooner after startup, from what I've read, so you can do things like put your windows pagefile on a RAMdisk without the system complaining. Why not run 0 pagefile? Because I still run into games from time to time that simply won't run without a pagefile, even with 12G of RAM installed. Edit: I obviously hadn't gotten to the parts of the thread with the All-In-One scripts. Very nice work, and should make this solution usable for those less familiar with their machine's guts. Also, in addition to the great script work and support, I'd like to thank the participants for mentioning FancyCache and its settings. I'd not heard of that before, and it seems like a great 'general' solution to the problems that usually need custom ramdisk solutions. I'm looking forward to playing with that. Edited March 20, 2012 by atteSmythe Link to comment Share on other sites More sharing options...
Jalavier Posted March 21, 2012 Share Posted March 21, 2012 @Ocmer I'm unsure what your intent is with your C# app in terms of monetization. If you are not planning on monetizing this, I and others would gladly contribute to the project if you were to host the source on github. Also, github is an ideal place to host your batch file as it gives a consistent place for people to get the latest version, an easy way to see what has changed and a process for others to contribute changes to the file. I believe I've just defined source control systems in general, but you get the point. Link to comment Share on other sites More sharing options...
DrillThrall Posted March 21, 2012 Share Posted March 21, 2012 Does GitHub allow PayPal "tip jars"? Link to comment Share on other sites More sharing options...
Black-Mage Posted March 21, 2012 Share Posted March 21, 2012 Hello Ocmer_ do you think you can setup a option in your GUI Tool, for Users with another Ramdrive? Because, i use a Software Version, with load and Save Fuctions, and if i can choose in your tool, my Ramdrive and set up all Assets and so, without create a new Ramdrive with new link. Its fine for me. Link to comment Share on other sites More sharing options...
Ocmer_ Posted March 21, 2012 Share Posted March 21, 2012 Hello Ocmer_ do you think you can setup a option in your GUI Tool, for Users with another Ramdrive? Because, i use a Software Version, with load and Save Fuctions, and if i can choose in your tool, my Ramdrive and set up all Assets and so, without create a new Ramdrive with new link. Its fine for me. This is something I tought about it aswell, but would complicate things first. The reason is the mklink in command only accepts the links when the target is available (this is for folders, not files) thus meaning a ramdisk has to be mounted before hand. I'll verify if I can create a folder junction where the target is not present, by calling the system32.dll directly (as that has to be used to create a junction). If this is possible or not I was thinking anyway to separate the setup/remove and mount program, but thell still need info in a form of a .ini file which I implented. For now, I'll try to quickly to update the batchfile with the suggestion of 'exca' and code example of 'Morsk' to let asset files loop by given variables. Meaning this opens the door to include just the files the user wants. Doing so I'll try to add ure suggestion aswell, which only impacts not creating ramdrive before hand, and asking a y/n question if an ramdrive is created before hand. Link to comment Share on other sites More sharing options...
Ocmer_ Posted March 22, 2012 Share Posted March 22, 2012 (edited) Changed the ALL-IN-ONE batchfile to version 4.0.0 This has code reduction and the ability to add the asset files you, as the user, wants! Be warned now, to use this new version, first remove the setup with the current version you have, and then you are good to go. This will now always be needed before you make changes, as I cannot keep track if an users changes asset files between two continuous setup runs. Changelog batchscript v4.0.0 // 2012-03-21; Reduced code quite a bit by use of call functions (thnx 'Morsk').Ability to add only the asset files you want, not fixed in code anymore (thnx 'exca').Ability to autostart the launcher after mounting.Ability to skip the Imdisk parts, for use with another program (thnx 'Black-Mage'). Further note on C# program Planning to apply the same as batchscript v4.0.0 and up, to first remove the setup before making changes. The added asset files (and other settings) will be saved to an .ini file. This file will be read in if it exists and lock the setup button until the setup is first removed. Only then the user can make new changes. Also the .ini file can be used by a smaller program (no GUI) that can only mount the ramdrive, and can then be used as program during Windows startup. Maybe I'll seperate the setup/remove and mount completely in two programs. Edited March 22, 2012 by Ocmer_ Link to comment Share on other sites More sharing options...
snowgar Posted March 22, 2012 Share Posted March 22, 2012 (edited) hum i test only all in one, and i see 0 changement in PvP. but my card work only less to 50%.... in out to pvp BG, i play with 110 fps. i7 ati 5850 6Go ddr3 seven 64 bit familial. bf3 60 fps all time skyrime 50 fps all time tera 60 fps all time ( tera is best MMO graphic actual ) all other game its *********** good. where is the problem in PVP swtor **** Edited March 22, 2012 by snowgar Link to comment Share on other sites More sharing options...
Blackcules Posted March 22, 2012 Share Posted March 22, 2012 This didn't increase my FPS at all for whatever reason. I have 16gigs of RAM nvidia 570GTX superclocked, and an i7 processor. Any thoughts? Maybe I did something wrong? Link to comment Share on other sites More sharing options...
atteSmythe Posted March 22, 2012 Share Posted March 22, 2012 It won't increase sustained FPS. It'll decrease media access times, which shows up as hitching (temporary FPS drops as resources are loaded) and loadtimes. Link to comment Share on other sites More sharing options...
Blackcules Posted March 22, 2012 Share Posted March 22, 2012 IT didn't do either of that as well. Load times are still low, and I still get spikes. Link to comment Share on other sites More sharing options...
Lasarith Posted March 22, 2012 Share Posted March 22, 2012 i used a 8GB stick (only used 4GB- untill i found out had to reformat to use all 8) but i had Loade times of less then 1 minute all over -pvp seconds. Link to comment Share on other sites More sharing options...
Ocmer_ Posted March 22, 2012 Share Posted March 22, 2012 (edited) Small update on c# program; Managed to save and load settings to/from and xml file (thnx to exca). At startup the program checks if this file exists and if it does it locks up all elements except the remove button. This will prevent people to make changes while an setup is already active. It can find installpath and local path automatically again by register. Calculates the ramsize needed automatically (Arena and local are hardcoded). Changing the ramdrive letter is still possible (need to build in a check for it tough). Also ran a first test with the creation of the setup, selected asset files are being linked nicely now thus that works. It was able to create symlinks with no ramdisk present thus meaning it won't have to mount one to setup. @Black-Mage this is then something for you, as you can setup the whole thing without even having to mount one yet. After that you can copy the assets to a ramdrisk with a program of your chooice. The only thing that I noticed was when going into command and list a dir; the mklink of files showed <symlink> and of my program aswell <symlink> but the mklink of dirs showed <junction> and of my program showed <symlinkd>. Now I don't know the difference at this point, I don't gonna focus on that yet as I ran SWTOR perfectly with it aswell. Now TODO is create the remove part of the script, create a logo, check if the program needs administrator rights, add ramdiskmount option (can be serparate). Ability to autostart the launcher after mounting. Oh and I need to check what .net version at least is required to run this program. Edited March 22, 2012 by Ocmer_ Link to comment Share on other sites More sharing options...
atteSmythe Posted March 23, 2012 Share Posted March 23, 2012 IT didn't do either of that as well. Load times are still low, and I still get spikes. Decrease, not eliminate. The only way to eliminate the media access spikes would be to fit ALL the data files on a RAM disk. This is intended to move the ones: a) Most frequently accessed regardless of content played b) Actually written to (which can be slower than reading on some media) Personally, it seems to have decreased my load times by about 1/3. Where the loading bar used to be a slow, painful crawl all the way across, it's now slow and painful for the first and last third, and almost instant across the middle. There may be other bottlenecks on other systems. This is a solution to only one specific problem. Link to comment Share on other sites More sharing options...
Scyyze Posted March 23, 2012 Share Posted March 23, 2012 Hey guys.... I did everything to improve Frames but in BG's its just not working... I did the Ram thing and yes it improved, but frames still go down in bg-fights to about 25FPS... I installed the lates drivers, installed DX9, tryied every grafik setting from very High to very low (with settings lowed in cfg files) but they are at 25fps in BG's all the time.. the odd thing is that it doesnt matter if grafik-settings are high or low.. My System: AMD FX-8120 Nvidia GTX 570 12GIG Kinston-Hyper-X ram well i supose my system is more than enough for this game but well it isnt working as it should.. you guys are my last hope, maybe u have an idea that could help... Link to comment Share on other sites More sharing options...
Aesten Posted March 23, 2012 Share Posted March 23, 2012 (edited) Hey guys.... I did everything to improve Frames but in BG's its just not working... I did the Ram thing and yes it improved, but frames still go down in bg-fights to about 25FPS... I installed the lates drivers, installed DX9, tryied every grafik setting from very High to very low (with settings lowed in cfg files) but they are at 25fps in BG's all the time.. the odd thing is that it doesnt matter if grafik-settings are high or low.. My System: AMD FX-8120 Nvidia GTX 570 12GIG Kinston-Hyper-X ram well i supose my system is more than enough for this game but well it isnt working as it should.. you guys are my last hope, maybe u have an idea that could help... In all honesty, if the lowest FPS your seeing is 25, count yourself lucky. 60 would be ideal of course, 30 is acceptable, anything over 20 is close enough(in my opinion) considering the not so optimized engine. Edited March 23, 2012 by Aesten Link to comment Share on other sites More sharing options...
Ocmer_ Posted March 24, 2012 Share Posted March 24, 2012 C# program update; setup and remove works, my next problem is the formatting of a disk. I can create a ramdisk using Imdisk's libraries but I does not have an auto format (or I missed it badly). At setup I can create a batchscript, equavalent on the given settings, and you guys can use that to mount the ramdrive. Removing the setup will then also remove the batchscript. Also I'm worried I have to request elavated permissions (thus UAC can pop in) to mess (rename/move/delete) with local files. Anyway I think I can make it like this for the moment and you guys can use it untill I or someone else comes with a solution to internally format a given disk with any popups or user interaction. Link to comment Share on other sites More sharing options...
btsager Posted March 24, 2012 Share Posted March 24, 2012 Batty, I have an SSD and even with it you'll still get the performance drops. I run the game on a laptop with a regular 500GB 7200RPM hard drive and I don't get any noticeable performance drops, ever. I game on a laptop because I travel frequently for work. Link to comment Share on other sites More sharing options...
Galaedriel Posted March 25, 2012 Share Posted March 25, 2012 Dear Ocmer, thanks a lot for the script. I'd just like you to clarify one thing, because of all the new warnings I get from script... I copied new 4.0.0. ramdrive setup script, but wasn't careful to remove old setup (I did restart computer before running new script, but didn't run remove setup with old script). Is this ok, if not, where can I get old script to remove old setup first? Link to comment Share on other sites More sharing options...
Ocmer_ Posted March 25, 2012 Share Posted March 25, 2012 (edited) Dear Ocmer, thanks a lot for the script. I'd just like you to clarify one thing, because of all the new warnings I get from script... I copied new 4.0.0. ramdrive setup script, but wasn't careful to remove old setup (I did restart computer before running new script, but didn't run remove setup with old script). Is this ok, if not, where can I get old script to remove old setup first? It should be fine if you ran the script with at least the same asset files you used to setup with script 3.1.3 or less. (this can be either fx asset, dynamic assets or both). Adding more should have no impact either. The problem comes when people setup the assets with 3.1.3 and then decided to not include them in 4.0.0 thus they stay linked, but not copied to the ramdrive. Edited March 25, 2012 by Ocmer_ Link to comment Share on other sites More sharing options...
Recommended Posts