Skip to main content.

Coded Puking, NPC Interactions, & Development Notes

posted by pilgrim

pilgrim
Posts: 270
Coded Puking, NPC Interactions, & Development Notes 1 of 31
Feb. 4, 2024, 12:12 p.m.

Coded Puking
---------------------

When people get drunk, they puke, but -- it's not very fun being code-forced to puke. Right now what this effect does is that it checks Constitution with a dice roll, and if you fail, you vomit. 

Since we put in the PUKE command which allows you to puke at will, what I'm going to do is take out the forced vomiting. I will just make the failure give a stronger nausea message, maybe some acid reflux or something. 

I genuinely apologize to everyone who's suffered from my maniacal puke-coding so far.



NPC Interactions
--------------------------

The ship is a contained space and the intrigue is chaotic, with several threads going on between PCs and NPCs alike. Accordingly, I've been doing a lot of NPC animation in order to realistically respond to how PCs might interact with NPCs. My attempts have been to aid in the suspension of disbelief regarding the general metaphysical-reality differences between PCs and NPCs. Since PCs are supposed to treat NPCS (and vNPCs!) as real people, it can be tough to be like "Well, I need to go talk to the merchant, but maybe she's not paying attention" or "Well, I need to have a chat with the First Mate, and yep there's Tekra right on deck, but there are no staff available to animate right now, so oh well..."

Because of that I've been previously very available for NPC animations and I'm concerned this may have set an unhealthy precedent for me. I can't always animate NPCs or respond immediately in-game. I didn't code in a way for staff to hide their visiblity while online, for transparency reasons (though sometimes the who list is buggy, especially if I'm actually logged-into an NPC, and I've been looking into fixing that but it's low priority -- those are the only times I'm online and don't look to be online). But, a lot of the time, even when I'm online, I'm partially-AFK (when you're wizarding, you don't incur the idle timer) or fixing bugs (there are a ton) or doing something else. 

I love animating NPCs but I have to step back from this a bit. So I'm asking the playerbase to give NPCs (and by extension, me) the same sort of grace you'd give a PC who is not logged in or is a sleep avatar or is possibly also AFK. Most of the time everyone's been really good about this. NPCs get distracted with their usual lives and routines, and everyone's been very believable roleplaying that like the Shipwitch is distracted listening to the wind, the First Mate's busy ordering sailors around, the Captain's probably drunk, et cetera. But just try to be careful about initiating NPC interaction in a manner that pretty much demands an immediate real-time response or causes a lack of believability in the story, because that has the potential to really make me feel drained.

We have a ton of bugs and I have to focus on them in the free time that I have. So, try to prioritize interactions with PCs -- there is really a huge amount of story hooks spread around amongst you and nobody has fully put the picture together based on all the information that PCs already have.

Development Notes
-----------------------------

Speaking of bugs! Evennia is an awesome codebase, but it's also very bare-bones and open to customization. The vast majority of Song of Avaria's mechanics have been pretty much coded from scratch. Many of us are used to playing games in alpha that are built on well-established codebases that already have a lot of bells and whistles -- or, games with relatively simple mechanics. However, everything is overcomplicated in Song, and that includes the code. So, fixing some things that might seem very simple are actually sometimes multi-day projects. There are a few multi-day projects coming up that I need to complete before we can even soft-open registrations again. Here are my priorities in that regard.

  • Any spur-of-the-moment game-breaking bugs that people might be encountering in the immediate course of roleplay in-game. These obviously have to be fixed swiftly for people to be able to play at all.
  • Vicinities: Many of the mechanics that involve vicinities need a serious revamp. Roughly 20 of the currently active bugs involve these bugs. The code is also very old, some of the first I wrote, and it's not very efficient. Fixing some of this code could improve any general lag issues that the game might be experiencing.
  • Combat: There are at least 50 active bugs regarding combat. Most of these have to do with how the combat pools don't seem well-contained, and I sorted most of those out, but relatively heavy use of the system through the Faded Zone and in the bilge have revealed many balance issues. I want to be able to fix these balance issues, and add new features, without slogging through painful three-year-old inefficient code. Combat has needed a revamp for a while, and it needs to be looked at even more than vicinities -- but since it may be dependent on vicinities, that's why vicinities take priority.
  • Character Generation: A lot of bugs surround character generation, in the in-game menu which didn't have as much attention paid to it as the website, and in the website with how data transfers to the game from html format when making character changes or establishing attribute values. This is obviously really important for being able to let people make characters, but as most people's characters are already made, it's low on the list.
  • Playstyle-Guiding: This has to do with some things we've noticed in terms of how people play the game. Our ideas about how the game should be played are one thing in theory and a different thing in practice. So, before re-opening, we'll probably limit or gate some frequently misused features while adding more improvements and incentives for underutilized features that we'd like to be utilized. This last item is low on the priority list, but might get implemented quickly because they should be generally short, quick fixes and we want to be sure to establish the playing culture how we want it from the start.


Thanks so much for all the patience and playtesting! We appreciate you a ton.
 

Feb. 4, 2024, 12:12 p.m.
This topic is locked.
Rostam
Posts: 77
Re: Coded Puking, NPC Interactions, & Development Notes 2 of 31
Feb. 4, 2024, 12:56 p.m.

Thanks for the updates, Pilgrim! I've been guilty of RPing with every NPC I can get my hands on, but I also totally respect the need to take a step back and work on the larger picture of the game. I'm looking forward to seeing what comes next!

Feb. 4, 2024, 12:56 p.m.
This topic is locked.
Zahra
Posts: 152
Re: Coded Puking, NPC Interactions, & Development Notes 3 of 31
Feb. 4, 2024, 1:58 p.m.

I just wanted to slide in here and make a note that I want it on record that I personally never expect NPC interactions. I come from MUDs where it's VERY RARE to get one-on-one time with a NPC and so I'm used to most of that sort of interaction being through IC letters or through me just letting the staff know that I have important information for NPC Bob and then waiting for Bob to get back to my character in his own sweet time.

Which means to say that you always scare the crap out of me when one of the NPCs just starts moving and talking to Zahra laugh It's always a nice surprise, though. BUT. Zahra lives in her head a lot, so sometimes she goes off on a tangent with internal commentary about certain NPCs and I hope it's obvious that this is never me, the player, trying to rattle the bars of your cage in the hopes of getting NPC interaction. Zahra's just being Zahra.

I think it might be helpful to start thinking about some official NPC etiquette, though, so people in general know best practices when dealing with the NPC population. Like what if someone really needs to ask the First Mate a question but doesn't want to make you feel pressured to come start puppeting in the moment? Is a think better and then letting you ping them later if you have a free moment to quickly RP it out the way to go? Or is a quick cutscene your preference? Definitely no rush on coming up with an official etiquette guide or guidelines like this, but I think it'll be very helpful for managing your RP load once we open back up, if we the players are all on the same page in how to go about those sorts of things.

Feb. 4, 2024, 1:58 p.m.
This topic is locked.
Yasin
Posts: 88
Re: Coded Puking, NPC Interactions, & Development Notes 4 of 31
Feb. 4, 2024, 4 p.m.

I second the notion of an etiquette guide - I think I've been somewhat the opposite of many, and have "too-much" avoideded having Yasin interact with the NPCs, partially because it hasn't been clear (to me) what level of interaction is "appropriate".

But in the mean time, I wholeheartedly agree with the sentiment in the thread, and honestly, at least in Yasin's case the lack of NPC interaction hasn't been an issue for me becuase there are so many amazing PCs running around who have been an absolute joy to interact with.

Re: the puking changes:This is the right change to make, but its existence has also led to incredible comedic timing ;-)

