Jump to content

What Is Omod?


WarKirby3333

Recommended Posts

Some mod makers only do tech support for omod format and i just found one who is adding extra content to the omod version of his mod to encourage use of the format.

 

So my questions are thus:

1. What is OMOD and why is it better than ZIP

 

2. Where do I get software to use OMOD files

 

Thanx in advance for any info

 

WarKirby

Link to comment
Share on other sites

I decided to Google it, and the results are, well... Just astounding.

 

As you can see from the format specification, OMOD is an archive format consisting of multiple layers of off-the-shelf compression techniques. With that many layers of archives, you're going to have a lot of overhead (it wasn't very hard at all, in fact, to make a file that was larger as an OMOD than it was uncompressed). To add to this, many OMOD creators choose to then further "compress" the file in another ZIP archive, putting even more weight onto the file size. That's not to mention the bad practices that OMOD encourages, such as packaging a mod with an RTF readme and in-game screenshots.

 

Now, considering that this is just another archive format, there is nothing inheriently better about OMOD over any of the ZIP formats, or RAR files. As far as size is concerned, OMOD wins out over PKZIP and RAR for large files. As the size of the input file shrinks, however, the OMOD gets more and more bloated when compared to other -- more reasonable -- archives, until all that's left is its own colossal overhead. Compared to 7-ZIP archives, an OMOD will always be larger.

 

If it were up to me, this would be reason enough to stay the Hell away from such an abomination. If you're really committed to opening an OMOD, however, then... well, you can't. At least not directly. The OMOD format is so nonstandard and so convoluted that only one program is able to deal with them -- and that program isn't an archiver. In order to do anything with OMOD files, you need to first install Oblivion Mod Manager and use it to manage all your plugins. But wait, there's more! Since the author only knows how to program in Microsoft Visual C# .NET 2009 (or whatever language DeVry Academy is teaching him), you first have to install the correct version of the .NET framework, or else it'll crash on startup. Once you've set your system up to compensate for the deficient education of someone whom you otherwise never would have heard of, installed a bloated file manager that you otherwise never would have needed, and set that program up to manage your Oblivion plugins, you'll need to navigate its interface. If you do everything right, then it'll recognize and try to install that OMOD file of yours.

 

Good luck convincing the author of your favorite mod to stop placing artificial restrictions on the versions of the plugin that aren't distributed in the (strictly Windows-only, by the way) OMOD format, though. Because the creator of this file format utilizes code from the 7-ZIP project (without, to my knowledge, giving any credit to the creators of 7-ZIP), authors who would normally use PKZIP or RAR think he's some sort of miracle worker, and advertize the format heavily -- which includes cheap tactics like this.

Link to comment
Share on other sites

Wow. That was a rant and a half. o_O

 

First off, if you want to extract an omod without installing my mod manager, use omod2zip. It runs with mono, and so is completely cross platform (endian-ness issues aside...) and doesn't require any extra Microsoft gunk. Although I'm not sure why you'd want to have a cross platform omod extractor when oblivion is windows only...

 

The reasoning for the layered format is simple - to combine the benefits of solid compression with individual file compression; You can pack a readme/script/screenshot/meta info into the mod and extract it instantly, regardless of the size of the file. There is only a ~2-3k overhead compared to a standard 7-zip file, which is a strange definition of colossal, and the only reason modders have to pack omods into zips before uploading them here is because TESsource doesn't accept omod uploads. Compressing an uncompressible file with standard zip doesn't increase its size beyond adding the zlib headers. Of course, if someone stuck an omod inside a 7-zip file it would be a different story.

 

