our @ISA = ("Race", "Class"); #### package HollyGame::Entity; out @ISA = ("Race", "Class"); sub new { my ($class) = @_; $self = { ### positions and stuff }; bless $self, ref($class) || $class; }; #### package HollyGame::ElfRanger; out @ISA = ("Elf", "Ranger"); sub new { my ($class) = @_; $self = { ### more or less stuff }; }; #### package Mod::Module; sub new { my $class = shift; $self = { tobechangedname => "value", } ### to change the tobechangedname at compile and runtime bless $self, ref($class) || $class; }