After downloading substantially the last several days from many different site, one thing has become quite common. The use of very large, dependency files for sometimes only a small fraction of content on one particular lot. It seems to me there has to be a better way of doing this, I mean who really remembers what dependency files are installed after the 290th building and file installation. I know that I don't. And who wants to keep downloading 10MB dependency files when they don't. I know I don't.
Let me start off by saying that I offer no solutions in this post, only my general thoughts on the subject of what is the way that the community has gone.
First off I download a lot of one sort or another and after installing it Im told that there are dependency files that need to be installed. So I install these dependencey files with no regard and no concern. But by the 1500th (actually much sooner than that) download and 3700 listed dependency files (obviously often duplicates) I've grown rather concerned and do have regards for what is going on and no longer have the brain power to keep in mind what I've installed and what I've not installed. I admit that the lex here does have a nice feature of telling me when I've downloaded a file and when I havn't which makes it rather easy to guess whether or not I've installe a file, but there comes a time in most peoples lifes where they look into the plugins folder and see the jumbled mess of plugins and feel that desire to reorganize and or start over again. This is when the file download counter here really doesn't mean a whole heck of a lot, and heck, just because I downloaded a dependency file doesn't actually mean that I installed it. I could have been downloading multiple dependence files at the same time and just missed one of them.
There has got to be a better way of doing this than we are already doing it. I would imagine with all the talented people in the SC4 community there has got to be at least one person that can create a program or an installer that will install a downloaded file and then check the hard drive to see if all the dependency files are installed and if not, it will list them with links to download and install them all automatically thus taking as much of the burden of doing it by oneself away as possible.
I would envision something such as this:
Modder Alan creates his mod or lot of whatever, and it's dependent on dependency packages A, B and C. When he puts it into an installer he either creates the installer so that it checks the hard drive of the user to look for those files and then notifies the user that he has all the dependency files installed or that he still needs to install some dependency files.
OR
Modder Jane creates her mod or lot or whatever and packages only those individual items from any dependency packages right into the installer and they get installed as individual files instead of these great large one package holds 1000 props packs. In this way the actualy true dependent props are included with each mod that requires them. I know I've read about the dat makers that supposedly speed up city loading when all these files are packaged up into larger dat files but to be honest I really didn't notice any difference when I had tons of files laying around individually in categorized directories or packaged them up in larger dat files, and I have to wonder just how large a mod would actually become from needing to carry a couple of the actual props in the installer instead of possibly redownloading the same dependency files over and over again due to whatever issue that might cause one to do that. Yes, it might require having all the mods installed in just one folder so that a standardized installer can check that folder to see if the files already exist and skip them or if it needs to install them because they are not there, if that were the case, then I say so be it. I have no problem with that on my computer.
To be honest I can see the end user getting a bit discouraged after downloading his 200th building to find that the list of dependencies for that building is 10 files long and each file is anywhere from 1MB to 9MB and he's got to download those one by one and then install them, and then on the 201st building he's presented with an even longer dependency file list, some of which he has installed and doesn't even remember becase he installed them on the 37th building he downloaded.
Im just saying that there are a lot of talented, intelligent people around here and I would think they would come up with a better way of dealing with all of these dependency files then the way that we are currently doing it.
Hell, my plugins folder is now 573MB and so you can imagine I really can't tell you what dependency files or what mods I've installed already and which ones I haven't. I think I alreday forgot that at about the 30MB level and I would imagine that the average user like myself is about the same way with regards to knowing what has been installed there already and what hasn't. Then there are the little brown boxes that come up when one doesn't have the necessary files, which really doesn't help the user to track down what dependency package is missing and it would have been better to have those files that were necessary with the original mod to begin with instead of relying on the user to have downloaded and installed them in my opinion.
Another possible option that I could see is to have a program that interacts with an installer that keeps a database of all plugins installed in the plugins and sub folders and that can then tell the installer if the plugin dependency file is already installed and older or newer then the one that is required as being another possible option.
The thing about dependency files, especially megapacks, is that a lot of the custom content creators use them quite often, so 1 pack could be a dependency for hundreds of lots...and considering the age of the game and the community, don't you think if there were an "easy" solution, we'd all be using it? We as content creators are not responsible for keeping your computer "nice and tidy" but those of us who adhere to the BSC standard do try to, in the form of installers that place files in a structure that's quite simple to follow.
A simple way of keeping track of what you've installed and what you haven't is to place any zip/exe files that have been installed into a folder marked "installed"...anything that's left you know hasn't been installed.
Theres always room for improvement. And my general gist of it is that there is room for improvement in this regard too, and Im sure if people actually pondered it long enough they could come up with a better method of accounting for the files right now. Patch programs do it all the time, installers can do it as well, it's a matter of someone with the technological know how to actually come up with something and then trying to convince the modders to embrace their new fangled methods.
People in general are like sheep and we all seem to follow the leader, so no, I don't honestly believe that there isnt a simpler solution, only that nobody has come up with one yet or come up with one that other people are willing to adopt.
In your idea of keeping any zips or exes in a folder marked installed would actually be helpful if the installer would then check internal checks for dependency files against that folder and if they are not located in there, then it would notify the user of the missing dependency files. Im quite sure this is not a insurmountable task to accomplish when installing some files to do this extra check. It then takes the manual checking for these files out of the loop and leaves less error for mistakes on the end users part. Or if the installer that installs these large dependency files would write the file name that it installed to a simple text file then the content installers could read that file and know if the dependency was installed or not, of course this wouldn't account for someone manually removing a file but that's not the problem of the installer at that point.
@City Builder: I can feel your pain - for someone who is new to the game, or didn't look into custom content since a while, the dependency issue can be quite confusing. But as callagrafx said, there is on "easy" solution to this - esp. since the game celebrates its 5th birthday these days, and the community has grown gradually over the last few years. But if you really look at it, it's not that complicated after all. It just requires some planning when downloading and installing large amounts of files in particular. For example, you can keep a list of what you're installing, and a basic rundown of the dependency files that are needed.
As you already noticed, most of them show up again and again, and looking at my own plugins folder, which has been growing since the release of the Lot Editor in fall 2003, the number of dependency files is not that huge after all. Out of the 1.4 GB of stuff, a mere 250 MB consists of dependency packs. Obviously, it depends on which downloads you have installed, but if it's not too "exotic", you can keep the numbers rather reasonable. Downloads like the BSC Textures Mega Packs are used on virtually any lot, and in the end, those two downloads are much easier to deal with than handling two dozen of smaller files, even if it means that you probably only use 25% of the actual contents of the mega packs.
There were many propositions made about a better dependency handling, but after all, this is a system that has grown over more than four years, and it's next to impossible to revamp it basically over night. Probably the best advice is to go easy on yourself, and follow the process of downloading and installing new stuff with open eyes, only one at a time. I know that you might feel like a kid in a candy store when browsing the LEX (or any other exchange), discovering so many great items. But as with playing the game successfully, patience is the key, so just take your time to learn how the plugins work together. Personally, I know basically every file that I have in my plugins folder by memory, and that's some 7,500 files!
I will have to agree with both Andreas and Calla and as momma would always say: " If it sho aint is not broken, then it aint is not worth to fix it."
There are a lot of fairly standard dependencies for lots. Like Porkie's Props, a lot of PEG's work, and of course all things BSC. Other teams, when possible, tend to stick with props made by their own team members, but often need at least a couple of the previously mentioned. And then you have solo creators who just use what they like, no matter where it comes from, or if they can't find what they want, they can make it themselves.
When dealing with CAM, it's a whole new ballgame, because the original building models become dependencies for the updated lot, as well as any actual props. So you have to download the original building and lot, if it's a previous release. Much of this has been simplified as well, by putting a lot of the building models into Mega Packs on the LEX (with consent of the original Batter of course).
The simplest way to do it would be to stick with Vanilla SC4, or at least Maxis props. But that would be rather dull.
Keeping the zip files in an Installed folder is a good start. I go a step further and divide my downloads by site, with an Installed folder in each of those folders. That way should I have a problem of any sort, I know where it came from.
Well said, Marc.
City Builder, I can assure you that the least enjoyable part as a Batter is packaging something for general consumption.
Creating the BAT is immensely enjoyable, but then, there are the following steps we (or lotters and modders as well, go through) :-
1) Assign correct and resonable values to the BAT to ensure reasonable game play;
2) Empty our plugins of all our custom content to ensure no false dependencies exist in our work;
3) From all the amazing props and textures available to us, we then need to decide on just a mere handful to ensure that our dependency list is considered reasonable to Joe Public. Often such a process can hinder our creative vision for the lot. Also, for this process we need to learn how to use the lot-editor;
4) Create any custom icons or queries/sounds;
5) Modd these into the lot (for this we either need to learn how to use the SC4 tool or the Reader);
6) Ensure that the BAT and Lot work together correctly by testing in game - both vanilla and with other plug-ins - (this means that in our own SC4 games, we need to have regions that are just test-beds);
7) Take in-game pictures of the Bat and Lot for both day and night;
8 ) Submit the pictures to the general public for review and comments (for this we need to obtain photo-editing software, learn how to use it, then register with, and maintain a photo-sharing site) - depending on the outcome of the feedback by the public on seeing the pictures of our creation, we can either go back to the drawing board, which ultimately means re-doing steps 1-8 or we can move to the next step;
9) Create a read-me file (for this we need to learn html and maintain a list of file locations where each dependency package can be obtained by you, the downloader);
10) Create and assign file locations within an installer package (again, another piece of software);
11) Submit the lot/bat to our peers for testing all aspects and review - depending on feedback obtained, this can often result in having to start the process all over again;
12) Upload the creation; and...
13) Maintain and or update that creation from time-to-time.
<Phew>! :o
This process can take many weeks of our time, and often is more involved than the actual BAT itself.
Now in creating prop-packs, we ensure that our creations can be accessed centrally by others for either a depency package or simply for other sim city players to use in their custom content (which they may or may not share with others) - it makes it easier for us to maintain by having just a few file locations. As you can see, this discussion should actually be about our preferences, as we are the ones giving freely of our time.
In making this list, I just wanted to give you an idea of what it is we already do to get custom content to you.
But in answer to your question: there is an easy, pre-existing solution for those who don't like dependencies (over and above the tried and true saying of 'don't download'): simply get the lot-editor and other assorted custom content tools from Maxis.
Then you can take our custom content and change it to your liking!
All of that aside, there's one simple fact that will ruin any chance of a program to automatically check for and download dependencies....the sheer number of files to be catalogued, indexed, links created (and maintained), not to mention the co-operation of every single person who uploads custom content for the game. The LEX is probably the most sophisticated in terms of tracking what's been downloaded and how many times, couple that with the immensely useful LEX Downloader from Wouanagaine and we've probably gone as far as we can to making life easier for people. As a comparison, pop along to the "Official" exchange and simcity.ea.com (you need to find the old site, it's there somewhere) and see just how organised the people who distribute files there are.
The bottom line of all this is that you're only about the 200000th person (at least) who has been into and complained about this. And I'm sure that there have been at least 25000 threads written about it.. ;). In other words this has been hashed over a near-infinite number of times.
Thanks to a fairly small number of people who have worked hard to contribute tools and concepts to organizing, improving, checking and packaging over the years, it is FAR easier today than it has been in history. The bottom line is that if you want to use custom content you may either use the tools and methods developed over the years to their best advantage or you can do your own thing.. And of course nothing is stopping YOU from maybe making that "next step" that you seem to want. :)
You also COULD if you were so inclined go through your exact custom content, comb through the dependencies to extract exactly the parts you need for your items (once again using the tools available) and isolate them into a dependency set custom made to what you have. That of course would take dozens, possibly hundreds, of hours, but hey.. it's your time.. ;) You would have the pleasure of knowing that you have just the stuff you need and probably the smallest dependency:content ratio of anyone on the game..
City Builder, I hope you realize that some of the best BATters/LOTters/MODders...... have just replied to your comments. I also hope you can understand all the work they already put forth for us. A little work on our part is nothing compared to everything Matt has just listed. These people should be appreciated for what they do for us now and not critisized for what you think they should also do.
I have nearly 4 GB of custom content and most dependency packs out there. I keep track of all the dependencies in excel and when I DL'd it. It took a long time to get to this, but I think it was time well spent.
THe title of this thread should be changed to, "What BATters/LOTters/MODders Already do for the Public for Free." And than Pinned.
I not sure why, but I have taken some offense to this.........
Robin $%#Ninj2
And with that, and one more thing I'll address momentarily, we will have now the annual (ongoing, actually, but one can hope) debate about dependencies for 2008. May 11-1/2 blissful months of silence on the subject follow. I'm locking this thread...
...snick...
...not because there's nothing else that could be said about the subject- the fact that this community has been having this discussion for at least three and probably four years now proves that up- but because we've had really articulate and thorough expressions of each side's position in what's already been said.
Now to the one more thing. I think, in the interest of fairness, that it would be appropriate to let City Builder have an opportunity to respond to the substantive points that were made in the last four or five comments, which I took to all be supportive of the notion that there need to be dependencies and that dependencies are, by and large, a good thing. City Builder, if you would PM me and let me know when you are ready to comment in response (and don't take this to mean that you have got to do that- let me know as well, though, if you don't intend to respond, and we'll let things stand as they are at present) I will make arrangements for you to be able to do that, and at that point we will consider the discussion completely closed.
I urge, not as an administrator and staff member of SC4D, but as dedgren, the guy who has made this game an almost daily part of his life since 2003, that everyone really step back and think about what has been said here. The custom content community has not just kept SC4 alive since about 2003, it has reinvented the game in ways nobody (and particularly EA) ever could have imagined. Most folks enjoy their hobbies as either individual pursuits or as members of a small group of like-minded folks- model railroading and stamp collecting come to mind. If you play SC4, though, you can, through the internet, consort with mad scientists, dreamers, geniuses, and world-class "could have been" architects, engineers and city planners on a daily basis. Groups of folks from every continent work together every day to realize things that are, in the end, as ephemeral as sand castles but increasingly closely as real as tomorrow. There is, as in RL, a degree of competition and frustration about the state of things from time to time but, by and large, most people in the community can call pretty much everyone their friends at the end of the day.
The users of that custom content have done, in their own way, just as much to keep the game going. They continue to buy it in numbers that have to be both pleasing and painful to the game's developer at the same time. EA, while it has clearly moved on, isn't giving what is now that the development costs have been recaptured and support has all but ceased close to complete pure profit (the discs, packaging and wholesale distribution costs total a few cents per copy- there is no advertising- the game is sold to the retailer for about $10.00) away to charity. I don't think that anyone should consider a user looking at a daunting "becoming a skilled player" learning curve unreasonable in questioning why things have to be so complex. Thinking outside the box has led to so many other breakthroughs in our (phenomenally successful) effort to make the game better- who could be blamed for wishing that somehow it could be simpler, too?
Let's be clear that we haven't ended this discussion here only to see it come back, hydra-like, in two or three other places. Read this discussion again if you feel inclined to want to revisit the issue. After you do that, if you still think that there is something left to be said, or some new idea that you have that hasn't been thought of before, raise that in a PM to me, or to jeronij, or to any of the several folks who've posted here. I'm sure a discussion will ensue that will result in one of two things- either you will be satisfied that there really isn't any need to start all this over again, or you will continue to believe that and then we'll just have to see what happens.
Thanks to everyone involved for a spirited, yet disciplined and professional exchange of ideas.
David
I will add my 2 cents:
Quote from: City Builder on January 15, 2008, 03:22:31 PM
Let me start off by saying that I offer no solutions in this post, only my general thoughts on the subject of what is the way that the community has gone.
I stopped reading here. So you are starting a pointless discussion about a matter which has been discussed thousands of times in every SC4 related web site, and which is unavoidable and wont change. This sort of discussions is not welcome here.
Btw, from time to time, I play some other games which allow custom content, and dependencies do exist overall in the Internet. So, there is no valid solution to this matter so far. If you have found a valid solution to this, feel free to post it and share it with the community, who will be happy to test it. Oterwhise, avoid this sort of pointless threads here. Thank you
To all the other members who posted here:
Thanks for your advices and patience with this sort of diuscussions. Also thanks for you kind answers to this discussion :thumbsup:
David, thanks for saving the task of locking the thread ;)