I do, of course, give credit to the creators of 7-zip. (And SharpZipLib, and WinRar, which I've also used components from.) It's all on the credits page of the manual.

 

And finally, no one taught me C#. I've never been to a computing lecture in my life. You can’t complain about a deficient education if I've never even had one. :P

 

To answer the posters original questions:

1. What is OMOD and why is it better than ZIP

It's not particularly better, just different. One of the original features of obmm was to install and remove mods and all associated data files with a single click, but modders can pack mods in any number of ways so it's impossible for obmm to tell which file goes where. Using omods completely sidesteps the problem. It makes life a lot easier for modders because the mod users can’t install mods incorrectly, which is why some of them only offer support to omod files. (I'm trying to discourage people from releasing in omod only, at least until obmm 1.0 is out or someone else releases something else which can read omods. Having an archive type dependent on one person’s unfinished software is Not Good. That doesn't stop anyone from trying to encouage people to use the omod version though.)

2. Where do I get software to use OMOD files

here or here.

Edit: omod2zip is here. Top link on the right hand side.

Link to comment
Share on other sites

You can pack a screenshot/meta info into the mod and extract it instantly, regardless of the size of the file.

 

...All of which is information that's obtained before downloading a mod.

 

There is only a ~2-3k overhead compared to a standard 7-zip file

 

This is TESSource. People would kill for 3kB.

 

I do, of course, give credit to the creators of 7-zip.

 

Where's your copy of the GPL?

 

And finally, no one taught me C#. I've never been to a computing lecture in my life.

 

I find this hard to believe. I was under the impression that nobody in the history of mankind has ever learned C# voluntarily.

 

omod2zip

 

Protip: Console applications should run through a pipe, non-interactively, and without a .NET dependency.

 

modders can pack mods in any number of ways so it's impossible for obmm to tell which file goes where. Using omods completely sidesteps the problem

 

For six months, after which the format is completely defunct and the mods are unusable. Why not just get modders to agree to start their archives at the "Data Files" directory, instead of imposing an unnecessary, bloated, and completely nonstandard file format onto a (potentially) very large audience of users?

Link to comment
Share on other sites

...All of which is information that's obtained before downloading a mod.
I have several hundred mods for morrowind, some of which I downloaded years ago. I can’t remember what a particular texture replacer or set of armour looks like. Being able to browse through a set of screenshots is a lot easier than having to re-read a few hundred readmes. Mod names aren't usually very descriptive, and nothing beats a screenshot for showing what a new weapon or piece of clothing looks like.

 

This is TESSource. People would kill for 3kB.
I cant believe anyone would complain over 3kb... Complaining about the 24mb .NET download I can understand, especially for dial-up users, but 3kb? o_O

 

In any case, not many people use 7-zip, so the omod is likely to be smaller than any non omod version of a mod.

 

Where's your copy of the GPL?
The lzma SDK which I used is LGPL-ed, and the text of the licence is linked to in obmm's manual, and also included in full in obmm's source code download.

 

I find this hard to believe. I was under the impression that nobody in the history of mankind has ever learned C# voluntarily.

Out of all the languages I know, (not many, but it includes C++ and a little delphi,) C# is by far my favourite. I can write things far faster in C# than anything else, with the exception of Blitz3D for graphical stuff.

 

Protip: Console applications should run through a pipe, non-interactively, and without a .NET dependency.
Indeed, but I'm not aiming at pros. I'm aiming the the general population of the TES forums, who wouldn't know what a command prompt was if it bit them. Just look at all the trouble over tes4bsa...

 

I've never had a message complaining that someone cant get omod2zip to work, which I consider a complete success. If the price of that is an interactive console application, so be it. I only made it a console app because of mono's lack of Windows.Forms support anyway - I would have much preferred a graphical interface.

 

For six months, after which the format is completely defunct and the mods are unusable.

Why? Is a magic virus going to come along and delete every copy of obmm from every computer on the planet? obmm is open source anyway. I'm likely to still be around in 6 months, but even if I get hit by a small meteor tomorrow and end up dead, someone would probably just take over obmm's development. Even if they didn't, it's perfectly usable as it is.

 

Why not just get modders to agree to start their archives at the "Data Files" directory, instead of imposing an unnecessary, bloated, and completely nonstandard file format onto a (potentially) very large audience of users?

People have been trying to get modders to create archives that can be extracted directly to the data directory since the early days of morrowind. For the most part, they've succeeded. Even so, I've downloaded a lot of mods recently in which everything was stored in an extra single folder in the zip file with the modders or mod name. I've downloaded a couple which needed to be extracted to the base oblivion directory. I've downloaded one that needed to be extracted to the textures directory. I've even downloaded one that was flat packed, with a list of where each file needed to go in the readme.

 

Unless TESsource and elsewhere start enforcing that mods need to be extracted straight to the data directory, then any new mod user who just blindly extracts them is going to eventually hit one which doesn't work. And if mod sites did enforce it, then you'd have another problem, because some mods contain multiple versions of an esp or other optional bits. An omod handles this via scripts, but in a plain archive things usually end up in different subfolders, and need to be sorted out by hand, or at least renamed. There's no way to package that sort of mod so that it can be extracted to the data folder and then just work.

 

And as I said, I'm not trying to impose a format on anyone. I don't like people releasing mods in omod format only, and if anyone does, I say so. But I have no more right to tell modders what to do than you do, and if a modder decides to add extra content to an omod, or only offer support for the omod, or even release in omod only, I have no right to tell them not to. In a similar way, I also have no right to tell someone ‘your mod is packaged wrong. I want to extract it straight to my data folder. Get rid of that extra folder now.’

Link to comment
Share on other sites

I have several hundred mods for morrowind, some of which I downloaded years ago.

 

I was under the impression that the majority of users will look at a mod's screenshots, then download it, and then -- based on how well it plays -- install or delete it permanently.

 

Indeed, but I'm not aiming at pros. I'm aiming the the general population of the TES forums, who wouldn't know what a command prompt was if it bit them. Just look at all the trouble over tes4bsa...

 

If that's the problem, then just switch for argc. If there are no arguments, then take two lines of stdin like you did before, maintaining backward compatability. If there's at least one argument, take the OMOD file from argv[1]. If there are precisely two arguments, also take the ZIP file from argv[2]. If there's precisely one argument, use a sensible default for the name of the ZIP file. That way, OMOD can work over pipes:

 

unzip -d /opt/oblivion/data <(unzip -p <(wget -O - http://gamingsource.net/hello.jpg.7z.rar.omod.zip) | omod2zip - -)

 

...And the Windows users who don't know how to use CLI can drag the OMOD file to the omod2zip executable, just as if they were putting a file in a directory.

 

For six months, after which the format is completely defunct and the mods are unusable.

Why?

 

Look at Morrowind Enchanted Editor. It was widely distributed, and its authors are probobly all alive now, but you're generally going to have a hard time finding a copy today. It's incredibly easy to find examples of this among plugins, too. Just look at anything hosted at Morrowindfiles, Unforgotten Realms, Euro-Morrowind, and Gamers' Roam, and lots of files that were at Morrowind Summit. Each one of these is proof that your software won't last forever -- and if said software is the only thing that can deal with an odd file format, then that format's going to also eventually die.

 

I've downloaded a couple which needed to be extracted to the base oblivion directory. I've downloaded one that needed to be extracted to the textures directory. I've even downloaded one that was flat packed, with a list of where each file needed to go in the readme.

 

...And I've downloaded one that contained the folders "C Drive," "Program Files," "Bethesda Softworks," "Morrowind," and "Data Files." These people are completely clueless. Do you really think that they'll pack their plugins using OMOD, and that'll solve everyone's problems?

 

Of course not. They won't change what they're doing at all. You're just cutting into the good modders who would otherwise do everything perfectly, and turning them into very extremely horrendously incredibly not very good at all modders who distribute their works exclusively in completely nonstandard file formats. This is a big loss, and with no gain at all.

 

I'm not trying to impose a format on anyone.

 

Intent doesn't matter. Because of your actions, OMOD is being imposed upon people. If you had just embarked upon a more traditional first programming project like "Hello, World," then this would not have happened.

Link to comment
Share on other sites

Wow. After the whole 3kb thing I thought you were just joking and was waiting for you to start poking fun at me for taking you seriously, but that post looks like 100% genuine rant. It's too hard to spot sarcasm on forums... :dry:

 

Well, I'm having fun anyway, and haven't got anything better to do, so joking or not I may as well carry on. :D

 

I was under the impression that the majority of users will look at a mod's screenshots, then download it, and then -- based on how well it plays -- install or delete it permanently.

Personally, I have piles of mods which I've never installed, usually because I was in the middle of something else when I downloaded them and never got around to trying them. I imagine I'm in the minority, but a lot of people will have conflicting collections of mods, and won't be able to keep them all installed at all times.

 

If that's the problem, then just switch for argc.

Ah. I see you haven't actually tried using omod2zip at all. It does, in fact, already do this. :P (Well, since it's a C# program it actually uses args.Length, but who cares...) It doesn't let you only supply 1 argument atm, but I can always add that next time I update it.

 

Look at Morrowind Enchanted Editor.

I see you haven't tried looking for EE at all either. Two seconds with google gave me this. :P

 

Even if it wasn't readily available, I have my own copy of it already saved on my computer, as do many other people. If it was removed from PES, (as well as the other few sites which turned up on google,) and someone asked where it was, if worst came to worst then someone could just e-mail it to them.

 

I suppose it's possible that in 10 years time when microsoft are preparing to release windows 2017 or whatever, which probably wont be backward compatible with XP programs anyway, then there wont be any copies of obmm left. This is why I ask modders to make non-omod versions of their mods too. Like I said, relying on one persons software is Not Good, and the day someone releases a competing mod manager which supports omods, I for one will be very happy.

 

These people are completely clueless. Do you really think that they'll pack their plugins using OMOD, and that'll solve everyone's problems?

You missed my point. obmm uses omods not to try and get inept modders to clean up their act, but because inept modders wont clean up their act. In an ideal world where every single plugin was packaged correctly then obmm could use standard 7-zip files or something, and still be able to activate/deactivate mods cleanly, putting data files in all the correct places. But this isn't an ideal world, so it can't, so it doesn't. 8)

 

If you had just embarked upon a more traditional first programming project like "Hello, World," then this would not have happened.
My first programming project was hello world. Written in either blitz basic or amos from an amiga format coverdisk, if I remember correctly. :P
Link to comment
Share on other sites

Intent doesn't matter. Because of your actions, OMOD is being imposed upon people.

On the first, that's a fallacy - intent most certainly does matter in the matter of attribution of blame. Timeslip has done nothing to cause this to occur - he provided another option - you are going to fault him because it is vastly superior to any other option and therefore people want to use it? That's absurd.

 

To my knowledge, there is exactly one (1) mod in existence that has been released solely as a .omod - mine. Every other mod has been released both as an omod and another type of archive. And another (better) version of my mod was written by someone else, and released as a non-omod. So omod is being forced on no one, because there is always another option.

 

The reason for not doing tech support for non-omod's is a good one - omod and OBMM more-or-less eliminates all "user errors" from mod installation and use, leaving only bugs and the like that the author wants to know about. omod handles installation, making sure that files reach their proper destination, and fixes ArchiveInvalidation bugs. Easily 90+% of e-mails, PMs, and threads about a mod not working properly are due to incorrect installation or AI.txt. It makes perfect sense for an author to not want to deal with these problems when it is entirely the user's fault.

 

Regarding my decision to release my mod strictly as an omod, I had a number of reasons for doing so, but the only one that you need to hear is because I wanted to. I wrote my mod in my free time, I use OBMM, and I made it into an omod. I did not want to create another version of the mod - I don't care if you don't like OBMM or .NET and do not want it, in that case you can simply not download it. I offer what I created and nothing more. You have absolutely no right to dictate how I do what I do in my free time, you have only been given the privilege of downloading it if you should wish to do so. If you should not wish to do so, for whatever reason, you should kindly shut the hell up.

Link to comment
Share on other sites

Ah. I see you haven't actually tried using omod2zip at all.

 

No, I don't generally try starting programs with random arguments. Perhaps if you had supplied documentation...

 

It does, in fact, already do this

 

...But, like you said, it will crap out if only one argument is supplied, and it doesn't support doing anything with stdin/stdout. You haven't implemented the suggestion.

 

Two seconds with google gave me this.

 

...A dead link. My point exactly.

 

someone could just e-mail it to them.

 

So then to open the file, you need to e-mail random people until you reach someone who claims to have the program you need. That's so much more convenient than downloading a standard archiver from a package repository.

 

You missed my point.

 

You're coaxing people into using a completely nonstandard archive format which requires extra effort from both modders and users, and provides no guarantee that their plugins -- even ones stored on their own systems -- will be usable in six months. What is the point of that?

 

Intent doesn't matter.
...Intent most certainly does matter in the matter of attribution of blame.

 

...At what point did "placing blame" ever even enter into the conversation? The point here is that the modding community would benefit if people stopped using OMOD.

 

vastly superior to any other option

 

...How so?

 

omod and OBMM more-or-less eliminates all "user errors" from mod installation and use

 

No, a mod manager does that. The OMOD file format does nothing of the sort -- if anything, it adds problems.

 

there is always another option

 

No, there is not always another option. You just said that you released that mod of yours exclusively as on OMOD. The person who started this thread tried to use a mod that had artificial restrictions placed upon its non-OMOD release.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...