Perhaps the easiest argument is given here, in Lemmas 1.1 and 1.2. The argument for $\kappa = \omega$ is due to Koszmider and I give a generalization.
Like the classical construction, we get a system of functions $\{ f_\alpha : \alpha < \omega_1 \}$ such that $f_\alpha : \alpha \to \omega$, and any two disagree on only a finite set. But now we only get finite-to-one functions instead of one-to-one functions. It is still immediate that there is no branch by a pigeonhole argument. The advantages are (a) the construction can be done much less "care," and (b) it continues upward to produce "forests" on higher cardinals in a way that the classical construction cannot.
A few interesting questions were raised in writing my paper that I could not answer. The first one is whether it is consistent that such forests do not exist on $\aleph_\omega$. Koszmider uses $\square_{\aleph_{\omega}}$ and $\aleph_\omega^\omega = \aleph_{\omega+1}$ to continue at that stage. But instead of $\square_{\aleph_{\omega}}$ he really just uses a "Jensen matrix" which is known to be much weaker than $\square_{\aleph_{\omega}}$.