Making the Gadgets Work

Making art was fun, but now the hard part: making this stuff actually do what I say.

A lot of the groundwork for these tools should already be in place. Systems in the game include:

  • Ability to restrict items to certain container types. (e.g. an app may only fit in a phone/tablet, while a program only fits in a laptop. But I could also make data fit in either container.)
  • Ability to launch an encounter by "using" an item (e.g. the Cryo window can be used to explore Exam Room 17)
  • Ability to create a new item from one or more tools and consumable ingredients via crafting.
  • Ability to make items bestow buffs/debuffs based on whether they are charged or not, and which slot they're in. (e.g. night vision goggles bestow night vision when worn on head, but nowhere else)
  • Ability to determine if an item is charged.
  • Ability to discharge an item when used, per-hour while equipped, per-hour all the time, or per-hex moved.
  • Ability to discharge and degrade an item when used as a tool inside an encounter.
  • Ability for player to add/remove charges to an item manually.

Based on the above, I think I can make different hardware types able to store different software items. I can also make held/equipped items bestow a buff/debuff (e.g. iSlab in lamp mode). I'm pretty sure I can launch a hacking encounter, similar to scavenging, by clicking "use" on an unlocked laptop. Once inside the encounter, players could choose cracker software to unlock phones, etc. Or they could use data-mining software on unlocked phones to get data "treasure."

That all seems straightforward. There are a few hang-ups, though, that I need to sort out.

For example, if a tool could be used in multiple ways, how would the user signal a mode change? E.g. how could the user switch between off, GPS, and lamp modes?

Let's say iSlab + GPS app = GPS iSlab. So far so good.
GPS iSlab + lamp app = lamp iSlab. Also good. However, how do we go back to GPS?
Maybe GPS iSlab + lamp app = lamp iSlab + GPS app. That works, as long as there wasn't another app inside the iSlab before crafting. What if there was a botany app, too?

I guess I could just say the apps are tools, like using trapping as a tool to get skin and meat, instead of just meat. That way, whatever apps the player had to start with are preserved. However, I'd have to make sure the newly-output iSlab gets those apps added to it again, because right now, any items inside a container just get dropped on the ground after crafting (to avoid being lost forever in a non-compatible output item).

Doing mode switching via encounters might run into the same issue, as it also adds/deletes items with each new screen.

Then, there's the question of access to apps while the tool is uncharged. Players can add/remove charges from an item in the inventory screen, so they may remove all charges from the hardware, making it useless. However, the game would still let them access apps to move around, illogically.

Plus, the game doesn't necessarily know which app is in which hardware when it comes to crafting or encounters. So any encounter or crafting operation is just going to show all available apps, regardless of which tool they're in (and whether that tool is charged).

So yeah, a bit trickier than I originally thought. Some time away from the problem might help, so I'll see how it looks tomorrow morning. Maybe a fresh brain will reveal something. And if not, there's plenty more to work on while this stews!

Comments

Tactless's picture
Tactless

Here's a list of hardware + app name combos for gadgets, according to what you've mentioned so far:

Broken X
X
X w/ GPS
X w/ lamp
X w/ botany
X w/ GPS+lamp
X w/ GPS+botany
X w/ lamp+botany
X w/ GPS+lamp+botany

where X = laptop, iSlab, or cellphone

The player can use a gadget only when it has charges in its battery.

When used, the gadget should consume a charge and trigger an encounter. Option selection checks the app names attached to the used gadget.

As for transferring/copying apps, you could create a USB flash drive. The laptop/iSlab encounter can check for a USB and give an option to access it. The USB encounter can have options to transfer/copy/delete stored apps (delete would free up app space after you create enough app variety).

Making a USB item would thus have its own list:

Broken USB
USB
USB w/ GPS app
USB w/ lamp app
USB w/ botany app
USB w/ GPS+lamp apps
USB w/ GPS+botany apps
USB w/ lamp+botany apps
USB w/ GPS+lamp+botany apps

Dualists: one soul, two bodies. dualists.wordpress.com

Embolism's picture
Embolism

As more apps are added the possible combination of apps would become unmanageable, so I don't think a unique item for every possible app combination is viable (assuming that's what you're suggesting).

UltimaVirus's picture
UltimaVirus

This is probably a bad idea, but how about there is an invisible "container" that contains electronics apps. That way the actual name of the device isn't modified and you can make the system check that specific items container for the relevant items. I suppose you COULD make this a visible place where only software can be loaded IF the unit is powered. Technically it might also simulate drive space when it's fill up, lol. :)

sugarskull's picture
sugarskull

So these devices could act as containers, with a certain number of spaces to store applications. The space being virtual, not physical, of course, but visible to the player like any other container, if the device is charged and powered on. Perhaps the user could craft or download software using the laptop. Then load it onto the applicable other devices like the phone. The laptop could store the most applications on the hard drive, and the smaller devices a very limited number. Thus, if the player wanted to use a certain application he/she might need to remove something else to make space.

Couldn't you just have "active" and "not active" versions of each application that is loaded onto the device to determine what buffs, etc. to apply? The user could open up the "virtual container" and use the right-click context menu to choose the status of each application. Also, the battery should drain faster if more applications are running, assuming you intend to allow multi-tasking. :-)

Malacodor's picture
Malacodor

Electronic items already have an inventory for batteries and if I remember correctly it isn't possible for an item to have two different inventories.

I don't really see a good solution with the current UI, so I'd say make something like an item modification screen, maybe put a switch on the crafting screen to toggle between crafting and modding. This interface should show all installed programs/apps, have a function to add more and one to select the active prog/app. The information about installed but inactive software would only be accessible for the mod UI and hidden for the encounter engine, which would only see the active software.

Ran around with a clown mask before it was cool

dcfedor's picture
dcfedor

Thanks for the brainstorming, guys. It helps seeing you think out loud with me.

Despite yesterday's excitement, I actually got some work done yesterday on adding a first draft of the laptop item. I'm going to try adding a right-click menu option that lets the user switch modes on the clicked item, such as "on/off" or "opened/closed." I should be able to define one or more such options per item, and I think I can make the game check if the mode needs power/charges/more inventory space.

Not working yet, of course, but it's a start!

Dan Fedor - Founder, Blue Bottle Games

Maklak's picture
Maklak

Another issue is how does the electronics stack? Tablets used to stack by 3, but with the whole on / off, empty / batteries / programs / data, hacked / unhacked and with electronics being containers, it seems that the only safe course of action is to make all electronics non-stackable. Well, maybe powered off and completely empty electronics could stack.

Oh and a powered off laptop could be closed and use up less space.