Jump to content

[1.3.0] Filter Extensions 3.0.4 (Jul 11)


Crzyrndm

Recommended Posts

Yeah, you are right regarding that I already exists, I didn't know what I was thinking.

My problem was with them not having Z,X and Y. So not "any", wrong example. I only wanted to exclude those who had the three of them, but if they only have 1 or 2 then they are ok. Don't remember in which filter I wanted to do something similar, but that was my issue.

EDIT: If I could put a filter inside another filter or check that would also do the trick for me. My intention was a filter that has (A OR B OR C) and the same time NOT (X AND Y AND Z)

So "A, Z" would be ok, but "B, X, Y, Z" should be left out

also...

That will be because the filter you have defined has the exact same filters as the procedural version. Remove the filters, add the "oldTitle" field and it will be as you expect.

I think I lost something, "remove" the filters? Also 'm not sure of the working of "oldTitle" I should put there the name of the procedural filter? so my custom filter could overwrite it?

Edited by KaiserSoze
Link to comment
Share on other sites

Yeah, you are right regarding that I already exists, I didn't know what I was thinking.

My problem was with them not having Z,X and Y. So not "any", wrong example. I only wanted to exclude those who had the three of them, but if they only have 1 or 2 then they are ok. Don't remember in which filter I wanted to do something similar, but that was my issue.

I see how that could be an issue.

You want to do this: (A || B || C) && !(X && Y && Z)

Currently the best a single filter could achieve is this: (A || B || C) && !(X || Y || Z), or this: (A || B || C) && !X && !Y && !Z (which are actually equivalent statements, see De Morgans laws).

