For custom button's I would recommend using the following formatting in order to better sort and understand what is being passed. This is an example for a new case:
/500/e?
retURL={!Case.Id}
&RecordType=012600000005Iko
&ent=Case
&cas4={!Case.Account}
&cas4_lkid={!Case.AccountId}
The other thing to make sure is that you do not have any spaces in your URL code.
As a follow-up to the comment below I created this JS button and it seems to work (just POC):
{!REQUIRESCRIPT("/soap/ajax/30.0/connection.js")}
var Status = '{!Case.Status}';
if(Status == "New") {window.location = "/500/e?retURL={!Case.Id}&RecordType=012C0000000I8IL&ent=Case"}
else if(Status == "Closed") {window.location = "/500/e?retURL={!Case.Id}&RecordType=012C0000000I8IL&ent=Case"}
I would check to make sure you need those %2f forward slashes in the URL.