Jump to content
The Dark Mod Forums

Testing new tdm installer - 201807


freyk
 Share

Recommended Posts

I'll test it in the nearest future.

 

Test - vc++ studio installer

In this testversion, the installer downloads only the vc++ installation package, for the detected 32 of 64 bit system
Start installer, select option "test - install vc++ shortcut".
The installer downloads the installation package into the darkmod folder.
Check if the vc++ packages is downloaded for your system (if it is x86 or 64 bit)

Note that tdm_update is expected to install VC redist package by itself, so theoretically this step is unnecessary in your installer.

Although I'm not sure how well it works now --- I plan to test it on clean Windows VMs. Some duplication on this part won't hurt.

 

Anyway, please don't call this part "Install Visual C++", because "Visual C++" usually means the whole multigigabyte software including compiler, IDE, Windows SDK, and tons of other stuff.

I believe this thing is called "VC++ Redistributable", or just VC redist for short.

  • Like 1
Link to comment
Share on other sites

Tried it on an TDM unaware Win10Pro 64bit machine.

 

After the two Windows nag-screens, it installed itself into the correct 64bit program file directory.

 

I've got three Desktop icons, The Dark Mod 32&64bit and the updater, all pointing to the right directory.

 

Users have full access to the installation folder, creation and deletion of files and folders works. Other program folders seem unaffected. The later downloads also worked.

 

The VC++ step got skipped.

 

The steam integration shows the community page and with "add game", you could select TDM.

 

Even though the entry is named The Dark Mod-64bit, it is alphabetically listed under the "D" section. You should probably change the default folder's name to the_dark_mod or something like that.

 

Launching the game through the desktop icons worked.

 

Launching via steam also works, steam overlay also seems to work.

 

I would have liked to try it on a fresh Win7 system, but time was running out. I won't have access to a flat-rate machine until Sunday...

  • Like 1
Link to comment
Share on other sites

Even though the entry is named The Dark Mod-64bit, it is alphabetically listed under the "D" section. You should probably change the default folder's name to the_dark_mod or something like that.

This is common for games on Steam, so I don't think it is a TDM issue. For example Skyrim appears under "E" for Elder scrolls or "The Long Dark" appears undder "L". It is quite common to ignore the article for sorting as this will clutter the letter "T" (or "D" for German games).

Link to comment
Share on other sites

This is common for games on Steam, so I don't think it is a TDM issue. For example Skyrim appears under "E" for Elder scrolls or "The Long Dark" appears undder "L". It is quite common to ignore the article for sorting as this will clutter the letter "T" (or "D" for German games).

 

Had to try that out ;)

 

When I run the installer and default to a directory named "thedarkmod", steam will list tdm under "T". No issue, just a matter of taste, I reckon. One can prompt steam to list wherever, by choosing the folder name.

 

What's also interesting, tdm was not listed, when I started steam on this machine. I thought that the different program folder was the issue - I installed tdm on the other machine to the installer default directory, on this machine it sits in a different path. This seems not to be the case. After adding the game, then closing down steam, I renamed the folder. Starting steam still showed tdm, but couldn't launch it. Looks like the Library info is stored locally, which is a bit odd, since otherwise I always see my complete library, regardless of what is installed locally.

 

Anyways, installing VC++ was again skipped, but this machine has a previous installation, so that might be normal.

Edited by s.urfer
Link to comment
Share on other sites

Thank you for testing the installer, s.urfer (and all).

It seems that all is working, what i have in mind. :D

 

During the vc++ installation, the installer detects if you need the installation of this package.

If you dont, this procedure going to be skipped. You can check this in the installation details.

You can find it, After you specify the installation path and hit the install button.

After this, you see the installation screen and you can click on the details button.

Here you will see the installation details.

The installation details are folded in, because it can scare people. Or shall i fold it out, during installation?

 

About those windows nagscreens.

They are normal, if windows declares im not a official app publisher (and dont want to pay a publishing licence)

 

@stgatilov, i going to change the name in the list.

Edited by freyk
  • Like 1

Info: My portfolio and darkmod graphical installer
Amnesty for Bikerdude!

Link to comment
Share on other sites

