Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!   (85,180 visits to this link)

    2. News

    1. GTA Online

      1. Find Lobbies & Players
      2. Guides & Strategies
      3. Vehicles
      4. Content Creator
      5. Help & Support
    2. Crews

      1. Events
      2. Recruitment
    1. Grand Theft Auto Series

    2. GTA Next

    3. GTA V

      1. PC
      2. Guides & Strategies
      3. Help & Support
    4. GTA IV

      1. Episodes from Liberty City
      2. Multiplayer
      3. Guides & Strategies
      4. Help & Support
      5. GTA Mods
    5. GTA Chinatown Wars

    6. GTA Vice City Stories

    7. GTA Liberty City Stories

    8. GTA San Andreas

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    9. GTA Vice City

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    10. GTA III

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    11. Top Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    12. Wiki

      1. Merchandising
    1. GTA Modding

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    3. Featured Mods

      1. DYOM
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Red Dead Redemption 2

    2. Red Dead Redemption

    3. Rockstar Games

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Programming
      5. Movies & TV
      6. Music
      7. Sports
      8. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Forum Support

    2. Site Suggestions

NTAuthority

ColAccel - reduce loading time by 50%*

Recommended Posts

NTAuthority


Download ColAccel for IV and EFLC


The problem

For CitizenIV, I'm intending to add other cities, which would be able to be flown to from the current city's airport. (the actual feature depends on me being able to write automated tools to convert at least VC and generate navigation meshes)

As I wanted that experience to be as seamless as possible, loading the game needs to be optimized to take less time. So, I took Process Monitor and looked at what happened from the point I selected to load the recently downloaded DLC (CitizenIV, again - a bug in my episode loader :) ) until I saw the scripts running (loading text) - in fact, the period during which the artwork loading screens appear. Out of the 18 seconds this process took on my system, around 9-10 were spent reading large chunks of data from various .img files.

I looked into the files at the offset shown by Process Monitor, and found RAGE resources of type 0x20 - collision models. I already know GTA III to SA were loading all collision meshes for various precalculation reasons during the game load, but seeing as this is around 400-500 MB of data in IV (which also has to be decompressed, as it is deflate'd, adding more time to the loading process) it takes fairly long - I wouldn't be surprised if V still does this, as it still loads slow on consoles...

The solution

As recently revealed in the mobile version of GTA:SA, Rockstar North had thought about this problem during the development of SA, and created a cache (internally named ColAccel, like my implementation is named as well) which stored the actual data read from the collision files (basically, the size of the collision models) in a cache, to load them without having to read through the full collision files. This feature never got used in SA, and clearly IV still did not have anything like that.

Well, except that I implemented something now. :)

ColAccel is a .asi plugin for GTA IV and EFLC (without any external dependencies) which creates a 'colCache.dat' file on the first load, containing all the data actually used by the game from the collision meshes (basically, 580 kB with a lot of redundant data, nothing like 500 MB!) and accelerating your game load time by 50% or more.

Note that the plugin should work with any version of the game, but only been tested on GTA IV 1.0.7.0 and EFLC 1.1.2.0.

In addition, you *should* delete colCache.dat any time you a) add additional .img files or b) replace any .wbn/.wbd files inside any .img, either directly or indirectly - if not, various bad side effects can and will happen.

ColAccel - original 2014 version.



(thanks to @ThirteenAG for porting the CitizenFX version to work separately!)

Edited by NTAuthority

Share this post


Link to post
Share on other sites
El Dorado

This can in any way increase in-game performance (fps)?

Edited by format c:

Share this post


Link to post
Share on other sites
Ash_735

Nice, always looking to make IV more bareable, reducing initial load should help with that.

Share this post


Link to post
Share on other sites
Marty McFly

Could you be so kind to do it for 1.0.4.0 as well? Patch 4 and 7 are mostly used and we enb modders prefer patch 4. Besides that: awesome work!

Share this post


Link to post
Share on other sites
ThirteenAG

Note that the plugin currently only works on GTA IV 1.0.7.0 - if demand is sufficient I'll make a version for the latest EFLC version as well.

