<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://159.203.101.162/w/index.php?action=history&amp;feed=atom&amp;title=Bonus_Subsystem_Thoughts</id>
	<title>Bonus Subsystem Thoughts - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://159.203.101.162/w/index.php?action=history&amp;feed=atom&amp;title=Bonus_Subsystem_Thoughts"/>
	<link rel="alternate" type="text/html" href="http://159.203.101.162/w/index.php?title=Bonus_Subsystem_Thoughts&amp;action=history"/>
	<updated>2026-05-17T17:53:00Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.1</generator>
	<entry>
		<id>http://159.203.101.162/w/index.php?title=Bonus_Subsystem_Thoughts&amp;diff=3321&amp;oldid=prev</id>
		<title>Tom Parker: /* BONUS tokens sorted by Perspective */</title>
		<link rel="alternate" type="text/html" href="http://159.203.101.162/w/index.php?title=Bonus_Subsystem_Thoughts&amp;diff=3321&amp;oldid=prev"/>
		<updated>2013-01-18T02:51:00Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;BONUS tokens sorted by Perspective&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 02:51, 18 January 2013&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Note: This is an architecture scratch-pad.&amp;#160; It is not intended as permanent documentation.&amp;#160; Do not rely on this information.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Note: This is an architecture scratch-pad.&amp;#160; It is not intended as permanent documentation.&amp;#160; Do not rely on this information.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= BONUS tokens sorted by &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Perspective &lt;/del&gt;=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= BONUS tokens sorted by &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Scope &lt;/ins&gt;=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Note: This is not comprehensive for Equipment based bonuses&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Note: This is not comprehensive for Equipment based bonuses&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Tom Parker</name></author>
		
	</entry>
	<entry>
		<id>http://159.203.101.162/w/index.php?title=Bonus_Subsystem_Thoughts&amp;diff=3319&amp;oldid=prev</id>
		<title>Tom Parker: Created page with &quot;Note: This is an architecture scratch-pad.  It is not intended as permanent documentation.  Do not rely on this information.  = BONUS tokens sorted by Perspective =  Note: Thi...&quot;</title>
		<link rel="alternate" type="text/html" href="http://159.203.101.162/w/index.php?title=Bonus_Subsystem_Thoughts&amp;diff=3319&amp;oldid=prev"/>
		<updated>2013-01-18T02:49:36Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Note: This is an architecture scratch-pad.  It is not intended as permanent documentation.  Do not rely on this information.  = BONUS tokens sorted by Perspective =  Note: Thi...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Note: This is an architecture scratch-pad.  It is not intended as permanent documentation.  Do not rely on this information.&lt;br /&gt;
