一些有用的公式

翻译自https://github.com/esi/esi-docs/blob/master/docs/useful_formulae.md

跃迁落地点

跃迁落地点,指的是你的舰船在跃迁至一个物体时将要在太空中退出跃迁通道的位置。

许多外部因素可能会中止跃迁,例如跃迁扰断力场、电容量不足、跃迁抖动等等。

这些公式不能解决这些问题,它仅仅计算在理想条件下的数值。

普通目标

普通目标是不属于以下描述的任何其他类别的任何目标。

使用三维向量 p_d p_s 分别表示目标的位置和跃迁起点。 \vec{v} 是一个从 p_s p_d 的方向向量。 使用 r 表示对象的半径。

目标的跃迁落地点是向量  p_s + \vec{v} - r\hat{v}

大目标

大目标是除行星外,半径超过90千米(直径180千米)的任何目标。

使用  x y 和  z  表示目标的坐标。使用  r  表示目标的半径。

目标的跃迁落地点是向量  \left(x + (r + 5000000)\cos{r} \\, y + 1.3r - 7500 \\, z - (r + 5000000)\sin{r} \\ \right)

行星

行星的跃迁落地点由行星的ID,位置和半径确定。

使用  x y 和  z  表示行星的坐标。使用  r  表示行星的半径。

行星的跃迁落地点是向量  \left(x + d \sin{\theta}, y + \frac{1}{2} r \sin{j}, z - d \cos{\theta}\right) ,其中:

d = r(s + 1) + 1000000
\theta = \sin^{-1}\left(\frac{x}{|x|} \cdot \frac{z}{\sqrt{x^2 + z^2}}\right) + j
s|_{0.5 \leq s \leq 10.5} = 20\left(\frac{1}{40}\left(10\log_{10}\left(\frac{r}{10^6}\right) – 39\right)\right)^{20} + \frac{1}{2}

现在, j  是一朵特别的雪花。它的值用Python表示是
(random.Random(planetID).random() - 1.0) / 3.0

示例实现

import math
import random

def warpin(id, x, y, z, r):
    j = (random.Random(id).random() - 1.0) / 3.0
    t = math.asin(x/abs(x) * (z/math.sqrt(x**2 + z**2))) + j
    s = 20.0 * (1.0/40.0 * (10 * math.log10(r/10**6) - 39))**20.0 + 1.0/2.0
    s = max(0.5, min(s, 10.5))
    d = r*(s + 1) + 1000000

    return (x + d * math.sin(t), y + 1.0/2.0 * r * math.sin(j), z - d * math.cos(t))

技能点

每级技能点需求

每级技能点需求取决于它的技能分级

y_{skillpoints} = 2^{2.5(x_{skilllevel}-1)} \cdot 250 \cdot r_{skillrank}

一般技能分级的技能点需求

分级等级 1等级 2等级 3等级 4等级 5
12501,4148,00045,254256,000
25002,82816,00090,509512,000
37504,24224,000135,764768,000
41,0005,65632,000181,0191,024,000
51,2507,07140,000226,2741,280,000
61,5008,48548,000271,5291,536,000
71,7509,89956,000316,7831,792,000
82,00011,31364,000362,0382,048,000
92,25012,72772,000407,2932,304,000
102,50014,14280,000452,5482,560,000
112,75015,55688,000497,8032,816,000
123,00016,97096,000543,0583,072,000
133,25018,384104,000588,3123,328,000
143,50019,798112,000633,5673,584,000
153,75021,213120,000678,8223,840,000
164,00022,627128,000724,0774,096,000

每分钟技能点

每分钟生成的技能点的数量取决于该技能的主要属性  a_{primary}  和次要属性  a_{secondary}  。

y_{skillpointsPerMinute} = a_{primary} + {a_{secondary} \over 2}

战斗

目标锁定时间

目标锁定时间 t_{targetlock} 取决于舰船的扫描分辨率 s 和目标的信号半径 r

t_{targetlock} = {40000 \over s \cdot asinh(r)^2}

转向时间

舰船朝向时间 t_{align} 取决于舰船的惯性调整值 i 和舰船的质量 m

t_{align} = { ln(2) \cdot i \cdot m \over 500000 }
0 0 vote
Article Rating
0 评论
Inline Feedbacks
View all comments
上一篇
下一篇
0
Would love your thoughts, please comment.x
()
x
%d 博主赞过: