Jump to content

[Java 8][Win, Linux, Mac] Ultra-complete Mod Manager - v0.1.8.7alpha


Recommended Posts

Hi folks! :-)

Well, that's it. I like programming and noticed that the current mod managers does not fit my needings, so decided to do my custom mod manager. For the manager to work in all the OS that KSP supports I have done it in Java 8 (Not Java 7), is not a language I'm used to so surely is not well optimized, but hey, it does what it have to do.

I repeat: Java 8 (Not Java 7) Get JRE 8 here: http://www.oracle.com/technetwork/java/javase/downloads/index.html

I would like to know what features do you want this Manager to have. Keep in mind that I'm simply asking, later I will think if I add it or not.

Download first release: http://www./download/x9ljz1dslvcfq08/LlorxKspModManager.zip

Source code: https://github.com/Llorx/ksp-mod-manager

License: http://creativecommons.org/licenses/by-nc-nd/4.0/

This license is not final (Just ask if you want something).

To send me your translation follow this link, search the line "/* START EDITING HERE */" copy it in a text file and start translating. Just edit the strings between quotes and send it to me when you finish. Obviously tell me what language is xD

"Currently working" on:

- Save Readmes after installing so can be read later [Wurmi contribution].

Languages

- English.

- Spanish.

- German [Wurmi contribution].

Currently developed Features list:

- Multiplatform.

- Autodownload/install mods.

- Keep control of new mods updates.

- Uninstall mods.

- Option to only keep track of a mod version without installing it, so you will be warned when there's an update.

- Option to redownload/reinstall mods.

User-friendly features

- Autodetect clipboard when adding a mod [harvell64 contribution].

- Right button menu [Korb Biakustra contribution].

- Autodetect GameDatas to install in downloaded mods.

- Lets you select what to install and what not.

- Keep track of overwritten files, so you can check if you delete them or not after unistalling.

- Detect README files for you to read while installing.

- Filter unnecessary content under GameData when installing (sources, readmes, licenses...) [Justin Kerbice contribution] (Configurable).

- Autoadd ModuleManager mod and do not let any other mod install ModuleManager, so you will have always the updated version without duplicates (Fully configurable).

- Autoupdate itself.

- Possibility to change the download link of a mod without uninstalling/installing it [Korb Biakustra contribution].

Version checker currently supports:

- Spaceport.com

- KSP forums (Checking Last edit) [Korb Biakustra contribution]

- BitBucket.org

- GitHub.com [Franklin contribution]

- Jenkins/Hudson [Franklin contribution]

- Curse/Curseforge [Korb Biakustra contribution]

Upcoming features:

