Permalink
Commits on Oct 27, 2018
Commits on Sep 14, 2018
  1. Merge pull request #60 from Invalid-Vertex/master

    Exactol committed Sep 14, 2018
    Fixed VRAD Luxel Density option and added -low to VVIS and VRAD
Commits on Sep 1, 2018
  1. Added -low

    Invalid-Vertex committed Sep 1, 2018
  2. Changed -density to -luxeldensity, added -low

    Invalid-Vertex committed Sep 1, 2018
    Changed -density to the correct -luxeldensity, also added option -low for forcing the compile tools to run as low-priority processes
Commits on Aug 31, 2018
  1. Added packing support for .spr files

    Exactol committed Aug 31, 2018
    .spr files are identical to vmt files, except are used for sprites.
Commits on Aug 22, 2018
  1. Fixed crash relating to deleting a preset with a custom process

    Exactol committed Aug 22, 2018
    The source of the crash was UpdateOrder was being called when the CurrentPreset was null before it got switched to the next preset.
Commits on Aug 21, 2018
  1. Changed Custom program expert parameters to not be quote enclosed. Ch…

    Exactol committed Aug 21, 2018
    …anged how Custom program arguments, stdout and stderr are handled.
    
    The expert parameter substitution is no longer quoted. For example, $bspdir$file.bsp used to result in "programpath""map".bsp. This change means that "$bspdir$file.bsp" will result in "programpath\map.bsp"
    
    Custom programs used to send their filename as the first argument, but this was incorrect behavior for almost all programs except python. The filepath has been removed as the first argument, and a special exception for python has been added.
    
    Changed output reading to use events, so StdError can be read too.
Commits on Jul 31, 2018
  1. Added packing support for .ani files, include parameter fixes

    Exactol committed Jul 31, 2018
    Fixed include include and exclude filepaths failing to pack when they contained -
    Fixed include generating the wrong internal path when the files were in the custom folder.
Commits on Jul 30, 2018
Commits on Jul 28, 2018
  1. Fixed filenames containing { or } not packing

    Exactol committed Jul 28, 2018
    Works on the assumption that all entities with curly brackets will be followed by a newline. As far as I'm aware, this is always true, so if the next char isnt a newline, it can be assumed that its part of a filename.
    
    Removed an old TODO comment
Commits on Jul 27, 2018
  1. Added packing for models referenced by the $includemodel qc command

    Exactol committed Jul 27, 2018
    Changed the findMdlMaterials function into findMdlMaterialsAndModels to avoid reading the mdl twice. Returns a tuple, first value is a list of materials, second is a list of models.
  2. Added hint to empty file textboxes

    Exactol committed Jul 27, 2018
    Got some feedback that the file inputs weren't obvious, so I added a hint (Mahapps watermark).
  3. Added packing support for env_funnel, env_beverage, and item_sodacan

    Exactol committed Jul 27, 2018
    These ents required a hardcoded path to their material/models.
  4. Added exclude File to Utilities

    Exactol committed Jul 27, 2018
    Can now ignore particle files when generating a particle manifest.
    
    Added new config property, ValueIsFolder and Value2IsFolder. Instead of opening file browser dialog it opens the folder browser (currently using the winforms folder browser which sucks, probably should find a nuget package for a better one).
    
    Added FileInput controls to Exclude File and Exclude Directory.
  5. Added new FileInput control

    Exactol committed Jul 27, 2018
    The FileInput control is a textbox with a button that opens the file browser. This was originally a part of the Custom Program screen, but it's now separate and can be used anywhere.
    
    Added FileInput controls to Include and Exclude parameters.
    
    Added new properties to ConfigItem, ValueIsFile and Value2IsFile.
    If these values are true, it will replace the value textbox with a FileInput control
    
    Removed debug console logging in Include and Exclude parameters.
Commits on Jul 26, 2018
  1. Added Include and Exclude to packing

    Exactol committed Jul 26, 2018
    Can now include or exclude specific files in the pack step.
    
    Including a file will search for that file's dependencies, which I'm not sure should be default behavior.
    
    Fixed a glitch with paramters that could be added more than once where it would be linked to another paramter.
    
    Some small refactorings
Commits on Jun 30, 2018
  1. Fixed crash related to reordering custom programs

    Exactol committed Jun 30, 2018
    Turns out the crash is related to overriding the GetHashCode function. The GetHashCode function was never used, so it can be safely removed.
Commits on Jun 28, 2018
  1. Added preset persistance for custom programs

    Exactol committed Jun 28, 2018
    Custom program paths, arguments, read output toggle, and order will now persist between compile pal sessions.
    
    Custom order is now being stored in warning instead of parameter so it would play nice with the existing system for initializing presets.
Commits on Jun 25, 2018
  1. Added file browser for custom programs

    Exactol committed Jun 25, 2018
    Users can now browse for their programs instead of pasting it into the textbox
Commits on Jun 24, 2018
  1. Added detection for m_SoundName properties

    Exactol committed Jun 24, 2018
    This should allow point_tesla sound effects to pack properly
Commits on May 24, 2018
Commits on May 23, 2018
  1. Clarified which processes can be reordered in the order UI

    Exactol committed May 23, 2018
    Added new property to CompileProcess, IsDraggable, to determine what can be dragged
    Undraggable processes get a greyed out background on the order UI screen.
    Draggable processes get a drag indicator icon on the order UI screen.
Commits on May 22, 2018
  1. Fixed incorrect custom ordering when more than 2 custom programs were…

    Exactol committed May 22, 2018
    … present
    
    Simplified setting ordering to use events instead of searching through the list of all programs.
    Set custom program CustomOrder if it is larger than the list of all active steps
Commits on May 20, 2018
  1. add exactol to developers

    ruarai committed May 20, 2018
Commits on May 15, 2018
  1. Fixed glitchiness when reordering 2 custom programs

    Exactol committed May 15, 2018
    Disabling ExchangeRows when the left mouse button is unclicked seems to have fixed it. Some RowSwitching events have been added, which I plan on using to update the item order more efficiently.
Commits on May 11, 2018
  1. Forgotten Curly Bracket

    Exactol committed May 11, 2018
    One curly bracket didn't get pushed for some reason
  2. Added custom programs and the ability to reorder build steps

    Exactol committed May 11, 2018
    Added a new Custom Process which holds a list of all custom programs for it's preset.
    
    Added CustomProgram:
    User specified programs that take a path, args, and bool whether to read output
    
    Added new screen for custom programs:
    First screen has fields for adding program paths and arguments. Also has a checkbox for reading output.
    Second screen has a list of all active build steps and lets users drag custom build steps to reorder them.
    
    Changes to ConfigItem:
    ConfigItem now has 2 new value, ReadOutput: bool, and Value2: string.
    
    OrderManager:
    All ordering is handled through the static OrderManager class. The class creates a list of all the default build steps, then inserts custom programs depending on their CustomOrder field. Also detects when the order is changed by detecting when the collection changes.
    
    RowDragHelper:
    New class that handles all of the row drag operations. Works by swapping the dragged item and the item below the mouse.
    
    Things that still are incomplete:
    Persistance: Order and custom programs are not preserved on closing
    Changing color of non custom programs in the reorder screen to signify that they cannot be reordered
    Maybe add ability for users to reorder all build steps? (not really sure what the use of this would be)
    
    Known bugs:
    Some programs don't have their output read
    Ordering gets glitchy when ordering one custom program before another custom program. This is because the order of the program that gets displaced is not updated
    
    other unknown bugs. These are some pretty big changes, so I'm expecting atleast a few bugs to pop up.