diff --git a/devTools/types/FC/human.d.ts b/devTools/types/FC/human.d.ts
index 09aea9c961d8b7c0ea027977bf6cc8c547807767..bf40c96721c83772ad2c5f01b07344578cd01f67 100644
--- a/devTools/types/FC/human.d.ts
+++ b/devTools/types/FC/human.d.ts
@@ -3,7 +3,6 @@ declare global {
 	export namespace FC {
 		export type SlaveState = InstanceType<typeof App.Entity.SlaveState>;
 		export type PlayerState = InstanceType<typeof App.Entity.PlayerState>;
-		export type AnimalState = InstanceType<typeof App.Entity.Animal>;
 
 		export type DeepPartialSlaveState = DeepPartial<SlaveState>;
 
@@ -319,8 +318,8 @@ declare global {
 		type HeightImplant = -1 | 0 | 1;
 		type Hearing = -2 | -1 | 0;
 
-		type AnimalType = | "canine" | "hooved" | "feline";
-		type DNAType = AnimalType | "human" | "sterile";
+		type AnimalType = "human" | "dog" | "pig" | "horse" | "cow";
+		type SpermType = AnimalType | "sterile";
 
 		type GeneticQuirk = 0 | 1 | 2;
 		interface GeneticQuirks {
diff --git a/js/medicine/2-reproductiveOrgans.js b/js/medicine/2-reproductiveOrgans.js
index 369e5ee642f4a35752fdf3afb34b062b51df1c78..4453e9b9e6a8567336cb6c638480dda538f0e511 100644
--- a/js/medicine/2-reproductiveOrgans.js
+++ b/js/medicine/2-reproductiveOrgans.js
@@ -38,7 +38,7 @@ App.Medicine.OrganFarm.Testicles = class extends App.Medicine.OrganFarm.Organ {
 	/**
 	 * @param {Object} params
 	 * @param {string} params.name
-	 * @param {FC.DNAType} params.ballType
+	 * @param {FC.SpermType} params.ballType
 	 */
 	constructor({name, ballType}) {
 		super({
@@ -158,7 +158,7 @@ App.Medicine.OrganFarm.Ovaries = class extends App.Medicine.OrganFarm.Organ {
 	/**
 	 * @param {object} params
 	 * @param {string} params.name
-	 * @param {FC.DNAType} params.eggType
+	 * @param {FC.SpermType} params.eggType
 	 * @param {string} params.pregData
 	 */
 	constructor({name, eggType, pregData}) {
@@ -231,7 +231,7 @@ App.Medicine.OrganFarm.Ovaries = class extends App.Medicine.OrganFarm.Organ {
 App.Medicine.OrganFarm.AnalWombImplantAction = class extends App.Medicine.OrganFarm.OrganImplantAction {
 	/**
 	 * @param {object} params
-	 * @param {FC.DNAType} params.eggType
+	 * @param {FC.SpermType} params.eggType
 	 * @param {string} params.pregData
 	 */
 	constructor({eggType, pregData}) {
@@ -273,7 +273,7 @@ App.Medicine.OrganFarm.AnalWomb = class extends App.Medicine.OrganFarm.Organ {
 	/**
 	 * @param {object} params
 	 * @param {string} params.name
-	 * @param {FC.DNAType} params.eggType
+	 * @param {FC.SpermType} params.eggType
 	 * @param {string} params.pregData
 	 */
 	constructor({name, eggType, pregData}) {
diff --git a/src/js/SlaveState.js b/src/js/SlaveState.js
index 02cce67777b009da95a6df8ac62d54d645fcb059..dc1af157f5af1a2f90c7e096b0b54c4693cc11f4 100644
--- a/src/js/SlaveState.js
+++ b/src/js/SlaveState.js
@@ -2459,7 +2459,7 @@ App.Entity.SlaveState = class SlaveState {
 		 * * "canine"
 		 * * "hooved"
 		 * * "feline"
-		 * @type {FC.DNAType}
+		 * @type {FC.SpermType}
 		 */
 		this.ballType = "human";
 		/**
@@ -2468,7 +2468,7 @@ App.Entity.SlaveState = class SlaveState {
 		 * * "canine"
 		 * * "hooved"
 		 * * "feline"
-		 * @type {FC.DNAType}
+		 * @type {FC.SpermType}
 		 */
 		this.eggType = "human";
 		/** Eugenics variable. Is the slave allowed to choose to wear chastity.
diff --git a/src/npc/children/ChildState.js b/src/npc/children/ChildState.js
index e037afffbb0e5a145ce2ec6baa22e6dd68ff6fb6..06c564c8bb8b950c8e484a3f57a0b4f1e12e12c4 100644
--- a/src/npc/children/ChildState.js
+++ b/src/npc/children/ChildState.js
@@ -1825,7 +1825,7 @@ App.Facilities.Nursery.ChildState = class ChildState {
 		 * * "canine"
 		 * * "hooved"
 		 * * "feline"
-		 * @type {FC.DNAType}
+		 * @type {FC.SpermType}
 		 */
 		this.ballType = "human";
 		/**
@@ -1834,7 +1834,7 @@ App.Facilities.Nursery.ChildState = class ChildState {
 		 * * "canine"
 		 * * "hooved"
 		 * * "feline"
-		 * @type {FC.DNAType}
+		 * @type {FC.SpermType}
 		 */
 		this.eggType = "human";
 		/** Eugenics variable. Is the slave allowed to choose to wear chastity.
diff --git a/src/player/js/PlayerState.js b/src/player/js/PlayerState.js
index 2a7bbc59dc30cc9514ca3f6056eafeefc28ea050..f2b0182c9d0c1e22b046670a1bc1c5908d755fe9 100644
--- a/src/player/js/PlayerState.js
+++ b/src/player/js/PlayerState.js
@@ -1903,7 +1903,7 @@ App.Entity.PlayerState = class PlayerState {
 		 * * "canine"
 		 * * "hooved"
 		 * * "feline"
-		 * @type {FC.DNAType}
+		 * @type {FC.SpermType}
 		 */
 		this.ballType = "human";
 		/**
@@ -1913,7 +1913,7 @@ App.Entity.PlayerState = class PlayerState {
 		 * * "canine"
 		 * * "hooved"
 		 * * "feline"
-		 * @type {FC.DNAType}
+		 * @type {FC.SpermType}
 		 */
 		this.eggType = "human";
 		/** */