Running MUSHclient using Wine on OS/X

Posted by Nick Gammon on Fri 03 Jun 2011 05:07 AM — 6 posts, 40,186 views.

Australia Forum Administrator #0
As suggested by Fiendish, it is possible to run MUSHclient under OS/X without needing to use an emulation program like VMware, or Parallels.

Requirements:

  • A Mac with an Intel CPU (All new Macs use Intel CPUs). Older PPC or 68k Macs cannot use Wine. Sorry.
  • X11 (this is already installed by default on Snow Leopard and Leopard. If you are running Tiger, you can install X11 from your Tiger installation DVD using the "Optional Installs.mpkg" file.)


Installation


Simply download and install Wine, currently the latest version is available here:

http://darwine.good-day.net/Wine_1.2.2.dmg

After you open that file you should see something like this:



Drag the Wine application to your Applications folder.

Then you should be able to double-click the MUSHclient installer to have it installed into a "Wine Files" folder in your Home directory.

After installation, you should be able to run MUSHclient in the usual way. Here is a screenshot showing my local SmaugFuss server, including the mapper:



You probably want to get a better font in the Output window, like "Bitstream Vera Sans Mono" 10 point.
Amended on Fri 03 Jun 2011 05:10 AM by Nick Gammon
USA Global Moderator #1
The darwine binary download server seems to have died. I have a copy of their .dmg file hosted at
http://aardwolfclientpackage.googlecode.com/files/Wine_1.2.2.dmg

Keep in mind that 1.2.2 is a rather old version of Wine by now, and so there will be many bugs that have no doubt been fixed in newer versions. But it's hard to find precompiled binaries for Mac OS that one can use as easily as this one.
Amended on Fri 16 Mar 2012 11:31 PM by Fiendish
#2
I've had great success running MUSHclient with Homebrew's wine packages.

Currently running 1.7.22. The only hitch is that it periodically pegs my CPU at 100% and requires killing/restarting MUSHclient.
USA Global Moderator #3
http://winebottler.kronenberg.org/ also seems to be updating again, which is great.
Australia Forum Administrator #4
Gtaylor said:

The only hitch is that it periodically pegs my CPU at 100% and requires killing/restarting MUSHclient.


You possibly have a runaway script. I normally run with this timer installed (if you use Lua).


<timers>
  <timer 
  name="runaway" 
  enabled="y" 
  second="5.00" 
  send_to="12"
  active_closed="y"
>
  <send>

runaway_instruction_limit = 1000000

function hook ()
  debug.sethook (hook, "", runaway_instruction_limit)
  error ("Runaway instruction limit reached")
end -- hook

debug.sethook (hook, "", runaway_instruction_limit)

</send>

  </timer>
</timers>


Template:pasting
For advice on how to copy the above, and paste it into MUSHclient, please see Pasting XML.


That breaks you out of a CPU loop in a Lua script, if more than the limit of instructions is executed (1000000 above, but you can change that).

After installing the above, example of use:


while true do end


Results (almost immediately):


Run-time error
World: smaug
Immediate execution
[string "Timer: runaway"]:5: Runaway instruction limit reached
stack traceback:
        [C]: in function 'error'
        [string "Timer: runaway"]:5: in function <[string "Timer: runaway"]:3>
        [string "Command line"]:1: in main chunk



Since the timer fires every 5 seconds it resets the limit, so that it starts back at zero. (Otherwise you would eventually hit the limit anyway).
#5
Thanks, Nick. I can give that a try. The only thing I've got is a timer that sends IDLE to the world every 60 seconds, so I'm not sure that would cause an infinite loop.