Project

General

Profile

Bug #13218

Mods in GameData not Recognized With Blanks in Directory Name / Asteroid Day Mod

Added by niklan over 7 years ago. Updated over 7 years ago.

Status:
Not a Bug
Severity:
Normal
Assignee:
-
Category:
Application
Target version:
-
Start date:
11/10/2016
% Done:

0%

Version:
Platform:
Windows
Expansion:
Language:
English (US)
Mod Related:
No
Votes:
Arrow u r green
Arrow d r red

Description

I wanted to try out Asteroid Day Mod with the new version 1.2.x, so downloaded and copied it to gamedata folder. The new version of Asteroid Day Mod is named "Asteroid Day for Kerbal Space Program 1.2" inside the zip-file. KSP failed to recognize this mod in game (i saw some messages referring to it while game was loading but thats it) while my other mod (chatterer) was recognized/activated in game ok, so it was not a general problem.
First renamed it to "Asteroid Day" thinking the name was simply too long but still wasn't recognized / activated in game. Then i had the idea it could be the blank in the name and bingo it worked after renaming it to "AsteroidDay" without blank.

So the problem seems to be that mod-subfolder names inside gamedata must not contain blanks. In the long run this should be corrected since you can simply not count/rely on people knowing that. In the meantime the zip of Asteroid Day Mod should be repacked with a folder name with no blank in it.

Steps to test:
If its not recognized then the Infrared Telescope doesn't appear in the science parts in a sandbox game.

OS: Windows 7-64bit
KSP: 1.2.1 - 32 and 64 bit versions tested

History

#1 Updated by sal_vager over 7 years ago

  • Status changed from New to Not a Bug
  • % Done changed from 0 to 100

Hi niklan, the Asteroid Day mod failed to load because the period character [.] is deliberately removed from file name paths for cross platform compatibility reasons, you can see this when saving a craft with a period in the name.

To install the Asteroid Day mod please copy the Gamedata folder from the "Asteroid Day for Kerbal Space Program 1.2" folder into your Kerbal Space Program folder.

It should look like this.

Kerbal Space Program\GameData\AsteroidDay\

The space character [ ] is acceptable and works properly in mod folder names, the asteroid day part failed to load after changing the name to "Asteroid Day" because the part looks for the model in a certain directory.

MODEL
{
    model = AsteroidDay/Parts/CamSat/CamSat
}

Hope this helps!

#2 Updated by niklan over 7 years ago

Sorry but i disagree, there is a BUG.

Do this little test:

Rename the mod to "Kerbal Space Program\GameData\Asteroid Day" (blank in name), launch a sandbox game, goto VAB -> Science Parts and the SENTINEL infrared telescope is missing.
Rename the mod to "Kerbal Space Program\GameData\AsteroidDay" (no blank in name) and you will have the telescope in there and get the missions to map asteroids.

I just tested this again. Takes only 5 mins to test that.

And in the ZIP-File (from Curse) there is only one folder and that is named "Asteroid Day for Kerbal Space Program 1.2". This is the folder you are supposed to drag into the GameData folder. Now when you drag this folder into the GameData folder it of course doesn't work because of the blanks in the name. Whether the dot matters or not i don't know because its not working at all.
Nobody will rename the folder name into "AsteroidDay" on his own if its not written in the documentation (if anyone reads that at all) and everyone using this thing will run into the same problem.

Tested on Windows 7-64bit / KSP 1.2.1 64bit.

#4 Updated by sal_vager over 7 years ago

Hi niklan, I'll try to explain this a bit better.

By renaming the folder to a different name to the path to the model you break the folder hierarchy, this is not a bug, by modifying the folder name you have given an invalid path to the part model, causing it to fail to load.

Here, please try this simple test.

With your folder path as "Kerbal Space Program\GameData\Asteroid Day" with the space, go to "GameData/Asteroid Day/Parts/CamSat" and open the CamSat.cfg file.

Change the MODEL node from this.

MODEL
{
    model = AsteroidDay/Parts/CamSat/CamSat
}

To this.

MODEL
{
    model = Asteroid Day/Parts/CamSat/CamSat
}

Now load KSP, you will find that the Asteroid day part is now present despite spaces in the folder path.

#5 Updated by niklan over 7 years ago

You still have a problem there.

But first i must say then i got lucky to finally have renamed the folder to "AsteroidDay" not knowing this a few days ago when i wanted to try out the mod.

And here is the problem:

1. download the mod from Curse
2. Open the zip file
3. take a good long look at the contents, especially folder names
4. and now tell me, why the folder inside the zip is named "Asteroid Day for Kerbal Space Program 1.2" and not "AsteroidDay" when the program needs the folder name to precisely match the names contained in some files there?!

#6 Updated by niklan over 7 years ago

Forget it, the zip-file has been updated and fixed on Curse meanwhile.

The version i installed was really "buggy" which lead me to this bug message. It only contained the folder "Asteroid Day for Kerbal Space Program 1.2" and below it the parts and stuff. The file time stamps in there are 10/19/2016.

Just downloaded again and the zip file is renamed and the contents are ok now, it contains a GameData/AsteroidDay folder now and the file timestamps are 10/31/2016. If i would have downloaded and tested it a few days later i wouldn't have had the problem. Obviously someone discovered and fixed the bug already.

To get it to work back then i tested renaming until i got to "AsteroidDay" and thought its the blanks in the filename that makes loading mods partially buggy because with this name it worked ok.

Case really closed now

Also available in: Atom PDF