API Documentation - wofsauge/External-Item-Descriptions GitHub Wiki

EID Function Documentation

Documented Functions

EID:AddAlternativeLanguageCode(originalLanguageCode, newLanguageCode)

Defined in: features\eid_language_manager.lua

Initializes handling of alternative language codes for a specific language using meta-table that redirect table accesses to the original table


EID:AddClosestPlayerConditional(IDs, charIDs, modText, extraTable, includeTainted)

Defined in: features\eid_conditionals_funcs.lua

For adding a conditional that only displays when the closest player to the pedestal is the right character


EID:AddConditional(IDs, funcText, modText, extraTable)

Defined in: features\eid_conditionals_funcs.lua

Every single add conditional function ends up calling this function eventually. This is THE place to define variables every condition MUST have.


EID:AddIconToObject(eType, eVariant, eSubType, iconName)

Defined in: features\eid_api.lua

Adds an EID Icon to an Object @param eType EntityType @param eVariant integer @param eSubType integer @param iconName string


EID:AddItemConditional(IDs, ownedIDs, modText, extraTable, checkInReminder)

Defined in: features\eid_conditionals_funcs.lua

Easy to use functions for conditionals that rely on having a specific item/character By default, they'll have a bulletpoint for the item/char, and {1} becomes the item/char's name checkInReminder is for if a synergy is no longer relevant once the item isn't obtainable (e.g. Abyss locusts) (true by default)


EID:AddOneSidedSynergyConditional(IDs, ownedIDs, modText, extraTable, checkInReminder)

Defined in: features\eid_conditionals_funcs.lua

For adding a synergy pair where the same item name should be used for the descriptions of both sides of it e.g. Sacrificial Altar synergies are displayed on both the Altar and the familiar, but only the familiar's name matters


EID:AddPickupToHistory(pickupType, effectID, player, useFlags, pillColorID)

Defined in: features\eid_api.lua

Add pickup usage to history of pickups used by the player @param pickupType "pill" | "card" @param effectID PillEffect | Card @param player EntityPlayer @param useFlags UseFlag @param pillColorID? PillColor @Only used for pills


EID:AddPlayerConditional(IDs, charIDs, modText, extraTable, includeTainted)

Defined in: features\eid_conditionals_funcs.lua

For adding a conditional based on if a specific character is present includeTainted is for if you want to check the normal and tainted version of a character (true by default)


EID:AddSelfConditional(ownedIDs, modText, extraTable, includeDiplopia)

Defined in: features\eid_conditionals_funcs.lua

For adding a conditional that looks at owning itself; item reminder is of course disabled Holding Diplopia or Crooked Penny should probably also trigger this type of conditional, so it's included by default


EID:AddSynergyConditional(IDs, ownedIDs, modText1, modText2, extraTable1, extraTable2, checkInReminder)

Defined in: features\eid_conditionals_funcs.lua

For adding pairs of abilities to collectibles; you can define a different modifier text for each of them example: EID:AddSynergyConditional({list of IDs overridden by Brimstone}, Brimstone, "Overridden", "Overrides")


EID:AddToCollectiblesToCheckList(itemID)

Defined in: features\eid_api.lua

@param itemID CollectibleType


EID:AdjustLanguageConfigSetting()

Defined in: features\eid_language_manager.lua

Initializes handling of alternative language codes for all languages


EID:AreAchievementsAllowed() return true end

Defined in: features\eid_repentogon.lua

REPENTOGON: Function is no longer used since repentogon always has progress enabled.


EID:ArrayContains(t, value)

Defined in: features\eid_api.lua

@param t any[] @param value any @return boolean


EID:AssignFlipItems()

Defined in: main.lua

Handle Flip Item in New Room. Repentance only function!


EID:BoCCheckForPickups()

Defined in: features\eid_repentogon.lua

BAG OF CRAFTING------------------------------- Directly read bag of crafting content


EID:BoCGetRoomPickupList()

Defined in: features\eid_bagofcrafting.lua

Check what pickups are available in this room


EID:BoCOnNewRoom_Repentogon(_)

Defined in: features\eid_repentogon.lua

read room items directly from room data when changing rooms, to ensure floor item counter doesnt desync


EID:BoCSBlockInputAction(_, inputHook, _)

Defined in: features\eid_bagofcrafting_search.lua

Blocks all input actions triggered by the games bindings itself


EID:BoCSCheckItemName(itemName)

Defined in: features\eid_bagofcrafting_search.lua

Returns true if the item name is matched @returns boolean


EID:BoCSGetSearchEnabled()

Defined in: features\eid_bagofcrafting_search.lua

Gets if the filtering is currently enabled


EID:BoCSGetSearchInputEnabled()

Defined in: features\eid_bagofcrafting_search.lua

Returns if the search input is enabled @returns boolean


EID:BoCSGetSearchLine()

Defined in: features\eid_bagofcrafting_search.lua

Returns the line that should be displayed inside of the menu


EID:BoCSGetSearchValue()

Defined in: features\eid_bagofcrafting_search.lua

Returns the current search query @return string


EID:BoCSHandleInput()

Defined in: features\eid_bagofcrafting_search.lua

Handles any input done related to Bag of Crafting search


EID:BoCSHookInput()

Defined in: features\eid_bagofcrafting_search.lua

This is a workaround to block every single Input call that could potentially be used from another mod. We override the Input functions with our own stubs to prevent other mods from doing actions while the user is performing a search. This does NOT block the main game from performing actions like toggling fullscreen or toggling the pause! Since this could be useful for multiple reasons, this should probably be put inside the main.lua instead of leaving this here Hooking multiple times WILL impact the performance! I've also added a third parameter called "force" This way, we are still able to force the real function to be called instead of our modified code This code should not impact the performance in a huge way since the first thing we do is check if the searchInput is enabled anyway We can allow losing a bit of performance when searching


EID:BoCSOnNewLevel()

Defined in: features\eid_bagofcrafting_search.lua

Resets the search query when entering a new level


EID:BoCSPostGameStarted()

Defined in: features\eid_bagofcrafting_search.lua

Resets the search query when starting and continuing a game


EID:BoCSSetLocked(newState, force)

Defined in: features\eid_bagofcrafting_search.lua

Locks or unlocks the search query @param newState boolean


EID:BoCSSetSearchInputEnabled(newState, force)

Defined in: features\eid_bagofcrafting_search.lua

Enables or disables the search input respectively @param newState boolean


EID:BoCSSetSearchValue(newValue)

Defined in: features\eid_bagofcrafting_search.lua

Returns the current search query @param newValue new search query


EID:BoCTrackBagHolding() end

Defined in: features\eid_repentogon.lua

Deactivate manual tracking code


EID:CheckActiveChargeType(itemID, maxCharge, chargeType, requiredCollectible)

Defined in: features\eid_conditionals_funcs.lua

Check the given item ID for the given max charge and/or charge type (as well as check if the players have the additional collectible ID provided)


EID:CheckActivesForCarBattery(_)

Defined in: features\eid_conditionals_funcs.lua

When we're looking at a Car Battery pedestal, check our actives for having an effect or no effect


EID:CheckCurrentRoomGridEntities()

Defined in: features\eid_api.lua

Create a list of all grid entities in the room that have an EID description


EID:CheckFamiliarsForBFFS(_)

Defined in: features\eid_conditionals_funcs.lua

When we're looking at a BFFS pedestal, check our familiars for having an effect (only finds the earliest one)


EID:CheckFlipGridIndexes(collectibleType)

Defined in: main.lua

Before using Flip, swap all flippable pedestal's current item with the flip one (also, fix grid index if needed) Repentance only function!


EID:CheckForBFFS(descObj, hiveMind)

Defined in: features\eid_conditionals_funcs.lua

When we have BFFS/Hive Mind, change familiar pedestal descriptions


EID:CheckForCarBattery(descObj)

Defined in: features\eid_conditionals_funcs.lua

When we have Car Battery, change active pedestal descriptions


EID:CheckForMultipleActives(_, onlyChargeablePockets)

Defined in: features\eid_conditionals_funcs.lua

Check if we have characters with Schoolbag or a pocket active item


EID:CheckForMultipleChargeableActives(descObj)

Defined in: features\eid_conditionals_funcs.lua

Check if we have characters with Schoolbag or a chargeable pocket active item (for 4.5 Volt)


EID:CheckForNoRedHealthPlayer()

Defined in: features\eid_conditionals_funcs.lua

Check if we have any characters that can't have Red Health, to print additions to descs like Dead Cat


EID:CheckForPocketActives()

Defined in: features\eid_conditionals_funcs.lua

Check if we have a character with a pocket active


EID:CheckGlitchedItemConfig(id)

Defined in: features\eid_tmtrainer.lua

Obtains information about glitched items from the ItemConfig (hearts added on pickup, cacheflags affected), returns string of info


