Jump to content
The Dark Mod Forums

Installing Older TDM Versions


NightStalker

Recommended Posts

I usually download an old build from moddb and then run tdm_update then stop it once it's hit the version I want.

Moddb now has the zip packs to covert many old versions to other old versions eg. 1.06 to 1.07 package.

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

Thanks, freyk. I got the large TDM 2.00 "base" zip file from the moddb site a couple years ago, but didn't think to look there for anything else.

Unfortunately, maybe I'm misunderstanding your suggestion but, after looking at what's available on the moddb site, I still don't see how I can install an older version of TDM (to be precise, older than 2.05, but newer than 2.00).

The "standalone" file seems to be for the 2.00 version only. And if one is to download an update (say the "2.00 to 2.01" update), IIUC it still requires one to run the TDM updater exec (under Windows or Linux) and that's the crux of the problem -- the updater app has no ability to do anything but install the latest version (2.05 ATM), AFAICT. If I supply it with the 2.00 to 2.01 upgrade file only, it will merrily go off and (painfully) download all the other upgrade files and (against my preference, in this case) bring the installation up to 2.05!

Am I missing something here?

And, in fact, I want to do this under Linux, not Windows, a fact I intentionally omitted from my post because I thought that it should not matter. I still think it doesn't matter, but I'm prepared to be wrong. :D

Lastly, I'm wondering why those "The Dark Mod 2.0{0-4}-2.0{1-5} Update Package (Windows)" files on moddb all say "(Windows)" when they seem to be the exact same update files one would use with Linux (and, presumably, Mac OSX).

It seems to me like someone would have wanted to install an old version of TDM at some point over the years, but it escapes me how to do it without some very ugly and/or tedious work-arounds.

So, still very puzzled here... just what am I missing?

Link to comment
Share on other sites

I usually download an old build from moddb and then run tdm_update then stop it once it's hit the version I want.

Moddb now has the zip packs to covert many old versions to other old versions eg. 1.06 to 1.07 package.

Missed your post initially, nb1m. Thanks for the info.

 

But, short of trying to halt the updater at the proper point, which gives me pause, I think most of what I said in my reply to freyk is still relevant and I'm still quite befuddled.

 

I may have to try what you suggest, though, because I see no easy way (ATM) to get what I want.

 

I can't see wanting to go back much beyond TDM 2.03, but I can't even yet accomplish that!

Link to comment
Share on other sites

The conversion packages should have both Windows and Linux executables in them as I recall.

That said, we offer our source for all old releases:

 

http://www.thedarkmod.com/download-sourcecode/

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

Sorry, I may not have made myself totally clear.

It's not the TDM executable that's the problem. So the availability of source code for old versions of TDM doesn't help (in this case).

It's the whole "environment". Think "directory content", "resources", or "assets". How do I set up a directory with, say, the TDM 2.03 release, with the executable (of course) and with TDM-2.03-era PK4 files ("assets") and no other (newer or older) assets?

Before I started this thread, I searched the TDM forums and found nothing helpful. I also tried various mild hacks to the 'tdm_update' source code and to its input files, but I was thwarted at each step (a longer story).

I still figure that someone, somewhere, over the years of TDM must have had the same dilemma I'm in, no? :wacko:

Link to comment
Share on other sites

Thanks, Durandall. I didn't consider extracting the update files over an earlier installation although I seem to recall having done something like that many months ago, for a different reason.

Today, I downloaded one of the so-called "Windows" moddb 'update' files and it had the exact same content as the one I use (under Linux, downloaded from one of the TDM mirrors) with 'tdm_update.linux'. So I would say that those files are actually meant to be used with the updater app, but...

I suppose that if one were to take the somewhat unusual step of extracting all of the PK4 files that come in the base 2.00 installation, one could then do as you suggest and extract (without using the updater app) the "update" file(s) on top of the 2.00 installation. Technically, that would not yield the same set of files as when the updater app is run for a given 2.0x release because the app will delete old files (IIRC, both intra-PK4 files and PK4 files themselves) when they're obsolete. But, if one isn't a purist, that would probably yield a workable 2.0x installation, so thanks again for the suggestion.

I'll try both nb1m's suggestion and Durandall's when I get a chance.

Thanks, folks. If anyone has any other ideas, I'm still open to them.

Link to comment
Share on other sites

Can you do this from the SVN?

Of course that requires you to have SVN access.

 

The main reason I'd want to do it is an old SVN version had soft shadows and honestly they're worth playing that old version to have them. I kept one install on my external HD somewhere just for that reason. (I don't know if that info is public; but anyway it's kind of academic because to get them back in the new version requires yet more fiddling.)

What do you see when you turn out the light? I can't tell you but I know that it's mine.

Link to comment
Share on other sites

Can you do this from the SVN?

Of course that requires you to have SVN access.

Possibly. I'd thought about that, but since the "assets" SVN tree is non-public (IIRC), I didn't want to consider that avenue, at least for purposes of this (public) thread. So, although I could (and might eventually) try the SVN route, it's not really ideal, for multiple reasons, unfortunately. But I do appreciate your suggestion and comment.

 

It just seems to me like creating a "fully authentic" runnable older version of TDM should be far more straightforward than it is.

Link to comment
Share on other sites

  • 10 months later...

Apologies for not "closing the loop" on this. Only recently did I finally get back to re-visiting this issue. I wound up simply hacking the 'tdm_update' C++ code to crudely inject a large, obvious console message and a 10-second delay at the end of each version's update. This allowed me to simply monitor the installation and break out at the appropriate time. Very ugly, but it sufficed.

 

Here's the actual code, injected at the end of the 'Updater::PerformDifferentialUpdateStep()' routine in the 'tdm_update/libtdm_update/Updater/Updater.cpp' file:

 

 

// 
// 24 Jun 2018: NightStalker
//    
//    Allow time to break out of the update process here, at a convenient
//    point where a version update has just finished, before we start updating
//    to the next version...
//    
std::cerr << "=============================================================================" << std::endl;
std::cerr << "=============================================================================" << std::endl;
std::cerr << "=============================================================================" << std::endl;
std::cerr << "=============================================================================" << std::endl;
std::cerr << "     Abort within 10 seconds if you want to stay at version " + updateInfo.toVersion + "..." << std::endl;
std::cerr << "=============================================================================" << std::endl;
std::cerr << "=============================================================================" << std::endl;
std::cerr << "=============================================================================" << std::endl;
std::cerr << "=============================================================================" << std::endl;
sleep(10);

Thanks again for all the suggestions.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent Status Updates

    • Petike the Taffer

      I've finally managed to log in to The Dark Mod Wiki. I'm back in the saddle and before the holidays start in full, I'll be adding a few new FM articles and doing other updates. Written in Stone is already done.
      · 4 replies
    • nbohr1more

      TDM 15th Anniversary Contest is now active! Please declare your participation: https://forums.thedarkmod.com/index.php?/topic/22413-the-dark-mod-15th-anniversary-contest-entry-thread/
       
      · 0 replies
    • JackFarmer

      @TheUnbeholden
      You cannot receive PMs. Could you please be so kind and check your mailbox if it is full (or maybe you switched off the function)?
      · 1 reply
    • OrbWeaver

      I like the new frob highlight but it would nice if it was less "flickery" while moving over objects (especially barred metal doors).
      · 4 replies
    • nbohr1more

      Please vote in the 15th Anniversary Contest Theme Poll
       
      · 0 replies
×
×
  • Create New...