Evennia - a Python-Based Mu* Server


  • Coder

    @ThatOneDude said:

    Was there a link to the code to check out that I missed

    There were no links posted in this thread I think. Evennia's main homepage is http://www.evennia.com; from there you can get to our github page, documentation and forum/mailing list and dev blog as well as see feeds of latest development.
    .
    Griatch



  • @Griatch Thanks ;)

    Right after I posted that I found the site and got things up and running in no time on my mac... I have to say already this looks pretty badass.


  • Coder

    @Thenomain said:

    Without even looking, I bet I could set up Roles in Evennia. But until I do, I agree with you, @Derp.

    One of our developers (a former MUX guy) is making a contrib called "Collab" (contribs are optional more game-specific stand-alone plugins you use with Evennia). His Collab contrib is specifically meant for setting up a permission system and resources to track and allow safe in-game building. It adds object ownership and specific code-level access restrictions to Evennia. He's not in this forum I think but I'm sure he'd be happy to hear questions and potential feedback on it. You can find his in-progress pull request here.
    .
    Griatch


  • Coder

    @ThatOneDude said:

    Right after I posted that I found the site and got things up and running in no time on my mac... I have to say already this looks pretty badass.

    Cool, welcome to Evennia then. :)
    .
    Griatch


  • Coder

    Hello all you happy people! First post from me ever. Didn't know people were talking about me over here. Hi!

    @Griatch
    Yeah, I succeeded at the database conversion. Now I must specify this was optimized for my needs. What I have is simply a bit of code that will read the Penn outdb, locate the lines for different objects and attributes and retrieve information like parent, location, type, owner, and every attribute. It ignores locks, flags, etc. This tool is, at the moment, pretty crude but has allowed me to automate the re-creation of an entire game grid and import lots of data from people using my MUSHcode suite. It can't really 'convert a whole game at the touch of a button and interpret all the softcode' or anything miraculous like that, but this should allow me to, for instance, convert Exalted MUSH's existing characters and accounts and grid provided I've already coded all the Exalted stuff in Python first.

    @ThatOneDude
    New blood! Drop by the IRC later!

    @HelloProject
    Sometimes it feels like I am one of a handful of softcoders out there who give a darn anymore. As was said earlier, most of the sane ones have moved on other things. While there's a lot of merit to the conventions that softcoding has forged and I'm quite fond of PennMUSH, I think having avenues like Evennia around as an alternative for a more modern approach is more than welcome. I'm very much enjoying converting my extensive softcode package. If you want, you can observe my rather n00bish development progress on my Github.

    https://github.com/volundmush/mushcode for the old code I'm converting (which anyone's free to use if they want) and https://github.com/volundmush/athanor for the Evennia project.

    Sorry for the double-deleted post, didn't realize I could edit a previous one. Not sure how you guys are quoting one another and gotta figure that out now.


  • Coder

    This post is deleted!

  • Coder

    @Volund said:

    Not sure how you guys are quoting one another and gotta figure that out now.

    Select the text you want to quote and hit Reply.

    Welcome to my world, Volund. +1 for exposing your code repository. Thanks.


  • Coder

    @Thenomain said:

    Welcome to my world, Volund.

    Glad to be here, but dunno how much of an impact I'll have. Mass social media often intimidates me. :(


  • Creator

    @Volund said:

    Glad to be here, but dunno how much of an impact I'll have. Mass social media often intimidates me. :(

    You're one of the most likable coders around, you'll be fine.


  • Coder

    @HelloProject said:

    You're one of the most likable coders around

    And therefore I must crush you.



  • @Derp said:

    Which... doesn't mean that it isn't open to anyone who wants to learn, that just means that it's something that they'll have to put some actual work into, and maybe seek a mentor. Much like anything else anyone could ever hope to learn. But all of the documentation for it is included in the help files, along with examples and such, and outside of a few concepts which are rather buried, you need not ever really seek an outside mentor. It's all self-contained. But more importantly, it can be used within the game itself without having to worry overly much about server access. Ergo, open to anyone who wants to learn.

    Except that any MU user can create their own softcode to do specific things they want it to do that might not be important enough to implement game-wide, and they can do so without having to worry about server access, etc. Anything that could super easily break things is largely denied due to permissions. The same cannot be said of Evennia. It might not be something that a great many users ever pursue, but it's something that I find important enough to dissuade me from looking into Evennia.

    You've mentioned server access twice. You understand that "server access" in Evennia's case means a desktop, 2 minutes spent downloading a Python distribution, and a pulse. Right?

    There are literally thousands of hours of youtube videos explaining how Python works. There's absolutely no comparison. MU* softcode is as approachable as a purple, pulsating vomitorium.

    I appreciate your interest in softcode, mind you. I think that the world would be a better place if more people took a moment to think about functional programming. W.W.H.D., that's my moto. ;)

    But it just isn't tenable to hold up 'accessibility of code resources' as the primary thing holding MU* softcode at the forefront of text based online game dominance.



  • @Reason said:

    @Derp said:

    Which... doesn't mean that it isn't open to anyone who wants to learn, that just means that it's something that they'll have to put some actual work into, and maybe seek a mentor. Much like anything else anyone could ever hope to learn. But all of the documentation for it is included in the help files, along with examples and such, and outside of a few concepts which are rather buried, you need not ever really seek an outside mentor. It's all self-contained. But more importantly, it can be used within the game itself without having to worry overly much about server access. Ergo, open to anyone who wants to learn.

    Except that any MU user can create their own softcode to do specific things they want it to do that might not be important enough to implement game-wide, and they can do so without having to worry about server access, etc. Anything that could super easily break things is largely denied due to permissions. The same cannot be said of Evennia. It might not be something that a great many users ever pursue, but it's something that I find important enough to dissuade me from looking into Evennia.

    You've mentioned server access twice. You understand that "server access" in Evennia's case means a desktop, 2 minutes spent downloading a Python distribution, and a pulse. Right?

    There are literally thousands of hours of youtube videos explaining how Python works. There's absolutely no comparison. MU* softcode is as approachable as a purple, pulsating vomitorium.

    I appreciate your interest in softcode, mind you. I think that the world would be a better place if more people took a moment to think about functional programming. W.W.H.D., that's my moto. ;)

    But it just isn't tenable to hold up 'accessibility of code resources' as the primary thing holding MU* softcode at the forefront of text based online game dominance.

    I think this depends highly upon your outlook on a thing. In this case, I value this a great deal. Moreso than whatever snazzy innovation someone can fetch for me with Evennia -- and with softcode, I can do it with nearly -any- game, not just the ones that I choose to run myself. Something which Evennia cannot do, or match, without the softcode aspect.

    So no, server access is still important (or, more specifically, the lack of need for it on a MUX to make toys that do simple things), because ultimately you're going to want to make tools for the game you're playing on. Softcode allows you to do that without having to put something in the guts of the beast, in a lot of cases.



  • Yeah. Well, it's tough for me to continue here because you don't have a frame of reference beyond soft-code.

    So I can talk about "accessibility" and "utility" and attach shiny buzz words next to the modern programming capabilities that surround Evennia, but that's just really words on a page that you don't understand in a tangible sense.

    Because your experience as an aspiring coder is limited to a whitespaceless functional paradigm, typed into a chat client.

    So we can just agree to disagree. :)


  • Creator

    Is it constructive if I say, "Won't somebody listen to Reason?!"

    But really, @Reason makes a good point about Python. I don't -know- it, but after I've gotten better at C++ (I'm learning it for a specific reason), I plan to learn Python.

    They actually have a web based terminal for learning Python on Code Academy, without the need for even getting a compiler or anything.

    This website is the reason I know any code at all, because combing through piles of documentation as a non-coder made it really difficult for me (though documentation is now easier for me to understand -because- of this site): https://www.codecademy.com/



  • @Reason said:

    Yeah. Well, it's tough for me to continue here because you don't have a frame of reference beyond soft-code.

    So I can talk about "accessibility" and "utility" and attach shiny buzz words next to the modern programming capabilities that surround Evennia, but that's just really words on a page that you don't understand in a tangible sense.

    Because your experience as an aspiring coder is limited to a whitespaceless functional paradigm, typed into a chat client.

    So we can just agree to disagree. :)

    Alright. Since your knowledge of programming is obviously so much more advanced than mine, answer me this -- if the Evennia solution is everything it's cracked up to be, why can't something similar be done with it? Why can't people who want to learn Python upload their own things into it, strictly for their own personal use, on whatever game they want to go play at? If this is the Thing of the Future, and is all shiny and awesome, why can't it duplicate functionality that the 70's era un-intuitive softcode aspects are capable of doing?

    I talked about an actual drawback, and you brushed it off as 'silly baby coder, you don't know what real code is. Witness the awe and glory that is python, even if your feeble mind cannot comprehend it'.

    Simple Problem: I desire to be able to go into one of these games and create a customized thing that I can use for my own convenience so long as it doesn't mess with the 'big game things' and allow for blatant cheating, which I can currently do with minimal hurdles to jump through, but which under Evennia's system I've been told is impossible.

    So if it's such the thing of the future, then why can't something similar be implemented? Part of MUX's draw, for some of us, is the ability to do exactly that, so rather than dismissively telling me that I don't understand what its like to code in an awesome whitespace outside of a functional paradigm, why don't you tell me how this grand new system can address the concern that I have about using it?


  • Coder

    @Derp

    I'm not @Reason but at least from an Evennia technical standpoint there is nothing stopping you from offering in-game building tools as complex as you want, up to and including in-line flow-control tools (aka softcode).

    Our lack of more advanced builder sctipting tools like this has more to do with this being something quite game-specific (Evennia is game agnostic) along with no one having wanted it enough to add it yet: Evennia's command system should be flexible enough to handle it without any core changes.

    In-game scripting is only one aspect though. Remember, Evennia is a system for building multiplayer text games. Our policy here (right or wrong is up to you) is that for building bigger things, like combat systems, bbs:es, web integration, economic simulations, AI, rule resolution systems etc, we feel we are best served using real coding text editors/IDEs and professional workflow tools that have evolved for this purpose. We don't consider this a drawback over coding on the command line: This is a choice we've made, not a technical limitation.
    .
    Griatch


  • Coder

    I think @Reason and @Derp are talking past one another. @Derp wants in-game scripting and won't look at Evennia for its lack of it. It doesn't have to do with whether or not it's python, but that he can't tinker with code in someone else's game.

    I've had this conversation with @Thenomain before, but the number of people who come up this way generally came up through their own curiosity and I think they'd find another route if the platform changed.

    In the general case, most people just want to RP in a convenient, pleasant environment. Most game coders want to make usable and reusable code systems. Putting in a complex scripting system for the small percentage of people who refuse to play somewhere that doesn't let them use that game's code to make their own code isn't worth it. At the very least, it shouldn't be a minimum requirement to start making a game, but rather a "maybe someday".


  • Pitcrew

    @Griatch said:

    Our lack of more advanced builder sctipting tools like this has more to do with this being something quite game-specific (Evennia is game agnostic) along with no one having wanted it enough to add it yet: Evennia's command system should be flexible enough to handle it without any core changes.

    I think this quote right here might be a big part of the cultural issue. I have never MUDed, so don't know that culture but literally every MUSH/MUX I have every been on from the small maybe ten player total game to sprawling monsters what have over a hundred on at any point in time have had building capabilities. So it is not something that is really game specific or even genre specific, since I have played WoD, Superhero, Star Wars and Fantasy games in my time online.
    I am rather agnostic towards a new code base or interface but if the one you are suggesting takes away features that I know and use in the games right now, why as a player would I be motivated to make the switch?


  • Coder

    @ThatGuyThere said:

    @Griatch said:

    Our lack of more advanced builder sctipting tools like this has more to do with this being something quite game-specific (Evennia is game agnostic) along with no one having wanted it enough to add it yet: Evennia's command system should be flexible enough to handle it without any core changes.

    I think this quote right here might be a big part of the cultural issue. I have never MUDed, so don't know that culture but literally every MUSH/MUX I have every been on from the small maybe ten player total game to sprawling monsters what have over a hundred on at any point in time have had building capabilities. So it is not something that is really game specific or even genre specific, since I have played WoD, Superhero, Star Wars and Fantasy games in my time online.
    I am rather agnostic towards a new code base or interface but if the one you are suggesting takes away features that I know and use in the games right now, why as a player would I be motivated to make the switch?

    If you are not a game developer, I don't see much reason for you to be interested in a game development library, no. Evennia is a system for building multiplayer text games. If you are a developer though, you might use the tools Evennia offers to create whichever experience you want your players to have - be this MUSH-like or MUD-like or something new altogether.
    .
    Griatch


  • Pitcrew

    @Griatch
    Well I might not be a member of the exalted ranks of game developers, but I am concerned with the tolls being used in the games i play. so much like when people talk about engines for video games I pay attention to what is going on because it effects me.
    Nice condescension in your post, though still does not address my question of how is the new shiny thing better if it does not offer the features we have grown used to? Cause honestly if I logged onto a game and was told building was not possible I would log back off. And if you don't want to talk to us lowly non--developers there is a whole group for code talk. Where I am guessing most of us peasants don't post.
    There are essentially two important facets of a game to me, quality or role play, which is rather independent of code, and does the code have ht tools to help facilitate that role play.