Author Topic: Cyberware - Some things just dont work  (Read 1089 times)

Offline Anticheese

  • Hero Member
  • *****
  • Posts: 651
    • View Profile
Cyberware - Some things just dont work
« on: August 07, 2006, 07:34:28 AM »
At the moment I'm trying to expand the selection of Cyberware in my game, So I made a Flawfinding Eye - It spots weaknesses, I made a Gunnery Interface - It lets the pilot interact with his lasers, Then I made resistant muscles - They improve the recipients resistance to status effects. In theroy.

In reality there are some skills that Gearhead just wont let work with Cyberware, Among them are Resistance and Mecha Repair, But thats not where it ends.

Another gripe is that you cant have say, A mix of stat and skill bonuses, Or more than 1 skill being improved.

So, Can this be changed?

Offline peter

  • Jr. Member
  • **
  • Posts: 77
    • View Profile
Cyberware - Some things just dont work
« Reply #1 on: August 07, 2006, 07:57:18 AM »
Some skills don't work because the code uses NAttValue to get the skill rank directly, without checking cyberware.  This could be changed.  And while I'm at it, I could replace all those skill numbers with symbolic names, so it would be _much_ easier to search the code for all the places that whatever skill is used.

 You could make a multi-modifier by having it split into parts, with each skill being a subcomponent of the cyberware that actually gets installed.  Actually, this won't work because PartMod in SkillValue just searches the SubCom list, not SubComs of SubComs.  That could be changed easily.

 Hmm, PartMod only takes the highest single modifier to whatever skill.  This means having multiple cyber self-diagnostics is worse than useless, it's positively harmful, because each one contributes trauma.  No wonder they weren't helping as much as I thought they would.  Either let the skill mods be cumulative, or make up a cyber-slot for self-diags to go in!  (cumulative skill mods would allow a piece of cyberware to boost one skill at the expense of another.)

Offline Anticheese

  • Hero Member
  • *****
  • Posts: 651
    • View Profile
Cyberware - Some things just dont work
« Reply #2 on: August 07, 2006, 08:19:05 AM »
I
Quoting: peter
You could make a multi-modifier by having it split into parts, with each skill being a subcomponent of the cyberware that actually gets installed. Actually, this won't work because PartMod in SkillValue just searches the SubCom list, not SubComs of SubComs. That could be changed easily.


Interesting, Particulary the part about subcoms, Does this mean it would be feasible to say, Have a laser eyeball?

I
Quoting: peter
Hmm, PartMod only takes the highest single modifier to whatever skill. This means having multiple cyber self-diagnostics is worse than useless, it's positively harmful, because each one contributes trauma. No wonder they weren't helping as much as I thought they would. Either let the skill mods be cumulative, or make up a cyber-slot for self-diags to go in! (cumulative skill mods would allow a piece of cyberware to boost one skill at the expense of another.)


I think that if cyberware is to have cumulative effects, It should be along the lines of:

b = bonus/benifit, c = number of cyberware implants installed, n = normal value

When installing another unit:

if c = 0 then b = n else
b = n/(c*2)

So say you have two self diag units, This would mean the first contributes 3 skill points, The second contributes 1.5 and the third contributes .75

Actually on second thoughts, Its a crappy system. You should only be allowed to put one piece of cyberware in one slot, With some exceptions (I.E Eyes)

Quoting: peter
This could be changed. And while I'm at it, I could replace all those skill numbers with symbolic names, so it would be _much_ easier to search the code for all the places that whatever skill is used.


I'll look forward to it...

Peter Corde's Cyberware Improvement Patch

Reaver

  • Guest
Cyberware - Some things just dont work
« Reply #3 on: August 07, 2006, 09:01:04 AM »
While I see the point in what Anticheese says, please also note that most aren't just XXXX Eye. It's XXXX Eyes. Which means that we have a problem where Anticheese has two sets of them?

Offline peter

  • Jr. Member
  • **
  • Posts: 77
    • View Profile
Cyberware - Some things just dont work
« Reply #4 on: August 07, 2006, 05:53:56 PM »
Quoting: Anticheese
Interesting, Particulary the part about subcoms, Does this mean it would be feasible to say, Have a laser eyeball?


 Go Go Gadget Laser!

 Implantable weapons work now.  The code that looks for available weapons recurses over the whole subcom and invcom tree.  That's how it can find weapons installed in shields, or weapons installed in a mecha's arms.  What doesn't work is skill or stat mods on a subcom of a skill or statmod gear.

 I'll go change that...


