This is tricky and I always invented a new way to output it in each project.
Googling you can find some alternatives
I found this by myself
<jugador id="{@id}"><xsl:text disable-output-escaping="yes"><![CDATA[<![CDATA]]></xsl:text>[<xsl:value select="player"/><xsl:text>]</xsl:text><xsl:text disable-output-escaping="yes">]></xsl:text></jugador>
To obtain resulting XMLs like
<jugador id="51284393263"><![CDATA[Krankl]]></jugador>
I was shure that you can organize a contest of XSLT hacks to get this same result in a lot of simpler ways.
But the real solution, the KISS (Keep it simple stupid) solution is...
Put in your <xsl:output section cdata-section-elements="name of the element to be cdata escaped"
Example:
<xsl:output indent="yes" method="xml" cdata-section-elements="jugador"/>
Then if you have an xslt piece like:
<jugador id="{@id}"><xsl:value-of select="player"></xsl:value-of>
You will have the desired resulting XML, that is:
<jugador id="51284393263"><![CDATA[Krankl]]></jugador>
Automagically !
PD: Thanks to Michael Key for his great books:

Aqui en Michael Kay, quan encara estava conservat (XSLT 1.1)
friky foto

Michael Kay (alias Gandalf) molt més machacat (XSLT 2.0), aguantarà la versio 3.0 ???
friky foto