EID:CheckGridEntityHasDescription(entity)

Defined in: features\eid_grid_descriptions.lua

Checks if the given grid entity has a description available @param entity GridEntity: The grid entity to check for a description. @return boolean: Returns true if a description exists for the entity, false otherwise.


EID:CheckPedestalIndex(entity)

Defined in: main.lua

Check if a pedestal's index is valid for Flip items. Repentance Only function! @param entity any


EID:CheckPlayersCollectibles()

Defined in: features\eid_modifiers.lua

Check if any players own a collectible, returns true if at least one player has it


EID:CheckPlayersForActiveChargeType(maxCharge, chargeType, checkPockets)

Defined in: features\eid_conditionals_funcs.lua

Check for a player having an active item with a specific quantity of charges, or charge type 0 = normal, 1 = timed, 2 = special


EID:CheckPosModifiers()

Defined in: main.lua

Check our position modifiers based on HUD offset and character choice


EID:CheckStartOfRunWarnings()

Defined in: main.lua

Check for start of run warnings, such as old game version or modded items


EID:CheckVoidAbsorbs(_, _, player)

Defined in: main.lua

MC_PRE_USE_ITEM callback to watch for Void absorbing active items


EID:ClosestCharCheck(modifierText, playerTypes, includeTainted)

Defined in: features\eid_conditionals_funcs.lua

Function to check if we are the closest player and should actually apply the conditional, or just append "Different effect for {1}"


EID:ClosestPlayerTo(entity)

Defined in: features\eid_api.lua

Find the closest player to the given entity @param entity Entity @return EntityPlayer


EID:CollectRerolledItemsOfPlayer(player)

Defined in: features\eid_api.lua

Collects items that the player got after using D4 item @param player EntityPlayer


EID:CollectibleSpawnedThisFrame(_)

Defined in: main.lua

Wait until all collectibles spawning this frame have spawned before checking what we need to check about them


EID:ConcatTables(t1, t2)

Defined in: features\eid_api.lua

Super simple table concatenation: https://www.tutorialspoint.com/concatenation-of-tables-in-lua-programming @generic T @param t1 T[] @param t2 T[] @return T[]


EID:CopyTable(orig)

Defined in: features\eid_api.lua

deep table copy, copied from http://lua-users.org/wiki/CopyTable @generic T @param orig T @return T


EID:CreateDescriptionTableIfMissing(tableName, language)

Defined in: features\eid_api.lua

Creates a description table for a given language to prevent outdated languages from breaking EID API functions for mods @param tableName string @param language EID_LanguageCode


EID:CrookedPennyPrediction(rng, carBattery)

Defined in: features\eid_itemprediction.lua

Crooked Penny ---


EID:CurrentDInfinity(rng, player)

Defined in: features\eid_itemprediction.lua

Returns the item ID of D Infinity's current die For Repentance, the Drop button is tracked, which is probably not 100% successful, and handled elsewhere


EID:DetectModdedItems()

Defined in: features\eid_api.lua

@return boolean


EID:EntitySanityCheck(entity)

Defined in: features\eid_api.lua

Returns true, if the given entity is a valid game object and actually is something useful to process. Sometimes the game sends weird shit so this function is needed to catch bullshit @return boolean


EID:EvaluateLocation(gridPosition)

Defined in: features\eid_api.lua

Returns true if the position at the given grid location is valid for pathfinding. gridPosition is a table with an x and y entry. Its derived from the FindVector class of "LuaFindings" module (pathfinder) @param gridPosition table @return boolean


EID:GetAllActiveItems()

Defined in: features\eid_api.lua

Returns a list of all active item ids @return integer[]


EID:GetAllPassiveItems()

Defined in: features\eid_api.lua

Returns a list of all passive item ids @return integer[]


EID:GetCurrentModPath()

Defined in: main.lua

Function to get the current mod path @return string The absolute path to the current mod


EID:GetDimension(level)

Defined in: features\eid_api.lua

Returns the dimension ID the player is currently in. @param level Level @return EID_Dimension?


EID:GetEntityXMLName(Type, Variant, SubType)

Defined in: features\eid_repentogon.lua

REPENTOGON: Entity names can now be directly read from XML returns the name of the given entity


EID:GetEntityXMLNameByString(str)

Defined in: features\eid_repentogon.lua

takes a string like "5.100.69"


EID:GetIconNameByVariant(variant)

Defined in: features\eid_api.lua

@param variant | 70 @Pill | 100 @Collectible | 300 @Card | 350 @Trinket


EID:GetIconStringByDescriptionObject(descObj)

Defined in: features\eid_api.lua

@param descObj EID_DescObj @return string


EID:GetItemSeed(player, id, variant)

Defined in: features\eid_api.lua

Get an item's RNG seed. We have no use for the RNG object itself because every other function it can do will advance the item's RNG, altering the game state @param player EntityPlayer @param id CollectibleType | TrinketType | Card | PillEffect @param variant? integer @Default: 100 (Collectible) @return integer?


EID:GetMaxCollectibleID()

Defined in: features\eid_api.lua

Returns the maximum collectible id, including modded items @return CollectibleType


EID:GetMaxTrinketID()

Defined in: features\eid_api.lua

Returns the maximum trinket id, including modded trinkets @return TrinketType


EID:GetPlayerIcon(playerID, altFallback)

Defined in: features\eid_api.lua

Returns the markup for a given player ID or type. If no icon was found, returns the customTransformation icon markup @param playerID integer @param altFallback? string


EID:GetTransformationsOfModdedItems()

Defined in: features\eid_api.lua

Tries to get the Vanilla transformations of modded items based on Tags


EID:GlyphOfBalancePrediction(player)

Defined in: features\eid_itemprediction.lua

Glyph of Balance --


EID:HasPathToPosition(startPos, endPos)

Defined in: features\eid_api.lua

Returns true if an unobstructed path between the start and end position exists. Obstructions can be something like Rocks, Pits, Walls, etc. @param startPos Vector @param endPos Vector @return boolean


EID:HaveEncountered(monsterType, monsterVariant)

Defined in: features\eid_conditionals_funcs.lua

Check the bestiary/character list if we have REPENTOGON, to help avoid spoilers. Otherwise just return true


EID:InitActiveItemInteraction(itemIDStr)

Defined in: features\eid_api.lua

Initialize a touched active item to 0 count for all players (Fixes co-op bugs, compared to only initiating it for the toucher) @param itemIDStr string


EID:InitAltLanguageCodes()

Defined in: features\eid_language_manager.lua

Initializes handling of alternative language codes for all languages


EID:InitItemInteractionIfAbsent(playerID)

Defined in: features\eid_api.lua

If the player ItemInteraction table doesnt exist, create it with its init values @param playerID integer


EID:InitializeLanguagePacks()

Defined in: features\eid_language_manager.lua

Initializes and loads all language packs for the current game version, including handling for Repentance and Repentance+ expansions, and sorts the language list after loading.


EID:IsAltChoice(pickup)

Defined in: main.lua

Function to check if a collectible pedestal is an alt path choice


EID:IsCategorySelected(categoryID)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: check if the given category is currently selected


EID:IsGridEntity(entity)

Defined in: features\eid_api.lua

Returns true if a given entity is a grid entity @param entity Entity | GridEntity


EID:IsItemHidden(entity)

Defined in: features\eid_api.lua

Returns true if the given pedestal-entity is hidden (questionmark sprite) @param entity Entity @return boolean


EID:IsScrollableCategorySelected()

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: check if the currently selected category is scrollable


EID:ItemReminderAddDescription(player, entityType, variant, subType, extraIcon)

Defined in: features\eid_holdmapdesc.lua

Add item description for a given entity to the reminder. Also tries to apply special modifiers if present


EID:ItemReminderAddResult(descObj, newText, inOverview)

Defined in: features\eid_holdmapdesc.lua

Helper function for modifiers that want to replace the description in the overview, but append to the description otherwise


EID:ItemReminderAddResultAppend(descObj, newText)

Defined in: features\eid_holdmapdesc.lua

Adds a formatted "Result" text appended to the item description


EID:ItemReminderAddResultHeaderSuffix(descObj, newName)

Defined in: features\eid_holdmapdesc.lua

Adds a formatted "Result" text to the item name


EID:ItemReminderAddSpecialDescriptions(player)

Defined in: features\eid_holdmapdesc.lua

In the overview category, check for special descriptions


EID:ItemReminderAddTempDescriptionEntry(icon, title, newDesc)

Defined in: features\eid_holdmapdesc.lua

Simple function to help with adding properly formatted sections to the reminder description returns false, when no further descriptions should be added


EID:ItemReminderCanAddMoreToView()

Defined in: features\eid_holdmapdesc.lua

returns true, if its possible for the currently evaluated view to have more descriptions added to it


