<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://te4.org/w/index.php?action=history&amp;feed=atom&amp;title=Determining_NPC_Stats</id>
		<title>Determining NPC Stats - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://te4.org/w/index.php?action=history&amp;feed=atom&amp;title=Determining_NPC_Stats"/>
		<link rel="alternate" type="text/html" href="https://te4.org/w/index.php?title=Determining_NPC_Stats&amp;action=history"/>
		<updated>2026-06-06T10:59:52Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://te4.org/w/index.php?title=Determining_NPC_Stats&amp;diff=10104&amp;oldid=prev</id>
		<title>Ibanix: for math</title>
		<link rel="alternate" type="text/html" href="https://te4.org/w/index.php?title=Determining_NPC_Stats&amp;diff=10104&amp;oldid=prev"/>
				<updated>2016-02-07T14:01:10Z</updated>
		
		<summary type="html">&lt;p&gt;for math&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Placeholder page.&lt;br /&gt;
&lt;br /&gt;
How to figure out NPC stats, talents, etc. from .lua file info. &lt;br /&gt;
&lt;br /&gt;
==== Life ====&lt;br /&gt;
&lt;br /&gt;
All NPCs should have the 'fixed_rating' flag set to ''false'' (fixed_rating = false), meaning they have variable hitpoints when created. There may be some odd NPCs that don't have this setting.&lt;br /&gt;
&lt;br /&gt;
We also need to know the variables for the NPC: 'rank', 'life_rating', 'max_life', and 'level_range'. Finally we also want to know the 'level_range' from the Zone. NPC.lua file 'level_range' is {x, y}. Zone.lua &amp;quot;level_range&amp;quot; is from {a, b}. NPC level range is almost always 'nil' for the max ('y' value).&lt;br /&gt;
&lt;br /&gt;
Then we can figure out the NPC's possible life range (not counting talents):&lt;br /&gt;
# NPC's possible level range is {x, b}.&lt;br /&gt;
# Starting life is defined by 'max_life' (yes, backwards, I know).&lt;br /&gt;
# Life per level is defined by: Life_rating * (1+level/40)+(rank_lookup)&lt;br /&gt;
&lt;br /&gt;
Rank_lookup is confusing but here's a table for you:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Rank&lt;br /&gt;
!Lookup Value&lt;br /&gt;
|-&lt;br /&gt;
|1||-0.2&lt;br /&gt;
|-&lt;br /&gt;
|2||-0.1&lt;br /&gt;
|-&lt;br /&gt;
|3||0.1&lt;br /&gt;
|-&lt;br /&gt;
|3.2||0.15&lt;br /&gt;
|-&lt;br /&gt;
|3.5||1.0&lt;br /&gt;
|-&lt;br /&gt;
|4||2&lt;br /&gt;
|-&lt;br /&gt;
|5||3&lt;br /&gt;
|-&lt;br /&gt;
|10 (or more)||6&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Putting It Together''' &lt;br /&gt;
&lt;br /&gt;
Using [[Subject Z]] as our example:&lt;br /&gt;
* NPC level_range: {10, nil}&lt;br /&gt;
* Zone level_range: {10, 25}&lt;br /&gt;
* Subject Z's level is therefore {10, 25}&lt;br /&gt;
* Subject Z's rank is 4, rank_lookup is 2&lt;br /&gt;
* Subject Z's max_life is 100&lt;br /&gt;
* Subject Z's life_rating is 12&lt;br /&gt;
&lt;br /&gt;
Per level-up HP gain is: 12 * (1+current_level/40)+2 or 3+(current_level/40)&lt;br /&gt;
&lt;br /&gt;
Starting life is 100.&lt;br /&gt;
&lt;br /&gt;
To get a fully accurate count we'd have to compute for level 1, level 2, level ... level 10 and add all the values. We can average and multiply for a faster but less accurate result. Instead of summing, we use 12 * number_of_levels * (1.2+average_value/40). &lt;br /&gt;
&lt;br /&gt;
Lowest possible level: 10. Number of levels-ups: 9. Average value: sum(1-&amp;gt;10)/10 = ((10*11)/2)/10 = 5.5.&lt;br /&gt;
&lt;br /&gt;
FINALLY (you've stuck with this math? good on you):&lt;br /&gt;
* ''Total HP'' (for Level 10): 100 + (12 * 9 * (3+(5.5/40))) = 438.&lt;br /&gt;
* ''Total HP'' (for Level 25): 100 + (12 * 24 * (3+(32.5/40))) = 1198&lt;/div&gt;</summary>
		<author><name>Ibanix</name></author>	</entry>

	</feed>