Is it ok to create additional column for helping other column to be a PK?
If I understood you correctly, you have two sorts of entities to manage:


Players (human beings that participate in your game)
Characters (fictional entities that the players use/manipulate in your game)


Once you look at your problem like that, you could model it easily like this:


players table, with a player_id as PK and information about your real users
characters table, with a character_id as PK and information about those game entities
A relation table to map characters to their owners.


(From a practical point of view, the relation table might be extraneous - you could store the owner as a column in the characters table .)

This allows you to use identity columns or sequences for both player and character IDs, and you don't have to worry about tricky triggers for inserts.