Tested on Windows 7 32-bit in virtual machine.

 

Write permissions to darkmod folder (on the users selection)

The installer by default chose directory in Program Files, which of course was not allowed to be accessed initially without admin rights.

After installation, I the access it granted (I see it in Security dialogs, I can edit the txt files without UAC intervention, tdm_update downloads files there properly).

So this part works for me.

 

VC studio installer (only download, for now)

32-bit version was downloaded, but not installed.

Also, it is the wrong version: it is named vc_redist.x86.exe and has size 14 MB.

The installer downloaded by tdm_update is named vc_redist.x86.exe and has size 6 MB.

In fact, your installer is for MSVC2017: it will work for 2.07, but won't work for 2.06.

 

Steam nonsteam-game shortcuts.

I have no steam in my VM.

 

Aside from that, all files are downloaded properly.

Unfortunately, I cannot check anything in-game.

 

The shortcuts are created on desktop, and point properly both to the game itself and to updater.

The uninstaller works properly (it removes the whole darkmod directory).

 

Link to comment
Share on other sites

  • 3 months later...

I uploaded a new version of this installer, version 20181125 on my drive for testing.

(and updated the sourcecode on my github repo)

 

The most important feature of this version is that

it detects if the tdm updater is sitting next to the installer and use that updater.

So it can be included in TDM's main package for the tdm-updater windows (tdm_update_win.zip) in the future.

 

This version detects if there is a tdm updater, next to the installer.

If so, the installer copies that updater to the tdm gamefolder.

If not, it downloads the current version of the updater to the tdm gamefolder

If he cannot find the updater online, he extracts an old version of the updater to the tdm gamefolder.

This version (and the future versions) of installer doesnt have to be recompiled anymore, when there is a new version of the updater.

 

My question now is shall i create an ini-file for it, with settings like the current location of the online updater?

And what must the updater do, when he cannot find the updater online.

Edited by freyk
  • Like 3

Info: My portfolio and darkmod graphical installer
Amnesty for Bikerdude!

Link to comment
Share on other sites

Sounds great!

 

My question now is shall i create an ini-file for it, with settings like the current location of the online updater?
And what must the updater do, when he cannot find the updater online.

I think that the current location of updater can be hardcoded.

 

For instance, the location of tdm_mirrors.txt file is hardcoded inside tdm_update:

const char* const TDM_MIRRORS_FILE = "tdm_mirrors.txt";
const char* const TDM_MIRRORS_SERVERS[] = { 
  "http://mirrors.thedarkmod.com/",
  "http://www.thedarkmod.com/update/",
  ""
};

So tdm_update goes to hardcoded paths to download tdm_mirrors.txt if it does not have one nearby.

After that it uses the mirrors written into that file. Some sort of bootstrapping here :D

I think it's better to ask Grayman or Springheel: they can say how often the location of tdm_update.exe on website have changed over years.

 

If you cannot find updater online, then... report error, I guess? :laugh:

Link to comment
Share on other sites

thanks.
im looking at the future where are no tdm volunteers who want to compile our code

(but the code/binaries are somewhere outthere)
So "frequently" changed online paths and names shouldnt be hardcoded.
(you can hardcode a mirrorlist, but existing connections will shrink overtime)

 

For example, i dont know how long taaki's last.

So a general location, like www.thedarkmod.com/downloads/tdm_update_win.zip, with a dynamic location selector on the back would last longer.

Edited by freyk

Info: My portfolio and darkmod graphical installer
Amnesty for Bikerdude!

Link to comment
Share on other sites

For example, i dont know how long taaki's last.

So a general location, like www.thedarkmod.com/downloads/tdm_update_win.zip, with a dynamic location selector on the back would last longer.

As far as I remember, taaaki is not the first one who hosts TDM server.

As long as someone controls thedarkmod.com domain, it is always possible to migrate to new hosting without changing urls.

 

You can of course create an ini file, but wouldn't it make your installer as complicated as tdm_update current is (in the very end)?

Link to comment
Share on other sites

  • 3 weeks later...

I'd like to include your installer into beta testing phase.

 

For this to happen, it is necessary to be able to set --keep-mirrors parameter to tdm_update.

