Skip to content

Compile Pal V029

Latest

Choose a tag to compare

@Exactol Exactol released this 23 Nov 18:58
· 13 commits to master since this release

Breaking Changes

Drop support for Windows 7

While Compile Pal should continue to work, a warning will be displayed and certain features may not work as expected. Known issues include not being able to automatically check for updates

Preset file format

Presets are now saved in a single meta.json file instead of multiple CSV files. Presets created on older versions of Compile Pal will be converted to the new format on load. The old format is now deprecated and support may be removed in a future update.

Features

UI

Output window now uses a fixed width font (Cascadia Code) when available (#205)

image

Added Settings window

image

Improved visibility of the map list expander and made it easier to click (#168)
Map list height is persisted after reopening the window (#168)

General

Improve GameInfo.txt parsing (#224)
Improved error message when reading compressed BSPs
Added link to compiled map at end of compile log
All KV parsing now uses the ValveKeyValue library

Packing

Added support for packing:

  • TF2 TC round overview files (#198)
  • SetCountdownImage I/O referenced materials (#198)
  • Momentum Mod/Strata PBR textures
  • point_worldtext fonts
  • skybox_swapper sky materials by @bottiger1 in #207
  • $portalmasktexture and $portalcolortexture (#214)
  • TF2 upgrade files by @Brain-dawg in #216
  • color_correction_volume textures by @Brain-dawg in #216
  • func_dustcloud textures by @Brain-dawg in #216
  • func_dustmote textures by @Brain-dawg in #216
  • VScript precached sounds and models
  • CSC:S radar materials (#259)
  • mvm-specific mvm_level_sound_tweaks.txt file for MvM maps @Brain-dawg in #269
  • trigger_particle and tf_generic_bomb particles by @Brain-dawg in #269
  • PlayVORed/PlayVOBlue sounds by @Brain-dawg in #269
  • SetOverlayMaterial I/O referenced materials by @Brain-dawg in #269
  • SetCustomModel/SetCustomModelWithClassAnimations I/O referenced models by @Brain-dawg in #269
  • materials with fallback shaders (#259)

Added comment hints for packing VScript dependencies that can't be automatically resolved. For more information, see VScript Packing Hints

// !CompilePal::IncludeFile(internal_path: str)
// !CompilePal::IncludeDirectory(internal_path: str)

Added support for packing assets referenced in VScript RunScriptCode I/O @Brain-dawg in #269

  • IncludeScript/DoIncludeScript
  • SetSkyboxTexture
  • SetScriptOverlayMaterial
  • EmitSound/EmitSoundEx/EmitAmbientSoundOn
  • All SetModel related functions
  • DispatchParticleEffect

Error logging for invalid strings in VScript I/O @Brain-dawg in #269

Added No .sw.vtx parameter to Pack by @Brain-dawg in #216

  • Skips packing unused .sw.vtx files to save filesize

Added Add Source Directory parameter to Pack (#208)

  • Allows you to specify additional source directories to search when looking for content to pack, supports glob patterns

Add -renameparticlemanifest by @RealBerke in #283

  • Renames maps/mapname_particles.txt to particles.txt. Allows the particle manifest to be found even if the map name doesn't match, similar to embed.nav for NAV files

VRAD

Added -dumppropmaps VRAD param (2013 MP only) by @SirYodaJedi in #217

Added Normal Priority parameter to VBSP, VVIS, and VRAD for running with normal process priority

  • Normally these processes are run with a below normal priority to prevent them from freezing your computer when they run, but sometimes this can sometimes cause slow compiles for processors with E-Cores

Added -noextra VRAD parameter

Clean up some VRAD command descriptions by @SirYodaJedi in #231

VVIS

Added Normal Priority parameter to VBSP, VVIS, and VRAD for running with normal process priority

VBSP

Added Normal Priority parameter to VBSP, VVIS, and VRAD for running with normal process priority

Add -nodrawtriggers to VBSP by @SirYodaJedi in #231

Added -allowdynamicpropsasstatic parameter to GMod VBSP (#253)

Cubemaps

Added Iterations parameter to Cubemaps step (#185)

Plugins

Added WorkingDirectory parameter for plugins
Added support for autoloading plugins defined in GameConfig.txt

Bugfixes

General

Fixed BSP v25 (Momentum Mod/Strata) parsing (#203)
Fixed bin folder detection for Momentum Mod/Strata
Compiler working directory is now set to the bin folder (#228)

  • Fixes issue where TF2C instances would not compile correctly

Remove control characters from COMPILE_PAL_SET commands (#226)
Fixed parsing for BSPs with no entities (#246)
Fixed parsing entities with escaped quotes (#246)
Fixed parsing for VMTs with no line breaks (#237)
Disable -nosound by default in cubemap and nav processes, added parameter to reenable it
Fix crash on startup if game configuration fails to parse (#275)
Improved parsing of GameConfig files with lowercase keys (#280 )

UI

Fixed missing scrollbar in preset list (#201)
Fixed copy and pasted compile output not displaying properly in discord
Fixed active game configuration not being shown in title during/after compile

Packing

Fixed extensionless VScript files being packed without the .nut extension (#202)
Fixed packing failing if there is a command with no spaces in the parameters by @bottiger1 in #207
Fixed packing single material skyboxes by @bottiger1 in #207
Fixed regression when manually including files
Fixed issue with packing relative internal paths (#199)
Fixed entity textures failing to pack due to key value case sensitivity
Fixed crash when saving/loading custom compile steps that contained commas in their arguments
Fixed tf_logic_robot_destruction res file packing (#244)
Fixed crash related to packing worldtext $basetexture (#246)
Fixed regression packing RES file images
Fixed crash when packing a file that has already been added (#247)
Improved detection of referenced content by ignoring case when looking for keywords in vmts, soundscapes, etc (#249)
Fixed color correction files incorrectly being parsed as textures (#258)
Remove leading "materials/" from sprite materials by @bottiger1 in #260
Skip invalid vmt files by @bottiger1 in #260
Fix blend materials not being packed by @bottiger1 in #261
Added recursive search in /particles for directories by @Natanxp2 in #271
Fixed improper parsing of particles with version 5.2 by @Natanxp2 in #270
Improved packing support for models and sounds referenced by tf_logic_player_destruction
Fixed mvm level_sounds pack renaming not working correctly by @Lizard-Of-Oz in #279
Fix typo in item_teamflag packing by @CzechMate09 in #281
Improved MvM map name check to check if map name contains "mvm" instead of checking if map name starts with "mvm_" when packing MvM soundscripts by @RealBerke in #283

Cubemap

Fixed crash when building cubemaps for CS:S (#256)
Cubemap step is now run after pack step (#255)

NAV

Mark NAV step incompatible with GMod

Engineering

Migrated to .NET 10.0

New Contributors

Full Changelog: v028...v029