Sometimes things go wrong, and you’ll get the “Sorry! The code lost its mind while executing a command…” message or the Sad Picard screen on the web portal. This article will help you diagnose the problem.
If the information below doesn’t help you, you can always ask for help on the Ares Forums.
Table of Contents
The first place to check is the game log. Most errors will add an entry in the log file telling exactly what the problem is. You have several options for checking the log:
aresmush/game/logsdirectory. You can use a unix terminal text editor like nano to open them, or FTP them to your PC.
debuglogcommand will show you only the most recent log entries.
Once you have the log file open, search for
ERROR. You’ll see some code stuff that may look like gibberish:
2018-02-20 04:21:39 ERROR - Error in Web Request: client= error=private method `select' called for nil:NilClass backtrace=[ "/home/ares/aresmush/plugins/arescentral/web/get_players_handler.rb:13:in `block in handle'", "/home/ares/.rvm/gems/ruby-2.4.1/gems/ohm-3.0.3/lib/ohm.rb:123:in `block (2 levels) in each'", "/home/ares/aresmush/plugins/arescentral/web/get_players_handler.rb:11:in `handle'", "/home/ares/aresmush/engine/aresmush/commands/dispatcher.rb:125:in `block (2 levels) in on_web_request'", "/home/ares/aresmush/engine/aresmush/commands/dispatcher.rb:119:in `each'"]
The configuration files use YAML, and there are several common issues that can result from trouble with your game configuration. Often you’ll see an error message like “Error reading YAML from fs3combat.yml…”, but any error that happens right after you changed your game configuration should make you suspect a YAML problem. See Troubleshooting YAML for more details.
Sometimes you’ll see an error in the logs like “Couldn’t start the game: error=no acceptor (port is in use or requires root privileges)”. This usually means:
Sometimes you’ll get a ‘connection refused’ error in your MU client or a ‘This site can’t be reached’ error in your web browser. When this happens, there are a few things to check:
bin/devstartinstead of startares. This will run until you hit CTRL-C, and you will see log messages live on your screen.
If your game can’t connect to the database you’ll see an error like: “Error connecting to database. Check your database configuration.” Here are a few things to try:
service redis-server status.
Having multiple copies of the game running on different ports with the same database can cause some really wacky effects. This is not a normal configuration, but some people do it accidentally or intentionally while testing. If you’re getting weird errors and think you may have done this, check to see if you’ve got multiple copies of the game running. Use
ps -aux | grep ares on the server shell and look for multiple entries with ‘startares’ or ‘devstart’. For example:
ares 27590 0.0 5.5 1373916 113564 ? Sl Jan14 2:12 /home/ares/.rvm/rubies/ruby-2.5.1/bin/rake startares
If you get a ‘page not found’ error for your web portal, here are some things to check:
service nginx status.
/var/www/html. You should see index.html and other files there.
server.yml. In nginx, this site configuration should be in
Sometimes you’ll get a Sad Picard message saying the web portal can’t connect to the game.
Make sure there’s a symbolic link from your web portal directory to your game directory. If you do
ls -l in your
/var/www/html directory, you should see an entry like this:
ares ares 24 Apr 2 01:01 game -> /home/ares/aresmush/game
If you get a warning saying “The website is not receiving live updates from the game”, it means that the websocket connection allowing real-time updates between the web page and the game isn’t working. Regular page requests will be fine, but ‘live’ updates like scene poses or alerts about new mail messages won’t come through.
If you are using HTTPS for your web portal, a common reason for getting “The website is not receiving live updates from the game” is that your security certificate has expired. If this happens, you will see a
ERR_CERT_DATE_INVALID in the browser developer tools.
Shutting down and restarting the game engine usually fixes this. If not, just go to the aresmush directory and re-run
bin/certs <your domain name>.
For tricky issues - especially during development - it can be helpful to run the game in Debug Mode.
The web portal will always warn you: “Could not start watchman”.
It doesn’t matter. It’s a stupid ember thing.