Quoting: Anticheese
Actually on second thoughts, Its a crappy system. You should only be allowed to put one piece of cyberware in one slot, With some exceptions (I.E Eyes)


 I was talking about the case where two different cyber slots have cyberware that boosts the same skill.  e.g. muscultare and a skeleton that both have +Weight Lifting.  Since you can't add arbitrarily many, they should combine linearly.

 self-diagnostics don't have a cyberslot, so you can have more than one.  It is the sort of thing that maybe should be able to combine.

 Note that the "eyes" cyber slot is only one slot, not left eye and right eye.  If you wanted two different eyes, the game would have to let you choose which eye socket you wanted to replace.  While laser eyes sounds cool, an eye socket is a really impractical place to put a hot, high-powered weapon.  Mounting it on a shoulder, or hip, or forearm would make much more sense.  Although a laser cannon built into your hip could make sleeping or sitting in chairs problematic.  Esp. if it fired while you were dreaming...

Offline peter

  • Jr. Member
  • **
  • Posts: 77
    • View Profile
Cyberware - Some things just dont work
« Reply #5 on: August 07, 2006, 09:35:22 PM »
I'm going to reply to myself instead of editting my last msg, because it really is a new message.

 There are several places in GearHead that want weapons to be in modules, not other subcoms.  (The code that does the menus for selecting weapons checks InGoodModule.)  I already have modifier gears as subcoms of other modifiers working.

  I had to change IsLegalSubcom so it wouldn't delete the subcoms of modifier gears.  Unfortunately, there is code in the install cyberware function that finds all the places your cyberware can be installed, and it gives you a menu that lets you install the new piece as a subcom of any cyberware you already have!  This would let you daisy-chain multiple predator-reflexes...  :(  Unless there are plans to create cyberware that actually will show up as a subcom of your arm, rather than a sibling of your body and limbs, it would be easy to just take that functionality out, so it always installs as a subcom of the master gear.  BTW, there was a bug in that code anyway, since the index number of the master gear is zero, so it was letting me install cyberware anywhere but as a subcom of my character!  That was easy to fix, though.

 I think it would be best if gearhead would load things that can't legally be constructed.  Then designers could balance things, but players couldn't cobble things together.  I guess the subcoms wouldn't have done anything if I hadn't changed PartMod and CStat, so the check makes sense to make sure people can tell when something wouldn't work anyway.

 I guess I should upload this somewhere...  But I have to run right now, and it's not ready for use until I fix the install cyberware menu.  I don't know if I'll bother making weapons built into cyberware work.  I'll probably upload something later today, and post here about it.

Offline Joseph Hewitt

  • Administrator
  • Hero Member
  • *****
  • Posts: 2552
    • View Profile
    • http://www.gearheadrpg.com
Cyberware - Some things just dont work
« Reply #6 on: August 08, 2006, 12:50:38 AM »
I don't think that stackable skillmodifiers are a good idea. Notice that the cost of a skillmodifier gear is not linearly related to its bonus; if multiple modifiers could affect the same skill, not only would it be possible to boost key skills to undefeatable levels (imagine a +15 bonus to Mecha Piloting, for instance) but also the cost would be much less than if you had to buy a single implant with a large bonus.

As for stat-enhancing cyberware installed elsewhere in the body, the main reason why it is all stored as a direct subcom of the char gear is to improve the speed of the CStat function and the trauma checker.

How's this as an idea for implantable weapons: A new cyberware type which contains a weapon. When it's installed, the cyberware gear gets thrown away and only the weapon gets implanted. The cyberware gear should contain instructions as to where to implant the weapon (arm, body, head, leg). Only one implantable weapon can be installed in any body part.

Offline peter

  • Jr. Member
  • **
  • Posts: 77
    • View Profile
Cyberware - Some things just dont work
« Reply #7 on: August 08, 2006, 02:29:08 AM »
Quoting: Joseph Hewitt
it would be possible to boost key skills to undefeatable levels


 Only if equipment designers make bad decisions and make available too many skill boosting pieces of cyberware.

Quoting: Joseph Hewitt
As for stat-enhancing cyberware installed elsewhere in the body, the main reason why it is all stored as a direct subcom of the char gear is to improve the speed of the CStat function and the trauma checker.


 Sure.  Since skill/stat modifiers don't have any damage points,  it doesn't matter where they go.  Except that they should be disabled if the module is destroyed.  Most would beloing in the head or body, so that's a moot point.

 I actually got weapons in cyberware to work by changing FindModule, and allowing it to stop at a GG_Modifier as well as a GG_Module.  This is all that's needed to keep InGoodModule happy.  It's purpose seems to be to stop things in the general inventory from being used.  That function could be re-designed to just check whether the item is an invcom or subcom of the parent, and not make assumptions about what sort of subcoms the parent can have.  That would feel less ad-hoc.  My changes to support cyberware subcoms look a bit ugly...