I think the solution is going to be allowing Checks inside Checks. That would allow quite a bit more freedom in terms of boolean expressions FE is capable of without complicating things too much. NAND logic (what you're trying to achieve) isn't the only thing that would result.

I think I lost something, "remove" the filters? Also 'm not sure of the working of "oldTitle" I should put there the name of the procedural filter? so my custom filter could overwrite it?

There's a folder that I included for all the stock propellant combinations. See that for an example.

Edited by Crzyrndm
Link to comment
Share on other sites

v1.16 released

  • Added contains key to Check nodes, default is true. Only applicable to moduleName/Title, resource, propellant, and size type Checks. If contains is false, the Check will return true when there is a value that is not listed present
  • Added "check" type Check node. Check nodes can be grouped inside a check type
  • Fixed bug with filters containing only inverted checks causing hidden parts to be shown (Issue #24 on github)
  • Fixed bug which was preventing the correct icons being shown initially in the "engines" type category

Details on contains behaviour can be found here (still looking for a better name...)

"check" type Checks (regretting that choice of type name already...) should be used to group several Checks together. Use together with invert to get NAND logic (eg. the following returns false only when both condition 1 and 2 are true).


CHECK
{
type = check
invert = true

CHECK
{
//condition1
}
CHECK
{
//condition2
}
}

Nesting is not restricted at all (ie. you can have a check type inside a check type inside a check...) but I wouldn't recommend going too crazy with it...

Link to comment
Share on other sites

Didn't see it mentioned in a brief look, but MM is throwing an error when trying to add parts with the "Payload Bay" name to the "Cargo Bay" category.

The issue seems to be that MM does not accept spaces in the name field. Usually a part name is something with dashes, and the title is used to show the name in game. So I think the title field needs to be brought back, and the name field needs to be the name with no spaces in order for MM to support it.

I did a check on that by renaming the name in the S04_05_CargoBay file to "Cargo_Bay" and it worked. Also went ahead and added the "Payload Bay" and did a pull request on that file.

Link to comment
Share on other sites

Could I request a Filter Extensions Lite version? The mod works a little too well, and creates way too many categories and subcategories for my taste. All I'm looking for personally is a way to allow mods to get into the stock Filter by Manufacturer category with icons, which this mod does, but nothing else.

Deleting the configs file did that for me, but a direct download of a Lite version would be nice for future updates!

Link to comment
Share on other sites

Could I request a Filter Extensions Lite version? The mod works a little too well, and creates way too many categories and subcategories for my taste. All I'm looking for personally is a way to allow mods to get into the stock Filter by Manufacturer category with icons, which this mod does, but nothing else.

Deleting the configs file did that for me, but a direct download of a Lite version would be nice for future updates!

For a version that is as light as you describe, I don't think the download needs to be seperated since it only requires a handful of extra clicks on your part.

Taking a few seconds to delete the configs folder, only transferring the .dll from an update, or you could just not update until KSP does (Most update stuff is adding functionality to configs and the likelyhood of a major bug in Filter by Mod is almost nil)

Link to comment
Share on other sites

Crzyrndm, would it be possible for you to make a version where all those filters in the leftmost pane (function, module, etc) are removed and we're left with only the mods' icons (in a similar fashion to PartCatalog)?

I loved the workflow of PartCatalog, but the author won't be making new versions anymore. Your mod could be the perfect alternative!

Link to comment
Share on other sites

Try "hasn't" rather than "won't be". I wouldn't call Part Catalog dead just yet.

You can set up categories for any mod or combination of mods with a pretty simple config. I don't think you can remove categories at the moment (there's never been a need for it before) but it wouldn't be difficult to setup.

//example
CATEGORY:NEEDS[*modFolder*]
{
name = mod name
icon = some random icon
colour = F0F0F0
type = mod
value = *modFolder*
}

I really do need to get around to making some different "config packs" though...

Link to comment
Share on other sites

Is it possible to use this mod to revert to pre-0.90 part order in the catalogs? Config name based sorting drives me insane, old sorting that was using folder names was far more convenient, leaving mods grouped together.

Link to comment
Share on other sites

If a few people could enter and exit the editor scenes 3-4 times with this version and then upload the log. I'm testing changes to the way initialisation occurs and need to check there isn't any variation between installs. Particularly interested in logs from slower PC's with lots of mod parts.

Edited by Crzyrndm
Link to comment
Share on other sites

I just threw a pull request up with some minor edits to some subcategory filters. The main edit was to the lights subcategory, which I think was filtering for command backwards. At least, it was filtering for ModuleCommand and I changed it t to inverse = true to get lights without command.

Several other changes involve putting both uncapitalized terms in the title checks. Could you make the title checks case insensitive? It might resolve issues when modders miss the shift key when typing.

Anyway, this mod is really helpful. Great work.

Link to comment
Share on other sites

Version 1.17

  • Changed initialisation method to be more robust (completely independent of other mods now)
  • Part name and title checks are now independent of case (AAA == aaa)
  • Updated cargo bay checks to include the name Payload Bay (pull request from Gribbleshnibit8)
  • Updated wing, strut, generator, and light checks with various fixes and additions (pull request from Wercho)
  • Updated multicoupler check to be more robust. Parts similar to the stock staionhub with extra attach nodes on the sides of the part are no longer recognised as multi-couplers (ie. check is now for inline multicouplers)

EDIT

Forgot to mention, licensing has been changed. Icons and configs distributed with FE are under CC-BY-SA 4.0, plugin is covered by GPLv3.

Edited by Crzyrndm
Link to comment
Share on other sites

Version 1.17

  • Changed initialisation method to be more robust (completely independent of other mods now)
  • Part name and title checks are now independent of case (AAA == aaa)
  • Updated cargo bay checks to include the name Payload Bay (pull request from Gribbleshnibit8)
  • Updated wing, strut, generator, and light checks with various fixes and additions (pull request from Wercho)
  • Updated multicoupler check to be more robust. Parts similar to the stock staionhub with extra attach nodes on the sides of the part are no longer recognised as multi-couplers (ie. check is now for inline multicouplers)

EDIT

Forgot to mention, licensing has been changed. Icons and configs distributed with FE are under CC-BY-SA 4.0, plugin is covered by GPLv3.

Crzyrndm - Sorry to be the bearer of bad news but it looks there are several missing files in 1.17. I downloaded from both Github and KerbalStuff and both are missing the fuel tank and engine configs, several resource icons, and the FilterCreator.dll. The Resource Category was also renamed from Resource Storage and Mining in 1.16 to Resource Mining and Processing. If you merge the install you end with an extra Main category. If you do a fresh install you miss all of things I mentioned above.

Edited by Tarheel1999
Link to comment
Share on other sites

Does this mod bring back sorting parts by gamedata folder? if not are there any mods that do this? Sorting parts by name using over 100 mods results in a jumbled up mess, IMO.

It doesn't, but I actually came into the thread to ask him if he could throw it in there :P

The mod was meant to let you get round that "feature" anyway, I guess, but it still ends up with extra clicking.

Link to comment
Share on other sites

Crzyrndm - Sorry to be the bearer of bad news but it looks there are several missing files in 1.17. I downloaded from both Github and KerbalStuff and both are missing the fuel tank and engine configs, several resource icons, and the FilterCreator.dll. The Resource Category was also renamed from Resource Storage and Mining in 1.16 to Resource Mining and Processing. If you merge the install you end with an extra Main category. If you do a fresh install you miss all of things I mentioned above.

The missing dll is intentional. I don't have the time or patience to work on it atm and it's release state was rather less than useful.

I'm not sure what happened to the icons (I'll have a look later) but some may have been renamed, the resource/tank configs appears to be somewhat my bad (I didn't commit the full changes before release...:sealed:), but the engines going from the main section was intentional.

I don't really like the duplication of the engines subcategory, the engine type subcategories, and a category with every possible engine type combination. The best solution would be the ability to nest subcategories further (engines subcategory, has all engine types on a third layer) but the level of clutter without that ability was more than I wanted. The engines subCategory in FbF, and the Engines category with the full breakdown just works better IMO. That's not to say it has to be that way. The distributed configs are only a default setup ;)

Does this mod bring back sorting parts by gamedata folder? if not are there any mods that do this? Sorting parts by name using over 100 mods results in a jumbled up mess, IMO.

No, and how to alter Squad's sorting I still haven't got working properly yet. I need to do some experiments on that front...

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...