Feb. 4, 2024, 4 p.m.
This topic is locked.
Kinsa
Posts: 29
Re: Coded Puking, NPC Interactions, & Development Notes 5 of 31
Feb. 4, 2024, 4:43 p.m.

Re: playstyle-guiding, is there anything in particular that we should be avoiding doing that isn't necessarily obvious?

Feb. 4, 2024, 4:43 p.m.
This topic is locked.
Vahir
Posts: 6
Re: Coded Puking, NPC Interactions, & Development Notes 6 of 31
Feb. 4, 2024, 9:36 p.m.

I agree - treating NPCs like quest-givers or story-availability NPCs at beck and call will only put tons of time drags on staff. 

Personally, I love seeing the NPCs go about and do stuff on the ship - it feels like the ship's active and things are happening. I see them talking to each other, etc, its very much like cosynchronous theater. 

Perhaps cutscenes are the way to engage with NPCs in a slow-form way, but then again, tons of cutscenes might also cut into Imm-get-work-done time. 

Maybe there could be a way to request an NPC scene (optionally require 1 presence point or something so its not just stack-requested?).

Feb. 4, 2024, 9:36 p.m.
This topic is locked.
Esfandiar
Posts: 114
Coded Puking, NPC Interactions, & Development Notes 1 of 31
Feb. 4, 2024, 10:23 p.m.

I agree - treating NPCs like quest-givers or story-availability NPCs at beck and call will only put tons of time drags on staff. 

Personally, I love seeing the NPCs go about and do stuff on the ship - it feels like the ship's active and things are happening. I see them talking to each other, etc, its very much like cosynchronous theater. 

Perhaps cutscenes are the way to engage with NPCs in a slow-form way, but then again, tons of cutscenes might also cut into Imm-get-work-done time. 