&lt;br /&gt;
= BONUS tokens sorted by Perspective =&lt;br /&gt;
&lt;br /&gt;
Note: This is not comprehensive for Equipment based bonuses&lt;br /&gt;
&lt;br /&gt;
Other terms:&lt;br /&gt;
* Internal: Bonuses of this type are internal to the code, are not documented, and are not intended to be used independently in the data.  It is unlikely that these will remain bonuses going forward.&lt;br /&gt;
* Deprecated: Bonuses of this type would *appear* to be deprecated in that they do not necessarily fully function, are tagged as deprecated in the docs, or are completely missing from the docs.&lt;br /&gt;
&lt;br /&gt;
== Global Scope ==&lt;br /&gt;
&lt;br /&gt;
* POINTBUY|SPENT (Internal)&lt;br /&gt;
* POINTBUY|POINTS (Internal)&lt;br /&gt;
&lt;br /&gt;
* MISC|CR&lt;br /&gt;
* MISC|SR&lt;br /&gt;
* MISC|ACCHECK&lt;br /&gt;
* MISC|MAXDEX &lt;br /&gt;
* MISC|SPELLFAILURE&lt;br /&gt;
&lt;br /&gt;
* FEAT|POOL&lt;br /&gt;
* SIZEMOD|NUMBER&lt;br /&gt;
&lt;br /&gt;
* COMBAT|ATTACKS&lt;br /&gt;
* COMBAT|INITIATIVE&lt;br /&gt;
* COMBAT|REACH&lt;br /&gt;
* COMBAT|BAB&lt;br /&gt;
* COMBAT|AC&lt;br /&gt;
* COMBAT|SECONDARYATTACKS&lt;br /&gt;
* COMBAT|RANGEPENALTY&lt;br /&gt;
&lt;br /&gt;
== Simple Single Scope ==&lt;br /&gt;
&lt;br /&gt;
These are items in a single scope which is quite obvious from the BONUS itself. The scope is in brackets after the item and represents the type of the object x.&lt;br /&gt;
&lt;br /&gt;
* ABILITYPOOL|x [Ability Category]&lt;br /&gt;
* FOLLOWERS|x [Follower Type]&lt;br /&gt;
* CHECKS|x [Check]&lt;br /&gt;
* CHECKS|BASE.x [Check]&lt;br /&gt;
* SLOTS|x [Slot]&lt;br /&gt;
* VISION|x [Vision]&lt;br /&gt;
* WIELDCATEGORY|x [Wield Category] (ALL is also legal)&lt;br /&gt;
* VAR|x [Variable]&lt;br /&gt;
* MOVEADD|TYPE.x [Movement Type] (ALL is also legal)&lt;br /&gt;
* MOVEMULT|TYPE.x [Movement Type] (ALL is also legal)&lt;br /&gt;
* POSTMOVEADD|TYPE.x [Movement Type] (ALL is also legal)&lt;br /&gt;
* STAT|x [Stat]&lt;br /&gt;
* DR|x [Damage Type]&lt;br /&gt;
&lt;br /&gt;
== Class Scope ==&lt;br /&gt;
&lt;br /&gt;
These are items that are &amp;quot;specific to a given class&amp;quot; in that they are asked for each class (or class level in some cases) on the PC&lt;br /&gt;
&lt;br /&gt;
* UDAM|CLASS.x&lt;br /&gt;
* PCLEVEL|x&lt;br /&gt;
* PCLEVEL|TYPE.x&lt;br /&gt;
&lt;br /&gt;
These could be asserted to be the Class/ClassLevel scope and I could not refute the claim:&lt;br /&gt;
&lt;br /&gt;
* HD|MIN (note that HD is recognized in the LST tokens as being class specific, so this this implies CLASS=All)&lt;br /&gt;
* HD|MAX (note that HD is recognized in the LST tokens as being class specific, so this this implies CLASS=All)&lt;br /&gt;
&lt;br /&gt;
== Class/ClassLevel Scope ==&lt;br /&gt;
&lt;br /&gt;
* SKILLPOOL|CLASS.x&lt;br /&gt;
* SKILLPOOL|LEVEL.x&lt;br /&gt;
* SKILLPOOL|CLASS.x;LEVEL.y&lt;br /&gt;
&lt;br /&gt;
== Class/SpellLevel Scope ==&lt;br /&gt;
&lt;br /&gt;
* SPELLKNOWN|CLASS.x;Level.y (Note: X=Any is legal, Y=All is legal)&lt;br /&gt;
* SPELLKNOWN|TYPE.x;Level.y (Note: y=All is legal)&lt;br /&gt;
* SPELLCAST|CLASS.x;Level.y (Note: X=Any is legal, Y=All is legal)&lt;br /&gt;
* SPELLCAST|TYPE.x;Level.y (Note: y=All is legal)&lt;br /&gt;
&lt;br /&gt;
Note: on the following items, not all of these combinations are legal, this is for copy/paste simplicity.&lt;br /&gt;
* SPELLKNOWNMULT|CLASS.x;Level.y (Note: X=Any is legal, Y=All is legal)&lt;br /&gt;
* SPELLKNOWNMULT|TYPE.x;Level.y (Note: y=All is legal)&lt;br /&gt;
* SPELLCASTMULT|CLASS.x;Level.y (Note: X=Any is legal, Y=All is legal)&lt;br /&gt;
* SPELLCASTMULT|TYPE.x;Level.y (Note: y=All is legal)&lt;br /&gt;
&lt;br /&gt;
== Class / Spell Scope ==&lt;br /&gt;
&lt;br /&gt;
* DC|ALLSPELLS&lt;br /&gt;
* DC|SPELL.x [Spell]&lt;br /&gt;
* DC|DOMAIN.x [Domain or perhaps Domain List - need to check]&lt;br /&gt;
* DC|CLASS.x [Class or perhaps Class List - need to check]&lt;br /&gt;
* DC|TYPE.x [Class Type, I believe]&lt;br /&gt;
* DC|SCHOOL.x [School]&lt;br /&gt;
* DC|SUBSCHOOL.x [SubSchool]&lt;br /&gt;
* DC|DESCRIPTOR.x [Descriptor]&lt;br /&gt;
* DC|x [Class]&lt;br /&gt;
* CONCENTRATION|&amp;lt;all as DC above&amp;gt;&lt;br /&gt;
* CASTERLEVEL|&amp;lt;all as DC above&amp;gt;&lt;br /&gt;
* CASTERLEVEL|RACE.x [Race, to impact all innate spells]&lt;br /&gt;
&lt;br /&gt;
Note: There is some really nasty .RESET magic going on in CASTERLEVEL :(&lt;br /&gt;
&lt;br /&gt;
== Weapon Scope ==&lt;br /&gt;
&lt;br /&gt;
* RANGEADD|x [Weapon Type]&lt;br /&gt;
* POSTRANGEADD|x [Weapon Type]&lt;br /&gt;
* RANGEMULT|x [Weapon Type]&lt;br /&gt;
* COMBAT|TOHIT&lt;br /&gt;
* COMBAT|TOHIT.x [Weapon Type]&lt;br /&gt;
* COMBAT|TOHIT-PRIMARY&lt;br /&gt;
* COMBAT|TOHIT-SECONDARY&lt;br /&gt;
* COMBAT|DAMAGE.x [Weapon Type]&lt;br /&gt;
* COMBAT|DAMAGESIZE&lt;br /&gt;
* TOHIT|TOHIT (Deprecated)&lt;br /&gt;
* TOHIT|TYPE.x (Deprecated)&lt;br /&gt;
* DAMAGE|TYPE.x [Weapon Type] (Deprecated)&lt;br /&gt;
&lt;br /&gt;
Some specialties that really are Weapon/Range Scope&lt;br /&gt;
&lt;br /&gt;
* COMBAT|TOHIT-SHORTRANGE&lt;br /&gt;
* COMBAT|DAMAGE-SHORTRANGE&lt;br /&gt;
* TOHIT|SHORTRANGE (Deprecated)&lt;br /&gt;
* DAMAGE|SHORTRANGE (Deprecated)&lt;br /&gt;
&lt;br /&gt;
== Equipment Bonuses (incomplete) Also Weapon Scope? ==&lt;br /&gt;
&lt;br /&gt;
* ITEMCOST|&lt;br /&gt;
* ITEMWEIGHT|&lt;br /&gt;
* ITEMCAPACITY|&lt;br /&gt;
* WEAPON|ATTACKS&lt;br /&gt;
* WEAPON|ATTACKSPROGRESS&lt;br /&gt;
* WEAPON|DAMAGE&lt;br /&gt;
* WEAPON|DAMAGEMULT&lt;br /&gt;
* WEAPON|DAMAGESIZE&lt;br /&gt;
* WEAPON|TOHIT&lt;br /&gt;
* WEAPON|WIELDCATEGORY&lt;br /&gt;
&lt;br /&gt;
Weapon/Range?&lt;br /&gt;
&lt;br /&gt;
* WEAPON|DAMAGE-SHORTRANGE&lt;br /&gt;
* WEAPON|TOHIT-SHORTRANGE&lt;br /&gt;
&lt;br /&gt;
== Some other stuff ==&lt;br /&gt;
&lt;br /&gt;
* MONNONSKILLHD|NUMBER (Internal)&lt;br /&gt;
* SKILLPOINTS|NUMBER (probably class or class/level?)&lt;br /&gt;
* MONSKILLPTS|LOCKNUMBER (Internal)&lt;br /&gt;
* HP|ALTHP (probably global)&lt;br /&gt;
* HP|CURRENTMAX (probably global?)&lt;br /&gt;
* DOMAIN|NUMBER (I could assert class here)&lt;br /&gt;
* LANGUAGES|NUMBER&lt;br /&gt;
* LOADMULT|TYPE=SIZE&lt;br /&gt;
* FEAT|PCPOOL&lt;br /&gt;
* FEAT|MONSTERPOOL&lt;br /&gt;
* COMBAT|RANGEPENALTY&lt;br /&gt;
* COMBAT|SECONDARYDAMAGE&lt;br /&gt;
* COMBAT|DAMAGEMULT:x [Hands]&lt;br /&gt;
* STAT|BASESPELLSTAT&lt;br /&gt;
* STAT|CAST.x [Stat Abbr]&lt;br /&gt;
* STAT|BASESPELLKNOWNSTAT&lt;br /&gt;
* STAT|BASESPELLSTAT;CLASS.x [Class]&lt;br /&gt;
* STAT|BASESPELLKNOWNSTAT;Class.x [Class]&lt;br /&gt;
* SPECIALTYSPELLKNOWN|&amp;lt;varies, similar to SPELLKNOWN above&amp;gt; (probably Class/SpellLevel?)&lt;br /&gt;
* SPELLPOINTCOST|&amp;lt;varies, similar to DC above&amp;gt; (probably Class/Spell?)&lt;/div&gt;</summary>
		<author><name>Tom Parker</name></author>
		
	</entry>
</feed>