Author Topic: Mission rewards in a chat-based world  (Read 4230 times)

slickriptide

  • Elite Boss
  • *****
  • Posts: 356
Mission rewards in a chat-based world
« on: July 28, 2015, 11:37:22 PM »
Hi, ho.

If you've been following the "Technical Side" discussion at all, you'll know that some of us have been hard at work coming up with "XMPP bots" that can control a visible NPC inside the game. In lieu of an actual game server, this is one way we can bring the world back to some semblance of life outside of the players themselves.

We're a long way from having real "missions" as a possibility, but it's not too soon to begin a discussion about that burning question that any game has to address - Why run missions in the first place if you aren't rewarded for it?

Are rewards important? Yes. I don't know how many of you were around for the early days of City of Heroes but in the very beginning, the Cryptic devs, perhaps having played too much Everquest in their day, took the stance that street sweeping ought to be the main way to level up in the game. Missions were in the game but they were just a side activity, that barely generated XP.

The theory seemed to be that the payoff of doing a mission was supposed to be satisfaction of a job well done. That sort of worked in the early levels when any sort of XP was enough to level you up, and every origin had a unique mission or two that was only for that origin. Once people reached the first plateau in leveling XP, only the real story-driven diehards continued with missions. Everyone else just did endless street sweeping (which eventually led to the various strategies for perching and dumpster diving and other ways to massively improve efficiency).

Anyway, the point is, that until the game was reworked to become mission-centric and offer better XP for doing missions, people ignored them.

