Steve Jackson Games - Site Navigation
Home General Info Follow Us Search Illuminator Store Forums What's New Other Games Ogre GURPS Munchkin Our Games: Home

Go Back   Steve Jackson Games Forums > Roleplaying > GURPS > GURPS Character Assistant

Reply
 
Thread Tools Display Modes
Old 11-24-2021, 10:10 PM   #1
MeddlingMonk
 
Join Date: Feb 2013
Location: Albuquerque, NM
Default How to code equipment that boosts Attributes

I have a TL10 character using a Heavy Battlesuit from Ultra Tech. The battlesuit is supposed to give +20 to Lifting and Striking ST, Basic Move +2, and Super Jump 1, but none of these are actually applied when I equip the suit. Is there a way to code the suit to automatically apply those bonuses when equipped?
MeddlingMonk is offline   Reply With Quote
Old 11-25-2021, 10:52 AM   #2
Armin
GCA Prime
 
Armin's Avatar
 
Join Date: Aug 2004
Location: Portland, OR
Default Re: How to code equipment that boosts Attributes

You'll have to add Super Jump to the character manually, and then go in to Edit and set the level to 0 to represent that the character can't do that normally.

Then, in Advanced Edit for your Battlesuit, edit the gives tag to include this value: =+20 to ST:Lifting ST, =+20 to ST:Striking ST, =+2 ST:Basic Move, =+1 to AD:Super Jump

That will grant the bonuses you're looking for.

Now for the annoying bit.

"When equipped" is not something GCA4 understands when it comes to bonuses and penalties, so I'm afraid you'll have to Enable > Bonuses Granted and Disable > Bonuses Granted manually for this, which are in the right-click menu.

(You can set GCA5 to deactivate items that are not in the current loadout, and activate them again when they are, which is what you'd want to do for this in that program, instead of doing this manually. The manual version in GCA5 is called Active/Inactive > Activate to activate traits manually or Active/Inactive > Inactivate to deactivate them manually, if you prefer that.)
__________________
Armin D. Sykes | Visit my GCA5 blog for updates and previews. | Get GCA5 now at Warehouse 23.
Armin is offline   Reply With Quote
Old 11-26-2021, 02:39 PM   #3
Angel Darkover
 
Join Date: Mar 2006
Location: Seattle, WA
Default Re: How to code equipment that boosts Attributes

I tend to use a slightly different method. It works similarly, but makes monitoring and observing (and remembering) much easier. I would create a custom advantage parent object and call it something like "Battlesuit Benefits" or some such. I would then add each advantage that is appropriate to the parent as well as the appropriate modifier to make them free. From there, I can simply enable or disable the parent as Armin spoke of. By taking this route, rather than modifying the equipment itself, it makes it easier to track down perceived anomalies - especially if the character file is handed to someone else, like the GM, who may not remember that such edits were made. It also ensures that the character keeps such elements should you need to do a resync.

Just to be clear, Armin's solution is precisely what you asked for, but this approach may be easier to manage, especially if you tend to use GCA directly (instead of printouts) while in gameplay as I do.
__________________
Madness takes its toll. Please have correct change.

Last edited by Angel Darkover; 11-26-2021 at 02:50 PM.
Angel Darkover is offline   Reply With Quote
Old 12-11-2021, 03:02 PM   #4
MeddlingMonk
 
Join Date: Feb 2013
Location: Albuquerque, NM
Default Re: How to code equipment that boosts Attributes

Thanks to you both for your suggestions; I was intending to reply after trying them out and let you know if they worked for me, but our game has gone on temporary hiatus for a few weeks, so I haven't had a chance! I'm actually trying out GCA5, so I'll probably go with Armin's technique.

Edit: Finally got in another gaming session, and Armin's technique worked great in GCA5. Thanks again!

Last edited by MeddlingMonk; 12-22-2021 at 11:08 PM. Reason: verified solution works
MeddlingMonk is offline   Reply With Quote
Old 01-12-2022, 10:43 PM   #5
MeddlingMonk
 
Join Date: Feb 2013
Location: Albuquerque, NM
Default Re: How to code equipment that boosts Attributes

I forgot that the weight of the battlesuit (480 lbs.) is not supposed to apply to your encumbrance when worn--is there a gives tag I can use to counter the weight when activated?
MeddlingMonk is offline   Reply With Quote
Old 01-13-2022, 11:10 AM   #6
Armin
GCA Prime
 
Armin's Avatar
 
Join Date: Aug 2004
Location: Portland, OR
Default Re: How to code equipment that boosts Attributes

Can't say that I've considered that before. Hmmm.

Okay, a couple options.

1) You can have the item simply negate it's own weight when active. Edit the item's gives() to include this bonus:

