PDA

View Full Version : How Do You Implement Cyberware?



Mike Serfass
July 16th, 2024, 00:03
There are a few methods of implementing cyberware.


Cyberware as items, like in IZ and Sci-Fi Companion
Cyberware as an Arcane Background
Cyberware as Special Abilities
Cyberware as Edges
Some other way


How do you implement cyberware in your games?

If you use the Edge approach, what do you set the edge type to? (I assume "Cyberware", but maybe not.)
If you use Special Abilities, how do you distinguish them as cyberware abilities?

I ask because I'm working on the SFC extension. I'm attempting to accommodate as many of the various methods as I can.

I'll be posting an update with cyberware to my SFC pre-release extension very soon where I implement

morgangould
July 16th, 2024, 00:28
In all my games it has been done as Items. I created loads for my Savage Sixth World campaign as well as mods for them. I run Rifts as well and that is implemented as items.

Lonewolf
July 16th, 2024, 08:42
Let’s face it, people are not going to be aware of how the effects system was coded and how it changed in the last few years. That is all that really matters here. Here is a very quick and dirty history so far.

Edges & Special abilities update the character sheet. i.e. A +2 modifier given in a Special Ability will appear on the die roll modifier stack interface and will be displayed over the skill. They can even call other abilities. Adding one can automatically give another. This is how we build up more complicated edge and abilities packages like Ancestry options.

A new derived stat can be added to character sheet and that can be changed due to this interaction. An Edge / Hinderance or Special abilities can access that stat directly without any additional code being added to the extension because they can update a character sheet. These are more powerful and yet require less code to set up. As result more books can be mixed since the less chance of having a hardcoded formular for maximum Strain.

However

Cyberware rules first appeared in 2014 on Fantasy Grounds Classic 2. They required an extension to activate today. Despite being in most cases permanent body modifications where limbs are organs have been replaced. Cyberware implants are treated as regular equipment items. They therefore cannot get access to the above system.

The extension adds an additional equipment tab. Has to set up additional data field for Strain calculation. This calculation is unfortunately hardcoded and therefore one extension doing this may be incompatible with other books with different calculations. This why we now have more than one extension for adding Cyberware.

Items can modify die rolls but don’t show these modifiers on the character sheet. They can be displayed on a text line under the item but will appear in modifier stacks on page one of the character sheet. This was never an issue because it was assumed that such bonuses are temporary and could easily be changed by equipping different equipment.

When Pathfinder for Savage Worlds was under development. It became obvious that we needed to be able add a bunch of extra modifiers to the equipment items. This has become very important where an item can have modifiers added. It also opened up the possibility for arcane items to have attached powers.

Therefore. We now have two systems in place. With different pros and cons.

1. Edges & Special abilities – faster set up and with greater compatibility. Active character sheets with displayed modifers. They can automatically add other abilities. Very difficult in books where cyberware has modifications although none exist. If Cyberware gives an Edge it is added automatically.
2. Items – well supported in many existing books. Can have modifiers attached and these only show in die rolls. Requires additional coding support but this is how we have always done it. So many books work together even where the extensions need change. If Cyberware gives an Edge it must be added manually.

A better option would be to fix the ruleset so there is no different pros and cons.

Lonewolf
July 16th, 2024, 10:36
Then there the problem of doing compatibility patching. For a system where there is added background maths calculations. Here is an example for IZ.

To set strain up the 2014 SFC is wrong so:

-- if Science Fiction Companion extension is enabled, clear overlapping features
if isScienceFictionCompanionEnabled() then
DerivedStatManager.unregisterDerivedStat("strain")

The new extension will also have functions that will need removed where have fixed numbers that conflict with later books. This is a bad way to collaborate. The only alternative where math is hardcoded is to have more code for an option system to disable it. There must be a better way of working with each other.

These setting variations can lead to some awkward game design choices. In a new science fiction setting book coming out on FGU in a few months. I will properly have strain on the character sheet even though the setting does not use it. This will cause confusion. If I remove it, then people buying the SFC to add to that setting are screwed because strain is used. Of course, If they also load IZ. Then I have no idea what happens with the new SFC.

For the new science fiction setting book. I am going to use the vanillia 2014 code that I sent you Mike. So there be no suprises hopefully. With luck people can swap it out for a new extention without problems if the data format is the same.

Lonewolf
July 16th, 2024, 11:13
If people want to see an attempt to smash together 3 conficting systems have a look at the 36 Archetypes included in the Revised IZ 3.0 players guide.

Cyberware are items and where they add edges these must be added manually becuase this can't be done automatically from an item. Where thing is on the cyberwear list in the book and is in fact a one use magic potion. It is a regular item becuase then it has equip buttons to turn it on and off. The regular cyberwear entry can't do that. However that book does come with 36 Archetypes ready to play now.

I am way down this rabbit hole on this topic as a publisher. Hence the tiresome long winded feedback. :hurt:

Jiminimonka
July 16th, 2024, 11:41
Cyberware is built into SWADE and can be activated with an extension just like Derived Stats.

I think the wah you do it in Sci-FI Test extension is fine.

Lonewolf
July 16th, 2024, 12:54
Cyberware is built into SWADE and can be activated with an extension just like Derived Stats.

I think the wah you do it in Sci-FI Test extension is fine.

Just don't load the Rifts Extension ;)