If a budding GM in Paragon Chat goes to a lot of work to implement a big adventure for people to play (however that might be managed, we don't care about particulars right now) he's going to be severely heart-broken if everyone ignores his work because, "Why bother?"

So, then - Given that we're in a world without actual combat (yet) or actual XP (yet) or inf or any other inherent in-game reward, what *CAN* we offer a player as a reward for playing with "mission content" that has been devised by a fellow player, whatever "mission content" happens to mean?

One possibility I've been toying with is the idea of an "achievement website" that a bot can interface with and record a player's activities. It wouldn't be "inf" or XP, per se, but it would be a cookie that a player could point to and say, "See? I'm a big damn Hero! Look at all the stuff I've done!"

So, what do you think? Let's brainstorm some ideas, throw some against the wall, and see what sticks.


Zombie Hustler

  • Elite Boss
  • *****
  • Posts: 264
Re: Mission rewards in a chat-based world
« Reply #1 on: July 30, 2015, 09:59:04 PM »
What if the reward of doing a mission is... an opportunity to do another mission?

Essentially, linked stories. As you complete one, you unlock one (or more) other stories that you can then run.

Might be a bit difficult to implement- certainly in terms of providing enough options to choose from so it isn't just one, next, next, next, but more branching options.

Vr2Lrose

  • Lieutenant
  • ***
  • Posts: 73
Re: Mission rewards in a chat-based world
« Reply #2 on: July 31, 2015, 05:58:46 AM »
I think an achiement website is an awsome idea.
Also consider AE used to offer Suveneers. which was just a textfile entry.
but if that kinda thing could be utilize  they could contain codes that could be
entered in a website to track/reward

Some guildsites like guildportal/Shivtr/enjin  have ways to give badges/webcurrency/perks
to guildmembers, so people could take advantage of those or a similar method.

Codewalker

  • Hero of the City
  • Titan Network Admin
  • Elite Boss
  • *****
  • Posts: 2,740
  • Moar Dots!
Re: Mission rewards in a chat-based world
« Reply #3 on: July 31, 2015, 03:53:16 PM »
I find your ideas intriguing and would like to subscribe to your newsletter.

I have some very early ideas I've been kicking around about how to do badges and such. It would involve a per-shard agent (XMPP bot on steroids) that players register with and is considered the trusted arbitrator of who has what badges. Since it's a serverside component, I'd like for this to be an open-source addon so that it could be used on other servers as well, though we'd likely run a pseudo-official Titan one.

As we already have some people working on XMPP bots, perhaps it's something we could all collaborate on. Python seems to be the language of choice so far, so it may be a good choice for setting up the framework.

Just some info dump and food for thought:

  • Need some sort of immutable unique account and character ID. Characters can be renamed at will (well, once I implement the command to do it), and so can XMPP accounts. It would suck if changing your global name resulted in losing all your progress.

  • Per-character badges (probably limited to the ones that exist in-game). Explore badges are the obvious choice to start with.

  • Account-wide achievements, can be anything we want.

  • Tracking website? Sekoia will kill me if I suggest resurrecting CIT, so perhaps something new? Social media features a la COH faces? Something Steam-ish?

  • Any stats that are tracked probably need some support code in Paragon Chat itself to register with the authorized agent.

  • There are some other pieces I'm working on to create a serverside shard-centric repository of data that is set up by the server admin and queried by Paragon Chat to enable certain features. Things like shard name, users with GM-rights, etc. This will probably take the form of a well known XMPP publish-subscribe node that is locked down so only server admins can publish to it. Official agents (bots) for various services could be registered here in a manner similar to XMPP service discovery. This support will likely land sometime in the 1.0.5 timeframe.

  • Need some form of authentication between the agent and Paragon Chat. Ideally this would be two-way, so that the bot can tell if the claims of achieving something came from the real (unmodified) Paragon Chat rather than someone manually writing XMPP stanzas.

Codewalker

  • Hero of the City
  • Titan Network Admin
  • Elite Boss
  • *****
  • Posts: 2,740
  • Moar Dots!
Re: Mission rewards in a chat-based world
« Reply #4 on: July 31, 2015, 03:59:30 PM »
Also consider AE used to offer Suveneers. which was just a textfile entry.
but if that kinda thing could be utilize  they could contain codes that could be
entered in a website to track/reward

I think the text of real souvenirs is actually sent by the server on demand. Which in this case is Paragon Chat. So it might be possible for custom ones to be delivered without having to resort to modifying the awful AE souvenir text file (which is not character specific, so it's kind of bad for RP).

slickriptide

  • Elite Boss
  • *****
  • Posts: 356
Re: Mission rewards in a chat-based world
« Reply #5 on: July 31, 2015, 04:38:35 PM »
I remember that titles were mutable to the extent that devs were able to grant custom made temporary titles when they took a mind to have some fun in-game.

If that functionality was possible to recreate via Paragon Chat, then that might be an interesting "cookie" to give someone for doing a player-made mission.

Golden Aurora

  • Boss
  • ****
  • Posts: 108
Re: Mission rewards in a chat-based world
« Reply #6 on: July 31, 2015, 05:29:56 PM »
I find your ideas intriguing and would like to subscribe to your newsletter.

I have some very early ideas I've been kicking around about how to do badges and such. It would involve a per-shard agent (XMPP bot on steroids) that players register with and is considered the trusted arbitrator of who has what badges. Since it's a serverside component, I'd like for this to be an open-source addon so that it could be used on other servers as well, though we'd likely run a pseudo-official Titan one.

As we already have some people working on XMPP bots, perhaps it's something we could all collaborate on. Python seems to be the language of choice so far, so it may be a good choice for setting up the framework.

Just some info dump and food for thought:

  • Need some sort of immutable unique account and character ID. Characters can be renamed at will (well, once I implement the command to do it), and so can XMPP accounts. It would suck if changing your global name resulted in losing all your progress.

  • Per-character badges (probably limited to the ones that exist in-game). Explore badges are the obvious choice to start with.

  • Account-wide achievements, can be anything we want.

  • Tracking website? Sekoia will kill me if I suggest resurrecting CIT, so perhaps something new? Social media features a la COH faces? Something Steam-ish?

  • Any stats that are tracked probably need some support code in Paragon Chat itself to register with the authorized agent.

  • There are some other pieces I'm working on to create a serverside shard-centric repository of data that is set up by the server admin and queried by Paragon Chat to enable certain features. Things like shard name, users with GM-rights, etc. This will probably take the form of a well known XMPP publish-subscribe node that is locked down so only server admins can publish to it. Official agents (bots) for various services could be registered here in a manner similar to XMPP service discovery. This support will likely land sometime in the 1.0.5 timeframe.

  • Need some form of authentication between the agent and Paragon Chat. Ideally this would be two-way, so that the bot can tell if the claims of achieving something came from the real (unmodified) Paragon Chat rather than someone manually writing XMPP stanzas.

The funny thing is you and I were on the same page thought wise kinda, CW.
Think i mentioned it back in http://www.cohtitan.com/forum/index.php/topic,11126.msg188776.html#msg188776
Don't think anybody noticed though.

Codewalker

  • Hero of the City
  • Titan Network Admin
  • Elite Boss
  • *****
  • Posts: 2,740
  • Moar Dots!
Re: Mission rewards in a chat-based world
« Reply #7 on: July 31, 2015, 05:45:14 PM »
I remember reading that, but at the time I didn't think it was workable because of the first item on my list -- renamed character loses association with whatever data the bot is maintaining for it.

To make it work, each character needs to have some extra data associated with it -- a unique ID of sorts, as well as an authentication mechanism to prove to any services that it's the owner of that ID.

Golden Aurora

  • Boss
  • ****
  • Posts: 108
Re: Mission rewards in a chat-based world
« Reply #8 on: July 31, 2015, 05:59:25 PM »
Oh I see what you're saying.
Because anyone can make a chara called CodeWalker for instance.
There needs to be a unique hash stored (or something) of your JID + Charaname.

As long as you have your hash and it's semi private, the renames shouldn't break.
You could provide the original charaname if it ever needed validation.

Codewalker

  • Hero of the City
  • Titan Network Admin
  • Elite Boss
  • *****
  • Posts: 2,740
  • Moar Dots!
Re: Mission rewards in a chat-based world
« Reply #9 on: July 31, 2015, 06:06:47 PM »
Except that you can also change your JID. Because your global is tied to that, we gave people the ability to rename their Titan accounts...

slickriptide

  • Elite Boss
  • *****
  • Posts: 356
Re: Mission rewards in a chat-based world
« Reply #10 on: July 31, 2015, 06:22:09 PM »
As I recall, Codewalker, you had replied to my queries about JID-related issues to the effect that:

1) Paragon Chat doesn't care what your resource is set to when you login

2) The character is indicated by the nick you use to log into a chatroom. I might be misremembering this one.