- Intelligent backup of overwritten files, so originals can be recovered when unistalling a mod. Will track if multiple mods overwrite the same file (That's why I call it intelligent xD). [Optimized by Korb Biakustra]

- Possibility to install mods directly by adding the zip file. It will be impossible to keep track of updates because of obvious reasons.

- Creating a custom server so mod developers can tell if a mod was updated and where to get the update, just in case they don't use Sapceport. Aso maybe I will ask developers to format forum posts in a special way instead of creating a custom server.

- Detect config files and don't delete them when updating a mod. A workaround will be to ask what files to keep when updating.

- Metamods: Import Modlists that will download and install in order. With possibility to publish it to Pastebin for easy share. [NathanKell contribution]

- Backup savegames/GameData/binary files just in case a mod breaks them/have different games with different mods [toril & Queril contribution].

- Download and install multiple files from the same forum post (NathanKell's Modlist like).

- Detect and install saved rockets/planes.

- Option to export/import list (Mainly to workaround breaking updates).

- Multilanguage (With your help xD).

- Modlist sorting.

- Some other features that people post in this Thread but I don't remember xD

Difficult but posible future features:

- Add scripting to Metamods, so installs will be automatic too. [NathanKell contribution]

Probable (not primordial) features

- Remove all part files that are not used ingame for performance gain [TheCardinal contribution]. Maybe add some type of backup just in case something goes wrong.

- Autodetect KSP install folder [Queril contribution] (Configurable). Not developed because I don't know how to do that under Linux/Mac with Java. By the way it only asks in the first run, so is not primordial right now.

YouTube video Watch here for fullscreen: http://youtu.be/Tl7O7pSwr3o

I repeat: I would like to know what features do you want this Manager to have. Keep in mind that I'm simply asking, later I will think if I add it or not.

Private alpha testers

- Korb Biakustra

- BrutalRIP

- harvell64

Help in coding

- weissel

- ola

Many thanx to you and thank you for your time! :)

Edited by Llorx
Link to comment
Share on other sites

Mono might be a better option for this.

Since Mono is used to create KSP Mods, it is a better option. It also supports more than one programming language

Out of the box Mono supports C# (GTK# and Microsoft C# dialects) and Boo on it's minimalist installation. However, just like .Net it supports far more languages if you ship the runtime with your software. It actually supports more languages than even .Net.

I personally recommend using the Gnambas Objective-Basic dialect, because the source code can be compiled on Mono, run on an interpreter, or hard-compiled using a cross-platform compiler.

Jay is also pretty good, and can be written in a manner that can be compiled for either Basic or Mono.

Edited by Ruedii
Adding more details.
Link to comment
Share on other sites

Mono might be a better option for this.

What's Mono? Do you talk about this: http://mono-project.com/Java?

I never programmed in Mono. Also I have almost 2k lines of code in Java so I'm not going to change that at this point xD Btw, I'm fine with developing this in Java.

Edited by Llorx
Link to comment
Share on other sites

Llorx, Mono is a cross-platform implementation of .Net. It's actually now quite superior to .Net although exhibits a few quirks on what bugs in code manifest into problems compared with .Net. It is used by the Unity game engine that KSP uses.

Link to comment
Share on other sites

I have replied to your last message in the previous thread Llorx. Please tell me what you think!

I Quote it here

I am going to move to the new thread, but as the quote is in there, let's answer this here first:

There are plenty of reasons why you would want to abort an installation or an update:

- Mediafire captcha prevents downloading (the html page disappear as soon as you click in the captcha field, you cannot type it);

- You realize there are billions of download links and want to check later which one is the one you want, or in which order you should install;

- You wanted to download a mod because you thought it was updated since your last installation, but in fact it isn't;

- Your child is trying to eat your cat, or the other way around, and you have to save the victim;

- The mod cannot be properly updated by LMM yet, but it will at some point so you put it in the list just to make sure your LMM list is exhaustive (Texture replacer, Renaissance Compilation, and so on);

- No link was found so the mod is removed due to the error, still you do want this mod; a prompt offering to remove the mod from the list should be displayed instead of removing it without any notice other than the "Error finding download link";

- You tried to update a mod in wrong order (i.e., you should update it after some other mods), and you realize that when you see the forum thread, but there if you cancel, the mod will be removed from the list;

- You child is trying to eat the power cable of your computer, and you have to save your computer first;

- An asteroid just landed in your garden and, being distracted, you missclicked on "Back", not knowing it would mean "Remove mod from the list";

- I'm sure I can find other reasons, some of them better that those I mentioned actually! :)

All in all, it is better to have all mods in the list even if the mod manager fails updating some (just display "[Error] 3rd May 2014" in the "Installed version" column), rather than mods removed without warning the user. "Cancel" action should not be taken as "Permanently remove", I think.

A few new suggestions:

By the way, an"Edit URL" would be highly useful together with the "Rename" option already available. An URL can change when a thread moves to WIP to Release, or if you selected the "Always download from this link" option when prompted, but then want to revert back to the main thread URL.

Additionally, would it be possible to format dates the same way for all types of URL? The format differs depending on whether the URL is the forum, Github, Dropbox or anything like that.

Last but not least: sorting mods alphabetically OR by last update by clicking on column names would be very convenient, especially as some mods will have to be updated manually, so it's easier to just put the last updates on top and see if everything can be automatic or not.

Last but not least (bis): how about adding a column (or a color legend on rows) to specify whether automatic update is possible (only one download file in the URL, or one selected as "default" one in a previous update) or if manual check will be necessary (several download links, or any other reason preventing auto-update).

These are just suggestions, take what you think would be useful! I've just added all my mods in the mod manager, and I can say it is already wonderful. :)

Yeah, now the fact is that it uninstalls the mod before downloading it (I know, a big big fail xDD). I thought about changing it some days ago just in case something bad happens while downloading/extracting the mod is not unistalled. Also I can add to the "something bad happens" when the user cancels the download, I hope the cat is fine lol.

Also I will add the "change link", is not a bad idea.

And about formatting, is just how the mod controls versions and that depends on the platform. Not all sites use dates, Jenkins uses 'random' string hashes and for spaceport I'm using a combination of dates and filenames. I can keep version internal and change that column to a "lastest updated" date.

EDIT: Just noticed the rest of the post, don't know what happened to my mind xDD

Sorting by column clicking. Ok, not bad. Adding it.

And I can add a colum/icon/color/something to mark mods that the last time were downloaded by selecting a link manually. Surely the next time are downloaded manually too.

Thank you again! :P

Edited by Llorx
Link to comment
Share on other sites

Llorx, Mono is a cross-platform implementation of .Net. It's actually now quite superior to .Net although exhibits a few quirks on what bugs in code manifest into problems compared with .Net. It is used by the Unity game engine that KSP uses.

Oh, not bad. My bad I don't knowed about that before starting the project :-/

Well, this is not a super-duper project, but I'm going to have it in mind for my next one. Or maybe if I rewrite all this code again.

Thank you!

Link to comment
Share on other sites

Mono might be a better option for this.

Since Mono is used to create KSP Mods, it is a better option. It also supports more than one programming language

Out of the box Mono supports C# (GTK# and Microsoft C# dialects) and Boo on it's minimalist installation. However, just like .Net it supports far more languages if you ship the runtime with your software. It actually supports more languages than even .Net.

I personally recommend using the Gnambas Objective-Basic dialect, because the source code can be compiled on Mono, run on an interpreter, or hard-compiled using a cross-platform compiler.

Jay is also pretty good, and can be written in a manner that can be compiled for either Basic or Mono.

Other than the community likely would contribute more to a Mono based project (simply because of knowledge), I'm not sure what benefit would be seen by doing this in Mono over Java (or really any other cross platform framework).

Link to comment
Share on other sites

Hi, I wanted to test this tool because it seems really useful but it doesn't work on my computer (Windows 7 / Java 8r5).

I have selected my KSP folder at the installation. After when I try to add a mod, I fill both cases, click ok and nothing happen ; I come back to the main windows and their is no addon listed.

I have tried with :

- AIES with forum link

- Scansat with forum link

- RLA Stockalike with spaceport link

I tried with ever the "install now" case check or not but it doesn't change anything.

I also tried the button "Download Module Manager" and it doesn't work.

I verified in the "ManagerConfig.object" file, my path to the KSP main folder is good.

Edited by Romn
Link to comment
Share on other sites

Hi, I wanted to test this tool because it seems really useful but it doesn't work on my computer (Windows 7 / Java 8r5).

I have selected my KSP folder at the installation. After when I try to add a mod, I fill both cases, click ok and nothing happen ; I come back to the main windows and their is no addon listed.

I have tried with :

- AIES with forum link

- Scansat with forum link

- RLA Stockalike with spaceport link

I tried with ever the "install now" case check or not but it doesn't change anything.

I also tried the button "Download Module Manager" and it doesn't work.

I verified in the "ManagerConfig.object" file, my path to the KSP main folder is good.

Do you have Windows Aero disabled? some seconds after adding a mod minimize and maximize the Mod Manager to check if is a graphic glitch with Java and Windows Aero.

Also, check if a error.txt file appears when you add a mod and nothing happens.

EDIT: Ok, search for the error file. Is not the graphic glitch because it should ask something when you add a mod using the forum link.

Edited by Llorx
Link to comment
Share on other sites

That's weird, I already had AIES and SCANSat and it was working, just tested adding RLA Stockalike with the forum link and it worked properly.

However the last update of LKMM itself (automatic check is a nice feature!) brought some issues with the "Latest date" column:

hKj3xfs.jpg

All dates are now stuck with the date of last LKMM update. "Checking mod updates" did not restore the correct dates, and the RLA mod I've just added shows no date at all. I guess this has something to do with the new date formatting?

'Makes me think it would be good if LKMM would show its version number somewhere.

Link to comment
Share on other sites

That's weird, I already had AIES and SCANSat and it was working, just tested adding RLA Stockalike with the forum link and it worked properly.

However the last update of LKMM itself (automatic check is a nice feature!) brought some issues with the "Latest date" column:

http://i.imgur.com/hKj3xfs.jpg

All dates are now stuck with the date of last LKMM update. "Checking mod updates" did not restore the correct dates, and the RLA mod I've just added shows no date at all. I guess this has something to do with the new date formatting?

'Makes me think it would be good if LKMM would show its version number somewhere.

The latest date is the date of when you installed/updated/checked the mod and had a new version, is not the date of when the mod was updated by the creator. I've made it this way because not all platforms have that info, so I used a local date.

Before the update the Manager don't had any info of when was the mod installed, so used the date of when you updated the Manager. From now it will show the date that you installed the mod (After I fix it, forgot to save the date when you install a new mod, that's why you see that weird data xD).

