I think the trick for me was realizing there were two functions- first, the discounted value of the call starting from the terminal end point ( t=3). This gives you the expected value of a call from the up case and the down case. Same as for European call.
Except you can also exercise the call at time 2. So look at your current price at time 2. Subtract the strike price, and there’s your payoff.
Now you have two numbers, the discounted expected value of the call exercised at t3 under the risk neutral measure and the payoff if you exercise right now.
We are all greedy bastards in finance, so as greedy bastards, a natural question is - which is bigger? First value, discounted expected payoffs under RN, or second value, pulling the trigger right now?
So t2 value is max of either pull trigger now, or wait. Fix that guy as your T2 value for the “up” case. Now go and do the same for the T2 “down” case. Keep going back until you get to time zero.
Does that help?