I have found that most cron vs command line problems are caused by enviroment.
Assuming you setup most of your enviroment using your .profile in your home dir - then I'd suggest using a small shell wrapper script to run the perl - and enter that into cron.
The script would read something like:
#!/bin/ksh
# Read in enviroment
. /home/user/.profile
# Run Perl script
exec /path/script -options
Then simply run this script from crontab.
Hope this helps :).
game(Wookie,opponent) eq 'Wookie' ? undef $problem : remove_limbs(arms,opponent);