|
Post by krusader74 on Oct 14, 2016 6:53:28 GMT -6
I composed a JSFiddle to generate Boot Hill 1975 edition characters. You can then pick a weapon, specify any combat bonuses and penalties (like movement, wounds, surprise, range or experience), and it computes First Shot and To Hit. Successful gunfight experience improves Accuracy, Bravery and Speed, as per the rules. It also computes Exact Hit Locations, including any modifiers from using shotguns and scatter guns at short or long range. Only the basic rules are implemented. And Brawls (punching/grappling tables) aren't implemented yet. The source code is here. Feel free to use/modify it however you want. It's pure JavaScript, no external libraries. The title text is an image generated using the free Colt font at FontMeme. So far, I only tested it with Firefox version 49. Here is a screenshot:
|
|
|
Post by krusader74 on Oct 18, 2016 1:24:02 GMT -6
I updated this today with the following changes: - New: Attack button rolls to see if an attack on an opponent succeeds and calculates hit location and wound severity
- New: Defend button rolls to see if an attack on this character succeeds and calculates hit location and wound severity. It deducts damage from the Strength ability. It also tracks wounds to the left and right arm, switching hands if the "wrong hand penalty" is less than the penalty for wounds to the dominant hand. It pops up an alert box if your character dies, falls unconscious, or can't fight anymore because both arms were blown off. There's also a button to reset wounds.
- New: You can now supply custom ability and experience scores in the query string of the URL, rather than randomly generate abilities and start experience at 0.
- New: Documentation on how to use it (see below).
- Reposted it on my Pastebin to make it easier to download.
- Updated: The screenshot in the OP to reflect the changes
With these changes, you could make two characters in separate browser tabs/windows and have them duel. You'd just need to copy and paste the calculated "To Hit" percentage (after choosing a weapon) from each to the "Opponent's chance to hit you" input box of the other. Then use the "Defend" button on the target (rather than the "Attack" button on the firer) since that tracks damage. Here is the documentation, which is also embedded as a Markdown-formatted comment at the top of the HTML in the Pastebin version: NAMEBootHill.html - Boot Hill 1E character generator SYNOPSIS BootHill.html [QueryString] DESCRIPTIONThe simplest use is to load the page into a web browser without a QueryString. If you are loading it from your local filesystem, you will likely be using a URL like so: file:///C:/Users/krusader74/Downloads/BootHill.html Then follow these instructions: - Hit the Generate Character button to randomly create a new character.
- If desired, increase the experience with the + Won / + Lost buttons.
- Choose a weapon from the drop down list.
a. This makes a stat block for the weapon with its range, rate, speed, etc. b. It also computes First Shot and To Hit c. You can add modifiers like movement, surprise, range, etc. - To attack an opponent, click the Attack button. This randomly determines if you hit. If you hit, then it rolls randomly for
a. Hit Location b. Wound Severity - To defend against an attack, input your opponent's chance to hit and damage modifiers, then click the Defend button. It randomly determines if you're hit. If you are, then it determines
a. Hit Location: If you are hit in your right arm, then the program automatically switches to the left arm and applies the wrong hand penalty, unless your left arm is equally or more severely wounded then the right. Damage to arms affects your chances to hit. If both arms are severely damaged, then you cannot attack anymore. b. Wound Severity subtracts from your Strength. If Strength falls to 0 or less, you're unconscious and can't attack any more. A mortal wound kills your character and he can't attack anymore either. - Click the Reset Wounds button to erase any wounds (including a mortal wound) and reset your Strength to its original value.
OPTIONSInstead of randomly generating a character, you may specify his abilities in the QueryString like so: BootHill.html?GunAccuracy=80&ThrowingAccuracy=75&Bravery=52&Speed=22&Strength=57 You must supply integer values between 1 and 100 for all 5 abilities: - GunAccuracy
- ThrowingAccuracy
- Bravery
- Speed
- Strength
Additionally, you may specify your character's Experience like so: BootHill.html?GunAccuracy=80&ThrowingAccuracy=75&Bravery=52&Speed=22&Strength=57&Won=2&Lost=1 by supplying both the number of gunfights he's Options are case sensitive. NOTE: To use a QueryString with the JSFiddle-hosted code, modify this URL: http://fiddle.jshell.net/krusader74/zLopw8k2/show/?GunAccuracy=80&ThrowingAccuracy=75&Bravery=52&Speed=22&Strength=57&Won=2&Lost=1 Notice we've changed the URL structure: - fiddle.jshell.net instead of jsfiddle.net
- show added to the end of the URL before the query string
NOTE: The QueryString is parsed when the body is loaded. So, to use different parameters, alter the URL and then reload the page. AUTHORSCOPYRIGHTThis software has been released by its author into the public domain. SEE ALSOHISTORYVersion
| Date
| Description
|
---|
0.1
| 2016-10-14
| Initial release
| 0.2
| 2016-10-17
| Added wound tracking
| 0.3
| 2016-10-18
| Added QueryString processing and documentation
|
|
|
|
Post by foxroe on Oct 18, 2016 3:00:45 GMT -6
Dude, that's awesome! Exalt! (oh wait, we don't do that any more...)
|
|