Edited by Llorx
Link to comment
Share on other sites

But then there is no way anymore to see when a mod was updated by the creator (or at least the thread was edited)? Or maybe I can't see it just because my mods were putatively updated on May 6th 2014 00:23:35 (which is not true, as the date I updated LKMM hasn othing to do with the date I updated these mods), and none of these mods was updated by their creator since then?

Link to comment
Share on other sites

But then there is no way anymore to see when a mod was updated by the creator (or at least the thread was edited)? Or maybe I can't see it just because my mods were putatively updated on May 6th 2014 00:23:35 (which is not true, as the date I updated LKMM hasn othing to do with the date I updated these mods), and none of these mods was updated by their creator since then?

Yes, when there's an update you will notice it fore sure xD (Black bold "[New version]" text with an icon next to it, so you can right click and download it or visit the mod link). And also the date will change to the date that the Manager noticed the update, so if you see a mod date that is you current time then there's a new update just found.

Link to comment
Share on other sites

Llorx, I made some modifications to your code, including a mediafire downloader. I believe it should work because it uses the same conventions as the other options. I will include the code here to add to your mod.

     public static final int TYPE_NONE = -1;
public static final int TYPE_SPACEPORT = 0;
public static final int TYPE_KSPFORUM = 1;
public static final int TYPE_JENKINS = 2;
public static final int TYPE_GITHUB = 3;
public static final int TYPE_BITBUCKET = 4;
public static final int TYPE_DROPBOX_FOLDER = 5;
public static final int TYPE_MEDIAFIRE = 6;
public static final int TYPE_LINK = 7;



