How can I make a fake name when I use command blocks?

Solution 1:

no, don't use /tellraw, this prints out the raw product rather than running the command inside the quote. If you use /say or /tell then type something like, "welcome @p to my secret lair" it will come out as, "welcome [name of nearest player] to my secret lair". Command is below:

/tell @p "hello there @p, welcome to my lair"

Solution 2:

You can try to rename the Command Block in an Anvil so it says [your imanginary character] in the Name. Then, just use /say on the renamed Command Block and it should do what you asked.