From: Ondrej Bilka Date: 2006-07-25T16:20:07+09:00 Subject: Re: Still looking for a Ruby MUD client? Sy Ali wrote: > Look no further! > http://jrandomhacker.info/Muby > > For the longest time, I was searching for a pure-Ruby mud client. I > even found a few which threatened to let me do Ruby scripting, but > nothing paid off. > > Until last weekend, when Martin Kihlgren emailed me in reference to my > age-old search. Actually, a few interesting projects came at me > through that thread. Apparently he had a mostly-working client that > had been on the back burner since before I started looking! > > Over the weekend I worked with it, and have resolved nearly all of my > issues and wrote decent documentation. It's been put forth as a > RubyForge project and has since had the old files and my revisions > released: > http://rubyforge.org/projects/muby > > Here's the selling-point: > *** IT ACTUALLY WORKS *** > > Yes kids, it works.. has one dependancy (ncurses), is tiny (60k!), and > has complete scripting features. > > The only outstanding annoyance is that I'm having inconsistant issues > with colour output. I only get brights. =/ > > > I'm making all kinds of fun newbie mistakes hacking around.. but it > works and it'll only get better from here. > > > Is it too late to enter into RubyQuiz #45? ;) > http://rubyquiz.com/quiz45.html I tried too write my mud client but I gave up because I cannot find way how recogtnize keystrokes at console with curses/ncurses I cannot use numpad for quickwalk(could but then would walk istead write numbers or without numlock recognize PgUp from 9) and got control chars istead colors. With SDL I could do it but I cant run it at 80*25 and I too got control chars istead colors Then I looked how it was done in tinyfugue -magic code which used termio So I used def mvprint(i,j,str) print "\33[#{i};#{j]"+str end for output and curses for input.(bad idea but colors worked). Another problem was infamous Thread#sleep -each inputed line runs in separate thread(solved by set_trace_func) And worst thing debugging with curses is almost impossible.