Quoting: Joseph Hewitt
A new cyberware type which contains a weapon. When it's installed, the cyberware gear gets thrown away and only the weapon gets implanted. The cyberware gear should contain instructions as to where to implant the weapon (arm, body, head, leg). Only one implantable weapon can be installed in any body part.


 That sounds good, but would be hard to implement.  What about cyber trauma?  Or would there just not be any, because it's not interacting with your nervous system?

 Anyway, I have a patch ready that makes the following piece of cyberware work (which is designed for demonstration purposes only.  It's not something I particularly want in the game!):

StatModifier 1
Name <Scary Arm laser>
desc <A small laser and other nastiness built into your arm>
CyberSlot <FOREARM>
Type <CHARA CYBER>
Ego 1
Reflexes 1
sub
        BeamGun 5
        Name <Arm laser>
        desc <An implantable laser pistol.>
        Mass -4
        Type <INTERCEPT>
        Range 3
        Acc 1
        Speed 2

        Melee 5
        Name <Pincers>
        desc <A nasty-looking claw>
        Mass -3

        SkillModifier 1
        Name <Scary part>
        SkillModIntimidation
        SkillModAmount 2

        SkillModifier 1
        Name <Defense system>
        SkillModDodge
        SkillModAmount 2

        StatModifier 1
        Charm -1
end

 I'll send the patch to the mailing list now.  I'll upload a savegame with a character in Pirate's Point with some sample cyberware ready for Kira to install.  (And plenty of money, so you can implement something and find it at Kira's and buy it.)

EDIT: grrr, found a bug.  mecha cyberware (sentinel FCS, androbot self defence matrix) shows up as a legal install destination for other mecha cyberware.  That's no good, and I don't know how to make something allowed when it's loaded, but not allowed for engineering, except with some kind of hackish special case.

Offline Anticheese

  • Hero Member
  • *****
  • Posts: 651
    • View Profile
Cyberware - Some things just dont work
« Reply #8 on: August 08, 2006, 04:55:48 AM »
Quoting: peter
EDIT: grrr, found a bug. mecha cyberware (sentinel FCS, androbot self defence matrix) shows up as a legal install destination for other mecha cyberware. That's no good, and I don't know how to make something allowed when it's loaded, but not allowed for engineering, except with some kind of hackish special case.


var canengineer = 0?

Perhaps that would be the best method, If the file declares it as unengineerable (otherwise it assumes it can be used) then it wont be?

Speaking of modifications, A bit of a newbish question here:

How do I install gearhead patches?

Offline Epsilon

  • Full Member
  • ***
  • Posts: 241
    • View Profile
    • http://rgepsilon.deviantart.com
Cyberware - Some things just dont work
« Reply #9 on: August 08, 2006, 05:02:10 AM »
Quoting: peter

EDIT: grrr, found a bug. mecha cyberware (sentinel FCS, androbot self defence matrix) shows up as a legal install destination for other mecha cyberware. That's no good, and I don't know how to make something allowed when it's loaded, but not allowed for engineering, except with some kind of hackish special case.


It also shows up as installable in PCs, too. It won't install if you select it, though.

Offline peter

  • Jr. Member
  • **
  • Posts: 77
    • View Profile
Cyberware - Some things just dont work
« Reply #10 on: August 08, 2006, 06:31:19 AM »
Quoting: Anticheese
How do I install gearhead patches?


 You have to be able to compile gearhead from source, since a patch is a diff between two versions of the source code.  Patches can be applied with a program called patch.  google for diff patch.

 There was recent discussion about this on the mailing list, so do some searching.  It came up a month or two ago, as well, probably after I posted my first patch to improve the AI :)  At that point, patches were very thoroughly explained, thanks to several people.

 There ought to be a wiki page about patches...

Offline Tung Nguyen

  • Jr. Member
  • **
  • Posts: 96
    • View Profile
    • http://tunginobi.spheredev.org/
Cyberware - Some things just dont work
« Reply #11 on: August 08, 2006, 08:01:50 AM »
A good question which doesn't have an immediate answer: until now.

http://games.groups.yahoo.com/group/gearhead_dev/m essage/4193