Testing Portal 2 Co-Op Maps Alone

Category:Portal 2 Level Design
This is a guide on how you can test co-op maps alone utilizing the splitscreen capabilities of the Source engine. This also works for any existing coop maps. It does not require any modifications to the map file itself.
This does not cover the requirements for making a coop level in the first place.
==Loading the Map==
; ss_map mapname
: Load mapname in splitscreen 2-player mode. Analogous to map in singleplayer. Like map, it is not required to add the trailing .bsp.
; ss_splitmode mode
: Changes the splitscreen mode.
: ss_splitmode 0: Use recommended settings based on width
: ss_splitmode 1: Top-and-bottom split
: ss_splitmode 2: Side-by-side split
If your map is stuck at the loading screen, try to shorten the VMF filename and recompile.
===Dual Monitors===
If you run dual monitors and want to split to each monitor, follow this guide
==Controlling the Second Player==
If you could actually play the coop map entirely as one player, it wouldn't be a very cooperative map. These are some ways you can control the second player.
===in_forceuser===
; in_forceuser playerindex
: Take over the second player. All movement and other keybindings will be as if the second player used them. Requires cheats to be enabled.
: : Turn on cheats
: in_forceuser 0: Control player #1 (Atlas)
: in_forceuser 1: Control player #2 (P-Body)
To make this easy to use, set a keybinding for it:
; BindToggle "z" in_forceuser
: Swaps you between first and second player when you push "z".
===Use a Controller===
This is actually more complicated than it sounds unless you have two controllers available. Source will map actions of the first detected controller to the first player and there doesn't seem to be any way to override this. The workaround is to either have two actual controllers or use trickery to make your computer think it has two controllers.
You can also connect one controller and enter command in_forceuser 1. Then, Atlas will be controled by controller and P-body will be controled by keyboard.
More information for this can be found on the Steam forums.
===change_portalgun_linkage===
This allows you to use the extra sets of linked portals without actually changing characters.
; change_portalgun_linkage_id integer
: Changes portals fired to belong to the specified character or team.
:: change_portalgun_linkage_id 0: Single-player
:: change_portalgun_linkage_id 1: Blue
:: change_portalgun_linkage_id 2: Orange
:: change_portalgun_linkage_id [3-9]: Extra / Reserved
== Other Useful Console Commands ==
; cmd2 command
: Executes command as if typed by the second player.
: cmd2 name Player2: Sets the name of the second player
; ss_force_primary_fullscreen enable
: Makes the first player fullscreen if enable is 1, hiding the second player's view.
: ss_pipsplit 3; ss_pipscale 1; ss_pip_bottom_offset 0; ss_pip_right_offset 0 can be used to show only the second player's view
== Alternative Way ==
Open Portal 2 and go to the "Community Test Chambers" (PTI) tab and enter the test chamber editor. Set the gamemode to "Coop" then launch the map. After launching the map, you can follow the instructions below, without having to use in_forceuser. Instead by default, you can press R that triggers swap_ss_input until restarting Portal 2.
== External Links ==
* Original version of this guide hosted at ThinkingWithPortals.com
* How-to: Split Screen Coop
* How-to: SplitScreen with 2 monitors
* How-to: Play Co_Op Alone
Category:Portal 2 Level Design
Category:Portal 2 Tutorials