# How long does it take to fully draw a bow in Minecraft?

Exactly how long does it take to fully draw back a bow? (No approximations; there's already a forum post stating that it is about 1200 milliseconds after testing, but I would like to know the actual time it takes.)

• For lack of a better way to express this, "Why?" – Ender May 31 '16 at 6:03
• Some DPS calculations, mostly. Partially to determine whether (without accounting for shields) it is better to melee with a bow in 1.9 (I have not really played around with 1.9 yet), and partially for custom map difficulty reasons (I want to be sure some parts of a map are going to be possible). I forget why, but I have had this question before and never asked it. It seems like useful information to determine. – hacatu May 31 '16 at 6:13
• For all intents and purposes 1200 milliseconds is rather accurate, why would you need it to be more accurate than that? – Ender May 31 '16 at 6:39
• It was found by someone else testing in game. I am not sure how valid or accurate their tests were, as they never stated their method or source. I fear they may have just fired a bunch of bow shots and divided by their time. (Which would be prone to them holding back the bow even slight bits too long. Otherwise, it would be a perfectly acceptable answer. – hacatu May 31 '16 at 6:59

Here is decompiled source code snippet for minecraft 1.8.8 avaliable through Mod Coder Pack:

`````` int i = this.getMaxItemUseDuration(stack) - timeLeft;
float f = (float)i / 20.0F;
f = (f * f + f * 2.0F) / 3.0F;
if ((double)f < 0.1D)
{
return;
}
if (f > 1.0F)
{
f = 1.0F;
}
EntityArrow entityarrow = new EntityArrow(worldIn, playerIn, f * 2.0F);
if (f == 1.0F)
{
entityarrow.setIsCritical(true);
}
``````

Minecraft simulates everything by recalculating positions/input/etc. 20 times per second. One such recalculation is called a `tick`.

`this.getMaxItemUseDuration(stack) - timeLeft;` yields amount of ticks item was used or how many ticks passed with button held. Next line transforms number of ticks to number of seconds and next calculates potential damage. By solving school grade math, we can find the maximum value which happens at `i = 20` or bow used for 20 ticks.

In addition, we should take into account, that tick when button release is registered is not counted, so we need to add one tick to compensate; and that floating point math impreciseness will make comparison `f == 1.0F` likely to fail if we wait exactly 20 ticks, so we want `f > 1.0F` to trigger before that, +1 tick.

In the end, to fully charge bow you will need exactly 22 ticks or 22/20 = 1.1 second.

However, as your initial press might happen anywhere between two ticks (your input will not register until tick happens), and that ticks are not guaranteed to be distributed exactly evenly because of lag, some delays can occur. I would expect it to not be larger than one tick, so final expected time is 1.125±0.025 seconds

• And for 1.9 MCP, calculations have remained the same. – Skylinerw May 31 '16 at 18:44

I takes about 1.2 seconds to fully draw back a bow... I know this is very accurate since that is what I use for my anti fastbow ok my server and I players never get kicked for false positives

• Does fastbow fire fully charged arrows? I don't think I've ever seen the critical particles from a fastbow user (then again, I've only seen two or three) – hacatu May 31 '16 at 14:24
• Yeah form how I understand it it fully draws the bow before it fires – Jaconah May 31 '16 at 14:25
• Where did you get that number to use for your anti-fastbow? By the way, if that is correct, bows deal the most damage per second by 2.83, and either way it's very unlikely that bows have less dps than swords, but I still want to know how you came to that answer or the other reasons mentioned. – hacatu May 31 '16 at 15:01
• I got that number for testing it multiple times now. Even if I set it to kick them after on positive check then get kicked for it.. Only time I see players get positive check is when their are lagging or the server is lagging, of their are using fastbow... (I do relize that may sound kinda confusing not sure how it ended up that bad) – Jaconah May 31 '16 at 15:06
• Fair enough. I guess I will take this as the answer for now. Thanks for the help. – hacatu May 31 '16 at 15:10

I tried using a macro on my mouse:
When I start it, it presses the right button for 0.1 seconds, releases, then 0.2, 0.3 … 2.5

So I aim my bow at ~45 degrees and run the macro. The result is that the first 11 arrows in the ground are away from each other, and all the other arrows are in a cluster. That is, at 1100 milliseconds drawback time the bow isn't fully drawn, but at 1200 yes.

So 1.2 seconds is right (though whiting 1.15 would maybe be better)