Making a Players Datapad

By Darth Smeg, in Dark Heresy Gamemasters

I find that combat grinds my games to a slow crawl, and we spend hours resolving a shootout. The reason is that there are soooo many dice being thrown every round:

People scoring many hits with autofire needing lots of damage rolls, each involving (admittedly simple) arithmetic operations to work out total damage. Tearing doesn't help.

The psyker rolling 6 dice to manifest a power, searching for 9s, working out overbleed, etc.

The tech-priest rolling damage reduction for each hit with his Rosarius, etc etc.

What I want:

I want to make a very simple electronic tool, that is to be run on a tablet PC or an iPad that will automate some of these tasks. I think perhaps the simplest solution is to make a web-page with scripts, and to display that page in a normal web-browser in Fullscreen.

The web page could have tabs, or sections, for each player, with buttons appropriate for their most common and dice intensive tasks.

For example the Psyker could have buttons for Manifest Power, with different numbers of Dice. Clicking the "Manifest (5)" button rolls 5 d10s, adds the result and indicates the number of 9's rolled. It could further roll d100 for each 9, and present the text for Phenomenas from a corresponding Table.

The Gun-bunny could have a button to easily work out damage for a number of hits, including his Crack Shot bonus and working out Tearing.

Have any of you done something similar? Are there perhaps some (simple!) apps that do exactly this? I am not looking for something complex like the DH Framework for Maptools, just a very simple, clean "diceroller" with a bit of added intelligence.

Nothing as extensive as what you are looking for, but one of my players made a scattershot calculator. Basically you just imput the fire mode and maximum ROF for the weapon, tell it DOS and it spits out how many hits you got out of your shotgun. For pumps this is stupid-easy, but with our dead Guardsman and most Arbites making use of Combat Shotguns, not to mention Skitarii using Vanaheim Pattern auto-shotguns it started to really bog down calculating full-auto shotgun results.

An experiment our Deathwatch GM is tinkering with is having "average hits" pre-calculated for NPC members of the Kill Team as well as foes. If a PC is involved then the attacks are resolved as normal. When it is NPCs clobbering each-other he plans on simply adjudicating "average hit results" against the target and moving on. With Astartes this is still very brutal and I suspect it is going to speed things up ALOT! So assume an "average" roll to hit and damage, apply and move on... So based on Brother So-and-so's BS Talents and wargear he can expect to score around 3 hits with his bolter with an average roll. His bolter hits inflict 1D10+11 Pen 4 Tearing thanks to his talents (DW erratta applied), so the GM simply allocates 3 19point pen 4 hits to the target (1D10 tearing averages 7.5, round to 8 plus 11 = 19 average damage). This should help and speed things up for important NPCs without making them lame.

For mooks in mass combat scenes, just make a horde out of them! So that 10 man IG squad becomes a magnitude 30 horde with 4 armour and lasguns...(for example) The game is slowly giving the GM tools to make things go faster, so my philosophy is to make use of them whenever it is appropriate and comfortable to do so. It lets you get back to your story!

I know what you mean, i would love a calculator like that. Most of the games I run are low level, starting at rank one, ending between 6 and 8 and im a stingy bastard with money so they are not likely to get a whole lot of really complex gear, which actually helps keep things interesting in my opinion. This way the players have to rely on their skills, thinking and a bit of dumb luck. But every once in a while this back fires and they end up doing something like rallying 30 Arbitus into fight off 50 gene-stealer mutants and a Gene-stealer queen. Admittedly they needed it... but beside the point. In my opinion the hoard rules, which do streamline things, are a little too limited, we had mixed weapons, grenades, different players barking out commands, it was going really slow at first. Then I subdivided and started using percentiles, killing off the low armour first and moving up from there, when 10 autoguns shot i rolled a d100, hey lot 32 hits!

Now here I have a bit of a cheating, I use an electronic Die Roller, lets me drop a massive number of dice see all the results modify them and give me totals, it makes life so much easier when all you have to do is scan a line. That was how i quickly did damage, I told it to roll all the damage dice than I just looked for which ones were to low to cause damage (armour and toughness) than the ones that were high enough to be outright kills, than totaled hte rest and took out whatever was left.

Admittedly this is not a perfect example, but a large electronic dice roller is a GMs friend... and lover...

So, not sure if that helped you too much, and I also run a Rogue Trader game where things get stupidly complex, but at that point, when your commanding ships and fighter squadrons and repairing systems I can have everyone act at once and just tell them what happens. Same thing with me, while they are running their own numbers im already making rolls for the next round, and I'll just modify the results by what actually happened. It helps keep things moving.

And remember, guns kill things, if there is a lot of shooting and things aren't dying, than something needs to be reworked. I threw my players agains ONE Eldar in wraith armour (well... one at a time) and every time that thing fired it took down a player. They ended up taking out 2 of these things at the of 2 of the players having to burn fate points, and a third needing a bionic leg. (the other 2 also needed bionics, one an arm, the other eyes and ears) and these players are rank 6 and have some decent gear, nothing amazingly special, but good none the less.

