10-02-2014, 11:22 PM | #1 |
Join Date: Oct 2012
|
rocks & grenades
Did anyone create rocks and grenades as ranged weapons for GCA?
It would help if I could select specific equipment in GCA to add to a character to have ranged stats for thrown weapons like rocks and Nageteppo (From DF) grenades. Maybe even different weight rocks (1/2 lb, 1 lb, 2 lb). I have custom equipment data files that I can cut and paste the appropriate code into if someone just posts the code itself. -thanks. |
10-02-2014, 11:57 PM | #2 |
Join Date: Aug 2004
Location: Binghamton, NY, USA. Near the river Styx in the 5th Circle.
|
Re: rocks & grenades
There are a number of grenades in the Basic Set data file, however all of the grenades there weigh 1 pound, so they use a simplified weight to ST ratio for calculating throwing range. I did write a test grenade which calculated range based on a variable thrown object weight; I never did write one which also calculated the thrown object damage. The correct full max range calculation follows:
Code:
rangemax(@int(_ (ST:Striking ST + _ @if(_ SK:Throwing::level = ST:DX+1 then 1 _ ElseIf _ SK:Throwing::level > ST:DX+1 then 2 _ else 0_ ) _ ) * _ @if(_ (me::precountweight/ST:Basic Lift) > 10 then 0.05 ElseIf _ (me::precountweight/ST:Basic Lift) > 9 then 0.06 ElseIf _ (me::precountweight/ST:Basic Lift) > 8 then 0.07 ElseIf _ (me::precountweight/ST:Basic Lift) > 7 then 0.08 ElseIf _ (me::precountweight/ST:Basic Lift) > 6 then 0.09 ElseIf _ (me::precountweight/ST:Basic Lift) > 5 then 0.1 ElseIf _ (me::precountweight/ST:Basic Lift) > 4 then 0.12 ElseIf _ (me::precountweight/ST:Basic Lift) > 3 then 0.15 ElseIf _ (me::precountweight/ST:Basic Lift) > 2.5 then 0.2 ElseIf _ (me::precountweight/ST:Basic Lift) > 2 then 0.25 ElseIf _ (me::precountweight/ST:Basic Lift) > 1.5 then 0.3 ElseIf _ (me::precountweight/ST:Basic Lift) > 1 then 0.4 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.75 then 0.6 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.5 then 0.7 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.4 then 0.8 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.3 then 1 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.25 then 1.1 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.2 then 1.2 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.15 then 1.5 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.1 then 2 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.05 then 2.5 _ ELSE 3.5_ )_ )_ )
__________________
Eric B. Smith GURPS Data File Coordinator GURPSLand I shall pull the pin from this healing grenade and... Kaboom-baya. |
10-23-2014, 09:51 PM | #3 |
Join Date: Aug 2004
Location: Alameda, CA
|
Re: rocks & grenades
I'm sorry could you explain that in "Captain Dummy Talk"?
EDIT: I copied the code. I hope I can figure it out by myself.
__________________
Fraser: "Could you elucidate, sir?" Welsh: "No, no. Not since the late sixties." Ray: "That's Canadian for explain." --- from "due South" episode Seeing Is Believing Last edited by flyingwombat; 10-23-2014 at 10:25 PM. |
10-24-2014, 07:02 PM | #4 |
Join Date: Aug 2004
Location: Alameda, CA
|
Re: rocks & grenades
So, I plug this formula for calculating the max range for a given size grenade. Right?
When I do, I get a blank space on my equipment selection for the "all categories" and the "grenades" submenu.
__________________
Fraser: "Could you elucidate, sir?" Welsh: "No, no. Not since the late sixties." Ray: "That's Canadian for explain." --- from "due South" episode Seeing Is Believing Last edited by flyingwombat; 10-24-2014 at 07:07 PM. |
10-24-2014, 08:01 PM | #5 |
GCA Prime
Join Date: Aug 2004
Location: Portland, OR
|
Re: rocks & grenades
Probably mismatched parens in the pasted entry.
__________________
Armin D. Sykes | Visit my GCA5 blog for updates and previews. | Get GURPS Character Assistant 5 now at Warehouse 23. |
10-25-2014, 01:29 AM | #6 |
Join Date: Oct 2012
|
Re: rocks & grenades
It worked for me. I just cut and pasted the code into a generic ranged weapon. Keep in mind, I simply wanted the range for thrown grenades and similar. Damage is just thrust damage here. It isn't modified for "Damage From Thrown Objects". But it does add bonus to effective strength for a high throwing skill, which is what I was looking for.
This is the exact text in my data file, substituting the above code for "above code": Rock, skillused(Throwing, DX-3, Dropping-4),above code, techlvl(0), lc(4), baseweight(1), basecost(0), damage(thr), damtype(cr), description(An ordinary rock, generally roundish. Use SM mods to make smaller or larger.), mods(Equipment) Last edited by Henchman99942; 10-25-2014 at 01:32 AM. |
10-26-2014, 02:02 PM | #7 |
Join Date: Aug 2004
Location: Alameda, CA
|
Re: rocks & grenades
I didn't get mismatched errors but I found that my editor, notepad++, tends to hide a character or two, thus causing errors.
Anyway, after some mucking about it works now.
__________________
Fraser: "Could you elucidate, sir?" Welsh: "No, no. Not since the late sixties." Ray: "That's Canadian for explain." --- from "due South" episode Seeing Is Believing |
10-26-2014, 08:14 PM | #8 |
Join Date: Aug 2004
Location: Binghamton, NY, USA. Near the river Styx in the 5th Circle.
|
Re: rocks & grenades
I was meaning to get back to this a while ago and never did. Anyway, here's the full "Thrown Object" write-up, which included damage calculations and range calculations based on a variable baseweight (which the user must set when adding the Thrown Object). You can use these same formulas in an object with a set weight simply be removing the x() tag and setting the name and baseweight() appropriately.
Code:
Thrown Object, basecost(0), baseweight([Weight]), x(_ #InputToTagReplace("Please enter a name for the Thrown Object:", name, "Thrown Object", "Thrown Object"), #InputReplace("Please enter the Weight of this object:", "[Weight]", "1.0", "Thrown Object")_ ), mode(thrown), damage(thr + @int(owner::basethdice * _ @if(_ me::precountweight > ST:Basic Lift * 4 then -1 ElseIf _ me::precountweight > ST:Basic Lift * 2 then -0.5 ElseIf _ me::precountweight > ST:Basic Lift * 1 then 0 ElseIf _ me::precountweight > ST:Basic Lift * 0.5 then +1 ElseIf _ me::precountweight > ST:Basic Lift * 0.25 then 0 ElseIf _ me::precountweight > ST:Basic Lift * 0.125 then -1 ElseIf _ Else -2 _ )_ )_ ), damtype(cr), rangemax(@int(_ (ST:Striking ST + _ @if(_ SK:Throwing::level = ST:DX+1 then 1 _ ElseIf _ SK:Throwing::level > ST:DX+1 then 2 _ else 0_ ) _ ) * _ @if(_ (me::precountweight/ST:Basic Lift) > 10 then 0.05 ElseIf _ (me::precountweight/ST:Basic Lift) > 9 then 0.06 ElseIf _ (me::precountweight/ST:Basic Lift) > 8 then 0.07 ElseIf _ (me::precountweight/ST:Basic Lift) > 7 then 0.08 ElseIf _ (me::precountweight/ST:Basic Lift) > 6 then 0.09 ElseIf _ (me::precountweight/ST:Basic Lift) > 5 then 0.1 ElseIf _ (me::precountweight/ST:Basic Lift) > 4 then 0.12 ElseIf _ (me::precountweight/ST:Basic Lift) > 3 then 0.15 ElseIf _ (me::precountweight/ST:Basic Lift) > 2.5 then 0.2 ElseIf _ (me::precountweight/ST:Basic Lift) > 2 then 0.25 ElseIf _ (me::precountweight/ST:Basic Lift) > 1.5 then 0.3 ElseIf _ (me::precountweight/ST:Basic Lift) > 1 then 0.4 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.75 then 0.6 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.5 then 0.7 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.4 then 0.8 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.3 then 1 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.25 then 1.1 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.2 then 1.2 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.15 then 1.5 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.1 then 2 ElseIf _ (me::precountweight/ST:Basic Lift) > 0.05 then 2.5 _ ELSE 3.5_ )_ )_ )
__________________
Eric B. Smith GURPS Data File Coordinator GURPSLand I shall pull the pin from this healing grenade and... Kaboom-baya. |
10-27-2014, 01:18 PM | #9 |
Join Date: Aug 2004
Location: Alameda, CA
|
Re: rocks & grenades
I've seen precountweight in data files, but what does it do?
__________________
Fraser: "Could you elucidate, sir?" Welsh: "No, no. Not since the late sixties." Ray: "That's Canadian for explain." --- from "due South" episode Seeing Is Believing |
10-27-2014, 01:37 PM | #10 |
Join Date: Aug 2004
Location: Binghamton, NY, USA. Near the river Styx in the 5th Circle.
|
Re: rocks & grenades
baseweight is the weight of an individual object. However, baseweight can be modified with add-ons (modifiers), so is not always accurate to the actual weight of the object.
precountweight is the weight of the individual item before multiplying for quantity (count) possessed, but after modifiers are taken into account. This is the actual weight of a single object, e.g. a single thrown projectile. weight is the weight of all quantity of objects, after modifiers are taken into account. So if I have five 1/2 pound objects with a weight multiplier of *2 (for whatever reason, Magic, Scope, whatever add-on it is) they will have baseweight(0.5), precountweight(1), weight(5). Of those three, when comparing ST to weight ratios we want to use the precountweight(1) to see how far you can throw one of those objects and how much damage it can do. weight(5) on the other hand is used for calculating encumbrance. baseweight(0.5) is the value that appears in the data file, because that's the basic weight of the original object; it is not likely to be used in GCA outside of calculating precountweight() and weight().
__________________
Eric B. Smith GURPS Data File Coordinator GURPSLand I shall pull the pin from this healing grenade and... Kaboom-baya. Last edited by ericbsmith; 10-27-2014 at 01:43 PM. |
Tags |
gca, grenade, rock |
Thread Tools | |
Display Modes | |
|
|