Devblog—May 16, 2017

Whew! Been a while since I’ve done one of these!

In all reality, life happened a bunch these past 2-3 weeks, and I kind of mentally shut down. My confidence flagged at being able to do stuff with the editor, and just looking at the icon on my screen became mentally painful.

But, now we’re back to (hopefully) our regularly-scheduled programming.


  • Added the home matrix node, which allows players to jack into the Matrix; from here, they’ll be able to connect to the New Orleans LTG (currently under construction).


  • Added the Mission Computer dialogue, which is to say I stole the Mission Computer dialogue from Hong Kong and stripped it of all of the entries save for menu decisions. From this framework, I can build my own emails, Shadowland BBS threads, etc.
  • Added a VidPhone dialogue, allowing players to remotely talk to other NPCs. Should they not be a Decker themselves, the VidPhone will allow players to hire a decker. Boot, being the crew decker, will come significantly cheaper (or just be free), but a merc Decker will cost nuyen to hire.
    • As of right now, the only Decker available for “hire” is Boot. Making other mercs will be a late-stage process.


  • Added functionality to the front door to send away NPCs tagged “isGuest”, which includes hire-on deckers, but this also sets the framework for the VidPhone to be used to bring NPCs into the space (and send them away).
  • Continued work on functionality of the garage. All items in every iteration of the garage are tagged so they all vanish on the scene load, and then the game looks at the player’s class from when they started the game and reveals a template of items suited to that class.
  • Added functionality to the Mission Computer that allows playtesters to change what the game thinks their player’s archetype is for purposes of the garage’s furniture, then re-sends the events that hide and reveal the respective prop sets. This way, playtesters can see all the garages without having to make new characters. This functionality may or may not make its way into the public release build.
  • Added stashes to each of the different garages, so they’re not just pretty rooms—they each have a function. This was one of my concerns about having customizable rooms (that is: “why?”), but giving the player a stash that’s represented by their starting class feels like at least the garage is functional.
  • Began writing some BBS conversation threads, because why not? Actually makes the setting feel very New Orleans-y, talking about New Orleans things. One is already complete, another’s in the works, and I’ll probably try and punch out at least one more for Episode 1. Maybe another 2 that unlock after Vitacorp.

One possibility I’m toying around with is shoving more hub functionality into the playerhome. With the Mission Computer there, it feels like that’s where my hub is going to be anyways, so I might as well get used to it. But I can’t imagine “investigation” by way of clicking on the right prompts on the mission computer is fun. Maybe. I’ll take a look at it and maybe draft up some investigation options and run it through playtesters. Right now, I can only handwave the events of the Hightower scene and Vitacorp, so if I throw in anything resembling an investigation, maybe it’ll actually work. We’ll see.


  • In order for the garage customization to work, the game needs to know what “class” the player made. So I’m piggybacking off of the script for the game’s initial equipment vomit (“Event_Addgear” for folks who tinkered in the editor) onto the player and adding a story variable that essentially matches the player’s class, or ties them to a class based on their favored attribute in the case of the “none” option.
    • Should the player for whatever reason just take no points in karma—not enough to trigger any “type”, the garage defaults to Street Samurai build. So something will show up.
  • Per playtester suggestion, I added a time limit to the amount of turns a player can spend in the “Hell escape sequence.” Essentially, the building is collapsing on itself and the player has to get out. Failure to do so before the bar indicates and it’s back to autosave. As of right now, the timer is set to 10 turns, but I may increase this to 12 because I interrupt the player’s movement twice. Hopefully people will stop fighting the overpowered fire spirits and make a break for the exit…*cough, cough, Dave, cough*
    • What might be fun is add some debris or make some more stuff collapse every turn or every other turn. Right now, the collapses are all on tripwires and behind the player to force them forward (or, rather, not let them retreat) and make sure to not block off their path, but having a few props “turn into rubble” would really give that organic “collapsing building” feel. A project for a later date, surely.
  • While testing the new countdown mechanic, I discovered a misscript (is that a word? It wasn’t a bug; I just scripted it wrong) where, if Sobeksis died, because he was on team Shadowrunner, it resulted in a game over. So I switched the game over condition to anyone with the tag “isClearTeam” meaning your human teammates. I also gave Sobeksis a built-in healing mechanic so he still takes a lot of damage from the fire spirits, but it should be a little more difficult to kill him.
  • With the new countdown timer, and now having read some Shadowrun fiction, I decided to go back and make the fire spirits in the Hell sequence resistant to normal damage and take normal damage from magical sources, which seems to fit the Shadowrun universe. The point is that they should still be incredibly difficult to kill, so much so that a player who attempts it will find themselves swiftly out of time to actually escape.


  • I broke the absolute goddamn tits out of my jumpy elf confrontation vignette, trying to fix/repair it to where I can have some animations in the case of an action(or actions) taken during the confrontation. A lot of this is similar to the Thibaut conversation situation (way back when I was working on the Hightower scene…remember those days?), except this time what I didn’t know was how to integrate actions mid-conversation.
    • The short version is…you can’t. You have to end the conversation on an event, trigger the event with the player selection, use the event to do your animations and then restart the conversation.
    • I’m still not really happy with where this conversation’s at, so work will continue on it next week. Chalk it up to being a learning experience!
  • Fixed a few problems with the Vitasec boys, so now they won’t (or rather, shouldn’t) react to the drone combat sequence, and when the conversation with them ends poorly, the door will close behind them (for good) when the player walks far away enough.

I still need to polish up the end of this mission. It just feels really loose and barely held together. As of right now, I’m sitting on 972 CPU, so any more triggers and I’m going to start pushing the limits of the scene. On the one hand, that feels cool. On the other…that’s trouble. So, we’ll see.

Dang. Looks like I got a lot more done this past week than I thought. Here’s to hoping we keep this momentum going!