Could you register with the central authority, and have that authority assign you a personal token and then require that a player use that token as the resource portion of their full JID? That way, the token would be independent of the base JID but still "portable" in a sense.

Of course, there's still the issue of verifying that the person presenting the token is the owner of the token.

Codewalker

  • Hero of the City
  • Titan Network Admin
  • Elite Boss
  • *****
  • Posts: 2,740
  • Moar Dots!
Re: Mission rewards in a chat-based world
« Reply #11 on: July 31, 2015, 06:30:20 PM »
(2) is not quite right, it doesn't care about the nick either, as nicks must be unique but character names don't. The character name is pulled from the <pc><character/></pc> stanza in your presence.

The token doesn't need to be in the resource, it might as well be exchanged over a private session rather that being displayed to the world.

slickriptide

  • Elite Boss
  • *****
  • Posts: 356
Re: Mission rewards in a chat-based world
« Reply #12 on: July 31, 2015, 06:46:11 PM »
That makes management easy then. You just deal with account names and character slots instead of character names, and if someone updates their global ID then they just have to update that on the central authority as well. If the central authority was available for consultation by any registered server, then it would be a part of the design that it could support multiple global ID's.

I could start a character on Titan's server, then carry it over to my supergroup's personal server and record my activities on that server back to the central authority, then go back to Titan's server later and pick up again there.

Golden Aurora

  • Boss
  • ****
  • Posts: 108
Re: Mission rewards in a chat-based world
« Reply #13 on: July 31, 2015, 08:04:10 PM »
Except that you can also change your JID. Because your global is tied to that, we gave people the ability to rename their Titan accounts...

Oh I see. I forgot about that functionality altogether.
That makes it impossible to identify someone unless you're using IP based logging or something without changes which require tying a persistent ID to you.

One thought: Although it doesn't take care of everything, I'm sure TitanNetworks has a persistent id tied to all the logins created for the Titan Network Key, or whatever it was called. That -could- be a reliable way to identify someone.

The downside is it's Titan Specific and not very generic.