Okay, sum up of my overly winded writing, Use an electronic calculator, have people making rolls a while others are working, any time a player is going to do something that wont interfier with another player, they can roll and have the dice waiting for their turn - That includes the GM.

here is a good free webpage dice roller that has plenty of options. www.wizards.com/dnd/dice/dice.htm This is actually the D&D dice roller offered by wizards, but hey, free for use is free for use :-D

I've made diceroller tools in Excel to help me out, and it works well. However, I would like to make a tool that can be used by the players, and don't really want to pass my laptop around, or have everyone bring laptops to our gametable.

I've started tinkering with a really simple html + javascript solution, and it seems to do what I want. If this is displayed on a touch-screen tablet, it should be quick and easy to use. Will post some screenshots if and when I ever get it working :)

I've never really considered using a diceroller or really thought about the number of calculations that are required for combat. I have a new to DH group and they are all getting to grips with the system quite quickly, i made it simple for shotguns on semi or auto fire, scatter is an extra hit for every two degrees and semi and full are a hit for every two although the errata may have changed that will need to have a read again, so i just made with the scatter and semi or auto fire a hit for every degree od success, which was loads for my bs 50 base arbiter(rank 4). As for calculating dam it's relatively easy if they add the + from the weapon to every hit and then tell you as induvidual dam as you have to calc the reduction for armour and TB from every hit. Agreed the idea of a pskyer manifest with phenom and perils roller would be cool.

So after a wee bit of tinkering, the prototype can be viewed here.

It's a pretty simple little webtool, using javascript for most of the maths. To get the Phenomena and Perils text to display I used php to fetch from a SQL database. It took a while to learn all these tools, but once done the actual coding was really quick.

This is obviously tailored to my campaign and my players, but it should be pretty easy to adjust to your own needs.

That is pretty cool happy.gif

I would love a more "universal" version if you ever decide to make it. I personally have no skill in program, I mean, I'm an MCSA and can network a forest but programming is beyond my skills. Kudos to you aplauso.gif

that is fantastic. can you send me a quick mail how you did it, maybe I can work with it little bit more.

It's very simple html (written in Notepad) and very dirty javascript (I'm not a professional programmer, and this was not a particularly well planned project, more a learn-as-you-go exercise)

I think I spent most time scratching my head setting up the basic tech behind it: Getting PHP support in Apache, setting up PGSQL, figuring out how to use AJAX to access the SQL database with javascript....

If you don't care about the actual lookups for the text effects for Phenomena and Perils, you can drop PHP and SQL and just go javascript. Much simpler :)
I suppose you could also skip PHP and use jquery directly, but I'm no expert here :)

The rest (the actual Dark Heresy logic) is quite simple.

I'm running this on my Mac, and installation will be different on other OS, but here are the basic things to do:

1. Apache + PHP

On OSX there is an easy fix here: http://php-osx.liip.ch/

For Windows/linux I guess you can figure it out with Google :)

2. PGSQL

I used Postgres, but any database will do, I guess. Get the database up and running, then create tables for phenomena and perils. I would make another for the power-descriptions too, but when I wrote this I ended up hardcoding this in the javascript functions. Baaad form :)

For OSX users, there is an installation guide here http://developer.apple.com/internet/opensource/postgres.html

Once the server is up and running, create a database, tables and fill these from the text files here:

http://eplekassa.dyndns.org/DataPad/perils.txt
http://eplekassa.dyndns.org/DataPad/phenomena.txt

The SQL commands to do this is as follows:

createdb psychic
psql psychic
create TABLE phenomena (low int, high int, effect varchar);
create TABLE perils (low int, high int, effect varchar);
COPY phenomena FROM '/wherever/you/stored/the/files/phenomena.txt';
COPY perils FROM '/wherever/you/stored/the/files/perils.txt';

3. HTML + Java

I could send you the source files, but it's pretty messy. I'm sure the whole thing should be re-written with a more planned approach. If you give me your e-mail adress, and promise not to laugh, I'll send you what I have :)

Most of the necessary javascript I learned by following the turorials on W3Schools

Artanyis said:

That is pretty cool happy.gif

I would love a more "universal" version if you ever decide to make it.

So I started a "generic" version which can be seen at http://eplekassa.dyndns.org/DataPad2

Let me know what sort of functions you'd like

That is awesome, I need to actually use it during a session to see where things need to be / changed to more functional, but as it currently stands, that is still an epic little piece of programming. I think I had mentioned that I'm a computer Tech / weekend domain Admin adn have no skill in programming or even database engineering so this seems very much like magic to me :-D

Thanks and I'll let you know where I think it can benefit from change, but unfortunately becuase of the holiday and some other stuff going on my gaming group has been very hard to get together lately, I hope to try it out soon in a session though.