Maybe there could be a way to request an NPC scene (optionally require 1 presence point or something so its not just stack-requested?).


originally written by Vahir at 05-Feb-2024 (02:36)


I love this idea.I personally would be more than willing to spend Presence whenever I need to have major interaction with NPCs.

 

It does maintain the theme of using Presence as a measure of one's investment in something (as was discussed regarding the Presence-gated skills). If no Presence is spent, then the Admin can feel perfectly okay with saying no or avoiding the interaction if they wish, no regrets, because if it were important the player would have spent Presence on it. It also prevents the issue of some people feeling more comfortable with asking and so getting more personal time, whereas others may NEED personal time but feel shy about asking - if there is a cost and everyone knows what it is, then you can choose to spend or not spend as part of an official game mechanic.

Feb. 4, 2024, 10:23 p.m.
This topic is locked.
pilgrim
Posts: 270
Coded Puking, NPC Interactions, & Development Notes 1 of 31
Feb. 5, 2024, 9:27 a.m.

Re: playstyle-guiding, is there anything in particular that we should be avoiding doing that isn't necessarily obvious?


originally written by Kinsa at 04-Feb-2024 (21:43)


There's a few things... none of them are really important, and none of them are things that anyone needs to feel sad about if they weren't playing with a specific playstyle. But cohesive game design has a playstyle in mind, and guides people towards that style with a combination of mechanical limits and incentives. They're not rules or like...decency boundaries, or anything like that, so you don't really have to worry. But since you asked, I'll detail a few.

  • We want people to be able to emote with each other while focusing on one thing at a time, not doing that awkward thing that plagues MUSHes where you end up addressing five people in a single emote and having five conversations at the same time. 
    • We're considering implementing a sort of character limitation -- either on the length of speech in a single emote, or on the separate instances of speech in an emote, or both. Not on the text of the emote overall; I'm wary of that because I've played such games and it does seem to hamper introspective detail on body language.
  • We want people to title roleplay logs, and attach logs, impressions, and dreams to their story arc developments.
    • The fix for this would probably be to scale the amount of received experience for a new development to how many attachments it has. Right now it's a flat 15. But maybe we actually start with 3, and then add 5 per attachment until it reaches 15.
  • We want people to use cutscenes responsibly and not in a way that substitutes for in-game experiences or avoids in-game realities. This is a tricky one because... cutscenes are so flexible, and we really do want players to use them, and that's why they can have substantial xp awards associated with them. But we've noticed private cutscenes on the list being used in a way that stretches the in-game reality -- just so nobody thinks I'm talking about them when I'm not, I'll be specific: the main issue we're seeing is that people are having private conversations in places where they would be incapable of having private conversations. A lot of in-game consequences have to do with people potentially overhearing your plotting and noticing you being sneaky. So, doing these kinds of things in cutscenes is kind of avoiding in-game consequences. I wouldn't say it's nefarious or some kind of abuse or something that a player should be reprimanded over, at this point. And sometimes you need to have a private conversation with someone that you can't catch online for whatever reason, so it's not necessarily even a wrong thing to do. But we do want to limit this, and keep in mind that a public cutscene is just basically something happening in a public place.
    • What we're considering is possibly a mechanical limitation on the number of private cutscenes that someone could do in a month. That should keep them purposeful and necessary rather than a substitute for in-game plotting -- and still allow people to have as many public cutscenes as they'd like.


We're still thinking about all this so feel free to make a discussion thread down in the suggestions board if you want to chat about it. There are other things too -- for instance, some PCs in-game have set up COHABITATION and send each other plot notes. This is wonderful and makes me really happy to see and I feel like this kind of behavior needs to be rewarded with some kind of mechanical incentive. 

 

----- other notes about this thread:

Vahir's Idea: This is a seriously great idea. I'd considered a sort of "request for NPC interaction" to be essentially whatever need is encapsulated in a PC's story, and then when we address that story, one of the ways we can do that is by animating an NPC. However, there are other ways to address stories -- it's basically just making the game world responsive towards your character's personal arc -- and maybe the player really wants to interact with a NPC in specific, or wants to do it outside of the current story arc they are pursuing. So, this is a really good idea. I also like how it takes the burden of ask-culture off the shoulders of guess-culture players. It's sad (I'd say heartbreaking but that's overdramatic of me) that some players may want or need NPC interaction but feel like they shouldn't ask for it. That's definitely not something we want people to feel when it comes to a fun game.

Progress Update: About 20% of the way through re-writing vicinities. I'm excited about it! But the weekend is over and I have to stop coding obsessively and do more real life stuff, so now the going will be slower.

Feb. 5, 2024, 9:27 a.m.
This topic is locked.
Zahra
Posts: 152
Re: Coded Puking, NPC Interactions, & Development Notes 9 of 31
Feb. 6, 2024, 12:47 p.m.

