https://evennia.blogspot.com/2018/09/evennia-08-released.html
After a year of work and some 540 commits from almost 20 contributors, Evennia version 0.8 is out!
Enjoy!
.
Griatch
https://evennia.blogspot.com/2018/09/evennia-08-released.html
After a year of work and some 540 commits from almost 20 contributors, Evennia version 0.8 is out!
Enjoy!
.
Griatch
I think many mechanics from the The Burning Wheel (link) would be interesting to bring into a MUD context. I would not run it in RL because I prefer much lighter-rule games if I GM myself. But the turn-based, 'programmable action' combat system in The Burning Wheel would be interesting to translate in some form. Same with its diplomacy, debate and social combat systems.
But overall, that something to take inspiration from rather than to try to port wholesale. A computer can run a system no human could expect to handle, so there is no reason to strictly stick to tabletop rules.
.
Griatch
@kumakun said in Potential Supernatural Game:
@faraday Nice! Ares is in Ruby right? I've always been curious about language. I'm leaning towards Evennia, because Python! but I'd /really/ like to work with Python 3+
Ruby and Python are pretty similar conceptually; each has their ups and downs, strengths and weaknesses.
Evennia is currently using Python 2. Next version of Evennia (0.8) which is soon coming out will be the last one to use that. Evennia 0.9 will use Python 3. But to be honest - I use Python 3 daily in a professional capacity and it's not like it's a big fundamental difference to switch between the Python versions.
.
Griatch
@Shincashay As a side project, I was at one time working on a contrib for Evennia that implements what is summarized in the Evennia for tabletop RPGs tutorial and then some. What I had in mind was the ability for a GM (or group of GMs) to announce stories for a limited number of players signed up for their particular game using a lobby-like setup. I pictured this literally as a way for people to run text-based tabletop systems for others rather than something MUSH-like though.
The project stalled since I work on finishing Evennia 0.8. But it's an interesting project I might pick up again some time. So if you have any technical questions concerning implementing your storyteller playground I'm happy to help trying to answer them!
.
Griatch
A user added an extra set of steps to the install wiki page, detailing how to set up the admin account with its tags etc. But it also details that you need to create a new character object to connect to. Is this correct? I seem to recall having a character already when connecting as superuser, but the text suggested also superuser needed to create a new char. I changed that but could you double check?
.
Griatch
I think the @mail
in Arx is their own design and not the one from Evennia's contribs. But it's good with input on things at any rate!
As for the help
bag-of-words search, yeah it's pretty primitive and it shows with a larger help suite. I've not had time to work on the help system in base Evennia since it was originally created many moons ago - it's one of the older parts of the code base. Do consider making a Feature Request with the changes/features you'd like to see so it's not forgotten and is tracked properly.
.
Griatch
Update: For our visually impaired developers I've now made it so each screen shot in the blog post above is a link to a text-only version of that screen. We have the luxury of using a text-based medium after all!
.
Griatch
https://evennia.blogspot.com/2018/08/inline-building-in-upcoming-evennia-08.html
This might be of interest to those using Evennia for their projects.
.
Griatch
Good luck with the game, @Cobaltasaurus, @coin (and others?)!
The story and world concept looks fun and interesting!
Since I develop Evennia, which Arx is based on, I tend to first look at game projects more from the technical side than from the player/world-building side.
I don't know where you are with the actual code-creation of the game (or if you are solely at the planning/world building phase) at this point. However, since you are new to Evennia/Python, I suggest starting early to consider how to technically build the coded systems you make plans for - make an inventory (ever so sketchy) over what can be borrowed/adopted from Arx and what cannot, for example. See if there are tutorials for particular concepts. Ask specifics in the Evennia support channels.
At a given level of coding experience some things may turn out to be pretty easy to do, other things less so - that can lead to changing your priorities for your first release.
You have a lot of base help from Tehom's Arx codebase now that it's released as open source. But Arx is still a very different game from what you have in mind, I'd wager. So getting familiar with 'vanilla' Evennia (by asking, reading docs and doing a tutorial or four) will be useful also if you plan to mainly work from Arx' template.
... Just some suggestions on the code side. If you need Evennia help, don't be shy to drop into the Evennia support forums or IRC/Discord (can ask here too, but I don't check here as often). We have plenty of people learning their way around Python while working on their games.
.
Griatch
@icanbeyourmuse Just so you know, if you don't like/is not familiar with Linux, you can run Evennia (and thus Arx) on both Windows and Mac too.
.
Griatch
@Tehom No problem, just thought I'd note down my process - it was not hard but if you are not familiar with Python/Evennia it's easy to get caught up in the details. I don't know if everything actually works as Arx wants it though - if so, do correct me as necessary (it's a wiki after all).
I've also linked the sources from Evennia's link page.
.
Griatch
I have put together a step-by-step instruction for installing and running this open-source version of Arx (as of Aug 12, 2018) with latest master-branch Evennia. I make some minor changes to have it comply with latest Evennia structure. Hope it can be of use and thanks again to Tehom for releasing the sources!
https://github.com/evennia/evennia/wiki/Arxcode-installing-help
An awesome move, @tehom! I might take a stab at installing this too, to check it out.
.
Griatch
@faraday said in A new platform?:
@griatch said in A new platform?:
In the Evennia case we use a two-pronged approach for this - if the web client's websocket connection fails or times out the web client transparently falls back to using old-style COMET long-polling. Haven't found any browsers having issues with that combination so far
That's why you don't see issues - because you've fallen back to not using websockets when they fail and/or are unavailable. A purely websockets-based solution is not reliable.
Well yes, that's why I pointed out a way that has worked very reliably for us. I doubt a solution like that would be impossible to implement in Penn on the server level?
.
Griatch
As for the reliability of websockets, the main issues we've seen had been on the game runner side, when not setting it up correcty. But yes, some people do have firewall or browser issues occasionally.
In the Evennia case we use a two-pronged approach for this - if the web client's websocket connection fails or times out the web client transparently falls back to using old-style COMET long-polling. Haven't found any browsers having issues with that combination so far. Not sure if Penn has anything like that on the Server side, but it can all have the same API so you don't need to worry about which type of connection was actually negotiated in the end.
.
Griatch
@thenomain said in A new platform?:
@friarzen said in A new platform?:
@thenomain What are these "spawns" you speak of?
Spawned windows. Using pattern matching to push input into a different screen. A lot of people use it for the channels that Faraday is accusing that we just plain put up with, tho a lot of people don't just put up with them if there are options. Atlantis (Mac) has them and Potato (cross-platform) does too.
Here's this thread of...dear god, two years ago.
For our webclient, Evennia is doing this on the server-side level in our development branch. The game dev can 'tag' messages coming from the server and the user can then divvy up their UI as they want (splitting and dragging panes around using spiffy JS) and assign one or more of those messages to go to the pane(s) they want.
.
Griatch
All in-text commands or links/exits in Evennia can be made clickable when you play in the web browser or in telnet clients supporting the MXP standard. This is not a magic bullet either though - many find reaching for the mouse a distraction and that it ruins the UI experience (such as it is). So some devs are really taking things like that to heart while others find it more of a distraction and don't bothger. The opinions on what is 'newbie-friendly' varies a lot.
That said, Evennia's default command style is just that - a default. It looks a little like MUX-style commands partly to make it feel a little familar but also because the original creator of Evennia came from MUX. But you can change the command syntax to what you like. We have devs who prefer more MUD-reminiscent syntax while others want a more 'natural language' style of commands similar to interactive fiction. So in this regard, Evennia is not helping to 'unify' command styles. It would just not make sense since Evennia can be used for (almost) any text-based game style. Heck, someone's making a rogue-like (top-down scrolling map and all) in Evennia right now!
Commands aside - if you are to roleplay in this style of game you'll need to enter text somehow; but even the very aspect of writing text is a hurdle for the 'mainstream' gamer ... I remember a comment by one of the guys from Iron Realms (the company running some of the few remaining commercial MUDs), noting that they loose most of their new players the moment they leave the graphical chargen and are presented with the text interface for the first time.
@tehom said in I made a Python-with-Evennia tutorial (looking for feedback):
@cobaltasaurus said in I made a Python-with-Evennia tutorial (looking for feedback):
I, um, have a dumb question but so far I can't find it in the documents. How do I get information about an object-- for example
location
?The @ex command is a staff command for returning a display with information on an object. You can also examine individual values in its attributehandler with
@ex <object>/<attribute>
.For a lot of things I tend to rely on using @py, which is a powerful command used for executing arbitrary python code. Like I'll frequently do something like:
@py x=self.search("whatever");x.do_some_other_call();self.msg(str(x.do_something(some_parameter)))
to see the return value of calling a method on some object.
@Cobaltasaurus Also, for completeness, note that you can skip the initial @
for all commands if you want (so examine
, py
rather than @examine
, @py
etc) or use some other prefix you prefer like +
, /
or &
(this is configurable in settings).
.
Griatch
@cobaltasaurus said in I made a Python-with-Evennia tutorial (looking for feedback):
@Ifrit helped me figure out the issue, and got me set up with a screen up (derpderp) so I don't have to try and stay permaconnected to the droplet.
Good, then you found out that 'the command evennia is not recignized' is because you've not started the virtualenv in your new terminal. On Linux, using screen
is a convenient solution, indeed.
.
Griatch
@cobaltasaurus said in I made a Python-with-Evennia tutorial (looking for feedback):
@griatch Every time I try to @reload or @reset the game, it typically freaks out and hangs. I have to go into the server and kill it, and then restart everything manually. This happens after I've changed a conf file like connection_screens.py or settings.py.
This should not happen and is not an issue I'm aware of. One thing though - is the console in which you started Evennia still running or did you close/kill it? If you close it you are likely killing the little process that is responsible for restarting the Server for you. You should keep that console running (You can minimize it); it's also where you get most log messages by default. Nothing is lost though - You just need to reboot the server manually. If that happens you can start another console, activate the virtualenv and run evennia start
from your game folder again - the Server will then start up without you disconnecting from the game.
( this is changing in the next version of Evennia which works differently in this respect and decouples better from the console also on Windows).
If this is not the issue I'll need to get more info from you on what you mean by 'it freaks out and hangs ' more specifically. Especially look for critical syntax errors in the log/console - this indicates one of your changes made your code (like in the connection screen module) not recognizable as valid Python and Evennia could not load it at all.
I suppose this is on Windows, using themaster
(default) branch of Evennia?
.
Griatch