Sign me up :) By the way, do you think it's possible to create a plugin, which will load last saved game automatically? Like in IV/V on consoles. Removing intro screens completely would be nice too.

Share this post


Link to post
Share on other sites
lpgunit

Could you be so kind to do it for 1.0.4.0 as well? Patch 4 and 7 are mostly used and we enb modders prefer patch 4. Besides that: awesome work!

Yeah, it would be neato if you do one for 1.0.4.0 as well. Besides, most other people who play with patch 4 are those running the game on lower-end systems such as myself.

Edited by lpgunit

Share this post


Link to post
Share on other sites
œaœa

Please please do it for patch 4. :colgate:

Share this post


Link to post
Share on other sites
Zer0w5

Tried it on my version of GTA IV 1.0.7.0 and it seems to do its job, thanks :beerhat:

Share this post


Link to post
Share on other sites
buzzbass

Thanks for this, a EFLC would be welcome too :D

Share this post


Link to post
Share on other sites
T-ru

This's great, and yes make it for EFLC.

Share this post


Link to post
Share on other sites
bst81

Good. Please make for patch 4 too

Hopefully you will do it

Share this post


Link to post
Share on other sites
PacketOverload_x64bit

Amazing. Many, many folks still on patch 4 for ENB. Most will never move from Patch 1040/1004 until Boris V. fixes skylighting at the internal D3D9.dll level, so if your ever inclined to, ColAccel for one of 1030/1040/1004 patches would be awesome.

Edited by PacketOVerload_x64Bit

Share this post


Link to post
Share on other sites
BlackScout

Is it able to work in your ViIV?

Share this post


Link to post
Share on other sites
NTAuthority

Is it able to work in your ViIV?

not currently as viiv uses more collision files than colaccel allocates; eventually the framework will contain it though (and somehow cache the img-loaded files/replace img streaming itself)

Share this post


Link to post
Share on other sites
gajrajgchouhan

please make it for eflc

Share this post


Link to post
Share on other sites
cp1dell

Wow this is great. Yes, please make this for EFLC. I don't see why you shouldn't.

Share this post


Link to post
Share on other sites
InfamousSabre

Another vote for EFLC, here! Very cool script!

Share this post


Link to post
Share on other sites
Blackbird88

Yes EFLC please.

Share this post


Link to post
Share on other sites
Silent

Do EFLC, yes.

Share this post


Link to post
Share on other sites
LINK/2012

SA please

Share this post


Link to post
Share on other sites
fefenc

I vote for an EFLC version, playing as Luis would be more funny if I could load the game faster o/

Edited by fefenc

Share this post


Link to post
Share on other sites
gta.bullet

50s vs 20s for me. better than 50%.

Share this post


Link to post
Share on other sites
nyolc8

EFLC version please :3 But how would that work? Because the two episodes have different files...

Share this post


Link to post
Share on other sites
Blackbird88

EFLC version please :3 But how would that work? Because the two episodes have different files...

I already PM'd him about it. No response though so it's safe to say it's not happening now :(

Share this post


Link to post
Share on other sites
ThirteenAG

Making the source code public would help, I believe.

Share this post


Link to post
Share on other sites
nkjellman

This will definitely be needed on GTA V. That game takes ages to load.

Share this post


Link to post
Share on other sites
Silent

But console GTAs have colaccel at least since SA.

Share this post


Link to post
Share on other sites
BlackScout

But console GTAs have colaccel at least since SA.

PS2 Versions loading time used to be horrible, really horrible...

Share this post


Link to post
Share on other sites
Blackbird88

 

But console GTAs have colaccel at least since SA.

PS2 Versions loading time used to be horrible, really horrible...

 

Because they have to load the game from DVD drive. I wonder if SA could be installed to PS2's HDD. Most games can't be.

Edited by Blackbird88

Share this post


Link to post
Share on other sites
AgentWD40

Wow, wished you made this sooner. Hopefully you could do the same with GTAV because those loading times are ridiculous and can't even play while waiting for matchmaking.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.