{
	"version": 5,
	"id": "AGhXud0gPggWnYvn3",
	"total_points": 46,
	"profile": {
		"name": "Rat Swarm",
		"title": "Animal",
		"player_name": "Dungeons on Automatic",
		"SM": 0
	},
	"settings": {
		"attributes": [
			{
				"id": "st",
				"type": "integer",
				"name": "ST",
				"full_name": "Strength",
				"base": "10",
				"cost_per_point": 10,
				"cost_adj_percent_per_sm": 10
			},
			{
				"id": "dx",
				"type": "integer",
				"name": "DX",
				"full_name": "Dexterity",
				"base": "10",
				"cost_per_point": 20
			},
			{
				"id": "iq",
				"type": "integer",
				"name": "IQ",
				"full_name": "Intelligence",
				"base": "10",
				"cost_per_point": 20
			},
			{
				"id": "ht",
				"type": "integer",
				"name": "HT",
				"full_name": "Health",
				"base": "10",
				"cost_per_point": 10
			},
			{
				"id": "will",
				"type": "integer",
				"name": "Will",
				"base": "$iq",
				"cost_per_point": 5
			},
			{
				"id": "fright_check",
				"type": "integer",
				"name": "Fright Check",
				"base": "$will",
				"cost_per_point": 2
			},
			{
				"id": "per",
				"type": "integer",
				"name": "Per",
				"full_name": "Perception",
				"base": "$iq",
				"cost_per_point": 5
			},
			{
				"id": "vision",
				"type": "integer",
				"name": "Vision",
				"base": "$per",
				"cost_per_point": 2
			},
			{
				"id": "hearing",
				"type": "integer",
				"name": "Hearing",
				"base": "$per",
				"cost_per_point": 2
			},
			{
				"id": "taste_smell",
				"type": "integer",
				"name": "Taste & Smell",
				"base": "$per",
				"cost_per_point": 2
			},
			{
				"id": "touch",
				"type": "integer",
				"name": "Touch",
				"base": "$per",
				"cost_per_point": 2
			},
			{
				"id": "basic_speed",
				"type": "decimal",
				"name": "Basic Speed",
				"base": "($dx + $ht) / 4",
				"cost_per_point": 20
			},
			{
				"id": "basic_move",
				"type": "integer",
				"name": "Basic Move",
				"base": "Math.floor($basic_speed)",
				"cost_per_point": 5
			},
			{
				"id": "fp",
				"type": "pool",
				"name": "FP",
				"full_name": "Fatigue Points",
				"base": "$ht",
				"cost_per_point": 3,
				"thresholds": [
					{
						"state": "Unconscious",
						"value": "-$fp",
						"ops": [
							"halve_move",
							"halve_dodge",
							"halve_st"
						]
					},
					{
						"state": "Collapse",
						"value": "0",
						"explanation": "Roll vs. Will to do anything besides talk or rest; failure causes unconsciousness\nEach FP you lose below 0 also causes 1 HP of injury\nMove, Dodge and ST are halved (B426)",
						"ops": [
							"halve_move",
							"halve_dodge",
							"halve_st"
						]
					},
					{
						"state": "Tired",
						"value": "Math.round($fp / 3)",
						"explanation": "Move, Dodge and ST are halved (B426)",
						"ops": [
							"halve_move",
							"halve_dodge",
							"halve_st"
						]
					},
					{
						"state": "Tiring",
						"value": "$fp - 1"
					},
					{
						"state": "Rested",
						"value": "$fp"
					}
				]
			},
			{
				"id": "hp",
				"type": "pool",
				"name": "HP",
				"full_name": "Hit Points",
				"base": "$st",
				"cost_per_point": 2,
				"cost_adj_percent_per_sm": 10,
				"thresholds": [
					{
						"state": "Dead",
						"value": "Math.round(-$hp * 5)",
						"ops": [
							"halve_move",
							"halve_dodge"
						]
					},
					{
						"state": "Dying #4",
						"value": "Math.round(-$hp * 4)",
						"explanation": "Roll vs. HT to avoid death\nRoll vs. HT-4 every second to avoid falling unconscious\nMove and Dodge are halved (B419)",
						"ops": [
							"halve_move",
							"halve_dodge"
						]
					},
					{
						"state": "Dying #3",
						"value": "Math.round(-$hp * 3)",
						"explanation": "Roll vs. HT to avoid death\nRoll vs. HT-3 every second to avoid falling unconscious\nMove and Dodge are halved (B419)",
						"ops": [
							"halve_move",
							"halve_dodge"
						]
					},
					{
						"state": "Dying #2",
						"value": "Math.round(-$hp * 2)",
						"explanation": "Roll vs. HT to avoid death\nRoll vs. HT-2 every second to avoid falling unconscious\nMove and Dodge are halved (B419)",
						"ops": [
							"halve_move",
							"halve_dodge"
						]
					},
					{
						"state": "Dying #1",
						"value": "-$hp",
						"explanation": "Roll vs. HT to avoid death\nRoll vs. HT-1 every second to avoid falling unconscious\nMove and Dodge are halved (B419)",
						"ops": [
							"halve_move",
							"halve_dodge"
						]
					},
					{
						"state": "Collapse",
						"value": "0",
						"explanation": "Roll vs. HT every second to avoid falling unconscious\nMove and Dodge are halved (B419)",
						"ops": [
							"halve_move",
							"halve_dodge"
						]
					},
					{
						"state": "Reeling",
						"value": "Math.round($hp / 3)",
						"explanation": "Move and Dodge are halved (B419)",
						"ops": [
							"halve_move",
							"halve_dodge"
						]
					},
					{
						"state": "Wounded",
						"value": "$hp - 1"
					},
					{
						"state": "Healthy",
						"value": "$hp"
					}
				]
			}
		],
		"damage_progression": "basic_set",
		"default_length_units": "ft_in",
		"default_weight_units": "lb",
		"body_type": {
			"name": "Humanoid",
			"roll": "3d",
			"locations": [
				{
					"id": "eye",
					"choice_name": "Eyes",
					"table_name": "Eyes",
					"hit_penalty": -9,
					"calc": {
						"roll_range": "-",
						"dr": {
							"all": 6
						}
					}
				},
				{
					"id": "skull",
					"choice_name": "Skull",
					"table_name": "Skull",
					"slots": 2,
					"hit_penalty": -7,
					"dr_bonus": 2,
					"calc": {
						"roll_range": "3-4",
						"dr": {
							"all": 12
						}
					}
				},
				{
					"id": "face",
					"choice_name": "Face",
					"table_name": "Face",
					"slots": 1,
					"hit_penalty": -5,
					"calc": {
						"roll_range": "5",
						"dr": {
							"all": 10
						}
					}
				},
				{
					"id": "leg",
					"choice_name": "Leg",
					"table_name": "Right Leg",
					"slots": 2,
					"hit_penalty": -2,
					"calc": {
						"roll_range": "6-7",
						"dr": {
							"all": 4
						}
					}
				},
				{
					"id": "arm",
					"choice_name": "Arm",
					"table_name": "Right Arm",
					"slots": 1,
					"hit_penalty": -2,
					"calc": {
						"roll_range": "8",
						"dr": {
							"all": 4
						}
					}
				},
				{
					"id": "torso",
					"choice_name": "Torso",
					"table_name": "Torso",
					"slots": 2,
					"calc": {
						"roll_range": "9-10",
						"dr": {
							"all": 4
						}
					}
				},
				{
					"id": "groin",
					"choice_name": "Groin",
					"table_name": "Groin",
					"slots": 1,
					"hit_penalty": -3,
					"calc": {
						"roll_range": "11",
						"dr": {
							"all": 4
						}
					}
				},
				{
					"id": "arm",
					"choice_name": "Arm",
					"table_name": "Left Arm",
					"slots": 1,
					"hit_penalty": -2,
					"calc": {
						"roll_range": "12",
						"dr": {
							"all": 4
						}
					}
				},
				{
					"id": "leg",
					"choice_name": "Leg",
					"table_name": "Left Leg",
					"slots": 2,
					"hit_penalty": -2,
					"calc": {
						"roll_range": "13-14",
						"dr": {
							"all": 4
						}
					}
				},
				{
					"id": "hand",
					"choice_name": "Hand",
					"table_name": "Hand",
					"slots": 1,
					"hit_penalty": -4,
					"calc": {
						"roll_range": "15",
						"dr": {
							"all": 2
						}
					}
				},
				{
					"id": "foot",
					"choice_name": "Foot",
					"table_name": "Foot",
					"slots": 1,
					"hit_penalty": -4,
					"calc": {
						"roll_range": "16",
						"dr": {
							"all": 2
						}
					}
				},
				{
					"id": "neck",
					"choice_name": "Neck",
					"table_name": "Neck",
					"slots": 2,
					"hit_penalty": -5,
					"calc": {
						"roll_range": "17-18",
						"dr": {
							"all": 4
						}
					}
				},
				{
					"id": "vitals",
					"choice_name": "Vitals",
					"table_name": "Vitals",
					"hit_penalty": -3,
					"calc": {
						"roll_range": "-",
						"dr": {
							"all": 4
						}
					}
				}
			]
		}
	},
	"attributes": [
		{
			"attr_id": "st",
			"adj": 0
		},
		{
			"attr_id": "dx",
			"adj": 0
		},
		{
			"attr_id": "iq",
			"adj": 0
		},
		{
			"attr_id": "ht",
			"adj": 0
		},
		{
			"attr_id": "will",
			"adj": 0
		},
		{
			"attr_id": "fright_check",
			"adj": 0
		},
		{
			"attr_id": "per",
			"adj": 0
		},
		{
			"attr_id": "vision",
			"adj": 0
		},
		{
			"attr_id": "hearing",
			"adj": 0
		},
		{
			"attr_id": "taste_smell",
			"adj": 0
		},
		{
			"attr_id": "touch",
			"adj": 0
		},
		{
			"attr_id": "basic_speed",
			"adj": 0
		},
		{
			"attr_id": "basic_move",
			"adj": 0
		},
		{
			"attr_id": "fp",
			"adj": 0
		},
		{
			"attr_id": "hp",
			"adj": 0
		}
	],
	"traits": [
		{
			"id": "TC5dL3a2Q0Zwm-N0y",
			"name": "Rat Swarm",
			"reference": "Enraged Eggplant, Monsters (May 11, 2024): Rat Swarm [Monster Manual, page 239]",
			"local_notes": "Fan-derived draft authorized for publication. Enraged Eggplant granted unrestricted permission to use, adapt, convert, and publish these statistics. Originator credit: Original GURPS conversion by Enraged Eggplant, from Monsters (May 11, 2024); adapted and republished with permission. Source heading: Rat Swarm [Monster Manual, page 239]. SRD name overlap does not make these GURPS mechanics SRD content. Review status: draft. Fan document published 46 points; exact GCS library substitutions produce 46 points. Library adjustment: +0.",
			"container_type": "ancestry",
			"children": [
				{
					"id": "tl4_vm9WacFYQH1vh",
					"name": "Decreased Strength",
					"reference": "B14",
					"tags": [
						"Attribute",
						"Disadvantage",
						"Physical"
					],
					"local_notes": "Source construction: ST-6\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated -60 point(s); library calculation is -60.",
					"points_per_level": -10,
					"can_level": true,
					"levels": 6,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "st",
							"amount": -1,
							"per_level": true
						}
					],
					"calc": {
						"points": -60,
						"current_level": 6
					}
				},
				{
					"id": "tclR4zZvxy_8K7n86",
					"name": "Increased Dexterity",
					"reference": "B15",
					"tags": [
						"Advantage",
						"Attribute",
						"Physical"
					],
					"local_notes": "Source construction: DX+2\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 40 point(s); library calculation is 40.",
					"points_per_level": 20,
					"can_level": true,
					"levels": 2,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "dx",
							"amount": 1,
							"per_level": true
						}
					],
					"calc": {
						"points": 40,
						"current_level": 2
					}
				},
				{
					"id": "tf6ttxQMe7eR7j3gw",
					"name": "Decreased Intelligence",
					"reference": "B15",
					"tags": [
						"Attribute",
						"Disadvantage",
						"Mental"
					],
					"local_notes": "Source construction: IQ-7\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated -140 point(s); library calculation is -140.",
					"points_per_level": -20,
					"can_level": true,
					"levels": 7,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "iq",
							"amount": -1,
							"per_level": true
						}
					],
					"calc": {
						"points": -140,
						"current_level": 7
					}
				},
				{
					"id": "tjwsq5OSk2mqxd-te",
					"name": "Increased Health",
					"reference": "B14",
					"tags": [
						"Advantage",
						"Attribute",
						"Physical"
					],
					"local_notes": "Source construction: HT+4\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 40 point(s); library calculation is 40.",
					"points_per_level": 10,
					"can_level": true,
					"levels": 4,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "ht",
							"amount": 1,
							"per_level": true
						}
					],
					"calc": {
						"points": 40,
						"current_level": 4
					}
				},
				{
					"id": "tzFuruDs-mv7b8PJi",
					"name": "Extra Hit Points",
					"reference": "B16",
					"tags": [
						"Advantage",
						"Attribute",
						"Physical"
					],
					"local_notes": "Source construction: HP+2\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 4 point(s); library calculation is 4.",
					"points_per_level": 2,
					"can_level": true,
					"levels": 2,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "hp",
							"amount": 1,
							"per_level": true
						}
					],
					"calc": {
						"points": 4,
						"current_level": 2
					}
				},
				{
					"id": "tZBtyRdRKQnUtG6NY",
					"name": "Fewer Fatigue Points",
					"reference": "B16",
					"tags": [
						"Attribute",
						"Disadvantage",
						"Physical"
					],
					"local_notes": "Source construction: FP-2\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated -6 point(s); library calculation is -6.",
					"points_per_level": -3,
					"can_level": true,
					"levels": 2,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "fp",
							"amount": -1,
							"per_level": true
						}
					],
					"calc": {
						"points": -6,
						"current_level": 2
					}
				},
				{
					"id": "t407CcuHD9WPKy_NE",
					"name": "Increased Will",
					"reference": "B16",
					"tags": [
						"Advantage",
						"Attribute",
						"Mental"
					],
					"local_notes": "Source construction: Will+6\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 30 point(s); library calculation is 30.",
					"points_per_level": 5,
					"can_level": true,
					"levels": 6,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "will",
							"amount": 1,
							"per_level": true
						}
					],
					"calc": {
						"points": 30,
						"current_level": 6
					}
				},
				{
					"id": "tXY-2Y4vdL_KftHKI",
					"name": "Increased Perception",
					"reference": "B16",
					"tags": [
						"Advantage",
						"Attribute",
						"Mental",
						"Physical"
					],
					"local_notes": "Source construction: Per+9\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 45 point(s); library calculation is 45.",
					"points_per_level": 5,
					"can_level": true,
					"levels": 9,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "per",
							"amount": 1,
							"per_level": true
						}
					],
					"calc": {
						"points": 45,
						"current_level": 9
					}
				},
				{
					"id": "t06sxlMqfcs7BiMB_",
					"name": "Decreased Basic Move",
					"reference": "B17",
					"tags": [
						"Attribute",
						"Disadvantage",
						"Physical"
					],
					"local_notes": "Source construction: Basic Move-2\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated -10 point(s); library calculation is -10.",
					"points_per_level": -5,
					"can_level": true,
					"levels": 2,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "basic_move",
							"amount": -1,
							"per_level": true
						}
					],
					"calc": {
						"points": -10,
						"current_level": 2
					}
				},
				{
					"id": "tBmKSBnCnFvC6tMaZ",
					"name": "Decreased Basic Speed",
					"reference": "B17",
					"tags": [
						"Attribute",
						"Disadvantage",
						"Physical"
					],
					"local_notes": "Source construction: Basic Speed -0.5\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated -10 point(s); library calculation is -10.",
					"points_per_level": -5,
					"can_level": true,
					"levels": 2,
					"features": [
						{
							"type": "attribute_bonus",
							"attribute": "basic_speed",
							"amount": -0.25,
							"per_level": true
						}
					],
					"calc": {
						"points": -10,
						"current_level": 2
					}
				},
				{
					"id": "tGE8LyDDUGKno5Krb",
					"name": "Combat Reflexes",
					"reference": "B43",
					"tags": [
						"Advantage",
						"Mental"
					],
					"local_notes": "Source construction: Combat Reflexes\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 15 point(s); library calculation is 15. Library note: Never freeze",
					"base_points": 15,
					"features": [
						{
							"type": "skill_bonus",
							"selection_type": "skills_with_name",
							"name": {
								"compare": "starts_with",
								"qualifier": "fast-draw"
							},
							"amount": 1
						},
						{
							"type": "attribute_bonus",
							"attribute": "dodge",
							"amount": 1
						},
						{
							"type": "attribute_bonus",
							"attribute": "parry",
							"amount": 1
						},
						{
							"type": "attribute_bonus",
							"attribute": "block",
							"amount": 1
						},
						{
							"type": "attribute_bonus",
							"attribute": "fright_check",
							"amount": 2
						},
						{
							"type": "conditional_modifier",
							"situation": "on all IQ rolls to wake up or to recover from surprise or mental stun",
							"amount": 6
						},
						{
							"type": "conditional_modifier",
							"situation": "to initiative rolls for your side (+2 if you are the leader)",
							"amount": 1
						}
					],
					"prereqs": {
						"type": "prereq_list",
						"all": true,
						"prereqs": [
							{
								"type": "trait_prereq",
								"has": false,
								"name": {
									"compare": "is",
									"qualifier": "Enhanced Time Sense"
								}
							}
						]
					},
					"calc": {
						"points": 15
					}
				},
				{
					"id": "teVi3UVeJF_8bzgBu",
					"name": "Flexibility",
					"reference": "B56,MA44",
					"tags": [
						"Advantage",
						"Physical"
					],
					"local_notes": "Source construction: Flexibility\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 5 point(s); library calculation is 5.",
					"base_points": 5,
					"features": [
						{
							"type": "skill_bonus",
							"selection_type": "skills_with_name",
							"name": {
								"compare": "is",
								"qualifier": "climbing"
							},
							"amount": 3
						},
						{
							"type": "skill_bonus",
							"selection_type": "skills_with_name",
							"name": {
								"compare": "is",
								"qualifier": "escape"
							},
							"amount": 3
						},
						{
							"type": "skill_bonus",
							"selection_type": "skills_with_name",
							"name": {
								"compare": "is",
								"qualifier": "erotic art"
							},
							"amount": 3
						},
						{
							"type": "conditional_modifier",
							"situation": "in penalties may be ignored when due to close quarters",
							"amount": -3
						}
					],
					"calc": {
						"points": 5
					}
				},
				{
					"id": "tddYiH0zmtMPye-nZ",
					"name": "Night Vision",
					"reference": "B71,P87",
					"tags": [
						"Advantage",
						"Physical"
					],
					"local_notes": "Source construction: Night Vision 4\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 4 point(s); library calculation is 4.",
					"points_per_level": 1,
					"can_level": true,
					"levels": 4,
					"calc": {
						"points": 4,
						"current_level": 4
					}
				},
				{
					"id": "tM5sJp8b3nw1DhulK",
					"name": "Reduced Consumption",
					"reference": "B80",
					"tags": [
						"Advantage",
						"Physical"
					],
					"local_notes": "Source construction: Reduced Consumption 3 (Cast Iron Stomach, -50%)\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 3 point(s); library calculation is 3.",
					"points_per_level": 2,
					"can_level": true,
					"levels": 3,
					"modifiers": [
						{
							"id": "m9QYQ_ffHv8KsaT3n",
							"name": "Cast-Iron Stomach",
							"reference": "B80",
							"cost_adj": "-50%"
						}
					],
					"calc": {
						"points": 3,
						"current_level": 3
					}
				},
				{
					"id": "tuNrkuWYeXIdRrd3o",
					"name": "Resistant to Metabolic Hazards +8",
					"reference": "Enraged Eggplant, Monsters (May 11, 2024): Rat Swarm [Monster Manual, page 239]",
					"tags": [
						"Advantage",
						"Review Required"
					],
					"local_notes": "Source construction: Resistant to Metabolic Hazards +8",
					"base_points": 15,
					"calc": {
						"points": 15
					}
				},
				{
					"id": "tV99SxsP5PRM-JMwg",
					"name": "Silence",
					"reference": "B85,P76",
					"tags": [
						"Advantage",
						"Exotic",
						"Physical"
					],
					"local_notes": "Source construction: Silence 2\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 10 point(s); library calculation is 10. Library note: Bonuses help only when hearing is the only sense that can be used to detect you.",
					"points_per_level": 5,
					"can_level": true,
					"levels": 2,
					"features": [
						{
							"type": "conditional_modifier",
							"situation": "to Stealth when you are perfectly motionless",
							"amount": 2,
							"per_level": true
						},
						{
							"type": "conditional_modifier",
							"situation": "to Stealth if moving (even in armor, etc.)",
							"amount": 1,
							"per_level": true
						}
					],
					"calc": {
						"points": 10,
						"current_level": 2
					}
				},
				{
					"id": "tOzqjoNnlQaZdxQav",
					"name": "Swarm",
					"reference": "Enraged Eggplant, Monsters (May 11, 2024): Rat Swarm [Monster Manual, page 239]",
					"tags": [
						"Advantage",
						"Review Required"
					],
					"local_notes": "Source construction: Swarm: Injury Tolerance (Diffuse; Body of Swarm, Rat-Sized, +0%) [100].",
					"base_points": 100,
					"calc": {
						"points": 100
					}
				},
				{
					"id": "tydnVUTJmM2RxIf8f",
					"name": "Swarm Bite",
					"reference": "Enraged Eggplant, Monsters (May 11, 2024): Rat Swarm [Monster Manual, page 239]",
					"tags": [
						"Advantage",
						"Review Required"
					],
					"local_notes": "Source construction: - Swarm Bite: Cutting Attack 1d (Area Effect, 1 yard, +25%; Cosmic, No die roll required, No active defense allowed, +400%; Melee Attack, C, No Parry, -35%) [35].",
					"base_points": 35,
					"calc": {
						"points": 35
					}
				},
				{
					"id": "t8P9MygPmJtAp4qxq",
					"name": "Semi-Upright",
					"reference": "B153",
					"tags": [
						"Disadvantage",
						"Exotic",
						"Physical"
					],
					"local_notes": "Source construction: Semi-Upright\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated -5 point(s); library calculation is -5. Library note: Moving while upright reduces Move by 40%",
					"base_points": -5,
					"calc": {
						"points": -5
					}
				},
				{
					"id": "tarGeDKfMqkNIBvb0",
					"name": "Short Lifespan",
					"reference": "B154",
					"tags": [
						"Disadvantage",
						"Exotic",
						"Physical"
					],
					"local_notes": "Source construction: Short Lifespan 4\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated -40 point(s); library calculation is -40.",
					"points_per_level": -10,
					"can_level": true,
					"levels": 4,
					"calc": {
						"points": -40,
						"current_level": 4
					}
				},
				{
					"id": "tzZYRAzqsI_183HF6",
					"name": "Wild Animal",
					"reference": "DFM14",
					"tags": [
						"Disadvantage",
						"Exotic",
						"Physical"
					],
					"local_notes": "Source construction: Wild Animal\nNative library match: Dungeon Fantasy RPG/Dungeon Fantasy RPG Traits (Dungeon Fantasy RPG Traits.adq). Fan source stated -30 point(s); library calculation is -30.",
					"base_points": -30,
					"features": [
						{
							"type": "conditional_modifier",
							"situation": "to any non-combat roll for an unexpected task or one not trained for",
							"amount": -2
						}
					],
					"calc": {
						"points": -30
					}
				},
				{
					"id": "tEiy7Ofj1MRXStq22",
					"name": "Fur",
					"reference": "B101",
					"tags": [
						"Exotic",
						"Perk",
						"Physical"
					],
					"local_notes": "Source construction: Fur\nNative library match: Basic Set/Basic Set Traits (Basic Set Traits.adq). Fan source stated 1 point(s); library calculation is 1.",
					"base_points": 1,
					"calc": {
						"points": 1
					}
				}
			],
			"calc": {
				"points": 46
			}
		}
	],
	"skills": [
		{
			"id": "Ao0q23kG9LGrvxY8Q",
			"name": "Climbing",
			"difficulty": "dx/a",
			"points": 1,
			"local_notes": "Stated level 14 in the source conversion."
		},
		{
			"id": "AoJ0WyIOuLRBl3fao",
			"name": "Escape",
			"difficulty": "dx/a",
			"points": 1,
			"local_notes": "Stated level 14 in the source conversion."
		},
		{
			"id": "ABemNk3xwfWZ2ZwN6",
			"name": "Scrounging",
			"difficulty": "dx/a",
			"points": 1,
			"local_notes": "Stated level 13 in the source conversion."
		},
		{
			"id": "AmEOXbMp6dj0_sYeX",
			"name": "Stealth",
			"difficulty": "dx/a",
			"points": 1,
			"local_notes": "Stated level 14 in the source conversion."
		}
	],
	"notes": [
		{
			"id": "ADutO1r4SAIVJtSUK",
			"text": "Typical Stats from the reviewed package: ST 4, DX 12, IQ 3, HT 14, HP 6, WILL 9, PER 12, FP 12, SPEED 6, MOVE 4, DODGE 10, DR 0. GCS derives its own values by applying the ancestry; where the two differ, the package's Typical Stats are what the Dungeons on Automatic encounter tables use."
		},
		{
			"id": "Avdr7AQECopgUnjg1",
			"text": "Encounter rating: CER 24 (offense 20, protection 4), threat tier minor, appearing 1."
		},
		{
			"id": "At08eVxf0DyBZi_DD",
			"text": "Swarm Bite (1d cutting), reach C: No attack roll and no active defense. No attack roll and no active defense. The swarm steps into close combat; the target automatically takes 1d cutting as large-area injury, reduced by DR normally. Retreating or dodging and dropping at least one yard away is the only way to avoid it."
		},
		{
			"id": "ARkqrwVYAq4u78mGx",
			"text": "GCS ancestry draft: gcs/rat-swarm.gct"
		},
		{
			"id": "AFYaXRtbrVlcdS-PH",
			"text": "Source template total: 46 points."
		},
		{
			"id": "AF2XG7pzA__2Gu1lo",
			"text": "Library-rebuilt template total: 46 points."
		},
		{
			"id": "AlNAS32_HjLlkbmKt",
			"text": "CER was computed from parsed Typical Stats using the Dungeons On Automatic baseline CER path."
		},
		{
			"id": "AImoR2QeyhQFxfPVD",
			"text": "Review attacks, special abilities, encounter frequency, treasure, grappling, and GCS modifiers before approval."
		},
		{
			"id": "A30i9v7f9UicogKvi",
			"text": "Swarm: the swarm is dispersed at 0 HP and destroyed at -HP. It cannot be slammed or grappled, is immune to crippling injuries, and takes reduced damage from most physical blows (Diffuse)."
		},
		{
			"id": "AP4EHxJEkfp9_7Th8",
			"text": "Original GURPS conversion by Enraged Eggplant, from Monsters (May 11, 2024); adapted and republished with permission."
		}
	],
	"created_date": "1970-01-01T00:00:00Z",
	"modified_date": "1970-01-01T00:00:00Z"
}
