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: Cybersphere Nostalgia Thread

      @surreality said in Cybersphere Nostalgia Thread:

      Really, truly, very much want. I am Not A Coder, but if there is anything I can do from my end that would help, I would happily do so.

      <3. Really! I'm glad I'm not alone in liking it.

      If you want to know what the 'big thing' most people I ever talked to cited as 'why I hate MOO'? You'll probably want to spit.

      Yes, well... this happens a lot when talking about why people prefer mush.

      The lack of MUSH-style %r and %t for linebreak and carriage return. No, really. The MOO substitutions, and specifically the lack of those specific ones, gave people as much grief, apparently, as the command format, and they adapted to the command format better than the substitutions because the substitutions were so innately ingrained.

      Already done-- in softcode, no less. I've posted the moocode to do on wora and.. maybe here? I forget. But yes, specifically %r, %t, and at a bare minimum the normal 16 color foreground/background model via %x or %c. There are observable differences, but the random user trying to

      @emit It was a dark and stormy night%r%rIt was very dark.%r%r%tVery stormy!
      

      Wouldn't notice any difference-- it'd just work. And this isn't hypothetical. It's done-and-working code that's been tested on a few random friends of mine. The only reason they knew it wasn't a mush was I hadn't (at the time) implemented page or ooc.

      In my deepest, wildest dreams? Good integration with mediawiki in some form (to and from MOO).

      MUSH style integration there needs a sql bridge. I can do that, but it's an annoying bit of hardcode. Still, would be much much better as doing it as a non-blocking background task is much easier-- no @trigger nonsense needed, and it can return results in easily manipulated mush list structures.

      That said, I do kinda hate the implementation side of mediawiki and the troubles of hosting PHP apps in general. If the hosting side and the keeping-mediawiki-up-to-date side is handled by someone-not-me, then sure, no problem.

      My crazy fantasyland dream involved using mediawiki to set up templates (actual mediawiki templates, not cut and paste layouts) that'd look something like this:

      {{Creature
      |creature-dbref=#dbref
      |creature-name=Guppylicious
      |creature-type=Goldfish
      |creature-desc=This is a monster-sized goldfish. It wants to eat your soul.
      |creature-stat1=5
      |creature-stat2=2
      |creature-power-telepathy=no
      |creature-power-superswim=yes
      ...etc.
      }}
      

      ...and the game pulling those stats into an object, and dropping those template values into the object's attributes.

      The reason why I pine for this kind of thing is that it can be done with forms in semantic mediawiki -- and that means super quick and easy data entry for creators who are not coders or are unfamiliar with MOO. The forms can have set values to error-proof it to some extent. (It would be pretty easy to keep these in a protected namespace that only staff can edit, too, or on a staff-only secondary wiki install exclusively for data of this type.)

      Hm. Yes, that has some possibilities. Do note that MOO is substantially more capable than MUSH/MUX in that area; it's hypothetically possible to write a sql bridge in softcode, and quite straightforward to call the JSON API stuff mediawiki and similar apps present rather than messing with sql structures that we aren't supposed to touch.

      MOO is also able to have custom server processes running within it; many of us have written webservers (yes really) in MOO. That could make for significant more tightly-integrated wiki work-- but I suspect replacing that functionality entirely in MOO is a bad idea and too much work.

      It might even be possible to do a wiki-side chargen through a similar method. This could work with MUX, too, but I am too unfamiliar with SQL and related things to understand HOW to set up the code to pull the right things to the right places in the right directions -- or anywhere at all, actually. It's still way, way beyond me.

      It just strikes me as something that would be amazingly helpful for creators and for players, lowering the bar for entry in some respects for true newbies in the hobby.

      We should probably put this in a different thread somewhere and continue talking about how to make it happen. In summary though:

      • Percent-codes: done
      • MySQL/MariaDB/PostgreSQL bridge: not implemented, though some patches are out there
      • JSON/XML-RPC bridge: not implemented, but relatively easy-- both for serving and sending.

      The idea of getting tools together to let more people contribute toward a working game is something I like very much. I've found the old moo code I'd been working on pre-reach... need to convert repo types to git (I was using darcs way back then, eesh) and I'll see what I can do.

      posted in Mildly Constructive
      Chime
      Chime
    • RE: Cybersphere Nostalgia Thread

      @deadculture said in Cybersphere Nostalgia Thread:

      I do think a coder like you could do something really great to update the MOO codebase for Cybersphere/Ghostwheel/etc. Would certainly make launching a new game based on MOO more viable, and perhaps without the cultural pitfalls that the medium seems to have.

      @surreality said in Cybersphere Nostalgia Thread:

      @Chime We were probably there around the same time.

      ...and if you ever do something with MOO to make it, well, workable? (As in, there's some hint of a clue how to even get it running... ) Oh, gods, please let me know.

      Hm. Hmm!

      I had a project I was working on that I tabled because some friends asked me to take a peek at a new game they were helping with that had trouble with codestaff disappearing and needed aid. (That game was later fairly popular, though few probably remember it now. It was called The Reach... cackle, cackle) MY project from before then was SurfaceTension, designed to be a an RP MOO using the Blue Planet rules and setting.

      Like many MOOs, it used a from-scratch core and quite a few hardcode changes to make it more mush-like. Spent a lot of time making player:tell() smart enough to render mush-style color codes intelligently on different output platforms (Telnet, xterm256, html, etc) and implement things like NOSPOOF handling (far better than MUSH does). On the hardcode side, I re-did the prefix chars so semi did ;emotes and comma did ,evals. I was just at the point of adding more detailed dict-type support and numerous new moo-language features for things like lambda expressions and the like. ...so yes, I have some vague familiarity with the moo hardcode now.

      Was running into moo bytecode speed execution limitations and pondering ways to re-architect that. Also, much like other codebases it was rather strictly singlethreaded-- this was great in the old days but I'd really rather have true multithreading with easy to use composable-STL transactions for clean handling of shared state. These aren't must-haves, but it sure would be nice.

      What sorts of MUSH-style features would either of you guys need for actually making a working game with a MOO? IIRC my list that I was targeting was:

      Mandatory:

      • mush-style say/pose/@emit/ooc for IC and OOC rooms (done)
      • mush-style page (done)
      • the existence of rooms, as moo doesn't have those in hardcode (done)
      • the existence of exits, as moo doesn't have those in hardcode

      Recommended:

      • mush-style channels
      • mush-style @mail
      • SSL/TLS support
      • Various things commonly present in SGP, etc

      Optional:

      • mush-style colors (done)
      • SQL bridge
      • ticketing system analogous to AJ

      Thoughts? Is this the sort of thing anyone actually wants? I mean when I was talking about it before most people were like 'ewww, moo?'

      posted in Mildly Constructive
      Chime
      Chime
    • RE: Cybersphere Nostalgia Thread

      Technically Cybersphere was the second MU I approached.

      Initially there was some mud thing that I peeked into in 1995, but I didn't do much with that.

      Cybersphere I tried making several different characters over a period of time, but I think 96-98 would have been when I was around the most. I don't remember much, but it did leave me with a lasting respect for MOO as a technology, and I still prefer that over MUSH.

      The RP seemed sporadic and punctuated by random unexpected PK by people wandering through the scene. At one point I got killed while stepping into the first room, without even saying anything. Guess my desc was that bad.

      Didn't really bother pursuing it further until my partner dragged me back in by way of mushes.

      posted in Mildly Constructive
      Chime
      Chime
    • RE: RL Anger

      I've found all of those pretty mild compared to Atlanta.

      It was an endless , sparkling ocean of tree jizz.

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: Does size matter? What about duration?

      Quality over quantity, but given good quality prose with interesting characters that are well portrayed and offering engaging hooks? I like it long and hard. Shut! Up! It allows for a depth of experience not seen in lighter interaction.

      Fast can be okay, and even a good thing, but:

      • Did you miss responding to someone's pose?
      • Excessive spelling and grammatical errors?
      • Are you meta-posing thoughts instead of describing actions?
      • Are you hand-waving descriptions or making excessively large assumptions to shorten things?

      None of those are a scene-killer for me, necessarily, but they do start to detract. Certainly, long poses can be just as problematic if done poorly.

      For long poses, please:

      • Match pose-time with others in the scene, roughly. If everyone is posing in 3 minutes, don't take longer than 6. If everyone is posing in 10-15 minutes, don't take less than five unless you have something Earth-shatteringly profound to write in a few flawlessly tuned lines; balancing expectations makes everyone happier.
      • Don't try to multitask. If you are going to do multiple scenes concurrently, great-- but do not presume that changes your speed requirements within a single scene. It's almost always better to bow out with an ooc explanation that the other scene is taking up too much time. It doesn't even have to be a long explanation. "Sorry, gotta go. Pack-mate is pregnant with Azlu, and guess-who's coming to dinner."
      • Don't try to multitask. If you're playing a video game while waiting for others, the scene probably is a bad match for you, or vice versa. You really can't play League of Legends between poses, no matter how slow they are, without looking like an ass.

      Many of my best scenes had an average pose rate of 10-15minutes, with 3-5 people present. I've had a lot of fantastic RP with pose rates of 3-4 minutes, but I find that challenging if I'm trying to cough up 2-3 paragraphs worth in that timeframe. Longer pose rates, like 30-60 minutes are feasible, but that quickly becomes more like a play-by-mail setup. Fortunately, I like those too... and RPing with some people is always worth the wait.

      posted in MU Questions & Requests
      Chime
      Chime
    • RE: Angel's Legacy: Seeking Help!

      @Cobaltasaurus said in Angel's Legacy: Seeking Help!:

      Since my one from Wildcard is lost:(

      Never. I'm kinda a hoarder when it comes to data.

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: RL Anger

      @WTFE That's the problem; most people seem to and it really hurts my eyes.

      @Arkandel said in RL Anger:

      Why? I'm not a designer but my understanding is it's the best/most comfortable way to read stuff - dark text on a white background.

      Apparently psychological studies indicate most people find white backgrounds more "professional" for reasons along those lines.

      Consider: white backgrounds on reflective displays (i.e. paper, books, eink things like the old kindles, etc) are only as bright as the light shining on them. White backgrounds on emissive displays like panels and CRTs are always brighter than the background.

      @SG said in RL Anger:

      @Arkandel for me it's because bright lights can trigger migraines for me and having a big bright white screen glaring angrily at me will do it reliably enough that I have my screen brightness/contrasts turned down so much I can barely see my mouse pointer in some programs. Granted, it's usually not just the light alone, I often need to be hungry and have some stinky jerk with too much perfume nearby, but yeah. White backgrounds are awful.

      So. Much. This.

      I get by using various in-browser css customization apps to make things more reasonable. Irritating to have to do it in so many places, and even more irritating when people tell me over and over that it's more "comfortable" to have a white background. NO! White background = pain.

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: RL Anger

      People that like white backgrounds on webpages. I want to stab you in your eyeballs.

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: Angel's Legacy: Seeking Help!

      @ixokai Thank you for so eloquently reminding me why I've largely left this community; we're looking to create different things entirely. I wish you (and probably @Cobaltasaurus) the best with that.

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: Angel's Legacy: Seeking Help!

      @ixokai said in Angel's Legacy: Seeking Help!:

      Never seen a wiki system do better, and I've looked, but not recently, admittedly. MediaWiki Templates are incredibly powerful. I don't care one way or the other about the syntax, its the functionality that is key.

      They are. But typical mush players are unable to:

      • Make new templates
      • Effectively use templates
      • Even manage to construct a table without leaving the decaying detritus of hundreds of un-closed tags to foul up the wiki
      • Construct a pleasing view

      Yes, really. They can't. I agree, there is a fair percent of power users who do quite well. Good on you if you are on of them. Most people do not need or want that though.

      I don't want to code html and css in my hobby, I'm annoyed enough I have to do it in my day job. I'm not entirely sure I agree with the idea of 'uniform' being a good thing. Having a nice default uniform look is good, but I really enjoy some of the creative stuff players have made out of their wikis.

      MarkDown is a lot easier than html and a lot easier than MediaWiki.

      Are you able to post to this forum? Congrats, you're using MarkDown.

      I believe in there being a firm separation between content and presentation. Presentation is the responsibility of the game owner (@Cobaltasaurus and anyone she designates) and content is the responsibility of all the players, collectively.

      Content here means words. If you must use a picture to define your character, you're doing it wrong. If you must use 120pt blinking bright magenta on lime green Comic Sans to express your character, a lot of us would rather you didn't.

      I agree, some customizability is a good idea, but layout details don't need tables or any of that nonsense.

      I disagree. Templates are, if anything, a special case of inclusion. With inclusion, for example, I can divide a page into several sub-components for easier editing and management, and then include them together into a final main page.

      I think you aren't understanding. That's okay; I know what you want to do, and I agree that templates-and-inclusion is an important feature. I disagree with your terminology, but at the end of the day that doesn't matter.

      I really like doing that, especially when my wiki gets complicated.

      Maybe we should be structuring these things differently. Not making an assertion-- just suggesting we need to dream bigger.

      More importantly, I can do this all on a per-page basis, instead of it being a site-wide thing.

      For some games and types of pages that is appropriate. For some it isn't. I agree that that level of per-page configurability is a useful tool, but I'm quite disgusted with how most game wikis end up. I'm not the content manager, though.

      I'm not really trying to do anything, I'm usually fairly idle as a wiki-er. But I really like some of the work others do. And like sharing and borrowing that and sometimes adding those bits to my page, sometimes improving them and changing them. Mediawiki is a very powerful platform. Its hard to go against it feature for feature and come away not looking weak.

      @Cobaltasaurus is quite welcome to grab a free wiki site from where-ever, if that is what is decided is best.

      I'm not hosting any new PHP apps. If you don't like that, open your own hosting business. Mediawiki is a sick, bloated beast and I want it gone. Ultimately, all of your concerns are entirely irrelevant to that.

      Especially if you're now putting a burden on all the players of learning a new platform and how to bend it to their will.

      People will learn or move or stop playing. Considering most players never learned MediaWiki, I see this as a very low bar to pass.

      What is needed:

      • Basic MarkDown text structure and styling
      • Linking between pages
      • Construction of 'templates' (which are parametric text-inclusions; includes are just templates with no args)
      • Basic control over CSS within a page and group of pages

      Helpful abstractions that we probably want:

      • Categories and dynamically generated tables of categorical data
      • Tagged page-relation types (maybe; e.g. page character A is memberOf page organization B)
      • Image linking.
      • In-wiki access control

      What is very much not needed:

      • A PHP app
      • MediaWiki syntax
      • DPL syntax
      • Tables for layout
      • Thousands of gaudy image-covered character pages with no real content

      You have to show a lot of positive to make that seem worth-while.

      No, I don't. I'm done with media wiki. Host it elsewhere.

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: Angel's Legacy: Seeking Help!

      @ixokai said in Angel's Legacy: Seeking Help!:

      Man I hate you and everything you stand for. (Okay no I don't, really, but I do :))

      Mediawiki's includes and tables and templates are a god-send for creative-wiki'ing and if you reduce my character's wiki to just some markdown text on a thing I'd just not bother contributing, as a player.

      I'm still looking at alternative wiki technologies, as yes-- I understand the work-flow of game wiki use very well.

      Markdown actually has tables already-- but they work best as tables, rather than a layout crutch. Arguably, that's a very very good thing.

      So:

      • Templates: These are a nice feature. MediaWiki templates are shitty. We can do better.
      • Tables: We have tables for tabular data. Tables for page-layout are wrong and should not work; we can use CSS'd div/span for that and it helps promote a cleaner, saner, more uniform look.
      • Includes: These are purely a special case of templates, so we can ignore it if we have a working template system.

      Are you trying to do anything not addressed by that? I believe strongly in giving people the creative tools they need to further MUSHing as a modern, collaborative literary form.

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: Angel's Legacy: Seeking Help!

      @Cobaltasaurus said in Angel's Legacy: Seeking Help!:

      • Wiki help: (I'm likely just to recycle my Darkwater box. So. Uh, wiki needs a complete overhaul/reset).

      If you're talking about the dw instance I'm hosting, it might be a good time to just shut down that wiki and move to some other wiki provider? -- or, alternatively, different wiki software. I'm extremely keen on removing all PHP, and mw syntax is an abomination anyway.

      If no one has any handy recommendations I might be able to throw together a quick quasi-wiki using markdown syntax, but surely there are things like that out there that are mature enough to take on mediawiki.

      Don't panic though; I'm not deleting existing stuff until everyone is onboard with what direction forward is.

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: GuildHunter game? (Angels, Vampires)

      @Cobaltasaurus said in GuildHunter game? (Angels, Vampires):

      Sanctuary? Do you mean The Refuge?

      Uh, yes. That. Urg, may need to re-read.

      Location isn't exactly described in the books; could easily be the north or south pole, or something else entirely. Sounds good.

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: GuildHunter game? (Angels, Vampires)

      Damnit, @Cobaltasaurus. You're making me want to RP again.

      How are you handling Sanctuary? (Existence, traveling to/from, territories within, etc)

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: GuildHunter game? (Angels, Vampires)

      Hmmmmmmmmmmmm.

      Yes, Interested. I might be a book or two behind, but I've read most of that series and enjoyed it immensely.

      What sort of system were you thinking of using, if any? I'd mostly be interested in playing but this is just tantalizing enough I might be able to do more.

      posted in A Shout in the Dark
      Chime
      Chime
    • RE: Grid building theory?

      @Derp said in Grid building theory?:

      WFRE Building <WFRE>                    CHIME Museum <MU>                     
      

      I'm not quite that old yet.

      posted in Mildly Constructive
      Chime
      Chime
    • RE: RL things I love

      @Ninjakitten Yes. So much that. Happens all the time, but usually wake up a little further and can't figure out why the vacuum tubes inside the cat were supposed to fix everything.

      posted in Tastes Less Game'y
      Chime
      Chime
    • RE: Dune Coda Stuff

      @Ataru I can log in and set that for you if you like.

      If you have a tinymux source tree (brazil's or mine or anything within the last 6 years or so), go up to the convert/omega/ directory; normally we mess with the mux stuff in mux/src/ or mux/, but this is back above that point. Assuming your source tree was ~/tinymux/, you'd do something like:

      $ cd ~/tinymux/convert/omega
      $ ./configure
      $ make
      $ ls -l omega
      -rwxr-xr-x 1 lucca lucca 2497824 Apr 27 16:48 omega
      

      This should give you a handy executable called omega, used for flatfile db conversions between game types and other delightful stuff that probably only we code people really enjoy-- except for option -1:

      $ ./omega 
      After the options, there should be one or two command-line arguments left.
      Version: 1.1.0.0
      omega <options> <infile> [<outfile>]
      Supported options:
        -i <type>      Input file type (p6h, r7h, t5x, t6h)
        -o <type>      Output file type (p6h, r7h, t5x, t6h)
        -v <ver>       Output version
        -c <charset>   Input charset
        -d <charset>   Output charset
      
        -1             Reset #1 password to 'potrzebie'
        -x <dbref>     Extract <dbref> in @decomp format
      
      If no <outfile> is given, output is directed to standard out.
      

      So, if you have a FLATFILE backup of your db (see the db_unload command on Brazil's or the mux-backup-flat or similar on later versions of mine), you can do

      ./omega -1 mygame.FLAT mygame-reset.FLAT
      

      Then move your db's out of the way and reload from the new flatfile; do a db_load (or mux-load-flat) . Be sure to log in and change the password on #1.

      ALTERNATIVELY if you are more adventurous and understand how to use a text editor and are careful and assume all responsibility for damage that careless typos might cause:

      Given a flatfile, open it in an editor! It's just a text file, and you might learn something. Taking a peek:

      $ head netmux.20160427-165833.flat 
      +X996100
      +S2
      +N256
      -R1
      !0
      "Limbo"
      -1
      -1
      1
      -1
      

      The +X line is the db format header; if it doesn't match this, you don't have a flatfile or you have a very very wildly different mush. That number is the decimal representation of a bitmask; see convert/omega/t5xgame.h. In hex, that's 0xF3304. The bottom 8 bits are db format version-- four, in this case.

      #define T5X_V_MASK      0x000000FFUL
      #define T5X_V_ZONE      0x00000100UL
      #define T5X_V_LINK      0x00000200UL
      #define T5X_V_DATABASE  0x00000400UL
      #define T5X_V_ATRNAME   0x00000800UL
      #define T5X_V_ATRKEY    0x00001000UL
      #define T5X_V_PARENT    0x00002000UL
      #define T5X_V_ATRMONEY  0x00008000UL
      #define T5X_V_XFLAGS    0x00010000UL
      #define T5X_V_POWERS    0x00020000UL
      #define T5X_V_3FLAGS    0x00040000UL
      #define T5X_V_QUOTED    0x00080000UL
      

      Running down the list, we can see that 0xF3304 indicates zone+link+atrkey+parent+xflags+powers+3flags+quoted features present, version four. No need to fuss with that, for now. The above was from an empty minimal.db setup; typical games will have +A records declaring attribute names. E.g.:

      $ head thereach.db.FLAT 
      +X996100
      +S21151
      +N113103
      -R415
      +A256
      "1:BBTIME"
      +A257
      "1:GET_GROUP"
      +A258
      "1:NXT_MESS"
      

      +S is the size hint, roughly the number of objects in the DB. +N is the next-attr-index; Minimal.db has only the builtins, but that larger corpus has 113k different attribute names. -R is the record count of connected players. Attribute definitions have the +Aindex and then a quoted string with the name. Inside the string, that 1: is info about the attribute's flags. Remember, the @attribute command stores attribute flags in the db-- and here's where they show up. e.g. on Reach we had &short-desc me=... visible to everyone, so sure enough:

      +A1887
      "2049:SHORT-DESC"
      

      So you can search for attributes by name in the +A area to resolve their index, and then pull up those indexes in an actual db object. Are we having fun yet?

      After the attributes stuff, if any have been defined, you'll see a !0, followed by some lines, then eventually <. That's your #0 object. In minimal, it has no attributes, so you have only the object number, name, and the minimal numeric fields for things like flags and owner, parent, zone, pennies, etc. For a more developed db, you might have something like:

      !0
      "OOC Polis"
      -1
      -1
      615
      135
      -1
      -1
      110
      139
      0
      0
      2
      0
      0
      0
      >219
      "Sun Jun 28 09:05:53.650895 2015"
      >6
      "^A188:0:We've moved onto Fallcoast! fallcoast.net - port 2009. Come visit!"
      >2824
      "^A974:0:ooc"
      >7772
      "^A103:0:%r%tThe Reach is a New World of Darkness (nWoD) game set in the fictional county of %xhDunlin's Reach%xn, Maine. It takes place between two towns that are separated by a swath of ocean; the mainland town, %xhAleswich%xn, is the economical and industry-driven capital of Dunlin's Reach, with the town of %xhDunlin's Port%xn being a rich, indulgent tourist town with a dark past.%r%r%tWe offer PCs in %xhVampire: the Requiem%xn, %xhChangeling: the Lost%xn, %xhWerewolf: the Forsaken%xn, %xhHunter: The Vigil%xn, %xhMage: the Awakening%xn, %xhGeist: the Sin-Eaters%xn and a variety of %xhMortal+ 'Sighted'%xn characters from Second Sight, World of Darkness: Immortals, World of Darkness: Inferno and the Book of Spirits to just name a few. This is the OOC room where players can kick back, relax and rest up to talk about dodging those crazy Great Old Ones.%r%r%tBecause if there's anything we hate about Dunlin's Reach, it's all the goddamn Elder Gods.%r"
      >250
      "000001FF FFFFFFFF"
      >19477
      "^A1003:0:yes"
      >29286
      "^A974:0:strcat( setq( c, sortby( fn_idlesort, filter( fil_notdark, lcon( %!, CONNECT )))), setq( w, widthcol( ncol( add( max( last( sort( iter( %qc, strlen( %i0 )), n )), 14), 4 ), words( %qc )))), vtable( iter( %qc, strcat( setq( a, edit( get( %i0/alias ), |, , )),setq( a, strcat( if( and( lte( strlen( %qa ), 4 ), strlen( %qa )), ansi( hx, %(%qa%))%b), singletime( idle( %i0 )))), setq( b, sub( %qw, inc( strlen( %qa )))), setq( m, edit( moniker( %i0 ), |, , )), if( lte( strlen( name( %i0 )), %qb ), ljust( %qm%b, %qb, ansi( hx, . )),ljust( %qm, sub( %qb, 3 ))... ) %qa ), %b, | ), 0, |, ansi( r, | )))"
      <
      

      The values of the object are > attrindex "value" -- but note that as with attrs there is some extra metadata, so you'd better use an editor that lets you see and manipulate control characters.

      >2824
      "^A974:0:ooc"
      

      What deviltry is that? Well, we look it up: >2824 is:

      +A2824
      "1:COORD"
      

      &coord was an attr used by the infamous +who command to show what "map" coordinate people were in for that area. But 974? That's a DBREF, likely of whatever jackass set that on the object.

      !974
      "Coventry"
      

      ...Oh yeah...

      But we wanted to know how to set a password, so back to minimal.db and it's #1:

      !1
      "Wizard"
      0
      -1
      -1
      -1
      0
      -1
      1
      -1
      1000
      19
      0
      0
      0
      0
      >218
      "Wed Apr 27 16:57:08.39992 2016"
      >219
      "Wed Apr 27 16:57:08.39992 2016"
      >30
      "Wed Apr 27 16:57:25.165357 2016"
      >49
      "20"
      >38
      "20"
      >5
      "$SHA1$qV3LDfRK6IPX$9M6Vg82nbN3IcXThVVS31aV/Yd0="
      >88
      "::1"
      >144
      "::1"
      >84
      "#1;::1;Wed Apr 27 16:57:25.165644 2016;;;;;;;0;0;;;;;;;"
      >222
      "Shutdown"
      >224
      "3 3 3 1 1461801448"
      <
      

      Many of you doing security work can see the answer right there; a SHA1 hash and associated Base64 encoded data. Can you reverse that to get a password out? Well, technically it could be brute forced depending on the strength of the password (and mush users have TERRIBLE passwords because they're all using unencrypted telnet anyway), but for most reasonable cases of manual examination, no. The hash isn't enough to log in with.

      But we only need to reset it, which can be done simply by replacing that line with an already known hash. For example, because that's a minimal.db, we know the above hash was generated from "potrzebie" and can just use that.

      Why >5 though? It doesn't show up in the +A records as it's a builtin. In attrs.h:

      #define A_PASS      5   /* Password (only meaningful for players) */
      

      Indeed, attr index 5 is password. And in db.cp:

      // The following 'special' attributes adopt invalid names to make them
      // inaccessible to softcode.  A small price of this is that we must
      // manually upper-case them in the table.
      //
      ATTR AttrTableSpecial[] =
      {
          {T("*PASSWORD"),   A_PASS,     AF_DARK | AF_NOPROG | AF_NOCMD | AF_INTERNAL},
          {T("*PRIVILEGES"), A_PRIVS,    AF_DARK | AF_NOPROG | AF_NOCMD | AF_INTERNAL},
          {T("*MONEY"),      A_MONEY,    AF_DARK | AF_NOPROG | AF_NOCMD | AF_INTERNAL},
          {NULL,                  0,          0}
      };
      

      So really, making password accessible as &password and returned in examine, etc would be quite easy to do-- it's just a really bad idea for security. Examining hashes like this requires shell access to the game, as it probably should be.

      We could construct a small script to do this sort of reset safely, but it's only needed for losing #1; wizards and such can already @newpassword people as needed. I'm not going to write such a tool though, as... omega already does it. See above.

      posted in Mildly Constructive
      Chime
      Chime
    • RE: Dune Coda Stuff

      @Ataru said in Dune Coda Stuff:

      Hi friends,

      Ominous already.

      So I've been away from MU*ing for over a year now ... returning to find WORA gone, Reach and much change. I've been lurking a bit and seeing what is happening in the community. It is good to see many names I recognize and look forward to RPing with again.

      Yay. I think.

      Anywho, while lurking, I've noticed in a few threads that there was interest in a Dune game.

      Hm. peeks at her forum signature. Yeees, there might be.

      Well, my Dune server is still up and running (I need to talk to @Chime about keeping it going and what I owe her and all, if she could ping me that would be great) and the wiki and I still have all my notes for news files, the grid and well everything.

      You're fine for now. Still trying to sort out my long-term plans for Mechanipus. Worst case, in a few months time I'll be looking to shut down the web side of things; looking into offsite wikis/forums/etc might be very helpful. Direct MUSH hosting I can maintain more or less indefinitely.

      I'll post a link to the wiki below as well as to the address of the game. I will hang out there if anyone wants to login as a guest (I think I need to turn CREATE on in the shell, I'll look into it, it might work already) and chat about it. If there is interest, I would be happy to complete its development and manage the thing. Its still the one setting I would be most keen to play as much as I miss WoD (or CoD now I guess).

      So if there is interest, let me know here or ping me on the game. I won't do it if its not really something people are after ... I'm happy to use the server space for something else which might be of more interest to people. Anywho, good to be returning to the MU* community!

      Interested. Not sure I have time, but interested.

      posted in Mildly Constructive
      Chime
      Chime
    • RE: What a refreshing feeling

      @Sammi --

      It was more than that, but the drop database bit looked cooler. No one really wants to see all of the

      cd /var/www/thereach/docroot/w/maintenance
      php dumpsomethingorotherIforgettherestbutyermumetcetc |xz -9 >~/reach.xml.xz
      cd ..
      rm -rf images/
      tar xJvf ~/images.tar.xz images
      cd
      rm -rf /var/www/thereach
      cp /home/mush/thereach/game/backups/somethingorother ~
      cp -r /home/mush/thereach/git ~/reachgit
      rm -rf /home/mush/thereach
      groupdel thereach
      userdel -r thereach
      a2dissite thereach
      a2dissite thereach-ssl
      service apache2 restart
      rm /var/spool/cron/crontabs/thereach
      

      and so on, and on. The guts are always ugly. Not sure appropriate alcohol/music to give it a sendoff. Leaning toward the Sound of Silence and a double of scotch.

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