1) Can the installer itself do that (some parameter, checkbox, ini-file)?

2) Can the user set the checkbox manually when tdm_update kicks in?

Link to comment
Share on other sites

1) yes the installer can do that. the installer can run the updater with those parameters. but for this i need to recompile the installer.

 

2)which checkbox?

the keepmirrors? if so, i can create another checkbox for that in the installer.

Info: My portfolio and darkmod graphical installer
Amnesty for Bikerdude!

Link to comment
Share on other sites

1) yes the installer can do that. the installer can run the updater with those parameters. but for this i need to recompile the installer.

Not very good --- that's call this plan B :laugh:

 

2)which checkbox?

the keepmirrors? if so, i can create another checkbox for that in the installer.

When GUI version of tdm_update is run, user can click Advanced Options and set checkbox there.

This is how beta testers stay on testing mirror.

Perhaps the most right way would be to instruct beta-testers to enable the same checkbox (as in direct install) when using your installer?

Of course, it won't be needed for real players.

Link to comment
Share on other sites

The installer solved that problem by setting the write permission to tdm folder for all users. (edit: full access)

And for the spaces, the user can select an other folder if they want.

how about using Windows environment variables in the path in darkradiant?

 

The installer only starts the updater and not the update process.

(and it uses at firstrun the no-self update parameter, to avoid problems.)

The user can select the keep-mirrors option in the updater, if they want to.

For more info see the code of the installation script of the installer

Edited by freyk
  • Like 1

Info: My portfolio and darkmod graphical installer
Amnesty for Bikerdude!

Link to comment
Share on other sites

Ah, that write-permission thing is good.

 

Regarding the spaces, maybe a mapper could check if this even still is an issue. If it isn't, we're all good. If it is, the environment variable will not be a solution because it will be resolved to an actual path that contains the spaces again by the OS. In that case, I would rather issue a warning that paths with spaces might prevent you from getting a proper DR setup.

Link to comment
Share on other sites

Well, I'd like to ask here:

 

2a. At the end of the installation procedure, untick the checkbox that it starts the updater after the installation. So it doesnt start the updater.
Download and place the mirrors file in the tdm folder and then start the updater.
follow 4 and 5.

As far as I see it, it is only important to ensure that tdm_mirrors.txt is near tdm_update.exe by the time you click "Continue>>" in GUI updater.

So it does not matter if [your installer starts tdm_update, user puts tdm_mirrors.txt at proper place, user continues] or [your installer ends, user puts tdm_mirrors.txt, user starts tdm_update, user clicks continue].

Since user anyway has to go to advanced options and click a checkbox there, I decided to add the second "manual" thing at the same place.

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.

 Share

  • Recent Status Updates

    • freyk

      Some years earlier i created some launchers for TDM. uploaded today some new sourcecode and executables on my github repo.
       
      · 0 replies
    • Epifire

      Say, I know it's been a while since the site got overhauled from the crash. But did we ever figure out if/how to get the recent topics & replies list back? It's not a total deal breaker but it was nice for becoming a thread creeper again...


      · 2 replies
    • Epifire

      Some of you who've been on the TDM discord know I was out of work last Winter, just putting in hrs for the developer portfolio. Currently I've been working a seasonal job to pay the bills and now I'm finally in my last week before I get bumped off. Things will be tight but I'm planning a long off period to make as much content as I can. Big plans in Unreal Engine as well as my most ambitious TDM collab yet! Never been so excited to be a stuck at home to pursue my life's work. With a lotta time and maybe some luck, I'm hoping to get enough art work done that I may start applying around to studios.
      · 4 replies
    • STiFU

      I finally got around to play Prey and I truly loved it. It is an incredible homage to System Shock and Deus Ex. While the gameplay is not en par with those two titles, the game makes up for that with its well written lore and story. The whole "world" just feells so authentic and it features a ton of really god environmental story-telling. Recommended for every immersive sim fan, i.e., everyone on this forum.
      · 2 replies
    • jaxa

      Alder Lake has arrived:
      https://forums.thedarkmod.com/index.php?/topic/18055-2016-cpugpu-news/page/15/&tab=comments#comment-466190
       
      · 0 replies
×
×
  • Create New...