Jiminimonka
July 16th, 2024, 12:58
Just don't load the Rifts Extension ;)

The first SFC extension Mike did worked just fine with the Rifts extension. Cyberware can only be turned on once, same as Bases/Lodges/Headquarters.

Lonewolf
July 16th, 2024, 13:33
The first SFC extension Mike did worked just fine with the Rifts extension. Cyberware can only be turned on once, same as Bases/Lodges/Headquarters.
It is more complicated that turning it on. The first experimental build of the new SFC extension did not have Cyberware tab but I sent the code to activate it with the auto calculation for strain. If Rifts extention cope with the new two Strain values no problem.

Mike Serfass
July 16th, 2024, 14:21
@Lonewolf: Thanks for the history. I keep this in mind as I develop extensions. And thanks for sharing the code!

I added a setting to my SFC extension for cyberware with the three options given in the original post.
If you select Item, it will add Strain as per the SFC rules and add the cyberware list to the character sheet inventory. It also displays the Cybwerware button in the right side button bar.
If you select AB then no strain of cyberware inventory is displayed and no cyberware button.
Same with the Ability option. No cyberware gear or derived stat. I'm thinking of adding a Cyberware section to the Main tab under Abilities where cyberware edges and/or special abilities will list. When you drop a cyberware edge or special ability, it will list in that new section so you can see all your cyberstuff together.

Cyberware items make full use of the effects system, like gear and weapons. I attached pictures of cyberware items; one gives the Quick Edge, one gives Darksight (which affects vision on maps), the other adds bonuses to Shooting and Fighting.
When you drop the cyber item onto the character sheet, it won't update Traits like an Edge does. That may be something I could add. So the combat arm would add a bonus to the Fighting and Shooting Skills rather than keeping the effect, and the Hyper Surge would add the Quick Edge to the character sheet. Just like a dragged Edge would do.

I could add an option that allows you to select the formula for the Strain derived stat. I just need to gather all those various formulas. I don't think that would be very difficult to implement.

Would the above address some of the discrepancies and issues?
61313
61314

Mike Serfass
July 16th, 2024, 15:32
Please post the formulas you use to calculate strain.
Here's what I have so far:

Old SFC
Max Strain: lower of Spirit or Vigor die type
Strain causes Fatigue, up to 2 points; ceiling is max strain + 2.
Implemented as items; each item has a strain rating.


New SFC
Strain Limit: half the lower of Spirit or Vigor die type
Strain Max: lower of Spirit or Vigor die type
Exceeding strain limit causes side effect.
Exceeding strain max causes catastrophic failure.
Implemented as items; each item has a strain rating.

IZ 2
No strain limit, but exceeding unaugmented Vigor requires a Vigor roll with a penalty of Vigor die type - current Strain; failure gives 1 or 2 lethal Fatigue and may result in death.
Implemented as items; each item has a strain rating.

IZ 3
Strain Limit: unaugmented Vigor die type
Exceeding unaugmented Vigor requires a Vigor roll with a penalty of Vigor die type - current Strain; failure gives 1 or 2 lethal Fatigue and may result in death.

Sprawlrunners
No strain.
Implemented as Edges.

High Space
No strain.
Implemented as Edges.

Jiminimonka
July 16th, 2024, 16:13
Please post the formulas you use to calculate strain.
Here's what I have so far:

Old SFC
Max Strain: lower of Spirit or Vigor die type
Strain causes Fatigue, up to 2 points; ceiling is max strain + 2.
Implemented as items; each item has a strain rating.


New SFC
Strain Limit: half the lower of Spirit or Vigor die type
Strain Max: lower of Spirit or Vigor die type
Exceeding strain limit causes side effect.
Exceeding strain max causes catastrophic failure.
Implemented as items; each item has a strain rating.

IZ 2
No strain limit, but exceeding unaugmented Vigor requires a Vigor roll with a penalty of Vigor die type - current Strain; failure gives 1 or 2 lethal Fatigue and may result in death.
Implemented as items; each item has a strain rating.

IZ 3
Strain Limit: unaugmented Vigor die type
Exceeding unaugmented Vigor requires a Vigor roll with a penalty of Vigor die type - current Strain; failure gives 1 or 2 lethal Fatigue and may result in death.

Sprawlrunners
No strain.
Implemented as Edges.

High Space
No strain.
Implemented as Edges.


In Savage Rifts (currently) its:

Strain maximum is the lower of Spirit or Vigor die type

Rifts is getting a revamp soon (that could mean anything) but this is how it is now. It will probably be made to match the Sci Fi companion though.

Doswelk
July 16th, 2024, 17:14
As the person who is actually going to make the module (I have EVERY intention of just using Mike's code for the release*) I will code cyberware however the extension supports it, I'll let technical people who can code in lua make the decisions :D

* With his permission of course :)

Mike Serfass
July 16th, 2024, 19:47
Here are bennies as reward for feedback.
@morgangould
@Lonewolf
@Jiminimonka
@Doswelk
61320

Mike Serfass
July 16th, 2024, 19:49
As the person who is actually going to make the module (I have EVERY intention of just using Mike's code for the release*) I will code cyberware however the extension supports it, I'll let technical people who can code in lua make the decisions :D

* With his permission of course :)

That will make all the work worth while.
Plus, I'm adding code that will give me a benny every time someone uses the extension.
Let the bennies flow!