Christopher Allan Webber [email protected]
Madison, United States
GNU MediaGoblin founder, former Creative Commons software engineer, python hacker, free software enthusiast, maker of weird drawings See: http://dustycloud.org/
-
2016-06-02T21:25:08Z via Pumpa To: Public CC: Followers
After all that MUD hacking I was doing, I keep accidentally typing "look" instead of "ls" in a terminal.
Alex Jordan , Ben Pfaff , Douglas Perkins , Claes Wallin (韋嘉誠) and 3 others like this.
Douglas Perkins , Douglas Perkins , Claes Wallin (韋嘉誠) shared this.
Show all 9 replies
@[email protected] that should be for a GUI hybrid version of ls that shows thumbnails next to the directory listing :)
To the North is a folder labeled 'PHP Projects'."
>> "Walk North"
"You have been pwned by a grue."
Alex Jordan at 2016-06-03T05:27:21Z
Elena ``of Valhalla'' likes this.
I often see a car mess ahead in the road and my first reaction is M-q (short for M-x fill-paragraph)
@[email protected] https://web.archive.org/web/20081214055409/http://www.xirium.com/tech/mud-shell/example/index.htmlKevin Everets at 2016-06-03T10:40:09Z
Jason Self , Christopher Allan Webber like this.
-
2016-06-01T20:51:24Z via Pumpa To: Public CC: Followers
So exhausted. Want to collapse on the floor instead of working on my TODO list. But I'm back at things again.
Sean Tilley , X11R5 like this.
It turns out collapsing on the floor for a while was the right idea after all.
Christopher Allan Webber at 2016-06-01T21:43:07Z
Nathan Willis , Douglas Perkins , Claes Wallin (韋嘉誠) , Alex Jordan and 3 others like this.
Sometimes a brief collapse can be a most transcendent feeling.Sean Tilley at 2016-06-02T17:44:05Z
Alex Jordan likes this.
-
2016-05-23T22:08:07Z via Pumpa To: Public CC: Followers
Hello everyone! I'm back! (Mostly.)
Almost everything is moved over to the new place, and my office is unpacked. As of this morning, the intarwebs are hooked up again too.
Busy week though: still a few things to move over, gotta clean the old place up, more unpacking and cleaning of the new place, babysitting a sick rabbit, Morgan's sister's wedding is this weekend, a bit of contracting, and a bit of writing. Whew!
Next week should be close to a return to normal...
j1mc , Alex Jordan , Claes Wallin (韋嘉誠) , sazius and 4 others like this.
Claes Wallin (韋嘉誠) shared this.
Welcome back! #sendingGoodVibrations
Laura Arjona at 2016-05-23T23:07:39Z
j1mc , Alex Jordan , Christopher Allan Webber like this.
-
2016-05-16T16:25:34Z via Pumpa To: Public CC: Followers
I've been behind on guix-devel, but apparently Guix has Content Addressed Storage support now. Yes!
Mike Linksvayer , Charles ☕ Stanhope , Sean Tilley like this.
-
2016-05-13T19:21:21Z via Pumpa To: Public CC: Followers
Packing my office... it's getting close, but boy am I sick of moving.
Sean Tilley likes this.
Show all 5 replies
@Doug Whitfield further out, unfortunately. We'll be in Verona, which is just west of Madison. About 8 minutes further out than we were before.
There are good things about the move but I don't really want to go into details here.
I meant like are you moving to Portland or something.
Yeah, I'm very well acquainted with Verona, although the last time I was back, they had added a DQ and one of the banks had changed to BMO. Point being, things may have changed since I was last there in November. -
8sync blog: Mudsync and the Lisp Game Jam Post-Mortem
2016-05-11T22:29:20Z via Pumpa To: Public CC: Followers
I wrote up a post on the 8sync site about Mudsync and the Lisp Game Jam. Hopefully interesting in some ways! (It explains why this links in with my long term plans, too...)
Sean Tilley , Jason Self , Charles ☕ Stanhope like this.
This was a really great blog post. I'm taking a look at your world examples to attempt to play with it and hobble something together from scratch for my own world.
Dumb question: under the "Object Types" of the "Utilities" section of the world, readable-actions and readable-commands appears to be defined twice, first as list, then as append/build-action.
I am unfamiliar with Guile's conventions, but why are things declared in this manner?Sean Tilley at 2016-05-12T02:39:44Z
Christopher Allan Webber likes this.
@Sean Tilley Good eye! First of all, commands and actions are not the same: "commands" are the user input an object can handle (such as "ring" in "ring bell") and which defer to an "action", which is what actors actually use to communicate to each other (a message has an action flag, and resolves to that). Messages are passed to action handlers (which are just procedures), and players never get to interact with this system directly, but that's how all the actors communicate with each other.
However, players do give text-based commands, like "ring the bell" and "sit on the couch" and "sign the form as deadsuperhero". These are commands! Commands take a few things: a verb, a command-handler (which includes a parser for the rest of the sentence and an assertion that the command really should go to this thing), and then... a mapping to an action! So yes, players never get direct mapping to actions (in a system like Guile, that would be a security risk), but their commands eventually transform into them, in a very controlled way.
Here's a problem though: what kind of commands should a actor handle? It turns out that you might want to handle different commands depending on your position in the location chain. The entire system in mudsync is based off of a tree: there's a toplevel object (which is simply the #f boolean), and then all rooms are children of that, and then everyone in a room is a child of that room, and all the stuff in your inventory is a child of you. So you can imagine being in a room: the room delegates a "say" verb to tell all participants in the room what you said, and that's the type of action as a container. Then there are all the co-occupants of the room, and these might have different verbs... eg you might "ring" the bell, or "take" the cuddles plushie. But then you might have different verbs when something is in your inventory: a sword might give you an "attack" ability, and you might want to eventually "drop" the plushie. Thus there are three command sets: "container-commands" (the room), "commands" (co-occupants of the room), and "contained-commands" (stuff in your inventory). (It's possible that the former and the latter should be renamed to "room-commands" and "inv-commands", even though it would be less accurate, but would be easier to remember the differences between.)
So, you can patch together groups of commands and actions willy-nilly; you don't have to rely on a complicated inheritance system. You want to be able to have a common take/drop command on this item? Sure! But maybe it's kinda pokemon-like, and you need to add a bunch of capture/foo verbs. Okay... now maybe it also needs to be able to dig into the ground because it has a special power where it can be used as a drill. But you also have a shovel, and you might as well have the same commands/actions for that.
Whew! That's a lot of things to compose. And in the current system, each of these things are built on simple lists (the O(n) cost is not severe becasue you're unlikely to get much higher than a few dozen on any given object) which means you can append them together to make just the set of things you need.
Of course, if you're making a pokemon-like thing, maybe all pokemon-like things have the same verbs, and kind of do inherit, and every object in the system inherits from , so it needs those methods, so for convenience I build not only thing-commands but also thing-commands*, which has the gameobj stuff pre-appended, so if you're just whacking on a couple of small additional features, you don't have to remember to add gameobj-commands if you're already adding thing-commands. Of course these map to actions so now you have to remember that all over again with the gameobj-actions and thing-actions!
So the short of it is: you can compose an actor to reuse multiple actor and command components, but the composition does not presently look very nice. It's a lot to keep track of. The good news is: it's in a ripe space for an additional abstraction that groups together command/actions into bundles and allows you to easily just say "I want the commands/actions from diggable-stuff and pokefoo-stuff" and it should be able to just easily glob all of that together.
That needs to be written, but it's on my mind.
This stuff is actually pretty simple, but it's kind of a lot of unnecessary wiring for the user right now, so I thought I'd explain in depth on how it works and why it's as complicated as it is. I hope to make it less complicated soon! Only so much time in the jam, and all that...
Hope that was interesting!
Christopher Allan Webber at 2016-05-12T13:16:01Z
Jason Self , Sean Tilley like this.
I appreciate the super-detailed answer; you've given me a lot of food for thought.
At this point, I'm cobbling a small world together, so I'm interested in studying your work and how things come together.
Another thing: as a convention, does it make sense to pre-define your verbs for specific objects (such as "ring the bell") or can verbs just be assigned to objects in a specific room?
For the hotel world, it seems that the first convention is used, but I could just as easily see a room-object with an array of actions and responses chained to it.
Sean Tilley at 2016-05-12T15:29:03Z
Christopher Allan Webber likes this.
@Sean Tilley I think it depends on whether or not the verbs "appear" to be tied to an object type or not. (And I may indeed have over-prefixed things!) If they aren't, I think you could just drop the prefix. Having nice mix-ins so you can cobble together just the right gameobj actor is a feature!
Christopher Allan Webber at 2016-05-12T18:34:58Z
Sean Tilley likes this.
-
#libregamejam wind down party in the MUD
2016-05-10T01:57:00Z via Pumpa To: Public CC: Followers
If you want to join me in #mudsync to party in the last 2 hours of the #lispgamejam : telnet dustycloud.org 8889 (or use tintin++)
Claes Wallin (韋嘉誠) , Alex Jordan , lostson , Jason Self like this.
Alex Jordan shared this.
https://notabug.org/cwebber/mudsync
telnet dustycloud.org 8889
Jason Self at 2016-05-10T03:02:37Z
Sean Tilley , Christopher Allan Webber like this.
-
2016-05-09T21:46:06Z via Pumpa To: Public CC: Followers
In the final stretch of the #lispgamejam. Just a couple more things to get in... then time to submit!
Jason Self , Sean Tilley like this.
-
2016-05-08T22:02:17Z via Pumpa To: Public CC: Followers
Feeling kind of depressed and anxious about my current productivity / capability despite feeling like I got a lot done this week.
Ironically, I think that means I need a break, or something. I'm going to lie down for an hour or something and listen to podcasts then try to get back to things.
Douglas Perkins , Alex Jordan like this.
After your break, you and your SO should take a walk down to a nearby park or shopping center. Being overly productive usually comes at the expense of "me-time" and time with family & friends.
[email protected] at 2016-05-08T22:56:37Z
Christopher Allan Webber , Douglas Perkins , EricxDu , Stephen Michael Kellat like this.
Best wishes. Take care of yourself - burnout is real! <3
Alex Jordan at 2016-05-09T06:51:55Z
Christopher Allan Webber , Douglas Perkins like this.
Best wishes. http://www.emilyherzlin.com/blog/2014/1/31/guided-mindfulness-of-body-meditation or similar might help you - it helps me.
Sumana Harihareswara at 2016-05-09T20:38:37Z
Christopher Allan Webber likes this.
You should remember the fact that you already do so much. :)Sean Tilley at 2016-05-09T20:45:27Z
Christopher Allan Webber likes this.
-
2016-05-07T18:53:52Z via Pumpa To: Public CC: Followers
All aspects of live hacking in mudsync working! I didn't think I'd have time for that in the jam! #lispgamejam
Sean Tilley , Jason Self , pingi like this.
-
2016-05-07T17:18:11Z via Pumpa To: Public CC: Followers
WHOA! The basics of live hacking work in mudsync! Just need to add a few things to update rooms to handle dynamic linking! #lispgamejam
Jason Self likes this.
Progress!Jason Self at 2016-05-07T17:25:27Z
Christopher Allan Webber likes this.
-
2016-05-07T14:03:14Z via Pumpa To: Public CC: Followers
MUD rpg while GM'ing an actual tabletop RPG today. Yikes! #lispgamejam
Elena ``of Valhalla'' , Jason Self like this.
-
2016-05-07T00:46:09Z via Pumpa To: Public CC: Followers
Bike ride, coffee shop trip, and trip to library with simple paper and pen have lead to good ideas for live hacking & the MUD. #lispgamejam
j1mc , Jason Self like this.
-
2016-05-06T21:03:20Z via Pumpa To: Public CC: Followers
mudsync server shut down for a bit while I get some new features in... and hopefully more live-hacking ones :) #lispgamejam #mudsync
X11R5 , Jason Self like this.
-
2016-05-06T20:02:47Z via Pumpa To: Public CC: Followers
Someone requested an "emote" command in the MUD and I live hacked it into the game while it was running! #mudsync #lispgamejam
Jason Self , Stephen Sekula , David Thompson like this.
-
2016-05-06T16:02:01Z via Pumpa To: Public CC: Followers
Finally have someone walking around my MUD with me! #lispgamejam
Jason Self likes this.
-
Lisp game jam updates: switching content focus to meet deadlines
2016-05-06T01:57:32Z via Pumpa To: Public CC: Followers
I have what's approaching a really nice engine, but not a lot of interesting content, as the jam end date is coming near.
Instead of focusing on something with a lot of coherent story which would take a lot of mental energy to get right, I'm building a "cabinet of curiosities" environment to play with. Hotel Bricabrac!
Jason Self likes this.
-
2016-05-05T03:31:49Z via Pumpa To: Public CC: Followers
I can now easily interact with objects in mudsync and write new commands. Finally, the real fun starts. Content authoring! #lispgamejam
David Thompson , Jason Self like this.
-
2016-05-04T20:36:57Z via Pumpa To: Public CC: Followers
Remembered an old conversation with Matt about adventure games, and remembering he isn't here anymore. :( I miss him.
Sumana Harihareswara , j1mc , Sean Tilley like this.
-
2016-05-04T19:09:54Z via Pumpa To: Public , Rob Myers , Jason Self CC: Followers
Thanks to @Jason Self and @Rob Myers for showing me so many interactive fiction resources in last year. Reading up was worth it! #lispgamejam
Jason Self likes this.