UG-MP DL


Starting with Snapshot 4.2, UG-MP introduces its own DL feature which has the same features as SA-MP DL, but is much more powerful and is capable of loading entire maps as well. It will be further expanded upon in future releases.


Advantages of using UG-MP DL over SA-MP DL

First of all, SA-MP is no longer in active development. This leaves us as the only party to not only introduce DL, but also improve upon it in ways which have never been attempted before, or have simply been deemed as impossible.

And improve we did - as said we offer the same features as SA-MP DL, but also allow server owners to add entire maps. This is something SA-MP DL simply was not designed for, as SA-MP DL simply loads all models in memory and keeps them loaded until you stop playing. This of course results in high memory usage, and you still have to use mapping to place down your map. You will no doubt run into SA-MP's many limitations when doing so, and your only way around that is to use streamers. You can't see your map from a distance as you cannot set up LODs. You can however use high draw distances but doing so results in poor performance and lower FPS.

In short, if you, on SA-MP, decided to load in the GTA:VC map somehow, you'll have to put up with all of the problems listed above. From a development perspective, it simply isn't worth it. Now, of course, if you as a server owner just want to load a bunch of skins you should be fine even on SA-MP DL. The same is true if you just wish to add a bunch of objects. You can still do these things on our platform, as stated before.


Do the problems mentioned above in SA-MP DL exist on UG-MP DL as well?

No. This is because UG-MP DL lets you load in IMG archives, IDE files and IPL files. For those that are unaware, these are the files GTA games use to store their map data in. IMG archives store the models and textures, IDE files add new models to the game, and IPL files place objects on the map.

You will have the following advantages if you use them:

  • If you have lots of mappings on your server, converting it to IPL files ensures you avoid the well-known issue of falling through the ground when say... entering a mapped interior.
  • Adding maps from existing mods such as Gostown Paradise, Criminal Russia, Alien City, VCS:PCE, or even Project Lienne is incredibly easy as you don't have to edit the mod files. In most cases they will work out of the box.
  • Models, collision, and textures can be stored inside IMG archives. Using them ensures optimal RAM usage as models and textures are only loaded when needed.
  • You can even add garages, entry exit markers, audio zones (such as the ones within the stadium interiors which play a certain radio station). How cool is that?!
  • You indirectly benefit from our years of experience in working on this mod. UG-MP is able to detect a lot of common issues and inform you what's wrong, rather than crash with no further information as to why.


Okay.. Custom maps. What about the feedback from the community? And what about commonly requested features?

The main focus of Snapshot 4.2 as far as DL is concerned is limited to DL, and the ability to load entire maps. For starters, a lot of people have requested the ability to add their own vehicles for their server, and we plan to do this in a future update. Another thing people often complained about is download speeds. We have taken the download speed into account when developing DL, and this has led to a few design choices along the way. The speed is still limited by factors outside of the software's control, obviously. We don't have concrete numbers to illustrate how much of a difference UG-MP really makes either. Furthermore, the caching layer behaves a bit differently and does not randomly redownload all files under some circumstances.


Screenshots

Here is some actual footage of our DL in action:


DL feature comparison

Here is an overview of features and whether or not they are included.

Feature SA-MP UG-MP
Dynamic per-player model ID allocation No Yes
Caching Yes Yes
Adding simple models Yes Yes
Adding timed models Yes Yes
Adding skins Yes Yes
Supports UV animations No Yes
Changing the cache folder Yes Yes
Support for custom textdraws Yes Yes
Suitable for adding lots of models No Yes
Can read IDE files No Yes
Can read IPL files No Yes
Can add yellow entry/exit cones from IPL files N/A Yes
Can add garages from IPLs from IPL files N/A Yes
Can add audio zones from IPLs like those in the stadium interiors N/A Yes
Can add culling zones from IPLs for functional mirrors or attribute zones N/A Yes
Can read IMG archives No Yes
Can replace existing files or models No No
Support for custom vehicle paintjobs No Yes
Support for custom animations No Untested

Future expansions

We aren't done with DL yet. We already mentioned that we plan to add vehicle DL in a future update, but it's not the only feature on the drawing board. Here's what we plan to do in the future:

  • Vehicle DL - it will allow server developers to add custom vehicles for their servers
  • Timecycle DL - ever since Snapshot 4 it is possible to add your own server-side weathers, but the feature hasn't been used much in part due to the learning curve. Now, what if we made things easier and let you create your timecycle.dat file on singleplayer with fastman92's in-game timecycle editor, and allowed you to load that file directly, rather than use the more complex natives? This is what timecycle DL would be.
  • Handling DL - or server-side vehicle handling, has been on our backlog for a long time. It is an idea that would let server developers customize vehicle handling data as they see fit. This means they can change the top speed, drag resistance, which tuning garage type is needed to modify it, and so on. The idea is to let you maintain your handling.cfg file for your server and let the players download it.
  • Water DL - would allow you to map out areas you can swim in, and where boats can travel. Instead of simply controlling the water height, the idea is to let you customize a water.dat file and let the client download it. Existing water mappings which are there by default could also be customized.
  • Object DL - is all about props. If you want to make breakable props of any kind, they need to be configured using Object DL. It would involve the ability to edit object.dat on the server side and would allow server developers to customize object configuration data as they see fit.
  • Vehicle audio DL - as the name suggests is all about the ability to customize vehicle audio. You would be able to change the audio track of a vehicle to another pre-existing track, again via a text file you could edit on the server side.
  • Weapon DL - would give server developers the ability to add their own weapons and configure them using several files which the client can download. It would also allow existing weapons to be customized.
  • Animation DL - would allow server developers to add their own unique animations which their gamemode can use.
  • Emergency light DL - which would exploit a modification to the game engine UG makes to allow more control over the flashlights emergency vehicles use.

Keep in mind that these expansions won't be done overnight - each of them is an ambitious feat to accomplish but certainly within the realm of possibilities. The fact is that we already managed to pull off map DL is already a milestone of its own, and is only the beginning.

And finally, keep in mind the decision to focus on map DL first and expand DL in the way that we want to expand it is not without reason.
If we opted to expand DL with just Water DL and Object DL alone, there may be unforeseen consequences...