Cutscene Best Practices:

As someone who has to use cutscenes a lot to touch base with various off-peak people (or people who like me just can't really play during the day but I want to represent my character doing something active during daylight hours), I find myself suddenly HELLA PARANOID that I have been using the system in a way that staff would prefer I not. Hi, hello, I'm an overthinker. I definitely have done private scenes located in public rooms, though not to circumvent potential IC consequences, but just because most of the truly "private" places onboard the ship come with skill checks or social consequences for being there and so it feels borderline cheat-y to me to pretend to be there as that does feel like a direct attempt to circumvent IC consequences.

For me, those private scenes represent a whispered conversation within touch range, but if it was set to public, anyone could see what was said as there's no way to obscure speech using stat checks like in-game (and I can't even think of a way to properly represent that as it's not like you can roll against a character's skill while the player is reading a log on the forum, you know?) Or I use private scenes just as like, "My character stuffed a note under your character's sleeping body while they were... sleeping. Sorry for being weird." (Though I also try to actually go to the room and emote out this as well if I remember to do it so people watching my character can see her being weird in the live game world, too. Which totally happened last night and I hope that other player got a good laugh over my character being sus).

Private scenes also afford us the opportunity to just focus on that one player's writing we never get to focus on while live in-game because our current play space is pretty small and we normally group up all in the same room. Because why wouldn't we? But then that comes with the pressure (that I feel) to emote at all the other people in the room (because I don't want anyone to be excluded!) but now we're back to quickfire emoting rather than me being able to take my time and enjoy the prose and focus on just one person. I have this anxiety if I start setting my, "I just want to talk to Bob one-on-one," cutscenes to public that anyone can just pop into them and slow the cutscene down and take away from the original intention. I know there will be less of an issue with this once we're out of Alpha as we'll be in a bigger game world with more hidey holes for private conversations, but for right now, I will admit that while I LOVE EVERYONE (gosh you guys are all great writers with great characters), sometimes I just want to RP with one person in particular and there are few places to do that live on grid. Maybe there could be PUBLIC cutscenes, PRIVATE cutscenes and PUBLIC BUT CLOSED cutscenes that it's like, "You can observe this but not participate?" Maybe even the location part of a cutscene is a dropdown menu and so if you select a public room, the cutscene is automatically flagged to public... but then what about using cutscenes as a makeshift courier service which was already deemed kosher?

OKAY my rambling aside: I definitely recognize that if people are using private cutscenes to plot taking over the ship and murder a bunch of people while acting like they're in the middle of the galley having this sus conversation, that's not great. So the TL;DR of this, I suppose, would be that I would love some written guidelines for how you guys would prefer private cutscenes used while we're here on the ship, including practices for sending private mail since we don't have a courier onboard.

EDIT: Random thought. Maybe for now, if someone is doing a private cutscene in a public place, a rumor needs to be made about it? Like, "OI did you see Zahra whispering with Billy Bob over by his hammock this morning? I wonder what those two were plotting. Whatever it was, Billy Bob didn't seem too happy about it and Zahra left in a big huff." Or something. I dunno. Still working on coffee.

Feb. 6, 2024, 12:47 p.m.
This topic is locked.
pilgrim
Posts: 270
Re: Coded Puking, NPC Interactions, & Development Notes 10 of 31
Feb. 6, 2024, 2:14 p.m.

Aw, I'm sorry for probably aggravating a lot of people's anxieties over this. I really did not intend to do that. In general, the things you can do mechanically that are not against stated rules... are not anything we're going to get upset about at this stage. And we're not really upset about these playstyle-guiding things, we're just thinking ahead on how to direct the flow of the game's culture.

Right now on the ship we don't even have a courier system. So, naturally we have to make do with stuff like using cutscenes for sending notes. We don't have lodging for characters -- how would you even know which hammock belongs to which sleeping body, to put a real-time note in? A lot of this stuff you really can't do in-game right now because of alpha. So, you are blameless for using the established mechanisms that are available in order to tell your story. Please don't feel bad.

I kind of hesitated to respond to Kinsa at all because I don't want people to feel pressured about this when there aren't even documented guidelines in place and this stuff is relatively low priority. I appreciate the caring though.

 

Hopefully as alpha phase continues, we'll have more guidelines and documentation for things. For now, I think it's good to just keep in mind general respect and kindness towards each other, which I believe everyone is already trying to do in their own ways. Right now, I want us all to be as nonjudgmental and forgiving towards each others' playstyles as possible, until things will most likely kind of normalize down the road as the game settles.

Feb. 6, 2024, 2:14 p.m.
This topic is locked.
This topic is locked and you cannot reply.