prefix = "sp_";
break;
case Mod.TYPE_KSPFORUM:
prefix = "kf_";
break;
case Mod.TYPE_JENKINS:
prefix = "jk_";
break;
case Mod.TYPE_GITHUB:
prefix = "gh";
break;
case Mod.TYPE_BITBUCKET:
prefix = "bb_";
break;
case Mod.TYPE_DROPBOX_FOLDER:
prefix = "db_";
break;
case Mod.TYPE_MEDIAFIRE:
prefix = "mf_";
break;
return prefix + this.id;


this.setType(Mod.TYPE_SPACEPORT);
} else if (link.indexOf("forum.kerbalspaceprogram.com/threads/") > -1) {
this.setType(Mod.TYPE_KSPFORUM);
} else if (link.indexOf("github.com/") > -1) {
this.setType(Mod.TYPE_GITHUB);
} else if (link.indexOf("bitbucket.org/") > -1) {
this.setType(Mod.TYPE_BITBUCKET);
} else if (link.indexOf("dropbox.com/") > -1) {
this.setType(Mod.TYPE_DROPBOX_FOLDER);
} else if (link.indexOf("/") > -1 {

this.setType(Mod.TYPE_MEDIAFIRE);

I only cut out the parts I modified.

Link to comment
Share on other sites

Yes, when there's an update you will notice it fore sure xD (Black bold "[New version]" text with an icon next to it, so you can right click and download it or visit the mod link). And also the date will change to the date that the Manager noticed the update, so if you see a mod date that is you current time then there's a new update just found.

Thanks a lot for the explanation!

I think I still somehow miss the actual date taken from forum/Github/Spaceport/whatever, it was really informative on whether a mod is under active development. And above all, the actual date is independent from when you run LKMM, which gives a better picture of when exactly did the creator push an update. I think what would be ideal is the actual date (i.e., remote date) followed by "- up to date" if local date > remote date, or "- NEW UPDATE" (seems more relevant than "NEW VERSION" as it may just be a thread update without new file) in case LKMM finds something new, or in other words if local date < remote date. But I do understand some platforms do not allow you to get the "remote date" so I understand the choice.

What are the platforms that don't provide such information by the way?

_______________

And here's another suggestion: add Enable/Disable options in the right click menu, so that you can follow updates on mods but easily decide to use them or not with your actual KSP installation. "Disable" would basically remove the corresponding folder from GameData, or even better, move it to another folder so that (1) your custom changes will not be lost when you will later re-enable the mod, and (2) you can do it without Internet connection. "Enable" would move back the folder to GameData, or otherwise redownload the mod if no backup (moved folder) is available. In both cases the mod is in your LKMM list so you can keep an eye on it. "Uninstalling" a mod would remove everything of this mod, be it enabled or disabled, and remove it from the list too, as it already does.

A related awesome feature would be "sets" of mods. For instance, you could have a "Single player mod set" where you enable all your favourite mods, and a "KMP set" where you enable only the mods allowed by the KMP server. What benefit? You deal with only one installation of KSP instead of one for Single player and one for KMP: saves a lot of disk space and a lot of hassle.

Tell me when you want me to stop! :]

Edited by Korb Biakustra
Link to comment
Share on other sites

Llorx, I made some modifications to your code, including a mediafire downloader. I believe it should work because it uses the same conventions as the other options. I will include the code here to add to your mod.
     public static final int TYPE_NONE = -1;
public static final int TYPE_SPACEPORT = 0;
public static final int TYPE_KSPFORUM = 1;
public static final int TYPE_JENKINS = 2;
public static final int TYPE_GITHUB = 3;
public static final int TYPE_BITBUCKET = 4;
public static final int TYPE_DROPBOX_FOLDER = 5;
public static final int TYPE_MEDIAFIRE = 6;
public static final int TYPE_LINK = 7;



prefix = "sp_";
break;
case Mod.TYPE_KSPFORUM:
prefix = "kf_";
break;
case Mod.TYPE_JENKINS:
prefix = "jk_";
break;
case Mod.TYPE_GITHUB:
prefix = "gh";
break;
case Mod.TYPE_BITBUCKET:
prefix = "bb_";
break;
case Mod.TYPE_DROPBOX_FOLDER:
prefix = "db_";
break;
case Mod.TYPE_MEDIAFIRE:
prefix = "mf_";
break;
return prefix + this.id;


this.setType(Mod.TYPE_SPACEPORT);
} else if (link.indexOf("forum.kerbalspaceprogram.com/threads/") > -1) {
this.setType(Mod.TYPE_KSPFORUM);
} else if (link.indexOf("github.com/") > -1) {
this.setType(Mod.TYPE_GITHUB);
} else if (link.indexOf("bitbucket.org/") > -1) {
this.setType(Mod.TYPE_BITBUCKET);
} else if (link.indexOf("dropbox.com/") > -1) {
this.setType(Mod.TYPE_DROPBOX_FOLDER);
} else if (link.indexOf("/") > -1 {

this.setType(Mod.TYPE_MEDIAFIRE);

I only cut out the parts I modified.

Normally mediafire links come from a forum post, so you don't have to add the mediafire link, you have to add the forum link and it will detect the mediafire link for download. The Manager already has a mediafire autodownloaded (if there's no captcha, obviously xD).

To download a mod you don't have to add a link to the zip file, you have to add a link to the forum post where you extracted it, because most of the times when someone updates a mod he changes the mediafire link and post it in the same forum post, this way the Manager will always look the same post for updated links. If you add the zip link directly to the Manager, it won't notice any future update because the file is going to be always the same.

Btw, thank you for checking the code and thinking on how to imporove it, really :)