EID:ItemReminderGetAllPlayers()

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: special list of all players, ignoring tainted forgotten ghost and coop babies


EID:ItemReminderGetDescription()

Defined in: features\eid_holdmapdesc.lua

Generates the description for the Item Reminder, based on the currently selected category and player. @return string


EID:ItemReminderGetTitle()

Defined in: features\eid_holdmapdesc.lua

Returns the title of the currently selected Item Reminder category. @return string


EID:ItemReminderHandleActiveItems(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Active Item Descriptions


EID:ItemReminderHandleCharacterInfo(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Information about the player character's traits


EID:ItemReminderHandleDiceBag(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: dice bag


EID:ItemReminderHandleInitHoldTab()

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Resets data when initializing holding TAB


EID:ItemReminderHandleInputs()

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Handle scroll inputs


EID:ItemReminderHandleItemPrinting(player, entryTable, itemVariant, descending)

Defined in: features\eid_holdmapdesc.lua

takes a list of item ids and an item variant to automatically print the correct amount of descriptions


EID:ItemReminderHandleItemScrollbarFeature(entryTable, itemVariant, descending)

Defined in: features\eid_holdmapdesc.lua

takes a list of item ids and an item variant to automatically generate a scrollable list of item icons.


EID:ItemReminderHandleLemegetonWisps(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Lemegeton wisp descriptions


EID:ItemReminderHandlePocketActive(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: pocket actives


EID:ItemReminderHandlePocketItems(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Pocket Item Descriptions


EID:ItemReminderHandlePoopSpells(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Tainted ??? Poop Descriptions


EID:ItemReminderHandleSelectedPassiveItem(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Passive Item Descriptions


EID:ItemReminderHandleTrinkets(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Trinket Descriptions


EID:ItemReminderHeldPlusGulped(player)

Defined in: features\eid_holdmapdesc.lua

Item Reminder function: Held trinkets are added at the end of the table; use this table in descending order


EID:ItemReminderHeldPlusGulped(player)

Defined in: features\eid_repentogon.lua

REPENTOGON: Gulped trinkets can be read directly from the game


EID:ItemReminderReplaceWithResult(descObj, result, resultVariant)

Defined in: features\eid_holdmapdesc.lua

Helper function for modifiers like Modeling Clay / Liberty Cap that replace their description with the temporary item's description


EID:ItemReminderTrimBulletPoints(description)

Defined in: features\eid_holdmapdesc.lua

trim all entries to make them shorter, by removing bullet points


EID:LoadLanguagePacks(gameVersion)

Defined in: features\eid_language_manager.lua

Attempts to load all language packs from a given game version


EID:MetronomePrediction(rng)

Defined in: features\eid_itemprediction.lua

TODO: Account for Car Battery (If we have it, display multiple results? Also, if the result is Car Battery, it's immediately triggered again)


EID:MultiplePlayerCharacters()

Defined in: features\eid_conditionals_funcs.lua

Check for multiple players existing for items like Yum Heart and Extension Cord, includes J&E and Strawmen


EID:OnGameExit()

Defined in: main.lua

OnGameExit saves the current EID configuration.


EID:OnGameStart(isSave)

Defined in: main.lua

OnGameStart is called when the game starts, either from a save or a new run. It initializes the config data if available. @param isSave boolean Indicates whether the game is starting from a save or a new run.


EID:OnRender()

Defined in: main.lua

Render function that runs every frame and handles the main EID rendering logic.


EID:OnUseCard(cardID, player, useFlags)

Defined in: main.lua

OnUseCard is called when a card is used, and handles card history tracking and Wild Card effects. @param cardID number The ID of the card being used. @param player EntityPlayer The player using the card. @param useFlags number Flags indicating how the card was used (e.g., whether it was used with no animation).


EID:OnUsePill(pillEffectID, player, useFlags)

Defined in: main.lua

OnUsePill is called when a pill is used, and handles pill history tracking and Wild Card effects. @param pillEffectID number The ID of the pill effect being used. @param player EntityPlayer The player using the pill. @param useFlags number Flags indicating how the pill was used (e.g., whether it was used with no animation).


EID:OnUseSmelter(_, _, _, player)

Defined in: main.lua

MC_PRE_USE_ITEM callback to watch for smelting trinkets; includes Gulp and Marbles


EID:PlayerHasCard(player, cardID)

Defined in: features\eid_api.lua

Returns true, if the player has a given card @param player EntityPlayer @param cardID Card @return boolean, EntityPlayer?, integer?


EID:PlayerHasItem(player, Type, Var, Sub)

Defined in: features\eid_api.lua

Checks if the given player has the given item ID (or is the given player ID) @param player EntityPlayer @param Type EntityType @param Var integer? @param Sub integer? @return boolean


EID:PlayerHasPill(player, pillID)

Defined in: features\eid_api.lua

Returns true, if the player has a given pill color @param player EntityPlayer @param pillID PillColor @return boolean, EntityPlayer?, integer?


EID:PlayerVoidedCollectible(player, collectibleID)

Defined in: features\eid_api.lua

Returns true, if the player has a given voided collectible @param player EntityPlayer @param collectibleID CollectibleType @return boolean, EntityPlayer?


EID:PlayersActionPressed(button, inputFunc)

Defined in: features\eid_api.lua

Returns true if any player is pressing the given button (you can also specify any of the input functions) @generic BTN @param button BTN @param inputFunc nil | fun(button: BTN, playerIndex: integer): boolean @return boolean, integer?


EID:PlayersHaveCard(cardID)

Defined in: features\eid_api.lua

Returns true, if any player has a given card @param cardID Card @return boolean, EntityPlayer?


EID:PlayersHaveCharacter(playerType, includeTainted)

Defined in: features\eid_api.lua

Checks if someone is playing as a certain character, for modifiers @param playerType PlayerType @param includeTainted? boolean @If true, doesn't care if the player is tainted or not @return boolean, EntityPlayer?, integer?


EID:PlayersHaveCollectible(collectibleID)

Defined in: features\eid_api.lua

Checks if any player has a given collectible ID, for modifiers @param collectibleID CollectibleType @return boolean, EntityPlayer?, integer?


EID:PlayersHaveItem(Type, Var, Sub)

Defined in: features\eid_api.lua

Checks if any player has a given item ID (or anyone is a given player ID) @param Type string | integer | EntityType @param Var integer | nil @param Sub integer | nil @return boolean, EntityPlayer?, integer?


EID:PlayersHavePill(pillID)

Defined in: features\eid_api.lua

Returns true, if any player has a given pill color @param pillID PillColor @return boolean, EntityPlayer?


EID:PlayersHaveTrinket(trinketID)

Defined in: features\eid_api.lua

Checks if any player has a given trinket ID, for modifiers @param trinketID TrinketType @return boolean, EntityPlayer?, integer?


EID:PlayersVoidedCollectible(collectibleID)

Defined in: features\eid_api.lua

Returns true, if any player has a given voided collectible @param collectibleID CollectibleType @return boolean, EntityPlayer?


EID:RNGNext(rngNum, shift1, shift2, shift3)

Defined in: features\eid_itemprediction.lua

reimplementation of RNG:Next() Default RNG shift values for many things are 5, 9, 7 (xor table #35)


EID:RefreshThisFrame()

Defined in: features\eid_api.lua

Returns if this is a frame we should refresh our descriptions @return boolean


EID:RenderEntity(entity, sprite, position)

Defined in: features\eid_api.lua

Render a sprite of an entity @param entity Entity @param sprite Sprite @param position Vector


EID:ReplaceVariableStr(str, varID, newString)

Defined in: features\eid_api.lua

Replaces Variable placeholders in string with a given value Example: "My {1} message" --> "My test message" varID can be omitted to replace {1} (or pass in a string table, to replace {1}, {2}, etc.) @param str string @param varID integer | integer[] | string | string[] @param newString? string | string[] | integer


EID:ResetDescCache()

Defined in: main.lua

Reset the description cache, used when options change or when printing descriptions


EID:ResetItemReminderSelectedItems(categoryName)

Defined in: features\eid_holdmapdesc.lua

simple function to reset the selected items in the scrollbars. can specify a category name like "Passives"


EID:SeedToFloat(seed)

Defined in: features\eid_itemprediction.lua

Convert a seed int into a float between 0 and 1


EID:SetPillEffectUnidentifyable(pillEffectID, isUnidentifyable)

Defined in: features\eid_api.lua

Set a pilleffect to be permanently unidentifyable by EID @param pillEffectID PillEffect @param isUnidentifyable boolean


EID:SimpleReplace(str, what, with, count)

Defined in: features\eid_api.lua

Thing to fix find/replace pairs with hyphens (like "1-2") or pluses (like +1 Health) breaking because of special characters https://stackoverflow.com/questions/29072601/lua-string-gsub-with-a-hyphen @param str string @param what string @param with string @param count integer @return string, integer


EID:SimpleRound(num, dp)

Defined in: features\eid_api.lua

Simple decimal rounding, instead of just floor or ceil @param num number @param dp integer? @return number


EID:SplitTVS(tvsString)

Defined in: features\eid_api.lua

Converts e.g. "5.100.69" format strings into 5, 100, 69. Returns 0 for any not included @param tvsString string @return integer, integer, integer


EID:TabPressed()

Defined in: features\eid_modifiers.lua

Returns true if Tab was pressed this frame, false otherwise


EID:TabReleased()

Defined in: features\eid_modifiers.lua

Returns true if Tab was released this frame, false otherwise


EID:Teleport1Prediction(rng)

Defined in: features\eid_itemprediction.lua

Teleport! Destination Prediction -- Returns text like "{{RoomIcon}} Room Type Name#Up 3, Left 2"


EID:TrackWildCardEffects(effectID, player, pillColor)

Defined in: features\eid_api.lua

@param effectID string @Identifier in Type.Variant.SubType format @param player EntityPlayer @param pillColor? PillColor


EID:TryPluralizeString(text, amount)

Defined in: features\eid_api.lua

Applies language specific modifiers that aim to pluralize a text @param text string @param amount integer


EID:UpdateAllPlayerLemegetonWisps()

Defined in: features\eid_api.lua

This is automatically called shortly after main.lua sees a Lemegeton get used, and when the Item Reminder is opened


EID:UpdateAllPlayerPassiveItems()

Defined in: features\eid_api.lua

Updates the EID.RecentlyTouchedItems table to include the players currently held passive items @return table


EID:UpdateAllPlayerTrinkets()

Defined in: features\eid_api.lua

Check for gulped trinkets that have been removed (e.g. perfection, walnut)


EID:UpdateAllPlayerTrinkets() end

Defined in: features\eid_repentogon.lua

remove function. No longer needed


EID:VoidRNGCheck(player, isRune)

Defined in: features\eid_itemprediction.lua

Determine what stats will be increased after 1 absorption, the whole room's absorption, and whole room + a purchased item above your head


EID:VoidRoomCheck()

Defined in: features\eid_itemprediction.lua

Count the number of absorbable pedestals in the room Returns a table of active items that will be absorbed


EID:WasPillUsed(pillColor)

Defined in: features\eid_api.lua

Returns true if the given pill color was used at least once in this game @param pillColor PillColor @return boolean


EID:WatchForDInfinity()

Defined in: features\eid_itemprediction.lua

To help with Rep tracking, watch for D Infinity to get used and resync its current dice


EID:WatchForGlitchedCrown()

Defined in: features\eid_api.lua

Watch pedestals for being a Glitched Crown style pedestal that flips between items too quickly to display descriptions for


EID:WriteDebugMsg(str)

Defined in: features\eid_api.lua

Prints a message in both the console and the Log file, to make important messages from EID stand out everywhere @param str string


EID:WriteErrorMsg(str)

Defined in: features\eid_api.lua

Prints an error message in both the console and the Log file, to make important messages from EID stand out everywhere @param str string


EID:addAbyssSynergiesCondition(ID, text, numberToDouble, newNumber, language)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for adding abyss synergies conditions


EID:addBFFSCondition(ID, text, numberToDouble, newNumber, language)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for adding BFFS conditions; this is slightly more complex since it supports trinkets Example usage: EID:addBFFSCondition(myBasicFamiliarID, nil, 3.5)


EID:addBingeEaterBuffsCondition(ID, text, numberToDouble, newNumber, language)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for adding binge eater conditions


EID:addBirthright(characterId, description, playerName, language)

Defined in: features\eid_api.lua

Adds a character specific description for the item "Birthright" @param characterId PlayerType @param description string @param playerName? string @param language? EID_LanguageCode @Default: "en_us


EID:addBookOfBelialBuffsCondition(ID, text, numberToDouble, newNumber, language)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for adding book of belial conditions


EID:addCarBatteryCondition(ID, text, numberToDouble, newNumber, language)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for adding car battery conditions


EID:addCard(id, description, itemName, language)

Defined in: features\eid_api.lua

Adds a description for a card/rune @param id Card @param description string @param itemName? string @param language? EID_LanguageCode @Default: "en_us


EID:addCardMetadata(id, mimicCharge, isRune)

Defined in: features\eid_api.lua

DEPRECATED! Does nothing! Don't use!


EID:addCharacterInfo(characterId, description, playerName, language)

Defined in: features\eid_api.lua

Adds character specific information, which can be viewed in the Item Reminder @param characterId PlayerType @param description string @param playerName? string @Default: "Modded Character" @param language? EID_LanguageCode @Default: "en_us


EID:addCollectible(id, description, itemName, language)

Defined in: features\eid_api.lua

Adds a description for a collectible. @param id CollectibleType @param description string @param itemName string? @param language EID_LanguageCode? @Default: "en_us


EID:addColor(shortcut, kColor, callback)

Defined in: features\eid_api.lua

Adds a new color object with the shortcut defined in the "shortcut" variable (e.g. "{{shortcut}}" = your color) Shortcuts are case sensitive! Shortcuts can be overriden with this function to allow for full control over everything Either kColor or callback must be provided @param shortcut string @param kColor? KColor @Constant color @param callback? fun(color:KColor):KColor @Called whenever the color markup is interpreted


EID:addCondition(ID, ownedID, text, replaceText, language, extraTable)

Defined in: features\eid_conditionals_funcs.lua

Add text to a pedestal's description when you own a different item ID and ownedID can be a collectible ID or a full item string (like "5.350.54") ownedID can also be a function rather than just an ID; if it returns true, the text will be displayed The text will be added as a new line, with the owned item's icon at the start If you pass in replaceText, instead the text is found in the description and replaced with replaceText For convenience, ID can be a table of IDs that will all get the condition applied Optional parameters: replaceText, language, extraTable Example usage: EID:addCondition(myDevilishItemID, EID.IsGreedMode, "{{GreedMode}} Reduces shop prices by 1 for each optional Nightmare wave completed")


EID:addCoroutine(name, func, overwrite)

Defined in: features\eid_api.lua

Add a coroutine to be ran 60 times a second @param name string @param func fun() @param overwrite? boolean @Default: false


EID:addCustomPoopSpell(token, name, icon, description, language)

Defined in: features\eid_api.lua

Adds a custom poop spell to T???'s poop descriptions. This spell should be added with the "Custom Poop API" library to actually appear in-game. Example:

EID:addCustomPoopSpell("MYPOOP", "I Made This Poop", "{{PoopSpell1}}", "Can be throwed to deal damage", "en_us)

@param token string @The name of the spell in the Custom Poop API code @param name string @The name of the spell as it should appear in the description @param icon string @Markup icon of the poop @param description string @param language? EID_LanguageCode @Default: "en_us


EID:addDescriptionModifier(modifierName, condition, callback, position)

Defined in: features\eid_api.lua

Adds Description object modifiers such as Spindown dice or Tarot Cloth @param modifierName string @param condition fun(descObj: EID_DescObj): boolean @param callback fun(descObj: EID_DescObj): EID_DescObj @param position? integer


EID:addDescriptionToPrint(desc, insertLoc)

Defined in: main.lua

Add a description to the print queue @param desc EID_DescObj | table -- The description object to add @param insertLoc integer | nil


EID:addEntity(id, variant, subtype, entityName, description, language)

Defined in: features\eid_api.lua

Adds a description for a an arbitrary Entity @param id EntityType @param variant integer @param subtype? integer @If nil or -1, it will affect all subtypes of that entity @param entityName string @param description string @param language? EID_LanguageCode @Default: "en_us


EID:addGoldenTrinketMetadata(id, appendText, numbersToMultiply, maxMultiplier, language)

Defined in: features\eid_api.lua

Adds information about appending text and multiplying numbers in a modded trinket's Golden/Mom's Box description. All three variables are optional, set to ""/0 or nil to not include them @param appendText? string | string[] @Text to be appended onto the description. Can be one string, or a table of two strings; one for doubling and one for tripling @param numbersToMultiply? number | number[] @The number inside the text that should be multiplied. can be one number, or a table of numbers @param maxMultiplier? number @Is what tripling (Golden+Mom's Box) should multiply the numbers by, normally 3. If it's less than 2, it also applies to doubling Example: My modded trinket gives +0.5 range and when tripled, adds homing instead of tripling the range boost:

EID:addGoldenTrinketMetadata(Isaac.GetTrinketIdByName("Cool Trinket"), {"", "Homing tears"}, 0.5, 2)

EID:addGoldenTrinketTable(id, dataTable)

Defined in: features\eid_api.lua

@see EID_GoldenTrinketData Add a fully custom data table to the table of Golden Trinket effects. Check GoldenTrinketCallback in eid_modifiers.lua to see the specifics of how it works. You may also want to add text entries into EID.descriptions[languageCode].goldenTrinketEffects



@param id TrinketType @param dataTable EID_GoldenTrinketData

EID:addGridEntity(type, variant, name, description, language)

Defined in: features\eid_grid_descriptions.lua

Adds a new grid entity description entry. @param type GridEntityType @param variant integer @param name string @param description string @param language? EID_LanguageCode @Default: "en_us


EID:addGridEntityConditional(type, conditionalFunction, callbackFunction)

Defined in: features\eid_grid_descriptions.lua

Adds a conditional description handler for a specific grid entity type. This function allows you to specify a grid entity type, a condition function to determine when the description should be shown, and a callback function to modify the description further. @param type GridEntityType @param conditionalFunction function @param callbackFunction function


EID:addHiveMindCondition(ID, text, numberToDouble, newNumber, language, allowBFFS)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for adding Hive Mind conditions; by default, it will show with BFFS too, unless you pass in allowBFFS as false


EID:addHorsePill(id, description, itemName, language)

Defined in: features\eid_api.lua

Adds a horsepill-specific description for a PillEffect @param id PillEffect @param description string @param itemName? string @param language? EID_LanguageCode @Default: "en_us


EID:addIcon(shortcut, animationName, animationFrame, width, height, leftOffset, topOffset, spriteObject)

Defined in: features\eid_api.lua

Adds a new icon object with the shortcut defined in the "shortcut" variable (e.g. "{{shortcut}}" = your icon). Shortcuts are case sensitive! Shortcuts can be overriden with this function to allow for full control over everything @param shortcut string @param animationName string @param animationFrame integer @-1 to play the animation @param width integer @param height integer @param leftOffset? integer @Default: -1 @param topOffset? integer @Default: 0


EID:addIgnoredEntity(entityType, entityVariant, entitySubType)

Defined in: features\eid_api.lua

Add a specific entity to be ignored by EID. Set entitySubType to -1 in order to ignore all entities with this type+variant combination. @param entityType EntityType @param entityVariant integer @param entitySubType integer


EID:addPill(id, description, itemName, language)

Defined in: features\eid_api.lua

Adds a description for a PillEffect id @param id PillEffect @param description string @param itemName? string @param language? EID_LanguageCode @Default: "en_us


EID:addPillMetadata(id, mimicCharge, class)

Defined in: features\eid_api.lua

Adds a metadata for a pilleffect. Used for Placebo/False PHD @param id PillEffect @param mimicCharge integer @DEPRECATED, does nothing @param class? EID_PillClass @Default: "0". With False PHD, "3-" gives +0.6 Damage, "2-" and "1-" spawn a Black Heart


EID:addPlayerCondition(ID, playerID, text, replaceText, language, extraTable, includeTainted)

Defined in: features\eid_conditionals_funcs.lua

Function for adding text to a pedestal's description when you're playing a specific character The character's head icon will be at the start of appended lines By default, adding a conditional to a base character will also add it to the Tainted version of the character Optional parameters: replaceText, language, extraTable, includeTainted Example usage: EID:addPlayerCondition(myAngstyItemID, PlayerType.PLAYER_EVE, "Gives Eve extra mascara (2x Damage multiplier)")


EID:addQuestionMarkDescription(entity, description)

Defined in: main.lua

Add a question mark description to the print queue @param entity Entity @param description string | nil


EID:addSynergyCondition(ID1, ID2, text1, text2, language, extraTable)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for when you have two items that have a synergy with each other ID1 will have text1 added to its description if you own ID2 ID2 will have text2 (or text1, if text2 isn't given) added to its description if you own ID1 ID1 and ID2 can both be tables of IDs that will get the condition applied to each other Optional parameters: text2, language, extraTable Example usage: EID:addSynergyCondition(myHappyLittleItemID, {CollectibleType.COLLECTIBLE_BRIMSTONE, CollectibleType.COLLECTIBLE_SULFUR}, "Turns your laser into a smiley face that charms enemies")


EID:addTarotClothBuffsABCondition(ID, text, numberToDouble, newNumber, language)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for adding Ab+ Tarot Cloth conditions


EID:addTarotClothBuffsCondition(ID, text, numberToDouble, newNumber, language)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for adding Repentance Tarot Cloth conditions


EID:addTextPosModifier(identifier, modifierVector)

Defined in: features\eid_api.lua

Adds a text position modifier Vector, which will be applied to the text position variable. Useful to add small offsets. For example: for schoolbag HUD @param identifier string @param modifierVector Vector


EID:addToGeneralCondition(ID, locTable, text, numberToDouble, newNumber, language)

Defined in: features\eid_conditionals_funcs.lua

Shortcut function for tarotClothBuffs, tarotClothBuffsAB, carBattery, abyssSynergies, bookOfBelialBuffs, bingeEaterBuffs Because these are general conditions that only match one item type, it's super easy to add to them The text will be appended; numberToDouble will be found in the description and doubled, as that's the most frequent use case or, if you provide newNumber, it changes numberToDouble to that (technically, it's just a find/replace pair, any strings work) Example usage: EID:addToGeneralCondition(myVeryHealthyItemID, "bingeEaterBuffs", "↑ {{Speed}} +0.15 Speed#↓ {{Tears}} -0.5 Tears#↓ {{Damage}} -0.5 Damage")


EID:addTrinket(id, description, itemName, language)

Defined in: features\eid_api.lua

Adds a description for a trinket. @param id TrinketType @param description string @param itemName? string @param language? EID_LanguageCode @Default: "en_us


EID:alterTextPos(newPosVector)

Defined in: features\eid_api.lua

Changes the initial position of all eid descriptions Useful to totally alter and override the current initial Overlay position @param newPosVector Vector


EID:alterTransformationLookup(entityString, transformString, addToList)

Defined in: features\eid_api.lua

@param entityString string @param transformString string @param addToList? boolean


EID:appendToDescription(descObj, appendString)

Defined in: features\eid_api.lua

Appends a given string to the description of a given Description object @param descObj EID_DescObj @param appendString string


EID:applyDescriptionModifier(description, SubType)

Defined in: features\eid_api.lua

Apply Description Modifier to a given description object @param description EID_DescObj @param SubType integer @return EID_DescObj


EID:areColorsEqual(c1, c2)

Defined in: features\eid_api.lua

Compares two KColors. Returns true if they are equal @param c1 KColor @param c2 KColor @return boolean


EID:assignTransformation(targetType, targetIdentifier, transformationString)

Defined in: features\eid_api.lua

Assigns transformations to an entity (Adds to existing transformations) Target entity identifier is in Type.Variant.SubType format and is formed based on targetType and targetIdentifier
Example: adding "My Transformation" to Sad Onion:

EID:assignTransformation("collectible", 1, "My Transformation")

*@param* __targetType__ EID_TypeVariantAlias @Alias for a `Type.Variant` of entity *@param* __targetIdentifier__ integer | string @If valid `targetType` is specified, `SubType` of the entity. Otherwise, the full entity identifier *@param* __transformationString__ string @Transformation name

EID:bagContainsCount(craftTable)

Defined in: features\eid_api.lua

Get the number of pickups in the given recipe table that are inside our bag Is for checking if a recipe is possible to create if you need to use every item in your bag @param craftTable integer[] @return integer


EID:bagContainsItem(itemID, itemCount)

Defined in: features\eid_api.lua

Checks how many of an item there are in the bag @param itemID integer @param itemCount integer @return |false @Item is not in the bag | 0 @There are fewer items than the target amount | 1 @There are exactly the target amount | 2 @There are more items than the target amount


EID:buildTransformationTables()

Defined in: features\eid_api.lua

Creates a table that contains all objects a transformation is associated with.


EID:calculateBagOfCrafting(componentsTable)

Defined in: features\eid_bagofcrafting.lua

The main function that takes 8 ingredients and tells you what collectible you will get in return Only pass in a table with 8 valid ingredients!!!


EID:canUseFontType(fontType)

Defined in: features\eid_api.lua

Check if a given font name is valid for the currently selected language @param fontType string @return boolean


EID:checkPlayersForMissingItems() end

Defined in: features\eid_repentogon.lua

REPENTOGON: Function is no longer used since we can directly read the collection state from the game


EID:compareTables(table1, table2, prevKey, progress)

Defined in: features\eid_debugging.lua

Generic function to compare two tables


EID:copyKColor(colorObj)

Defined in: features\eid_api.lua

Creates a copy of a KColor object. This prevents overwriting existing KColor objects @param colorObj KColor @return KColor


EID:createItemIconObject(str)

Defined in: features\eid_api.lua

Tries to read special markup used to generate icons for all Collectibles/Trinkets and the default Cards/Pills Returns an inlineIcon Object or nil if no parsing was possible @param str string @return EID_Icon?


EID:createTransformation(uniqueName, displayName, language)

Defined in: features\eid_api.lua

Creates a new transformation with a given unique name and a display name @param uniqueName string @param displayName string @param language? EID_LanguageCode @Default: "en_us


EID:displayPermanentText(descriptionObject, permName1, permName2)

Defined in: features\eid_api.lua

Overrides all potentially displayed texts and permanently displays the given texts


@see EID.hidePermanentText @Hides permanently displayed text object. @param descriptionObject EID_DescObj @Description object to display @param permName1 string @param permName2 string?

EID:evaluateHeldPill()

Defined in: features\eid_api.lua

Workaround function to get the currently held pill of the players. Used to map Pill ID to pill color and vise versa


EID:evaluateQueuedItems()

Defined in: features\eid_api.lua

Watch for a player's queued item (holding an item over their head) to track active item touches Used for Transformation Progress and for tracking Recently Touched Items


EID:evaluateTransformationProgress(transformation)

Defined in: features\eid_api.lua

Given a transformation identifier, iterates over every player and count the number of items they have which count towards that transformation @param transformation string


EID:filterColorMarkup(text, baseKColor)

Defined in: features\eid_api.lua

Filters a given string and looks for Colormarkup. Splits the text into subsections limited by them. Returns: Table of subsections of the text, their respective KColor, and the width of the subsection @param text string @param baseKColor KColor @return [string, KColor, integer][]


EID:filterIconMarkup(text, renderBulletPointIcon)

Defined in: features\eid_api.lua

Searches through the given string and replaces Icon placeholders with icons. Returns 2 values. the string without the placeholders but with an accurate space between lines. And a table of all Inline Sprites @param text string @param renderBulletPointIcon boolean? @return string, [EID_Icon, integer, function?][]


EID:findPlayerName(id)

Defined in: features\eid_api.lua

Get the name of a given player ID by checking for a matching EntityPlayer. This is for modded characters, whose name is best found by doing EntityPlayer:GetName() @param id PlayerType @return string?


EID:fitTextToWidth(str, textboxWidth, breakUtf8Chars)

Defined in: features\eid_api.lua

Fits a given string to a specific width @param str string @param textboxWidth integer @param breakUtf8Chars boolean @return string[] @Input string split into lines


EID:fixDefinedFont(forceRefresh)

Defined in: features\eid_api.lua

Function to fix font compatibility. Resets config font to a value compatible with your current language @param forceRefresh boolean | nil @return boolean @True if the font was changed


EID:generatePlaceholderString(length)

Defined in: features\eid_api.lua

Generates a string with the defined pixel-length using a custom 1px wide character. This will only work for this specific custom font. @param length integer @return string


EID:getAdjustedSubtype(Type, Variant, SubType)

Defined in: features\eid_api.lua

Returns an adjusted SubType for special cases like Horse Pills and Golden Trinkets @param Type EntityType @param Variant integer @param SubType integer @return integer


EID:getBagOfCraftingID(Variant, SubType)

Defined in: features\eid_bagofcrafting.lua

Convert a pickup's ID into what ingredient it counts as


EID:getColor(str, baseKColor)

Defined in: features\eid_api.lua

Gets a KColor from a Markup-string (example Input: "{{ColorText}}"). Returns the KColor object and a boolean value indicating if the given string was a color markup or not @param str string @param baseKColor KColor @return KColor, boolean


EID:getDescriptionData(Type, Variant, SubType)

Defined in: features\eid_api.lua

Returns the description data table related to a given id, variant and subtype. Falls back to english if it doesnt exist @param Type EntityType @param Variant integer @param SubType integer @return string


EID:getDescriptionEntry(objTable, objIdentifier, noFallback)

Defined in: features\eid_api.lua

Returns the specified object string in the current language. Falls back to english if it doesnt exist, unless noFallback is true @param objTable string @param objIdentifier? integer | string @param noFallback? boolean @return string


EID:getDescriptionEntryEnglish(objTable, objID)

Defined in: features\eid_api.lua

Returns the specified object string in english. @param objTable string @param objID? any @return string


EID:getDescriptionObj(Type, Variant, SubType, entity, checkModifiers)

Defined in: features\eid_api.lua

Returns the description object of the specified entity. Falls back to english if the objID isnt available @param Type EntityType | integer @param Variant integer @param SubType integer @param entity? Entity @param checkModifiers? boolean @Default: true @return EID_DescObj


EID:getDescriptionObjByEntity(entity)

Defined in: features\eid_api.lua

Returns the description object of a specific entity. Falls back to english if the objID isnt available @param entity Entity


EID:getEntityData(entity, str)

Defined in: features\eid_api.lua

@param entity Entity @return any?


EID:getErrorColor()

Defined in: features\eid_api.lua

Get KColor object of "Error" texts @return KColor, boolean


EID:getIDVariantString(typeName)

Defined in: features\eid_api.lua

Turns entity type names into actual ingame ID.Variant pairs @param typeName EID_TypeVariantAlias


EID:getIcon(str)

Defined in: features\eid_api.lua

Returns the inlineIcon object of a given Iconstring. Can be used to validate an iconstring @param str string @return EID_Icon


EID:getLanguage()

Defined in: features\eid_language_manager.lua

Get the current Language. Defaults to english if none is set. @return EID_LanguageCode


EID:getLastDescribedEntity()

Defined in: features\eid_api.lua

Returns the entity that is currently described. Returns last described entity if currently not displaying text @return Entity?


EID:getLegacyModDescription(Type, Variant, SubType)

Defined in: features\eid_api.lua

Returns description Object from the legacy mod descriptions if they exist @param Type EntityType @param Variant integer @param SubType integer @return [string, string, string]?


EID:getModNameString(descObj)

Defined in: features\eid_api.lua

Returns the icon and mod name of a given EID description object as a preformatted description string @param descObj EID_DescObj @return string


EID:getNameColor()

Defined in: features\eid_api.lua

Get KColor object of "Entity Name" texts @return KColor, boolean


EID:getObjectIcon(descObj)

Defined in: features\eid_api.lua

Returns the Inline Icon definition object for a given object. @param descObj EID_DescObj @return EID_Icon?


EID:getObjectItemPool(descObj)

Defined in: features\eid_api.lua

Returns the item pool of the described entity @param descObj EID_DescObj @return integer?


EID:getObjectItemTypeAndCharge(descObj)

Defined in: features\eid_api.lua

Writes charge-related information to a given description object @param descObj EID_DescObj


EID:getObjectName(Type, Variant, SubType)

Defined in: features\eid_api.lua

Tries to get the ingame name of an item based on its ID @param Type EntityType @param Variant integer @param SubType integer @return string


EID:getObjectQuality(descObj)

Defined in: features\eid_api.lua

Returns the quality of the described entity @param descObj EID_DescObj @return integer?


EID:getPillName(pillID, isHorsepill)

Defined in: features\eid_api.lua

Returns the name of a pill based on the pilleffect id @param pillID PillEffect | integer @param isHorsepill boolean @return string


EID:getPlayerID(entityPlayer, lazarusAdjust)

Defined in: features\eid_api.lua

@param entityPlayer EntityPlayer @param lazarusAdjust? boolean @return integer


EID:getPlayerName(id, altFallback)

Defined in: features\eid_api.lua

Returns the name of a player based on their ID @param id PlayerType @param altFallback? string @return string


EID:getScreenSize()

Defined in: features\eid_api.lua

@return Vector


EID:getSpindownResult(collectibleID)

Defined in: features\eid_api.lua

Converts a given CollectibleID into the respective Spindown dice result @param collectibleID CollectibleType @return CollectibleType


EID:getStrWidth(str)

Defined in: features\eid_api.lua

Returns the width of a given string in Pixels @param str string @return integer


EID:getTableName(Type, Variant, SubType)

Defined in: features\eid_api.lua

Turns entity type and variant into their EID table-name @param Type EntityType @param Variant integer @param SubType integer @return string


EID:getTextColor()

Defined in: features\eid_api.lua

Get KColor object of "Description" texts @return KColor, boolean


EID:getTextPosition()

Defined in: features\eid_api.lua

Returns the current text position @return Vector


EID:getTransformation(id, variant, subType)

Defined in: features\eid_api.lua

Get the transformation uniqueName / ID of a given entity Example:

EID:getTransformation(5,100,34) --Returns "12" which is the id for Bookworm

@param id EntityType @param variant integer @param subType integer @return string


EID:getTransformationColor()

Defined in: features\eid_api.lua

Get KColor object of "Transformation" texts @return KColor, boolean


EID:getTransformationIcon(str)

Defined in: features\eid_api.lua

Returns the icon for a given transformation name or ID @param str string @return EID_Icon


EID:getTransformationName(id)

Defined in: features\eid_api.lua

Get the name of the given transformation by its uniqueName / ID @param id string @return string


EID:getXMLDescription(Type, Variant, SubType)

Defined in: features\eid_api.lua

Tries to get the ingame description of an object, based on their description in the XML files @param Type EntityType @param Variant integer @param SubType integer @return string


EID:handleBagOfCraftingRendering(ignoreRefreshRate)

Defined in: features\eid_bagofcrafting.lua

Called when needed based on EID.Config["RefreshRate"]


EID:handleBagOfCraftingUpdating()

Defined in: features\eid_bagofcrafting.lua

Called 60 times a second so we can read input properly


EID:handleBulletpointIcon(text, ignoreBPConfig)

Defined in: features\eid_api.lua

Returns the icon used for the bulletpoint. It will look at the first word in the given string. Also returns the first word if it was rejected (so it can be removed from the line) @param text string @return string, string?


EID:handleHUDElement(hudElement)

Defined in: features\eid_api.lua

@param hudElement EID_HudElement @return EID_HudElement


EID:handleHoverHUD()

Defined in: main.lua

Handle the HUD hover functionality, checking if the mouse is over any HUD elements @return EID_DescObj | nil - Returns the description object if the mouse is over a HUD element, otherwise nil


EID:hasCurseBlind()

Defined in: features\eid_api.lua

Returns true, if curse of blind is active @return boolean


EID:hidePermanentText()

Defined in: features\eid_api.lua

Hides permanently displayed text objects if they exist.


EID:interpolateColors(kColor1, kColor2, fraction)

Defined in: features\eid_api.lua

Interpolates between 2 KColors with a given fraction. @param kColor1 KColor @param kColor2 KColor @param fraction number @Range: [0,1] @return KColor


EID:isCollectibleAllowed(collectibleID)

Defined in: features\eid_api.lua

REPENTANCE ONLY! Return whether the collectible is completely disallowed by the current game mode. Bag of Crafting and Spindown Dice skip over disallowed items entirely @param collectibleID CollectibleType @return boolean


EID:isCollectibleAvailable(collectibleID)

Defined in: features\eid_api.lua

REPENTANCE ONLY! Return whether the collectible is considered available. Bag of Crafting rerolls unavailable items; this function is kept brief to help BoC speed @param collectibleID CollectibleType @return boolean


EID:isCollectibleUnlocked(collectibleID)

Defined in: features\eid_api.lua

REPENTANCE ONLY! Return our best guess on whether an achievement-locked collectible is unlocked (Things like Tainted Lost and Sacred Orb give false negatives) Spindown Dice skips over locked items, but not unavailable items @param collectibleID CollectibleType @return boolean


EID:isDisplayingText()

Defined in: features\eid_api.lua

Returns if EID is displaying text right now @return boolean


EID:learnBagOfCrafting(componentsTable)

Defined in: features\eid_bagofcrafting.lua

"Learned Recipes" MODE: Save the result of the 8 items inside our bag


EID:loadFont(fontFileName)

Defined in: features\eid_api.lua

Loads a given font from a given file path and use it to render text @param fontFileName string @return boolean @True if the font was loaded successfully


EID:mergeDescriptionObjects(oldDescObj, newDescObj)

Defined in: features\eid_api.lua

Attempts to merge two given Description objects into one @param oldDescObj EID_DescObj @param newDescObj EID_DescObj @return EID_DescObj


EID:onGameUpdate()

Defined in: main.lua

MC_POST_UPDATE callback that runs 30 times a second; doesn't update while paused Handles updating the game state and checking for new items


EID:onNewFloor()

Defined in: main.lua

Function to reset all floor trackers when a new floor is entered


EID:onNewRoom()

Defined in: main.lua

MC_POST_NEW_ROOM callback to handle new rooms, mostly Glowing Hour Glass rewinding and Grid Entities


EID:onNewRoomRep()

Defined in: main.lua

Handle MC_POST_NEW_ROOM for Repentance features


EID:postGetCollectible(selectedCollectible, itemPoolType)

Defined in: main.lua

Handle Flip Item positions and Crane Game item positions. Repentance Only function! @param selectedCollectible number @param itemPoolType number


EID:postPickupInitFlip(entity)

Defined in: main.lua

Post Pickup Init callback to handle Flip item initialization. Repentance Only function! @param entity any


EID:preRoomEntitySpawn(entityType, variant, subtype, gridIndex)

Defined in: main.lua

Pre Room Entity Spawn callback to handle Flip item and pedestal spawning. Repentance Only function! @param entityType any @param variant any @param subtype any @param gridIndex any


EID:printBulletPoints(description, renderPos, ignoreBPConfig)

Defined in: main.lua

Prints bullet points from a description string @param description string - The description string to print @param renderPos Vector - The position to render the bullet points at @param ignoreBPConfig boolean - If true, will ignore the bullet point icon configuration


EID:printDescription(desc, cachedID)

Defined in: main.lua

Prints a description to the screen @param desc EID_DescObj @param cachedID integer | nil -- If this is a cached description, pass the index of the cached description


EID:printDescriptions(useCached)

Defined in: main.lua

Print all descriptions that are currently in the description table @param useCached boolean | nil - If true, will use the cached descriptions instead of printing new ones


EID:printNewDescriptions()

Defined in: main.lua

Print all descriptions that are currently in the description table


EID:removeColorMarkup(text)

Defined in: features\eid_api.lua

Removes color markup, preserves bulletpoint icons after start-of-line color markup @param text string @return string


EID:removeCoroutine(name)

Defined in: features\eid_api.lua

Remove a coroutine from the coroutine list @param name string


EID:removeDescriptionModifier(modifierName)

Defined in: features\eid_api.lua

Removes a Description object modifier



@see EID.addDescriptionModifier @param modifierName string

EID:removeEntryFromString(sourceTable, entryKey, entryValue)

Defined in: features\eid_api.lua

Removes a given value from the string inside a table. Example: "1,2,3", removing 2 will return "1,3" @param sourceTable table<any, string> @param entryKey any @param entryValue string


EID:removeIgnoredEntity(entityType, entityVariant, entitySubType)

Defined in: features\eid_api.lua

Remove a specific entity from the ignored List of EID. @param entityType EntityType @param entityVariant integer @param entitySubType integer


EID:removeTextPosModifier(identifier)

Defined in: features\eid_api.lua

Removes a text position modifier Vector @param identifier string


EID:removeTransformation(targetType, targetIdentifier, transformationString)

Defined in: features\eid_api.lua

Removes a transformation of an entity Target entity identifier is in Type.Variant.SubType format and is formed based on targetType and targetIdentifier
Example: removing "My Transformation" from Sad Onion:

EID:removeTransformation("collectible", 1, "My Transformation")

*@param* __targetType__ EID_TypeVariantAlias @Alias for a `Type.Variant` of entity *@param* __targetIdentifier__ integer | string @If valid `targetType` is specified, `SubType` of the entity. Otherwise, the full entity identifier *@param* __transformationString__ string @Transformation name

EID:renderHUDLocationIndicators()

Defined in: main.lua

Render HUD location indicators for debugging purposes


EID:renderIcon(spriteObj, posX, posY, callback, animName, animFrame)

Defined in: features\eid_api.lua

Helper function to render Icons in specific EID settings @param spriteObj Sprite @param posX integer @param posY integer @param callback fun(spriteObj: Sprite) | nil @param animName string | nil @param animFrame integer | nil


EID:renderIndicator(entity, playerNum)

Defined in: main.lua

Render an indicator for an entity, such as a highlight or arrow @param entity Entity @param playerNum integer - The player number to render the indicator for. Controls the arrow color


EID:renderInlineIcons(spriteTable, posX, posY)

Defined in: features\eid_api.lua

Renders a list of given inline sprite objects returned by the "EID:filterIconMarkup()" function @param spriteTable [EID_Icon, integer?, fun(spriteObj:Sprite)?][] @param posX integer @param posY integer


EID:renderString(str, position, scale, kcolor, renderBulletPointIcon)

Defined in: features\eid_api.lua

Renders a given string using the EID Custom font. This will also apply any markup and render icons Should be called in a render callback @param str string @param position Vector @param scale Vector @param kcolor KColor @param renderBulletPointIcon boolean? @return KColor


EID:renderUnidentifiedPill(entity)

Defined in: main.lua

Render an unidentified pill description @param entity Entity


EID:replaceAllMarkupWithSpaces(text, checkBulletpoint)

Defined in: features\eid_api.lua

Replaces all markup {{ }} with placeholder strings, to use in fitTextToWidth @param text string @param checkBulletpoint? boolean @return string, integer?


EID:replaceMarkupSize(description)

Defined in: features\eid_api.lua

Replaces markup icons with ones of a different size based on the current config @param description string @return string


EID:replaceNameMarkupStrings(text)

Defined in: features\eid_api.lua

Replaces name markup objects with the actual name @param text string @return string


EID:replaceShortMarkupStrings(text)

Defined in: features\eid_api.lua

Replaces shorthand-representations of a character with the internal reference @param text string @return string


EID:requiredForCollectionPage(itemID)

Defined in: features\eid_repentogon.lua

REPENTOGON: Use PersistentGameData to determine item collection status Returns true if an item needs to be collected for the collection page


EID:resumeCoroutines()

Defined in: features\eid_api.lua

Resumes all coroutines. Ran 60 times a second in main game render


EID:setEntityData(entity, str, value)

Defined in: features\eid_api.lua

@param entity Entity @param str string @param value any


EID:setModIndicatorIcon(iconMarkup, override)

Defined in: features\eid_api.lua

Set an icon for the mod which will be displayed next to the item name @param iconMarkup string @param override? boolean @Default: true


EID:setModIndicatorName(newName)

Defined in: features\eid_api.lua

Specify the name of the mod which will be displayed next to the item name By default EID takes the mod name @param newName string


EID:setPlayer()

Defined in: main.lua

Set the player and coop player data for EID


EID:simulateBagOfCrafting(componentsTable)

Defined in: features\eid_bagofcrafting.lua

"Item Probability" MODE: Get percentages of what quality / item pool a given set of 8 ingredients can yield


EID:tableToCraftingIconsFull(craftTable, indicateCompleteContent)

Defined in: features\eid_api.lua

Converts a given table into a string containing the crafting icons of the table Example input: {1,2,3,4,5,6,7,8} Result: "{{Crafting1}}{{Crafting2}}{{Crafting3}}{{Crafting4}}{{Crafting5}}{{Crafting6}}{{Crafting7}}{{Crafting8}}" @param craftTable integer[] @param indicateCompleteContent boolean @return string


EID:tableToCraftingIconsMerged(craftTable, indicateCompleteContent)

Defined in: features\eid_api.lua

Converts a given table into a string containing the crafting icons of the table, which are also grouped to reduce render lag @param craftTable integer[] @Example: {1,1,1,2,2,3,3,3} @param indicateCompleteContent boolean? @return string @Example: "3{{Crafting1}}2{{Crafting2}}3{{Crafting3}}"


EID:trimSanguineDesc(spikes, descObj)

Defined in: features\eid_itemprediction.lua

This function both trims the desc to just a list of chances, and highlights the next result if allowed, since those two actions are very intertwined


EID:tryAutodetectTransformationsCollectible(collectibleID)

Defined in: features\eid_api.lua

Try to automatically assign vanilla transformations to the entity @param collectibleID CollectibleType


EID:updateDescriptionsViaTable(changeTable, tableToUpdate)

Defined in: features\eid_api.lua

Replaces all values in changeTable with the values in tableToUpdate. If a value is an empty string, it will be removed. @param changeTable table @param tableToUpdate table


Undocumented Functions (59)

  • EID:AddBooleanSetting(category, optionName, displayText, params) (in features\eid_mcm.lua)
  • EID:AddHotkeySetting(category, optionName, displayText, infoText, isController) (in features\eid_mcm.lua)
  • EID:AddNumberSetting(category, optionName, displayText, minimum, maximum, params) (in features\eid_mcm.lua)
  • EID:AddScrollSetting(category, optionName, displayText, scrollTable, params) (in features\eid_mcm.lua)
  • EID:AreAchievementsAllowed() (in features\eid_api.lua)
  • EID:BOCHandleCurseOfMaze() (in features\eid_bagofcrafting.lua)
  • EID:BoCCheckForPickups() (in features\eid_bagofcrafting.lua)
  • EID:BoCDetectBagContentShift() (in features\eid_bagofcrafting.lua)
  • EID:BoCDetectBagContentShift() end (in features\eid_repentogon.lua)
  • EID:BoCOnNewRoom(_) (in features\eid_bagofcrafting.lua)
  • EID:BoCSGetLocked() (in features\eid_bagofcrafting_search.lua)
  • EID:BoCSHookInputIsActionPressed() (in features\eid_bagofcrafting_search.lua)
  • EID:BoCSHookInputIsActionTriggered() (in features\eid_bagofcrafting_search.lua)
  • EID:BoCSHookInputIsButtonPressed() (in features\eid_bagofcrafting_search.lua)
  • EID:BoCSHookInputIsButtonTriggered() (in features\eid_bagofcrafting_search.lua)
  • EID:BoCTrackBagHolding() (in features\eid_bagofcrafting.lua)
  • EID:BrokenSyringePrediction(player) return EID:TemporaryEffectPrediction(player, player:GetTrinketRNG(132):GetSeed(), syringeItems) end (in features\eid_itemprediction.lua)
  • EID:CheckActivesForNoCarBattery(_) (in features\eid_conditionals_funcs.lua)
  • EID:CheckFamiliarsForHiveMind(_) (in features\eid_conditionals_funcs.lua)
  • EID:CheckFamiliarsForNoBFFS(_) (in features\eid_conditionals_funcs.lua)
  • EID:CheckForHiveMind(descObj) (in features\eid_conditionals_funcs.lua)
  • EID:CheckForTaintedPlayer() (in features\eid_conditionals_funcs.lua)
  • EID:ConditionalCharCheck(playerType, includeTainted) (in features\eid_conditionals_funcs.lua)
  • EID:ConditionalItemCheck(itemID, checkInReminder) (in features\eid_conditionals_funcs.lua)
  • EID:D1Prediction(rng) (in features\eid_itemprediction.lua)
  • EID:GetEntityXMLName(Type, Variant, SubType) (in features\eid_api.lua)
  • EID:GetEntityXMLNameByString(tvsString) (in features\eid_api.lua)
  • EID:HaveNotEncountered(monsterType, monsterVariant) (in features\eid_conditionals_funcs.lua)
  • EID:HaveNotUnlockedAchievement(achID) (in features\eid_conditionals_funcs.lua)
  • EID:HaveUnlockedAchievement(achID) (in features\eid_conditionals_funcs.lua)
  • EID:InStageNoTreasureRoom() (in features\eid_conditionals_funcs.lua)
  • EID:InStageNum(stageNum) (in features\eid_conditionals_funcs.lua)
  • EID:InStageTheShop() (in features\eid_conditionals_funcs.lua)
  • EID:InStageVoid() (in features\eid_conditionals_funcs.lua)
  • EID:IsGreedMode() (in features\eid_conditionals_funcs.lua)
  • EID:IsGreedModePlusTarot() (in features\eid_conditionals_funcs.lua)
  • EID:IsHardMode() (in features\eid_conditionals_funcs.lua)
  • EID:LibertyCapPrediction(player) return EID:TemporaryEffectPrediction(player, player:GetTrinketRNG(32):GetSeed(), libertyItems) end (in features\eid_itemprediction.lua)
  • EID:MomsLockPrediction(player) return EID:TemporaryEffectPrediction(player, player:GetTrinketRNG(153):GetSeed(), momItems) end (in features\eid_itemprediction.lua)
  • EID:OnMenuRender() (in features\eid_repentogon.lua)
  • EID:PlayersHaveGoldenBomb() (in features\eid_conditionals_funcs.lua)
  • EID:PlayersHaveRestock() (in features\eid_conditionals_funcs.lua)
  • EID:PositionLocalMode(entity) (in main.lua)
  • EID:PositionLocalMode(entity) (in features\eid_repentogon.lua)
  • EID:SetOldestItemIndex() (in features\eid_api.lua)
  • EID:Teleport2Prediction() (in features\eid_itemprediction.lua)
  • EID:TemporaryEffectPrediction(player, rng, itemTable) (in features\eid_itemprediction.lua)
  • EID:UpdateWildCardEffects() (in features\eid_api.lua)
  • EID:WatchForDice(collectibleType, _, player) (in features\eid_itemprediction.lua)
  • EID:addGoldenTrinketMetadataAdditive(id, appendText, numbersToChange, additiveValues, language) (in features\eid_api.lua)
  • EID:applyConditionals(descObj) (in features\eid_conditionals_funcs.lua)
  • EID:buildColorArray() (in features\eid_mcm.lua)
  • EID:checkPlayersForMissingItems() (in features\eid_api.lua)
  • EID:countEntries(t) (in features\eid_debugging.lua)
  • EID:getMaxCheckLimit(parentName) (in features\eid_debugging.lua)
  • EID:hasDescription(entity) (in features\eid_api.lua)
  • EID:hasDescription(entity) (in features\eid_repentogon.lua)
  • EID:renderMCMDummyDescription() (in features\eid_mcm.lua)
  • EID:requiredForCollectionPage(itemID) (in features\eid_api.lua)
⚠️ **GitHub.com Fallback** ⚠️