People seem to have a lot of trouble with startup scripts these days, probably because so many desktops are purely graphical now. *grumbles about kids on his lawn*
Anyway, just to be clear. A startup script is optional. You don't need it to run your game, and you can easily write your own if the supplied one doesn't work. They only do two things.
1) They pass a bunch of arguments to the game driver that would be a PITA to remember and type every time, and
2) They usually have a loop to bring the game back up when it crashes, because DikuMUD style games have a long history of being very poorly coded, and crashing far more often than they should.
Here's a very simple bash script:
while [ -x ./mud ]; do
if [ $? = 42 ]; then
The name of your game driver here is "mud", and it's in the current directory, which is "./". "$?" is a magic bash variable to get the last command's exit status. So, this script says:
while the game executable is present,
run the game with whatever options
if the game exits with a special status, exit the script
otherwise, it crashed so sleep a minute and do it again
So if you coded your game driver to exit with status 42 when you did a shutdown, and some other status when you reboot or it crashes... all the script does is loop until you intentionally shut it down.
In the case of some Dikurivatives, you have to start the game in the "area" directory instead of any other, so you could add a "cd /path/to/mud/areadir" right before running the mud, and change the "./" to wherever your executable is, probably "/path/to/mud/src/".