Thanks a lot for the explanation!

I think I still somehow miss the actual date taken from forum/Github/Spaceport/whatever, it was really informative on whether a mod is under active development. And above all, the actual date is independent from when you run LKMM, which gives a better picture of when exactly did the creator push an update. I think what would be ideal is the actual date (i.e., remote date) followed by "- up to date" if local date > remote date, or "- NEW UPDATE" (seems more relevant than "NEW VERSION" as it may just be a thread update without new file) in case LKMM finds something new, or in other words if local date < remote date. But I do understand some platforms do not allow you to get the "remote date" so I understand the choice.

What are the platforms that don't provide such information by the way?

The platforms that do not provide any data info are Jenkins/Hudson, and SpacePort gives barely that info (Only month and year, no day nor hour, that's why I use a mix of month/year/filename for it), and I can't tell if there are going supported platforms in the future that give that info. Also is probable that in the future I change the internal version to some type of hash code, perfect for checking versions of files (File checksum), so dates are not going to be used anymore for version checking. The version checker don't compare dates, it simply compares that the online version string (That some times are dates) is the same that the stored version string, just comparing as a string of characters.

I want to add a "Properties" option to each mod when you right click them, and will show some secondary info. I can add the internal version there that in most cases is some type of date. Also in the future when I reorganize the main window as it gets more functions I can add a third (configurable) column with the version detected.

And here's another suggestion: add Enable/Disable options in the right click menu, so that you can follow updates on mods but easily decide to use them or not with your actual KSP installation. "Disable" would basically remove the corresponding folder from GameData, or even better, move it to another folder so that (1) your custom changes will not be lost when you will later re-enable the mod, and (2) you can do it without Internet connection. "Enable" would move back the folder to GameData, or otherwise redownload the mod if no backup (moved folder) is available. In both cases the mod is in your LKMM list so you can keep an eye on it. "Uninstalling" a mod would remove everything of this mod, be it enabled or disabled, and remove it from the list too, as it already does.

A related awesome feature would be "sets" of mods. For instance, you could have a "Single player mod set" where you enable all your favourite mods, and a "KMP set" where you enable only the mods allowed by the KMP server. What benefit? You deal with only one installation of KSP instead of one for Single player and one for KMP: saves a lot of disk space and a lot of hassle.

Yep, the "Enable/Disable" function is a good idea. Kinda complicated but I'm going to implement it.

And the "sets" of mods, I already have something for that. I'm going to add profiles, and each profile will have its own modlist, so when you change profile the entire GameData folder along with save folder will be recovered/moved from/to a backup folder.

Tell me when you want me to stop! :]