Code:
@if(@sametext(me::inactive,"") then 0 else -me::baseweight) to me::weight
When active, it weighs nothing, when inactive, it weighs normally.

2) You can create a new modifier, and have that do it. (You could then save that to a file and use it as needed.)

Create the new modifier, then edit it. In the modifier's edit window, have the name be something like "Carries its own weight" or something obvious. The cost should probably be 0.

In the gives() for the modifier, you'll do something a lot like the gives() above, but modified to suit a modifier by using owner:: instead of me::, so this:

Code:
@if(@sametext(owner::inactive,"") then 0 else -owner::baseweight) to owner::weight
I think either of those should do it.

Note that in both cases, we're checking to see if the inactive() tag is empty, which means it *is active* because the inactive() tag value will change depending on how it's inactivated, but will always be missing or empty if the item is active.
__________________
Armin D. Sykes | Visit my GCA5 blog for updates and previews. | Get GCA5 now at Warehouse 23.
Armin is offline   Reply With Quote
Old 01-14-2022, 04:37 AM   #7
MeddlingMonk
 
Join Date: Feb 2013
Location: Albuquerque, NM
Default Re: How to code equipment that boosts Attributes

Quote:
Originally Posted by Armin View Post
Can't say that I've considered that before. Hmmm.

Okay, a couple options.

1) You can have the item simply negate it's own weight when active. Edit the item's gives() to include this bonus:

Code:
@if(@sametext(me::inactive,"") then 0 else -me::baseweight) to me::weight
When active, it weighs nothing, when inactive, it weighs normally.

2) You can create a new modifier, and have that do it. (You could then save that to a file and use it as needed.)

Create the new modifier, then edit it. In the modifier's edit window, have the name be something like "Carries its own weight" or something obvious. The cost should probably be 0.

In the gives() for the modifier, you'll do something a lot like the gives() above, but modified to suit a modifier by using owner:: instead of me::, so this:

Code:
@if(@sametext(owner::inactive,"") then 0 else -owner::baseweight) to owner::weight
I think either of those should do it.

Note that in both cases, we're checking to see if the inactive() tag is empty, which means it *is active* because the inactive() tag value will change depending on how it's inactivated, but will always be missing or empty if the item is active.
Correct me if I'm wrong, but if I'm using GCA5 with its ability to automatically activate and inactivate the bonuses, I shouldn't need the explicit check for inactive, right?
MeddlingMonk is offline   Reply With Quote
Old 01-14-2022, 08:42 AM   #8
Armin
GCA Prime
 
Armin's Avatar
 
Join Date: Aug 2004
Location: Portland, OR
Default Re: How to code equipment that boosts Attributes

You are correct! When inactive, the bonus won't be applied, so the weight reduction won't be granted and the inactive item will weigh its normal amount.

I think I wrote it with the explicit check for inactive out of habit.

1) That would make the self-gives this:

Code:
-me::baseweight to me::weight
2) and the modifier gives this:

Code:
-owner::baseweight to owner::weight
Well spotted.
__________________
Armin D. Sykes | Visit my GCA5 blog for updates and previews. | Get GCA5 now at Warehouse 23.
Armin is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Fnords are Off
[IMG] code is Off
HTML code is Off

Forum Jump


All times are GMT -6. The time now is 08:01 PM.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2022, vBulletin Solutions, Inc.