MU Soapbox

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Muxify
    • Mustard
    1. Home
    2. Chime
    3. Posts
    • Profile
    • Following 7
    • Followers 10
    • Topics 16
    • Posts 263
    • Best 126
    • Controversial 0
    • Groups 2

    Posts made by Chime

    • RE: Tea!

      @Tyche said in Tea!:

      My favorite tea is coffee.

      Yessss~

      Tea is also good, but coffee is my favorite.

      My current fav is the staggeringly delicious fresh roasted Mordecofe. It is of course very seasonal, but wonderful when we can get it. Go get some! And don't you dare sully it with milk or sweeteners. This is vitae in bean form.

      That saaaid I do like tea also, generally in the afternoons, or all through the night for herbal tisanes.

      I'm particularly fond of roasted chicory root, which ends up looking exactly like (rather large) coffee grounds, and for me has an additional raisin-like scent. It goes well added to coffee (hello, New Orleans style!) as well as on its own or with various ad-hoc tea mixtures. If I'm going to do a non-caffeinated coffee, I use this stuff. Along the topic of herbal tea mix additives, I am fond of hyssop, allspice, and cloves, often in a lemongrass/rooibos mix.

      For actual tea tea I tend to go with Harney and Sons, though there are a couple small-scale tea makers I like, such as Metolius. In terms of tea-type, I'm largely a fan of Darjeelings and Oolongs. I'm not generally a fan of Earl Grey, as I find bergamot to be a bit harsh-- but Metolius has an amazing Earl Grey tea that even I can enjoy.

      @EUBanana said in Tea!:

      If we're talking flavoured teas, Whittards vanilla tea is very good, ditto their Russian caravan though thats a smoky tea like lapsang souchong so not for everybody. I could drink vanilla tea all day I think.

      My sister ordered some lapsang souchong and gagged and handed it off to me. I'm... still a bit uncertain what to think of it. It's very smoky, and is not unlike brewing a pot of scotch, with all of the good and bad that might suggest.

      Never liked green tea. Tastes like grass. 😞

      This may be somewhat an artifact of handling; I've had a variety of green teas that were marvelous, and then some others that arrived smelling like a tin of lawn clippings.

      @Auspice said in Tea!:

      I have a similar issue. Most oolongs taste like dirt/twigs to me.

      ...hm. Well, to each their own, more for me, etc., but I find this a fascinating comparison as to me various dirts and twigs have a fascinating variety of different flavors (or smells, more often).

      @WTFE said in Tea!:

      The other is a four year old "raw" tea too, but one that was fungally infected so that it ferments slowly. At four years of age it's begun to pick up the earthy taste that is the appeal of this tea. Were I a patient sort I'd keep this stored until it's at least ten years of age, but I'm not such a sort so I won't.

      That sounds deliciousss.

      1. DO NOT USE BOILING/JUST-BOILED WATER.

      I beg your pardon. I use a proper electric kettle with digital temperature control so that I can give the greens, whites, etc. the proper temperature. Boiling water blindly in an uncalibrated kettle is for peasants.

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: Arx- Gareth

      @Thenomain said in Arx- Gareth:

      I feel the same about the phrase "free you from the game". What a load of political bullshit. If you're going to throw someone off the game, don't say you're giving them anything, lest of all "the opportunity to play elsewhere". This is probably because I lived through the 80s. Hey Management, please don't say you're doing me any favors. Sheesh.

      Think of it less as passive aggressive politicalspeak and more as an ominous homage to the mobster trope.

      In a quiet, breathy voice, the Godfather explains, "You see-- these staffers-- they are like family. I love my family. Respect them, yeah? You've disrespected my family. You've disrespected my family in my house." He pauses, sighing and shaking his head. "I'm not mad at you. Disappointed, perhaps, but not mad. And we're all friends now, after what we have been through together-- so we should be happy for you." Smiling faintly, and nodding to the burly thugs scattered around the room, he explains further to the poor bastard tied up on the floor, "We're giving you an opportunity, you see. A character roster-- that you can't refuse."

      Soft chuckles break out around the room, and the Godfather gestures vaguely toward the door. "Go-- give him a set pose. Out in the harbor."

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: Humble Book Bundle

      A friend of mine is a major Ocaml/F# addict (well, did it for a living, too) and has been adapting Unity to work with F# (or vice versa, I suppose), with some promising success so far.

      posted in MU Code
      Chime
      Chime
    • RE: What Do You Collect?

      @WTFE said in What Do You Collect?:

      Sorry @Chime, @Tyche, but I win: https://www.youtube.com/watch?v=7WaYYNUCWMY

      Niiice. Love how you can hear the drum spinning up and spinning down. The big Ka-CHUNK of the relays is pretty cool too.

      In general, though, I agree with both of you:
      NO SOUL
      I like that old time front panel.

      Yep, that's a PDP-10! ...Looks like a KI10 front panel. Great machine. Sadly most of the emulators only cover the smaller KS10s as they are easier to emulate. (no need for a PDP-11 front end computer, etc)

      Remember, that's just the panel; the "computer" is in multiple racks of equipment near by.

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: What Do You Collect?

      @Miss-Demeanor said in What Do You Collect?:

      I dunno, that looks like velour. That shit was pretty warm.

      Maybe. And those machines put out a lot of heat, too-- but that is pretty clearly a raised floor area. I remember being younger and so excited about being in a datacenter and poking at all the neat old hardware. Cold and drafty often suits me quite nicely, but then I'm usually in jeans and flannel-- and those send quite a different message to most people compared to what she's wearing. The noise of datacenters though-- ugh. I usually get a headache within 2-3 hours.

      @Thenomain said in What Do You Collect?:

      I dunno. I have it from very good authority of making it up just now that @Chime doesn't wear underwear.

      o_o ... Well, not in the shower, I guess?

      @surreality said in What Do You Collect?:

      @Chime ...and those shoes need burning, quite possibly.

      Well, yes. I'm barefoot at home (well, socks, because socks are <3), and have a pair of low-top Merrell hiking shoes for most out-of-the-house stuff. If I need something tougher, well, Doc Martens. I do have some more "presentable" shoes, but most they're pretty low and flat. I do soooometimes where heels or platforms, but generally only when being silly/clubbing/etc. I admit, knee-high boots are rarely practical but they are a lot of fun. @Misadventure has seen and given me an eyeroll, heh.

      @Tyche said in What Do You Collect?:

      And while IBM did have a C compiler, it was a pain in the ass. Most publicly available C code was in ASCII, so you had to run it through a translator to EBCDIC. And then you had to make extensive use of trigraphs for all the missing braces and other punctuation that didn't exist in EBCDIC. IBM C does have one nice feature though, a native fixed decimal type!

      Trigraphs, augh. Yeah, EBCDIC is kinda a mess. I still deal with C code with EBCDIC #pragmas and so forth in it.

      Fixed decimal, hm? I've worked with a lot of processors that still had BCD operations in the CPU, though that's becoming increasingly rare, and is usually one of the first things they strip when they can. (e.g. RICOH 2A03 is a MOS 6502 with no BCD mode, and sound+dma in its place...) I can see a lot of uses for arbitrary precision decimal. Fixed tho? Reminds me of those early Apple Integer Basic "financial programs" that couldn't calculate higher than $327.67...

      There was series of terminals... 3170G?, 3192G, 3274G which had incredible graphics for the early 1980's. It had text layer and graphics layer that were merged together. The programming of the graphics layer was very similar to SVG.

      Tektronix had some amazing graphical terminals too, but sadly I've been mostly stuck on text beasts or X11.

      Take a peek at https://github.com/rbanffy/3270font if you want to see a faithful modern take on the 3270 font though... very nice.

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: What Do You Collect?

      Meanwhile, @Tyche and I will keep derailing the thread ~cackle~

      Though I look at that and think ye gods I couldn't wear that in a datacenter. Way too cold and drafty...

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: What Do You Collect?

      @Tyche said in What Do You Collect?:

      I didn't think about it as collecting, but have a ton of similar stuff from IBM mainframes that I can run on the Hercules 370/390 emulator.

      It totally is!

      I have several ancient operating systems that it can run TOS, DOS/VSE, VM/370, MVT, OS/360, MVS SP. I ran OS/390 on it when I was an IBM partner for free, but at the $14K license fee today it's a might out of reach. 😉

      Yeah, that was one of the barriers I hit on trying that stuff out. I did play with OS/360 a bit, but I didn't get very far at the time. May need to poke at that further.

      Really what I'd love to play with would be a good CDC 6600 emulator, but there's a lot less available there. Just look at those delightfully round CRTs!

      The most useful OS is MVS SP 3.8 which has the entire source code available and a bunch of now public domain compilers... ALGOL 68, COBOL, Watcom Fortran IV, RPG, XPL, PL/1, Stonybrook Pascal, Stanford BASIC. Now that I think of it, I probably collect compilers for everything. I also have got a library of CBT tapes (which was how mainframe systems programmers shared software) which have been transferred to disk. There are a handful of games on them, but one of them contains a version of Colossal Caverns that was written in Fortran for TSO/WYLBUR.

      Compilers are the heart and soul of computer science. Much like with blacksmithing, we have the rare privilege of making our own tools.

      I see the 380 stuff out there now, and will definitely give that a try.

      Someone had also developed a TCP stack for MVS SP 3.8 and one of these days I'm determined to write a mainframe mud in PL/1 or ALGOL for it. 🙂

      Most of the ITS machines (and other PDP-10's) were already TCP-aware; indeed many of them formed critical infrastructure of the early Internet. Grant you, the native net stuff was CHAOSnet, which is mostly useless these days, and all the internet connectivity was through an IMP.

      Awkwardly, ITS was a largely pre-security OS. It supports memory protection and arbitrary users, but while you :LOGIN, the default infrastructure has no concept of password. Any random thing that connects can login as whatever it wants and do whatever it wants, including circumventing memory protection. Sure things were audited to line printers, but it was a kinder, gentler internet back then.

      As a result, most of the ITS images out there are running a modified kernel that has most network support disabled for safety, which is a shame. One of these days I'll put together some properly self-hosting distribution tapes with a clean source tree and PANDA for passwords, but things are a bit of a mess right now. Even building ITS for a new machine requires fairly extensive edits; all of the hardware device config was handled by the equivalent of #ifdefs on the machine name, and it's all in MIDAS assembly language.

      And let's not forget that this was internet support pre-DNS. Want hostnames? Great. It's all in a huge hosts file that gets copied around!

      Anyway, the IBM stuff is especially interesting to me because of the 3270 terminal stuff-- those were brilliant, and I imagine MUD type games could do amazing stuff to take advantage of the form-like features there. ...not that many people here would play such a thing, sigh.

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: What Do You Collect?

      @Thenomain said in What Do You Collect?:

      Slang, current and out-dated, plus their origins if at all possible.

      Swell. Perhaps even, phat.

      @Faceless said in What Do You Collect?:

      Spores, molds, and fungus.

      Cool! Pictures or specimens? I'm more focused on mosses and lichens but these things are all interesting.

      @WTFE said in What Do You Collect?:

      Wind instruments.

      Modular analog synthesizer equipment and vintage analog synths in general, for me. Though I do have a special place in my heart for toy pianos and ocarinas. (no, not a Zelda reference. I had a character once that took ocarinas where-ever she went...)

      Hard liquors.

      I'm more focused on certain kinds of craft brew beer and rare bottles from distant lands, though none of it hangs around long as I tend to drink it. I have a de facto hard liquor collection-- not because I like it, but I suppose because I don't like it.

      Tea paraphernalia.
      Teas.

      Yes. Fair bit of coffee stuff too, though that tends to be more utilitarian.

      Microcontroller unit development boards.

      ...I'm nodding guiltily here. My desk is buried under layers of Arduinos, Pis, Xilinx dev boards, LED part reels, various power supplies half wired up, armies of prototyping boards, and a small colony of Russian Nixie tubes that I swear is self-reproducing.

      @surreality said in What Do You Collect?:

      Stories, whenever possible. (Hokey as fuck? Yes, but still true.)

      Well, if my Kindle counts... Or before that, various mountains of odd fanfiction. Reading is one of my biggest vices.

      Vintage and antique precious metal threads and embellishments for embroidery.

      I actually have metal thread! ...But it's modern, and conductive, and designed for wiring up wearable electronics. I do have 3 sewing machines though. (One modern, Pfaff, two antique, Singer) And a Pfaff serger. And an embroidery machine I've been meaning to work with; found lots of need specs on the control code formatting so that I can make computer-controlled stuff with it in fractal shapes and so on.

      Ball jointed dolls (on major long-term hiatus because so, so very broke these days).

      Those are interesting, but more my sister's thing. She used to get together with friends and shoot scenes of them having teaparties and so forth. Very elaborate, very pretty, and a good deal more complicated than I remember dolls being.

      Unfinished game wikis. (No comment.)

      Heh. Yeah, I know how that goes.

      Costume and fashion history books.

      Architecture, for me.

      @HorrorHound said in What Do You Collect?:

      Firearms and animal skulls, specifically those able to be arted up by my brother.

      Well, firearms... but they are kinda expensive so I probably won't be getting more. Also, I live in California where the laws are getting increasingly absurd, so it's just not worth the headache. I've got a Ruger GP-161 (blued 6" revolver in .357 magnum that looks straight out of the old west) and an M1A (civilian M14, with Leuopold scope). Fond memories though. It was a hobby I got into because guns were scary and I try to address fear by learning.

      @Misadventure said in What Do You Collect?:

      Roleplaying games.

      Yep. Way too many paper books, way way too many PDFs. But I do still refer back to them now and then.

      Reference books for role playing game design.

      My people~ :cephalopod fist bump:

      Steam games I won't play.

      I'm getting better about that, but yes it's a problem.

      Decks of playing cards.

      I've thrown out most of mine, finally, as they weren't all that special. I used to grab a deck when traveling, and then keep part of the airline ticket in the box with them. Ultimately it became a way to hold on to bitter memories with cheap cardboard, which seems unproductive.

      Tarot decks.

      Now that I respect a great deal more-- the art that goes into those is amazing.

      @ThatGuyThere said in What Do You Collect?:

      And while I don't really call it a collection since I mainly got them when I was working at a factory and allowed to listen to head phones on the job, so spent 40 hours a week listening to music. I have a metric crap ton of CDs, mostly punk and ska, with some other stuff thrown in.

      My music tastes are very different, but I still ended up with stacks of CDs. I finally broke down and put them into binders and threw out all the cases and papers; at this point I only need them for re-ripping to new audio formats. (I know, I know, I should have my whole collection in FLAC by now but I've been lazy)

      @Sunny said in What Do You Collect?:

      Shot glasses.

      For me, it was having been to a party event where we took shots out of STYROFOAM CUPS. This was the ultimate indignity, and I vowed never again.

      @Tyche said in What Do You Collect?:

      Mud code

      <3!

      Really I collect a lot of other sorts of old code, and I'm fond of emulation software as a means of describing obsolete hardware. Primarily for me that means computer emulators, and ideally of antique mainframe and minicomputer type things. I had a blast (hey @Thenomain there's another one) setting up SIMH for PDP-10 and going through the old MIT-ITS tape archives from their evacuation off the 36bit platform. Cultural relevance here: PDP-10 and its quirky assembly language (with MIDAS assembler) was the original home of MUDDLE and Colossal Cave adventure and so on. Infocom wrote all their text adventures on a company PDP-10 with MUDDLE and related technologies; the Z-Machine VM target they made was to ease porting off that to home systems...

      Seriously though, putting together configs to run a 1970s era machine based on a 1960s design with tape archives taken from early 1990s when they finally powered off the last of them... it was an amazing rush. I love digging though that old stuff, looking at notes left behind by various people in their homedirs and so on ranting about this and that. It's also a means of getting in touch with my roots; I'm a die-hard Emacs user, and that was the machine that gave us TECO (which is a horror), and the Editor MACroS that went along with it. Taking these ancient dusty archives, firing up EMACS and finding you basically can control everything just fine because the UI hasn't changed significantly since the late 60s is a special sort of heaven for me. Also, dropping into the #emacs channel on freenode and saying,

      <lucca> Hey guys.
      <lucca> EMACS Editor, version 162 - type Help(^_H) for help.
      

      ...and watching the boggle and ask if it was a VAX or what, that was good fun.

      Dust

      It is a war that never ceases until we lose.

      @Thenomain said in What Do You Collect?:

      That reminds me: Paraphernalia from places I used to work, sometimes as a reminder that even McDonald's would be a better job.

      I have really bad hoarder tendencies, but sometimes even I can finally bring myself to let things go. One of the first cases of this for me was when my company was cleaning out and shutting down the Tarzana office, and there were a bunch of boxes of equipment that the Boss said, "Yeah, take any of that or throw it out."

      It was like Christmas, at first-- but one box in particular shines out in my memory as the breaking point when I finally REALIZED with crystal clarity that I don't need to keep everything. I opened, peered inside, and struggled. Ultimately though, I decided that a cardboard box PACKED with VESA local bus token ring cards was not going to be a useful thing for me to keep.

      All that aside...

      In the last few years I've been collecting Tiffany style lamps and blue printed china plates. ...I'm turning into my grandmother.

      But more central to the core set of ideas about what makes me ME-- I have an increasingly large collection of octopus paraphernalia including various prints neatly framed and lots of adorable stuffed/knitted/etc octopus toys. And shirts. ❤

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: Fanbase entitlement

      @Thenomain said in Fanbase entitlement:

      Prediction: This thread will be about how entitlement is bad and specific examples about how people have acted in an entitled manner. No debate about if entitlement is bad will take place.

      Exception: Ganymede will make a probative statement about either definition or practice, and will largely be ignored.

      Bemused astonishment: Sometimes, you make me want to play an Elcor.

      posted in Mildly Constructive
      Chime
      Chime
    • RE: WTF And?

      @HorrorHound said in WTF And?:

      ...You are all Heretics, and meddle with The Warp! BURN!

      Hail Tzeentch!

      posted in MU Code
      Chime
      Chime
    • RE: Dreams to Reality

      @Ashen-Shugar said in Dreams to Reality:

      • The database used for disk storage
        -- QDBM is now the default database engine and we allow upwards to 64K LBUFS. In addition, you can increase -and- decrease the LBUF's in a live database without introducing corruption. It does auto-trimming. You would potentially lose data that was larger than the new buffer, but the db handles it fine w/o eating itself. We also natively support mysql and sqlite... at the same time optionally.

      Nice!

      • The method to compile Rhost. We now use a menu 🙂
                             RhostMUSH Source Configuration Utility
      
      ------------------------------------------------------------------------------
      [X]  1. Sideeffects        [X]  2. MUSH/MUX u()/zfun  [X]  3. MUX inc()/dec()
      

      It's very pretty-- but it's a perfect example of what I was trying to avoid. I've been a UNIX person since 1995. I really do want just bare autoconf so that I can automate and do CI testing more easily.

      That said-- it is really nice to have all of those configurable features. Ideally they should become config options in the game conf file rather than compile-time features, but I understand quite well how big a pain that is.

      Admittedly, a lot of my customizations to MUX were to remove a lot of #ifdefs for obsolete crap.

      Take your MUX inc()/dec() option. What's the harm in having that always enabled?

      [X] 26. SHA512 Passwords
      

      I hope those are still salted?

      posted in MU Code
      Chime
      Chime
    • RE: Status: City of Fog and Blood?

      I loved the idea of it. Made a really detailed vampire to play there with someone, but she quit right before I actually apped in.

      This happens a lot with slow people like me.

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: Dreams to Reality

      I really like RHost; it was what was used by the first "major" game I played on (Haunted Memories). I found the maintainer to be kind and attentive to fixing problems when reported. (heh, tho to be fair I usually report that kind of trouble in the form of a patch-- but @Ashen-Shugar is good people either way).

      RHost has a lot of nice hardcode functions that the others don't have, but it's been a while so listing them might be tricky. This brings us to, of course, Why-Chime-Hasn't-Been-Using-RHost: (Quite a lot of these are no longer relevant!)

      • No unicode support (apparently fixed in beta?)

      • Zenty's color implementation - most MUSH codebases with colored strings internally implement them with various sorts of control codes inside the string and transparently hide them from length() and friends. The color implementation on RHost is not so transparent, and has a number of odd glitches with respect to escaping and evaluation layers. Not a security hazard, but annoying. Also, no 256color or html color.

      • The database used for disk storage - Like most MUSHes, it's intimately tied to its DB implementation all through the code and unfortunately the one used in RHost sucks.
        The biggest, most crippling limitation I hit was inability to raise LBUF size. MUX defaults to 8000, my MUX branch defaults to 64000. RHost uses 3999 and can't change without a major overhaul. A properly coded game shouldn't necessarily need more than 3999 byte LBUFs, but inevitably people want to use some crap MUSH app that wasn't designed to scale. Apps in this category:

        • Anomaly Jobs
        • Myrddin's BBoards
        • Most chargens ever written
        • I.e. everything

        Games like The Reach, etc would never have been possible on 3999 byte lbufs. On HM, I can definitively state that the LBUF limits crippled the jobs system so badly that staff frequently burned out trying to rush through jobs just to clear up space. AJ just doesn't scale.

      • Closed-source, NDA required - very much no longer relevant, but it was initially a bit off-putting. I can understand why they did it and can confirm that it never stood in the way of getting anything done. It did make this shy octopus a bit more timid about contributing initially, but it's publicly available now.

      • Loss of the original project repo, issue tracking. (Sorry for bringing this up again, really!) RHost's dev host had a disk incident and the svn repo was lost. We have a few sporadic tarballs of various releases, and this does not impact writing/fixing code, but the historical perspective of who changed what when is gone. This... makes me sad. As people have seen in other threads, I take great delight in the archaeological software process and losing that hurts. Also it makes the sysadmin/data-archivist side of me shudder with visceral horror.

      RHost also is somewhat notorious for UI differences in @mail and the soft-channels. I liked both of those things though, and I suspect it's mostly an issue of what you learned on.

      What is your favorite mu* engine, the pros you like the most with it, and the cons that you wish it could do.

      TinyMUX is where I've been for a while. Brazil and Sparks are fantastic to work with.

      As for my MUX branch and what it does different: lots of work on making a smoother autoconf/libtool and install process. In particular, you use ./configure and it will put things where you set the --prefix when you say make install. Most other codebases manage to screw this up horribly. Example deployment workflow:

      $ git clone https://github.com/lashtear/tinymux.git
      Cloning into 'tinymux'...
      remote: Counting objects: 59420, done.
      remote: Compressing objects: 100% (2/2), done.
      remote: Total 59420 (delta 0), reused 0 (delta 0), pack-reused 59418
      Receiving objects: 100% (59420/59420), 18.39 MiB | 18.38 MiB/s, done.
      Resolving deltas: 100% (46769/46769), done.
      Checking connectivity... done.
      $ cd tinymux/mux
      $ ./configure --prefix=$HOME/KowloonByNight
      checking for ...
      

      ... thousands of lines ... It auto-enables SSL and MySQL/MariaDB support if found, as well as defaulting-on for RealityLvls and such, plus I can do parallel and out of tree builds with correct dependency tracking and build isolation. Beautiful for CI testing!

      $ make -j8
      make  all-am
      make[1]: Entering directory '/home/lucca/src/t/tinymux/mux'
        CXX      libversion_a-version.o
        CXX      libmux.lo
        CC       libltdl/lt__strl.lo
        CXX      funcs.lo
        CXX      sqlslave.lo
        CXX      sample.lo
        CXX      sqlproxy.lo
        CXX      sum.lo
      

      ... it builds, hiding most options by default so warnings are immediately obvious. Even better, it DOES NOT INSTALL on build. When it is time to install, you can do so with make install. Note that you can set DESTDIR to do an installation built for --prefix but sent to a different place, e.g. for packaging. Likewise --prefix and --exec-prefix can be different places to facilitate having several game instances share the same executables/libs.

      $ make install
      make  install-am
      make[1]: Entering directory '/home/lucca/src/t/tinymux/mux'
      make[2]: Entering directory '/home/lucca/src/t/tinymux/mux'
       /bin/mkdir -p '/home/lucca/KowloonByNight/bin'
      ... ...
      make  install-data-hook
      make[3]: Entering directory '/home/lucca/src/t/tinymux/mux'
        CHKCONF  /home/lucca/KowloonByNight/bin
          CP     mux-backup
          CP     mux-backup-flat
          CP     mux-load-flat
          CP     mux-unload-flat
          CP     mux-start
          CP     mux-stop
        CHKCONF  /home/lucca/KowloonByNight/etc
          CP     alias.conf
          CP     art.conf
          CP     compat.conf
          CP     netmux.conf
          CP     script.conf
        CHKCONF  /home/lucca/KowloonByNight/etc/text
          CP     badsite.txt
          CP     connect.txt
          CP     create_reg.txt
      ...
      

      Of special note here: It installs config files carefully, so that reinstalling on top of an existing game does not wipe out your configs. (Yeah, sorry @Thenomain) Also: the tree structure it uses matches other standard UNIX fs naming hierarchies. Sadly, this seems to confuse the hell out of everyone not-me, but I thought it was a huge huge improvement:

      $ cd ~/KowloonByNight/
      $ ls
      bin  etc  lib  libexec  share  var
      $ ls -lR
      .:
      total 24
      drwxr-xr-x 2 lucca lucca 4096 Jun 30 14:24 bin
      drwxr-xr-x 3 lucca lucca 4096 Jun 30 14:24 etc
      drwxr-xr-x 3 lucca lucca 4096 Jun 30 14:24 lib
      drwxr-xr-x 2 lucca lucca 4096 Jun 30 14:24 libexec
      drwxr-xr-x 3 lucca lucca 4096 Jun 30 14:24 share
      drwxr-xr-x 2 lucca lucca 4096 Jun 30 14:24 var
      
      ./bin:
      total 48
      lrwxrwxrwx 1 lucca lucca   41 Jun 30 14:24 dbconvert -> /home/lucca/KowloonByNight/libexec/netmux
      -rwxr-xr-x 1 lucca lucca 1474 Jun 30 14:24 mux-backup
      -rwxr-xr-x 1 lucca lucca 1474 Jun 30 14:24 mux-backup.default
      -rwxr-xr-x 1 lucca lucca 1169 Jun 30 14:24 mux-backup-flat
      -rwxr-xr-x 1 lucca lucca 1169 Jun 30 14:24 mux-backup-flat.default
      -rwxr-xr-x 1 lucca lucca  481 Jun 30 14:24 mux-load-flat
      -rwxr-xr-x 1 lucca lucca  481 Jun 30 14:24 mux-load-flat.default
      -rwxr-xr-x 1 lucca lucca 1240 Jun 30 14:24 mux-start
      -rwxr-xr-x 1 lucca lucca 1240 Jun 30 14:24 mux-start.default
      -rwxr-xr-x 1 lucca lucca  792 Jun 30 14:24 mux-stop
      -rwxr-xr-x 1 lucca lucca  792 Jun 30 14:24 mux-stop.default
      -rwxr-xr-x 1 lucca lucca  493 Jun 30 14:24 mux-unload-flat
      -rwxr-xr-x 1 lucca lucca  493 Jun 30 14:24 mux-unload-flat.default
      
      ./etc:
      total 76
      -rw-r--r-- 1 lucca lucca 19917 Jun 30 14:24 alias.conf
      -rw-r--r-- 1 lucca lucca 19917 Jun 30 14:24 alias.conf.default
      -rw-r--r-- 1 lucca lucca   391 Jun 30 14:24 art.conf
      -rw-r--r-- 1 lucca lucca   391 Jun 30 14:24 art.conf.default
      -rw-r--r-- 1 lucca lucca  2696 Jun 30 14:24 compat.conf
      -rw-r--r-- 1 lucca lucca  2696 Jun 30 14:24 compat.conf.default
      -rw-r--r-- 1 lucca lucca  1863 Jun 30 14:24 netmux.conf
      -rw-r--r-- 1 lucca lucca  1863 Jun 30 14:24 netmux.conf.default
      -rw-r--r-- 1 lucca lucca   813 Jun 30 14:24 script.conf
      -rw-r--r-- 1 lucca lucca   813 Jun 30 14:24 script.conf.default
      drwxr-xr-x 2 lucca lucca  4096 Jun 30 14:24 text
      
      ./etc/text:
      total 1408
      -rw-r--r-- 1 lucca lucca    130 Jun 30 14:24 badsite.txt
      -rw-r--r-- 1 lucca lucca    130 Jun 30 14:24 badsite.txt.default
      -rw-r--r-- 1 lucca lucca    629 Jun 30 14:24 connect.txt
      -rw-r--r-- 1 lucca lucca    629 Jun 30 14:24 connect.txt.default
      -rw-r--r-- 1 lucca lucca     94 Jun 30 14:24 create_reg.txt
      -rw-r--r-- 1 lucca lucca     94 Jun 30 14:24 create_reg.txt.default
      -rw-r--r-- 1 lucca lucca    152 Jun 30 14:24 down.txt
      -rw-r--r-- 1 lucca lucca    152 Jun 30 14:24 down.txt.default
      -rw-r--r-- 1 lucca lucca    170 Jun 30 14:24 full.txt
      -rw-r--r-- 1 lucca lucca    170 Jun 30 14:24 full.txt.default
      -rw-r--r-- 1 lucca lucca    558 Jun 30 14:24 guest.txt
      -rw-r--r-- 1 lucca lucca    558 Jun 30 14:24 guest.txt.default
      -rw-r--r-- 1 lucca lucca 454762 Jun 30 14:24 help.txt
      -rw-r--r-- 1 lucca lucca 454762 Jun 30 14:24 help.txt.default
      -rw-r--r-- 1 lucca lucca      0 Jun 30 14:24 motd.txt
      -rw-r--r-- 1 lucca lucca      0 Jun 30 14:24 motd.txt.default
      -rw-r--r-- 1 lucca lucca     43 Jun 30 14:24 news.txt
      -rw-r--r-- 1 lucca lucca     43 Jun 30 14:24 news.txt.default
      -rw-r--r-- 1 lucca lucca    416 Jun 30 14:24 newuser.txt
      -rw-r--r-- 1 lucca lucca    416 Jun 30 14:24 newuser.txt.default
      -rw-r--r-- 1 lucca lucca  22754 Jun 30 14:24 plushelp.txt
      -rw-r--r-- 1 lucca lucca  22754 Jun 30 14:24 plushelp.txt.default
      -rw-r--r-- 1 lucca lucca     29 Jun 30 14:24 quit.txt
      -rw-r--r-- 1 lucca lucca     29 Jun 30 14:24 quit.txt.default
      -rw-r--r-- 1 lucca lucca    556 Jun 30 14:24 register.txt
      -rw-r--r-- 1 lucca lucca    556 Jun 30 14:24 register.txt.default
      -rw-r--r-- 1 lucca lucca  16346 Jun 30 14:24 staffhelp.txt
      -rw-r--r-- 1 lucca lucca  16346 Jun 30 14:24 staffhelp.txt.default
      -rw-r--r-- 1 lucca lucca 173366 Jun 30 14:24 wizhelp.txt
      -rw-r--r-- 1 lucca lucca 173366 Jun 30 14:24 wizhelp.txt.default
      -rw-r--r-- 1 lucca lucca      0 Jun 30 14:24 wizmotd.txt
      -rw-r--r-- 1 lucca lucca      0 Jun 30 14:24 wizmotd.txt.default
      -rw-r--r-- 1 lucca lucca     61 Jun 30 14:24 wiznews.txt
      -rw-r--r-- 1 lucca lucca     61 Jun 30 14:24 wiznews.txt.default
      
      ./lib:
      total 84
      -rwxr-xr-x 1 lucca lucca  1021 Jun 30 14:24 libmux.la
      -rwxr-xr-x 1 lucca lucca 77296 Jun 30 14:24 libmux.so
      drwxr-xr-x 2 lucca lucca  4096 Jun 30 14:24 tinymux
      
      ./lib/tinymux:
      total 280
      -rwxr-xr-x 1 lucca lucca  1065 Jun 30 14:24 funcs.la
      -rwxr-xr-x 1 lucca lucca 37072 Jun 30 14:24 funcs.so
      -rwxr-xr-x 1 lucca lucca  1071 Jun 30 14:24 sample.la
      -rwxr-xr-x 1 lucca lucca 61064 Jun 30 14:24 sample.so
      -rwxr-xr-x 1 lucca lucca  1083 Jun 30 14:24 sqlproxy.la
      -rwxr-xr-x 1 lucca lucca 40896 Jun 30 14:24 sqlproxy.so
      -rwxr-xr-x 1 lucca lucca  1083 Jun 30 14:24 sqlslave.la
      -rwxr-xr-x 1 lucca lucca 77832 Jun 30 14:24 sqlslave.so
      -rwxr-xr-x 1 lucca lucca  1053 Jun 30 14:24 sum.la
      -rwxr-xr-x 1 lucca lucca 38968 Jun 30 14:24 sum.so
      
      ./libexec:
      total 5700
      -rwxr-xr-x 1 lucca lucca 5769576 Jun 30 14:24 netmux
      -rwxr-xr-x 1 lucca lucca   18872 Jun 30 14:24 slave
      -rwxr-xr-x 1 lucca lucca   44072 Jun 30 14:24 stubslave
      
      ./share:
      total 4
      drwxr-xr-x 3 lucca lucca 4096 Jun 30 14:24 doc
      
      ./share/doc:
      total 4
      drwxr-xr-x 2 lucca lucca 4096 Jun 30 14:24 tinymux
      
      ./share/doc/tinymux:
      total 136
      -rw-r--r-- 1 lucca lucca  3975 Jun 30 14:24 ATTACK
      -rw-r--r-- 1 lucca lucca  2238 Jun 30 14:24 BACKUPS
      -rw-r--r-- 1 lucca lucca  1786 Jun 30 14:24 CHANGES
      -rw-r--r-- 1 lucca lucca  6675 Jun 30 14:24 CONFIGURATION
      -rw-r--r-- 1 lucca lucca  2209 Jun 30 14:24 CONVERSION
      -rw-r--r-- 1 lucca lucca  3176 Jun 30 14:24 CREDITS
      -rw-r--r-- 1 lucca lucca  2298 Jun 30 14:24 DISTRIBUTIONS
      -rw-r--r-- 1 lucca lucca  2467 Jun 30 14:24 GUESTS
      -rw-r--r-- 1 lucca lucca  4750 Jun 30 14:24 INSTALL
      -rw-r--r-- 1 lucca lucca  3713 Jun 30 14:24 LIMITS
      -rw-r--r-- 1 lucca lucca  5624 Jun 30 14:24 LOCAL
      -rw-r--r-- 1 lucca lucca  4373 Jun 30 14:24 MEMORY
      -rw-r--r-- 1 lucca lucca  1820 Jun 30 14:24 MODULES
      -rw-r--r-- 1 lucca lucca  4237 Jun 30 14:24 NOTES
      -rw-r--r-- 1 lucca lucca  7892 Jun 30 14:24 README
      -rw-r--r-- 1 lucca lucca  5734 Jun 30 14:24 readme.txt
      -rw-r--r-- 1 lucca lucca   791 Jun 30 14:24 REALITY
      -rw-r--r-- 1 lucca lucca 14318 Jun 30 14:24 REALITY.SETUP
      -rw-r--r-- 1 lucca lucca  6018 Jun 30 14:24 REALMS
      -rw-r--r-- 1 lucca lucca  1710 Jun 30 14:24 SGP
      -rw-r--r-- 1 lucca lucca  4225 Jun 30 14:24 SQL
      -rw-r--r-- 1 lucca lucca  2570 Jun 30 14:24 SSL
      
      ./var:
      total 60
      -rw-r--r-- 1 lucca lucca 59692 Jun 30 14:24 sgp.flat
      

      So lots of build changes, mostly, including a very young set of regression tests in the tests/ tree; see here for an example; it uses the standard TAP harness and telnet+Expect to validate a bunch of features. Sadly the coverage report is still pretty sparse-- but I'm LOOKING at it which is something most other codebases aren't doing as best I can tell.

      I'm happy to answer questions about autoconf/libtool, git, github, CI with travis, etc., for codebases interested in exploring those things, but my primary devwork currently is pointed at MOO stuff.

      I do agree adding Python support in-MUSH is a fantastic way to finally drag the community kicking-and-screaming away from mushcode. It needs to be done.

      posted in MU Code
      Chime
      Chime
    • So what does it look like coming out?

      http://imgur.com/gallery/cnwYb

      posted in Code
      Chime
      Chime
    • RE: Do you believe in paranormal things?

      @Thenomain said in Do you believe in paranormal things?:

      So what you're saying is that our tools fail us and we're left with incomplete information and have to fill in the blanks with our chaotic, unknowable human minds.

      Not necessarily. I suspect that minds are knowable, but the hypothetical complexity needed to completely understand all physical and semantic features of an operating mind might require a more complex mind. I don't know-- but it is an interesting research problem that I look forward to being explored with SCIENCE.

      We just have an incomplete model for both the electron and the human condition.

      Well yes, obviously. Our models of everything are incomplete, but improving.

      I think where I was going with the electron thing (sorry, had to get up at 7am after about 2 hours of sleep because augh food poisoning and I hadn't had coffee yet and the cat was starving so bad she was howling and knocking things off the desk even as I typed) -- was that some questions cannot be usefully answered not because they are unknowable, but because they are the wrong question. The underlying nature of reality may be such that particles not in superposition may only have one feature or another, and the other case just isn't defined once that happens. Nothing supernatural about that but it is Really Cool.

      In computer science we have a number of similar cases. Consider the Halting Problem. Essentially: You can write a program that might not terminate. You cannot write a program that can test whether that is true of another program (and itself guarantee halting) in the general case. (You can always make a program more difficult to analyze, and thus cause the analyzer to fail to halt.) This isn't supernatural either, but it is very much a case of unknowable data that arises from the mathematical structures we create to understand things.

      These sorts of features of unknowability are not supernatural or occult or anything of the sort. Think of them more like shadows cast by a light. We can move the light and objects around, but there will always be shadows by virtue of the logical structures we create to understand things and the inherent limitations each has. We can always switch to different models, but this only moves the shadows around, making a different set of things knowable or unknowable.

      Ring the bells that still can ring.
      Forget the perfect offering.
      There is a crack in everything.
      That's how the light gets in.

      -Leonard Cohen

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: Do you believe in paranormal things?

      @Thenomain said in Do you believe in paranormal things?:

      But we stopped torturing the mentally ill,

      Oh, we still do it; it's just been outsourced to even more brutal institutions called "insurance companies" which use tools like requiring referrals and in-plan pre-approved therapists.

      As far as unknowable things though... well.

      Currently, we can't know both the speed and position of an electron. We can know one or the the other, but measuring that collapses the wave function. Like many aspects of quantum mechanics, it isn't supernatural but it certainly seems pretty weird compared to our normal daily observations.

      I spend a lot of time reading about vampires and witches and demons and angels and gods, but I don't believe in any of these things. People are monsters enough without any help.

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: Code Teachers?

      Ignore the bird, follow the river.

      posted in MU Code
      Chime
      Chime
    • RE: Code Teachers?

      @Cobaltasaurus said in Code Teachers?:

      I know...? that wasn't really my problem? It was typos rather than not knowing how to escape mushcode.

      Or see signature. XD I know what I'm doing, I swear!

      Heh, I guess you do, at that. Sorry.

      For typos, I can only offer reeeeally good coffee.

      posted in MU Code
      Chime
      Chime
    • RE: Code Teachers?

      @Cobaltasaurus .... escaping mushcode so that it isn't parsed isn't that hard. Really!

      Parsing context exists only at the beginning of an lbuf or after [ ... or as an argument to a function that is already being parsed.

      You should be able to do:

      say for example: iter( lnum(3), woot )
      say iter( lnum(3), woot )
      

      and then people see:

      Chime says, "for example: iter( lnum(3), woot)"
      Chime says, "woot woot woot"
      

      see also the /noparse flag for @emit and friends.

      Alternatively, there are a variety of mushify programs that can carefully escape arbitrarily complex punctuation, generally used for ascii art.

      $ cat moon.txt
                           .--------------.
                      .---'  o        .    `---.
                   .-'    .    O  .         .   `-.
                .-'     @@@@@@       .             `-.
              .'@@   @@@@@@@@@@@       @@@@@@@   .    `.
            .'@@@  @@@@@@@@@@@@@@     @@@@@@@@@         `.
           /@@@  o @@@@@@@@@@@@@@     @@@@@@@@@     O     \
          /        @@@@@@@@@@@@@@  @   @@@@@@@@@ @@     .  \
         /@  o      @@@@@@@@@@@   .  @@  @@@@@@@@@@@     @@ \
        /@@@      .   @@@@@@ o       @  @@@@@@@@@@@@@ o @@@@ \
       /@@@@@                  @ .      @@@@@@@@@@@@@@  @@@@@ \
       |@@@@@    O    `.-./  .        .  @@@@@@@@@@@@@   @@@  |
      / @@@@@        --`-'       o        @@@@@@@@@@@ @@@    . \
      |@ @@@@ .  @  @    `    @            @@      . @@@@@@    |
      |   @@                         o    @@   .     @@@@@@    |
      |  .     @   @ @       o              @@   o   @@@@@@.   |
      \     @    @       @       .-.       @@@@       @@@      /
       |  @    @  @              `-'     . @@@@     .    .    |
       \ .  o       @  @@@@  .              @@  .           . /
        \      @@@    @@@@@@       .                   o     /
         \    @@@@@   @@\@@    /        O          .        /
          \ o  @@@       \ \  /  __        .   .     .--.  /
           \      .     . \.-.---                   `--'  /
            `.             `-'      .                   .'
              `.    o     / | `           O     .     .'
                `-.      /  |        o             .-'
                   `-.          .         .     .-'
                      `---.        .       .---'
                           `--------------'
      
      $ cat moon.txt |mushify
      [space(21)].--------------.%r[space(16)].---'%b%bo[space(8)].%b%b%b%b`---.%r[space(13)].-'%b%b%b%b.%b%b%b%bO%b%b.[space(9)].%b%b%b`-.%r[space(10)].-'%b%b%b%b%b@@@@@@[space(7)].[space(13)]`-.%r[space(8)].'@@%b%b%b@@@@@@@@@@@[space(7)]@@@@@@@%b%b%b.%b%b%b%b`.%r[space(6)].'@@@%b%b@@@@@@@@@@@@@@%b%b%b%b%b@@@@@@@@@[space(9)]`.%r%b%b%b%b%b/@@@%b%bo @@@@@@@@@@@@@@%b%b%b%b%b@@@@@@@@@%b%b%b%b%bO%b%b%b%b%b\\%r%b%b%b%b/[space(8)]@@@@@@@@@@@@@@%b%b@%b%b%b@@@@@@@@@ @@%b%b%b%b%b.%b%b\\%r%b%b%b/@%b%bo[space(6)]@@@@@@@@@@@%b%b%b.%b%b@@%b%b@@@@@@@@@@@%b%b%b%b%b@@ \\%r%b%b/@@@[space(6)].%b%b%b@@@@@@ o[space(7)]@%b%b@@@@@@@@@@@@@ o @@@@ \\%r /@@@@@[space(18)]@ .[space(6)]@@@@@@@@@@@@@@%b%b@@@@@ \\%r |@@@@@%b%b%b%bO%b%b%b%b`.-./%b%b.[space(8)].%b%b@@@@@@@@@@@@@%b%b%b@@@%b%b|%r/ @@@@@[space(8)]--`-'[space(7)]o[space(8)]@@@@@@@@@@@ @@@%b%b%b%b. \\%r|@ @@@@ .%b%b@%b%b@%b%b%b%b`%b%b%b%b@[space(12)]@@[space(6)]. @@@@@@%b%b%b%b|%r|%b%b%b@@[space(25)]o%b%b%b%b@@%b%b%b.%b%b%b%b%b@@@@@@%b%b%b%b|%r|%b%b.%b%b%b%b%b@%b%b%b@ @[space(7)]o[space(14)]@@%b%b%bo%b%b%b@@@@@@.%b%b%b|%r\\%b%b%b%b%b@%b%b%b%b@[space(7)]@[space(7)].-.[space(7)]@@@@[space(7)]@@@[space(6)]/%r |%b%b@%b%b%b%b@%b%b@[space(14)]`-'%b%b%b%b%b. @@@@%b%b%b%b%b.%b%b%b%b.%b%b%b%b|%r \\ .%b%bo[space(7)]@%b%b@@@@%b%b.[space(14)]@@%b%b.[space(11)]. /%r%b%b\[space(6)]@@@%b%b%b%b@@@@@@[space(7)].[space(19)]o%b%b%b%b%b/%r%b%b%b\\%b%b%b%b@@@@@%b%b%b@@\\@@%b%b%b%b/[space(8)]O[space(10)].[space(8)]/%r%b%b%b%b\\ o%b%b@@@[space(7)]\\ \\%b%b/%b%b__[space(8)].%b%b%b.%b%b%b%b%b.--.%b%b/%r%b%b%b%b%b\[space(6)].%b%b%b%b%b. \\.-.---[space(19)]`--'%b%b/%r[space(6)]`.[space(13)]`-'[space(6)].[space(19)].'%r[space(8)]`.%b%b%b%bo%b%b%b%b%b/ | `[space(11)]O%b%b%b%b%b.%b%b%b%b%b.'%r[space(10)]`-.[space(6)]/%b%b|[space(8)]o[space(13)].-'%r[space(13)]`-.[space(10)].[space(9)].%b%b%b%b%b.-'%r[space(16)]`---.[space(8)].[space(7)].---'%r[space(21)]`--------------'%r
      

      ...ugly, but effective

      posted in MU Code
      Chime
      Chime
    • RE: Code Teachers?

      @Thenomain: emacs has two cursors; the mark (generally invisible) and the point (aka the cursor you can see). Most cut and region-change operations are defined over the mark..point or point..mark span.

      It's an utterly alien UI compared to anything you've used-- but it's also very old and long-lived and pervasive in places you already use. Things I've used that followed the same UI

      • TECO Emacs 162 on PDP-10 ITS circa 1970s
      • Zmacs on Symbolics Genera (lispmachines ARE the OS that emacs pretends to be) circa 1980s
      • Emacs itself, of course, on all vaguely posix-ish systems and many that aren't.
      • Most GNU command-oriented tools; bash, libreadline, etc.
      • Most Apple core UI stuff, including all the apps in their office clone. (Because Steve Jobs was an emacs user, oddly enough; they are almost never documented, but all of the emacs control codes work transparently all over the place in MacOS X. ...except for iTunes. Fuck those guys.)

      Come to the dark side...

      ...we have parentheses.

      posted in MU Code
      Chime
      Chime
    • 1
    • 2
    • 3
    • 4
    • 5
    • 13
    • 14
    • 2 / 14