No problem hahaha xD

Link to comment
Share on other sites

Normally mediafire links come from a forum post, so you don't have to add the mediafire link, you have to add the forum link and it will detect the mediafire link for download. The Manager already has a mediafire autodownloaded (if there's no captcha, obviously xD).

By the way, have you noticed the bug with Mediafire captcha in LKMM's browser? When opening a mediafire link with LKMM's browser and a captcha is required, you can't type it in the field (all HTML will disappear as soon as you click in the field). Ultilmately you will have to cancel the download, which will end up in removing the mod from the list (as we discussed earlier in the other thread).

The platforms that do not provide any data info are Jenkins/Hudson, and SpacePort gives barely that info (Only month and year, no day nor hour, that's why I use a mix of month/year/filename for it), and I can't tell if there are going supported platforms in the future that give that info. Also is probable that in the future I change the internal version to some type of hash code, perfect for checking versions of files (File checksum), so dates are not going to be used anymore for version checking. The version checker don't compare dates, it simply compares that the online version string (That some times are dates) is the same that the stored version string, just comparing as a string of characters.

I want to add a "Properties" option to each mod when you right click them, and will show some secondary info. I can add the internal version there that in most cases is some type of date. Also in the future when I reorganize the main window as it gets more functions I can add a third (configurable) column with the version detected.

You definitely have my vote for a third column with version/date, would be highly useful for sorting mods by date and manage manual updates.

Yep, the "Enable/Disable" function is a good idea. Kinda complicated but I'm going to implement it.

And the "sets" of mods, I already have something for that. I'm going to add profiles, and each profile will have its own modlist, so when you change profile the entire GameData folder along with save folder will be recovered/moved from/to a backup folder.

Profiles are exactly what I was thinking about with "mod sets", great news!

Edited by Korb Biakustra
Link to comment
Share on other sites

By the way, have you noticed the bug with Mediafire captcha in LKMM's browser? When opening a mediafire link with LKMM's browser and a captcha is required, you can't type it in the field (all HTML will disappear as soon as you click in the field). Ultilmately you will have to cancel the download, which will end up in removing the mod from the list (as we discussed earlier in the other thread).

Ohhh yes, forgot that! :-/

I have to workaround it in some way then.

Link to comment
Share on other sites

Do you have Windows Aero disabled? some seconds after adding a mod minimize and maximize the Mod Manager to check if is a graphic glitch with Java and Windows Aero.

Also, check if a error.txt file appears when you add a mod and nothing happens.

EDIT: Ok, search for the error file. Is not the graphic glitch because it should ask something when you add a mod using the forum link.

I tried desactivating Windows Aero and as you said it changes nothing.

I don't have any error file.

Link to comment
Share on other sites

I tried desactivating Windows Aero and as you said it changes nothing.

I don't have any error file.

That's the weirdest thing I saw with this xD

I sent you a file via PM. Download it, put it in the same folder as the Manager and run it. Is a bat that will catch all erros in the command prompt. Let's see what happens.

Link to comment
Share on other sites

Here is what I have with the bat program just trying to add the ScanSat addon :

java version "1.8.0_05"

Java SE Runtime Environment (build 1.8.0_05-b13)

Java HotSpot 64-Bit Server VM (build 25.5-b02, mixed mode)

Exception in thread "main" java.lang.NoClassDefFoundError: org/jsoup/Jsoup

at llorx.kspModManager.Http.get(Http.java:24)

at llorx.kspModManager.ManagerConfig.checkVersion(ManagerConfig.java:171

)

at llorx.kspModManager.Main.loadConfigFile(Main.java:1369)

at llorx.kspModManager.Main.main(Main.java:1500)

Caused by: java.lang.ClassNotFoundException: org.jsoup.Jsoup

at java.net.URLClassLoader$1.run(Unknown Source)

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

... 4 more

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/jsoup

/Jsoup

at llorx.kspModManager.Http.get(Http.java:24)

at llorx.kspModManager.ModDataParser.parseKspForumData(ModDataParser.jav

a:91)

at llorx.kspModManager.ModDataParser.parseModData(ModDataParser.java:38)

at llorx.kspModManager.Mod.reloadMod(Mod.java:235)

at llorx.kspModManager.Mod.<init>(Mod.java:241)

at llorx.kspModManager.Main.getAddon(Main.java:1143)

at llorx.kspModManager.Main.getAddon(Main.java:1107)

at llorx.kspModManager.Main.actionPerformed(Main.java:378)

at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)

