Developing a WoD Codebase for Ares
-
There. I made a topic for you.
-
I am living in hope for the day when someone makes WoD (properly) available on Ares. I think that will revolutionise it as we won't be beholden to the same tired old cadre of people to build and run them.
-
@pacha said in So I read a thing... [Yet Another City of Hope Hate Post]:
I am living in hope for the day when someone makes WoD (properly) available on Ares. I think that will revolutionise it as we won't be beholden to the same tired old cadre of people to build and run them.
I'm actually working on this, albeit somewhat half-assedly. Trying to learn Ruby right now, but I managed to learn MUSHcode and even get MUX's fucky implementation of regular expressions figured out, and this cannot possibly be that much harder.
Please do not disabuse me of this notion.
-
@rusalka said in So I read a thing... [Yet Another City of Hope Hate Post]:
@pacha said in So I read a thing... [Yet Another City of Hope Hate Post]:
I am living in hope for the day when someone makes WoD (properly) available on Ares. I think that will revolutionise it as we won't be beholden to the same tired old cadre of people to build and run them.
I'm actually working on this, albeit somewhat half-assedly. Trying to learn Ruby right now, but I managed to learn MUSHcode and even get MUX's fucky implementation of regular expressions figured out, and this cannot possibly be that much harder.
Please do not disabuse me of this notion.
From what I have seen, Ares is surprisingly straightforward once you figure out how all the moving pieces play together. Once you have an overview of how it works, adding new stuff into it is a snap. I managed to create an entire DnD-style polyhedral dice roller that can take roll comments the first week I was tinkering with it, and if I can do it, anyone can.
-
So the problem with WoD and Ares is not Ruby, it's that if you want to properly put WoD into Ares, you're going to have to recode many of the plugins that come along with Ares. On the surface this may not seem like a big deal, but Faraday is really good about adding new features to Ares and keeping it up to date with bug fixes and the like.
So that means every time there's an Ares update, you're going to have to go in and make some changes line by line to keep everything working with a lot of the custom code.
Don't get me wrong, I think Ares is great, but I don't know that Ares is the best solution for a large scale RPG system like WoD/CofD just because there's going to be a lot of work after the initial coding is done to keep things maintained.
-
@rucket Hmm, this is good to know. I'll have to look into it more.
-
@rucket said in So I read a thing... [Yet Another City of Hope Hate Post]:
So the problem with WoD and Ares is not Ruby, it's that if you want to properly put WoD into Ares, you're going to have to recode many of the plugins that come along with Ares. On the surface this may not seem like a big deal, but Faraday is really good about adding new features to Ares and keeping it up to date with bug fixes and the like.
So that means every time there's an Ares update, you're going to have to go in and make some changes line by line to keep everything working with a lot of the custom code.
Don't get me wrong, I think Ares is great, but I don't know that Ares is the best solution for a large scale RPG system like WoD/CofD just because there's going to be a lot of work after the initial coding is done to keep things maintained.
I mean, is there though? If you're not using the FS3 plugins, it's all pretty barebones. I can't think of anything off the bat that would conflict with whatever custom game system you wanna put in, or anything in barebones Ares that would need to be recoded in order to make it work? What kind of roadblocks are you running into?
Also given that we've turned to game development we should probably move this to an appropriate place.
-
@rusalka said in So I read a thing... [Yet Another City of Hope Hate Post]:
@rucket Hmm, this is good to know. I'll have to look into it more.
I haven't tried creating a fully realized Chargen in Ares yet, but surely, custom plugins act as mixins, meaning that you can over-load pretty much any part of the base game without running into problems with updates later?
I've created a space system, inventory system and a few other things that did not affect my ability to update because the code was all isolated to my own plugins. -
@derp said in So I read a thing... [Yet Another City of Hope Hate Post]:
Also given that we've turned to game development we should probably move this to an appropriate place.
I warned everyone about making me do work here, but if you want me to move this discussion I would be happy to do it so that I can lay into this shithole of a game to my heart's content without worrying about clipping a conversation in passing.
-
leaves offerings of machine oil and the purest catnip on Gany's altar
-
-
Thank you for splitting this, sorry for derailing. Please continue to fill the other thread up with gossip about CoH, because I love that shit.
Okay, so Ares. I've peeked at the code tutorials, and it looks like the main problem, if there is one, would be updating the plugins. If you adjust them, you can't automatically update them with a script. Which means you have to do it by hand. Which means bugs, pretty much inevitably.
This seems like it shouldn't be a huge issue if the base plugins are coded well: things like tasks, mail, etc., shouldn't need to be rewritten for WoD, and the FS3 system plugins wouldn't be used in the first place. The one thing I can immediately think of that might be an issue is the room, desc, and movement systems - I don't know if you'd have to adjust the base plugins to allow for Umbral/chimerical/whatever stuff. Ideally, I'd hope you could just layer a WoD plugin on top of the basic movement, desc, and room plugins, but I don't know if that's possible because I've just started looking at this.
People who're more familiar with Ares, does that summary seem right? Any pitfalls I'm missing? I might not have touched this codebase before, but I know enough to realize that how code seems like it should work and how it actually works can be two very different things.
-
@rusalka said in Developing a WoD Codebase for Ares:
I don't know if you'd have to adjust the base plugins to allow for Umbral/chimerical/whatever stuff.
I mean, this could be a problem if you think about it purely from the way that MUX did it.
Fortunately, there is no need to do that. You could create just a new subsystem with commands for those things and values assigned to the character object that pulls them like any other attribute.
auspex/check
Or whatever.
Then it's just a matter of lining up the appropriate command with the appropriate data point on the character bit. Doesn't have to be in the desc plugins at all.
-
@ganymede said in Developing a WoD Codebase for Ares:
There. I made a topic for you.
-
Oh good not a double post!
Also also:
You could actually create a whole new file under the same root command. So you could tie it into 'look' and just add certain conditions, and then put that file somewhere in the .gitignore
So that it doesn't get the auto-updates from Ares.
So you could do like:
look/auspex
And then in your new file you could create something like:
cmd.root_is?(look), cmd.switch_is?(Auspex)
And since it's in the same -- class? I forget which one. I think it might be class. I'd have to double check. It'll just pull it automagically but keep them in different files.
Or something like that. I forget the exact details because it's been a minute and I'm rusty but there is a way to put your custom stuff in a place where the base Ares stuff won't cry but also tie it into base Ares stuff.
-
-
My advice, copied/pasted from the Ares forums when someone asked "how much work would it be to do cofd/wod rules in Ares".
A couple of folks have looked into this before, and it really comes down to what you mean by “CoD Ruleset” and what your vision is.
Ares is designed to accept skill systems as plugins. By this I mean the ability to have a character sheet, to set stuff in chargen, and to roll dice within the context of scenes. This is a big job (especially for a pen and paper RPG system) but it’s certainly feasible to do that for CoD.
However, CoD games have traditionally included a lot more code than just the skills system. Immersive code like that “reality level” stuff or real-time “blood tracking” systems don’t mesh well with the scene system, web portal, and asynchronous RP. And they would be impossible to build as a plugin because they affect multiple core systems.
Also, Ares systems are built with OOC cooperation in mind. For example - profiles are public, plots are public, there aren’t advanced faction permission controls and stuff. I’ve never really played on CoD games, but I’ve been told that they tend to involve more OOC obfuscation or antagonism. A game like that would not be a good fit for the Ares platform.
-
@derp said in Developing a WoD Codebase for Ares:
Or something like that. I forget the exact details because it's been a minute and I'm rusty but there is a way to put your custom stuff in a place where the base Ares stuff won't cry but also tie it into base Ares stuff.
That doesn't work quite the way you're describing here. It can be done, but it requires modifying the base 'desc' plugin because that's where the 'look' command and its other switches already live.
Adding new commands can be done without affecting core code. Changing existing commands is where you run into the issues that @Rucket was describing.
Now someone could make a WoD plugin complete with a WoD desc plugin (to replace the core one) and a WoD rooms plugin and a WoD scenes plugin and... it just gets unwieldy at some point.
So in summary: doing chargen and rolls? Easy. Doing the immersive stuff? Use Evennia or Rhost and save yourself a lot of trouble.
-
@faraday said in Developing a WoD Codebase for Ares:
However, CoD games have traditionally included a lot more code than just the skills system. Immersive code like that “reality level” stuff or real-time “blood tracking” systems don’t mesh well with the scene system, web portal, and asynchronous RP. And they would be impossible to build as a plugin because they affect multiple core systems.
Also, Ares systems are built with OOC cooperation in mind. For example - profiles are public, plots are public, there aren’t advanced faction permission controls and stuff. I’ve never really played on CoD games, but I’ve been told that they tend to involve more OOC obfuscation or antagonism. A game like that would not be a good fit for the Ares platform.
Honestly, the vast majority of people who play WoD/CoD would probably be more than okay with dropping the "reality level" and "blood tracking" stuff (at a coded level, anyway). Most recent games on MUX don't even use them, not to any real extent (if at all).
The antagonism and stuff is also less prevalent than before. Really, I could see a CoD game working find on Ares; those things aren't necessary, they're actually usually just artifacts from the way MUs have been doing those games for so long, people think that if a new game lacks them, it's wrong. It's not.
-
@coin said in Developing a WoD Codebase for Ares:
Really, I could see a CoD game working find on Ares; those things aren't necessary, they're actually usually just artifacts from the way MUs have been doing those games for so long, people think that if a new game lacks them, it's wrong. It's not.
Sure, but it all comes down to expectations. You can play WoD on Discord or a forum with no code whatsoever. There's been at least one Ares game that used WoD just with hand-crafted PDF sheets and the generic die roller.
Like I said - if all you want is a sheet and some roll commands or whatnot, it'll work just fine. It's only the immersive and PVP aspects that potentially are an obstacle, depending on what vision you have for the game.