Iron Tower Code Reviews
Iron Tower Press Local network only
Reviewer manual, version 0.2.2
Two PCs in one room, each with a headset and a cable to the same router, on one subnet. One microphone sits between them, plugged into the host PC. The internet sits outside the room, struck through.
Two PCs in one room, on one router and one subnet. The internet sits outside the picture.

FAQ: all ten questions

Each Got stuck? page shows the questions that fit its step. Here they all are, Q1 to Q10, with the same labels.

  1. Q1

    Was it installed through Steam, or run from a copied folder?

    How to tell: The top-right corner shows this PC's Steam user name only when Steam started the app. A copy started any other way reads "Steam not running", even with Steam open.

    What to do: Please install and start it from the Steam library on both PCs. Only the names change without Steam; the real difference is the firewall. Steam's install adds an allow rule named "CO-OP Comms" for the program in the Steam folder, and a copy run from another folder gets the Windows Security Alert the first time it hosts or listens (Q7).

    On CO-OP Comms Client Only: On Client Only the corner shows the Steam name only when Steam started it; otherwise it reads "Steam not running". Its Windows prompt names it "CO-OP Comms Client Only".

  2. Q2

    Which app is on this PC: CO-OP Comms, or the free CO-OP Comms Client Only?

    How to tell: CO-OP Comms hosts and joins: its start screen has a Host button ("This PC has the mic") and a picker "Microphone, if this PC hosts". Client Only joins only and has neither.

    What to do: The PC with the microphone runs CO-OP Comms and presses Host. The other PC runs either app and joins. Two copies of Client Only cannot talk to each other: one PC must host.

    On CO-OP Comms Client Only: Client Only's title reads "CO-OP Comms Client Only". It has no Host button and no Microphone picker, and it opens on "Hosts on this network". Please run CO-OP Comms on the PC with the microphone and press Host there; two copies of Client Only never hear each other.

  3. Q3

    Is a headset plugged into each PC, and the one microphone into the host PC?

    How to tell: With no microphone, the host's Microphone picker reads "No microphone found. Plug one in to host." With no headset or speakers, the Headset picker reads "No headset or speakers found. Plug one in." The host PC needs a headset too: it plays the microphone in its own headset, and without one Host stops with the red banner "Could not open the output device: … (is a headset or speakers plugged in and turned on?)" The lists are read when the app opens and again after every Leave.

    What to do: Please plug the device in, then close and reopen the app, or press Leave once. If the host links but an amber line reads "The mic is sending pure silence. In Settings › Privacy & security › Microphone, let desktop apps use the microphone.", turn that setting on. The joining PC needs no microphone. If the voice feels late, please try a wired headset: a wireless one adds its own delay.

    On CO-OP Comms Client Only: Client Only needs no microphone, only a headset or speakers. With none, its Headset picker reads "No headset or speakers found. Plug one in."

    The host PC: no microphone found
    Q3The host PC: no microphone found
    The host PC: the mic is sending pure silence
    Q3The host PC: the mic is sending pure silence
    No headset or speakers found
    Q3No headset or speakers foundCO-OP Comms Client Only
    The headset stopped
    Q3The headset stoppedCO-OP Comms Client Only
  4. Q4

    Is either PC a virtual machine?

    How to tell: The app cannot tell that it runs in a VM. A VM on NAT, the default in most VM software, sits behind its own host PC's address on a subnet of its own: the host list cannot see across it, and nothing outside can reach it to join. A VM's sound comes from its virtual sound card.

    What to do: Please use two real PCs on one router or switch. If a VM must be used, set its network to bridged, so it gets an address on the same subnet as the other PC (Q6), and check that its Headset and Microphone pickers list real devices. We have not tested CO-OP Comms in a VM.

  5. Q5

    Is either PC reached by remote desktop, a cloud PC or a VPN?

    How to tell: The network is where the PC is, not where you are. Over remote desktop the app runs on the far PC, on its network, and its sound goes through the remote-desktop program's "Remote Audio" devices. The list of hosts does not reach a PC over a VPN, and many cloud networks do not pass it either.

    What to do: Please sit at both PCs, on the same subnet of one home or office network: no online service, made for the local network only. We have not tested it over remote desktop, a cloud PC or a VPN.

  6. Q6

    Are both PCs on the same subnet, and able to reach each other?

    How to tell: CO-OP Comms is made for two PCs on the same subnet of one local network. The list of hosts stays on the local network: it reaches every PC on the same subnet (PCs plugged into the same router or switch), it never goes out to the WAN (the internet), and it does not pass between two separate subnets in one building. Compare the two addresses: each PC shows its own under This PC on its start screen. On most home and office networks, PCs on one subnet have addresses whose first three numbers match, such as 192.168.1.160 and 192.168.1.21; 192.168.1.160 and 192.168.5.40 are on different subnets. Matching numbers are not proof. Guest Wi-Fi, Wi-Fi that keeps devices apart ("AP isolation" or "client isolation"), separate VLANs, a DMZ, or a test lab that isolates each machine look the same in the numbers and still keep the PCs apart. The signs are in the windows: the host is hosting, but the joining PC's list stays empty after 10 seconds, and a typed address gets "No answer from …" after 8 seconds. On Wi-Fi, once linked, a grey line reads "This PC is on Wi-Fi. CO-OP Comms is made for wired Ethernet; over Wi-Fi, expect more delay and gaps in the sound."

    What to do: Please plug both PCs into the same router or switch with a cable, on the main network, not a guest network. On a managed or test network, please ask your IT staff: "These two PCs need to reach each other directly on one local network: the same subnet, with no client isolation or firewall between them, and UDP ports 47800 and 47801 allowed both ways. Can you please put them there?" The rule: the list finds hosts on the same subnet only; typing the host PC's address is tried for any address, private or public, on another subnet too. It links when the network between the PCs lets UDP port 47800 through both ways; machines kept apart still will not connect. We test one subnet, and have not yet tried a typed join across a router.

    On CO-OP Comms Client Only: Client Only has no "This PC" line. Its own address shows in the Network picker, such as "Ethernet · 192.168.1.21". Read the host's address from the host's "This PC" line.

  7. Q7

    Was the Windows firewall prompt answered Deny, or closed without an answer?

    How to tell: Either one adds Block rules for the program, and a Block rule wins over every Allow rule, Steam's included. The host then hears no joins: the joining PC shows "No answer from …" after 8 seconds, and the host stays on "No guest yet".

    What to do: Please open Windows Security › Firewall & network protection › Advanced settings › Inbound Rules. Delete the Block rules naming roomMicApp.exe. Start CO-OP Comms, press Host, and answer the prompt Allow with Private networks ticked. If the network is set to Public, set it to Private in Settings › Network & internet › Ethernet (or Wi-Fi) › Network profile type, or allow the app on Public too.

    On CO-OP Comms Client Only: On the Client Only PC, please delete the Block rules that name roomMicClient.exe. Client Only receives the sound on UDP 47800 and the host list on UDP 47801, so a Block rule there stops both.

  8. Q8

    Is a second copy already running on this PC?

    How to tell: Pressing Host or Join shows the red banner "UDP port 47800 is in use by another program, perhaps a second copy of CO-OP Comms, and two copies cannot share it on one PC. Close the other one, then try again." CO-OP Comms and Client Only count as two copies.

    What to do: Close the other copy; look in Task Manager for roomMicApp.exe. Each PC runs one copy, and one PC cannot be both host and joiner, so this test needs two PCs.

    On CO-OP Comms Client Only: In Task Manager, please look for roomMicClient.exe as well as roomMicApp.exe.

    The host PC: UDP port 47800 is in use
    Q8The host PC: UDP port 47800 is in use
    UDP port 47800 is in use
    Q8UDP port 47800 is in useCO-OP Comms Client Only
  9. Q9

    Is Steam not running?

    How to tell: The top-right corner reads "Steam not running".

    What to do: Nothing breaks: every copy hosts and joins with Steam open or closed. Steam only supplies the user names. Without Steam on the host PC, the list shows the host PC's Windows computer name instead; without Steam on the joining PC, the host shows "Sending to joining PC's address" instead of the joining PC's Steam user name. Start CO-OP Comms from the Steam library if the Steam user names should show.

    Words shaded like this stand for what your own screen shows there, such as your own user name or address.

    On CO-OP Comms Client Only: On Client Only the corner reads "Steam not running" in place of your Steam user name, and the host names this PC by its address (Q1).

    The joining PC started without Steam: the corner reads "Steam not running"
    Q9The joining PC started without Steam: the corner reads "Steam not running"CO-OP Comms
    Show it in CO-OP Comms Client Only
  10. Q10

    Are both PCs on version 0.2.2?

    How to tell: Only 0.2.2 shows JOINING while it waits for the host, and the timed warnings these steps quote. 0.2.1 shows JOINED at once.

    What to do: Let Steam update both PCs. Mixed versions still link, since the packet format did not change.

    On CO-OP Comms Client Only: Client Only 0.2.1 also shows JOINED at once, with none of the timed warnings.

Click anywhere or press Escape to close