at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)

at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)

at javax.swing.DefaultButtonModel.setPressed(Unknown Source)

at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour

ce)

at java.awt.Component.processMouseEvent(Unknown Source)

at javax.swing.JComponent.processMouseEvent(Unknown Source)

at java.awt.Component.processEvent(Unknown Source)

at java.awt.Container.processEvent(Unknown Source)

at java.awt.Component.dispatchEventImpl(Unknown Source)

at java.awt.Container.dispatchEventImpl(Unknown Source)

at java.awt.Component.dispatchEvent(Unknown Source)

at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)

at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)

at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)

at java.awt.Container.dispatchEventImpl(Unknown Source)

at java.awt.Window.dispatchEventImpl(Unknown Source)

at java.awt.Component.dispatchEvent(Unknown Source)

at java.awt.EventQueue.dispatchEventImpl(Unknown Source)

at java.awt.EventQueue.access$400(Unknown Source)

at java.awt.EventQueue$3.run(Unknown Source)

at java.awt.EventQueue$3.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour

ce)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour

ce)

at java.awt.EventQueue$4.run(Unknown Source)

at java.awt.EventQueue$4.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour

ce)

at java.awt.EventQueue.dispatchEvent(Unknown Source)

at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)

at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)

at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

at java.awt.EventDispatchThread.run(Unknown Source)

Link to comment
Share on other sites

Here is what I have with the bat program just trying to add the ScanSat addon :

Ok, I see the problem. Going to search a fix. I will post it here when I fix it.

Thank you!

EDIT: Can't find what is happening because the library is there and everyone that tries the app can load it. Have you tried reinstalling java? If you don't mind, I can make some test builds and send them to you to see what is happening.

Also, if you have Winrar, open the .jar file and extract the lib folder. Then try to run the .bat file again. If it goes fine then we advanced a bit in finding what problem you have xD

Edited by Llorx
Link to comment
Share on other sites

Hey have you seen that Llorx? It has been posted here about the same time as you did post your tool. It's in Java too and some features are on your to-do list, while some others would be interesting complementary features. Have you discussed with yos233?

(By the way, you forgot adding "Column sorting" in the first post, I hope it is still on the list!)

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

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.

×
×
  • Create New...