diff --git a/mp/src/vpc_scripts/default.vgc b/mp/src/vpc_scripts/default.vgc index f4c5bcbf..1d5f9aaf 100644 --- a/mp/src/vpc_scripts/default.vgc +++ b/mp/src/vpc_scripts/default.vgc @@ -17,8 +17,10 @@ $Games // Makes the VPC scripts work in the SDK's context $Conditional "SOURCESDK" "1" -// valve default +// valve defaults //$Include "vpc_scripts\projects.vgc" -$include "vpc_scripts\projects_ff.vgc" -$Include "vpc_scripts\groups.vgc" +//$Include "vpc_scripts\groups.vgc" + +$include "vpc_scripts\projects_ff.vgc" +$Include "vpc_scripts\groups_ff.vgc" diff --git a/mp/src/vpc_scripts/groups_ff.vgc b/mp/src/vpc_scripts/groups_ff.vgc new file mode 100644 index 00000000..a50216f5 --- /dev/null +++ b/mp/src/vpc_scripts/groups_ff.vgc @@ -0,0 +1,66 @@ +//----------------------------------------------------------------------------- +// GROUPS.VGC +// +// Group Configurations for all Source(TM) Projects +//----------------------------------------------------------------------------- + +/////////////////////// +// Group definitions // +/////////////////////// + +$Group "gamedlls" +{ + "client" + "server" +} + +$Group "game" +{ + "client" + "mathlib" + "raytrace" + "server" + "tier1" + "vgui_controls" +} + +$Group "shaders" +{ + "game_shader_dx9" +} + +$Group "everything" +{ + "captioncompiler" + "client" + "fgdlib" + "game_shader_dx9" + "glview" + "height2normal" + "mathlib" + "motionmapper" + "phonemeextractor" + "raytrace" + "qc_eyes" + "server" + "serverplugin_empty" + "tgadiff" + "tier1" + "vbsp" + "vgui_controls" + "vice" + "vrad_dll" + "vrad_launcher" + "vtf2tga" + "vtfdiff" + "vvis_dll" + "vvis_launcher" +} + +$Group "dedicated" +{ + "mathlib" + "server" + "tier1" +} + diff --git a/vpc-notes.md b/vpc-notes.md new file mode 100644 index 00000000..657e470f --- /dev/null +++ b/vpc-notes.md @@ -0,0 +1,19 @@ +# VPC notes + +## loading order +default.vgc is always loaded first. this sucks and isnt super ideal +but its easy to change. + +default.vgc defines game strings you can pass to vpc 'vpc /gamestr' to +pick which conditional gets set. +default.vgc loads groups and projects (all) + +gotcha: VPC seems to ignore VPCs not in a group (thus no sln), +even when in a project unless you force generate them.. + +## adding new junk that you want to generate projects for +1. create your custom vpc +2. (Optional) add the vpc $Project to a group in your group file (see default.vgc) +3. run 'vpc +ProjectName' to make it spit out vcxprojs. if it cant find your +'ProjectName', you may need to add the vpc to your project file in default.vgc. +4. if you want to create a solution for a group (or single project for some wacky reason) pass '/mksln ' to vpc