github TeamREPENTOGON/REPENTOGON 1.0.11a

latest releases: v1.1.0-testing-launcher-19, v1.1.0-testing-launcher-18, v1.1.0-testing-launcher-17...
15 months ago

v1.0.11a -
Bug fixes:
- Fixed a division by zero that occured when shuffling an empty item pool

v1.0.11 -
Additions:

  • Itempools:
    • Added support for new custom itempools through itempools.xml on the content folder
    • Isaac.GetPoolIdByName(poolName) - returns the id of a given custom pool. Returns -1 if the pool is not found.
    • Room:SetItemPool(ItemPoolType PoolType) - Sets the pool to use when the game needs to generate random collectibles in the current room.
    • Room:GetItemPool(int Seed, boolean Raw) - Retrieves the pooltype the game would use to generate random collectibles in the current room.
    • ItemPool:GetNumItemPools() - Retrieves the total number of itempools in the game, including custom itempools.
  • GenericPrompt:
    • GenericPrompt constructor
    • Initialize(boolean SmallPrompt = false)
    • Show()
    • IsActive()
    • Update(boolean ProcessInput)
    • Render()
    • SetText(string Text1 = "", string Text2 = "", string Text3 = "", string Text4 = "", string Text5 = "")
    • GetSprite()
    • GetCurrentSelection() - (0 - No, 1 - Yes)
    • GetSubmittedSelection() - (0 - None, 1 - Yes, 2 - No)
  • ModCallbacks:
    • POST versions of MC_PRE_PLAYER_ADD/REMOVE_COSTUME
    • MC_POST_FORCE_PILL_EFFECT
    • MC_EVALUATE_CUSTOM_CACHE(Player, CustomCacheTag, float value)
      Cache-style evaluation for custom player attributes.
      Return a number to modify the value. Modified values are passed to the next callback.
      CustomCacheTags must always be all lowercase.
      Optional param: CustomCacheTag
    • MC_EVALUATE_FAMILIAR_MULTIPLIER(Familiar, float mult, Player)
      Called when a familiar's cached multiplier needs to be re-evaluated.
      Return a number to modify the multiplier. Modified values are passed to the next callback.
      Optional param: FamiliarVariant
  • EntityPlayer:
    • GetMovingBoxContents()
    • GetTearDisplacement() - Returns the player's TearDisplacement value, used to check what eye the player is shooting from. 1 means that the last shot was from the right eye, -1 means the opposite.
    • AddCustomCacheTag(string OR {string, string, ...}, bool evaluateItemsNow) - Add CustomCacheTag(s) to be evaluated next time EvaluateItems runs (which is right now, if the optional boolean is passed).
    • GetCustomCacheValue(string CustomCacheTag) - Returns the current cached value for the specified CustomCacheTag. Will return 0 by default if the provided tag has not been evaluated.
  • EntityFamiliar:
    • GetMultiplier() - Returns the "multiplier" for the familiar, from effects such as BFFs or Hive Mind. Typically used to multiply things such as familiar damage.
    • InvalidateCachedMultiplier() - Makes it so that the next time GetMultiplier is called, MC_EVALUATE_FAMILIAR_MULTIPLIER is triggered to recalculate/allow modifying the multiplier.
  • EntityNPC:
    • SetFlyingOverride(bool) - Sets an override to the return value of IsFlying, which is normally based on EntityGridCollisionClass. Can be used to make grounded enemies ignore creep, or flying enemies get hit by creep.
    • ClearFlyingOverride() - Removes any value set by SetFlyingOverride.
    • TrySplit(float DefaultDamage, EntityRef Source, DoScreenEffects = true)
    • ReplaceSpritesheet(int LayedId, string PngFilename, bool LoadGraphics = false) - Appends _champion/stage suffix to PngFilename if possible.
  • EntityLaser:
    • RecalculateSamplesNextUpdate() - Requests the laser's shape to be fully recalculated next time it updates. Can be used to force the laser to instantly change its MaxDistance/Radius instead of transitioning to it. No effect for OneHit or non-sample lasers.
    • IsMultidimensionalTouched()
    • [Is/Set]PrismTouched()
  • EntityTear:
    • [Is/Set]MultidimensionalTouched()
    • [Is/Set]PrismTouched()
  • EntityBomb:
    • [Is/Set]PrismTouched()
  • EntityKnife:
    • [Is/Set]MultidimensionalTouched()
    • [Is/Set]PrismTouched()
  • EntityPickup:
    • TriggerTheresOptionsPickup() - Removes pickups with the same option group (OptionsPickupIndex) as the target pickup.
  • LayerState:
    • GetFlipX/Y, SetFlipX/Y
  • Game:
    • GetGenericPrompt()
  • Level:
    • GetMyosotisPickups() - returns the pickups that will be transferred to the next floor by the myosotis trinket effect
  • ItemConfigItem:
    • HasCustomCacheTag
    • GetCustomCacheTags
  • Added support for a "customcache" attribute in items.xml
    • Formatted as a space-separated list of string tags, same as other similar attributes.
    • Capitalization is ignored - tags are converted to all lowercase.
    • Whenever an item/trinket/effect is added or removed, triggers MC_EVALUATE_CUSTOM_CACHE on the player for each tag specified for that item.
    • MC_EVALUATE_CUSTOM_CACHE will evaluate a number value (starts at 0 by default) which can be retrieved afterwards with player:GetCustomCacheValue(tag)
    • Every tag that exists on at least one item in items.xml will also be triggered by CacheFlag.CACHE_ALL
    • REPENTOGON adds one custom cache tag (so far): "familiarmultiplier". Note that this one does not trigger MC_EVALUATE_CUSTOM_CACHE, instead triggering MC_EVALUATE_FAMILIAR_MULTIPLIER for each familiar.

Fixes:
- Fixed the game getting permanantly stuck trying to generate an ascent floor if a modded boss room has certain door layouts
- Fix a vanilla bug that caused Hush's laser attack to ignore a room's slowdown state and always chase the player at full speed
- Fix ???/Blue Womb rooms generating in The Void even when not using Better Void Generation
- Fix Void Portal rooms potentially not being generated in The Void
- Fix room weights not correctly being reset when reseeding in The Void
- Temporarily disable modified RoomDescriptor.OverrideData handling to prevent potential cases of it not being properly replaced
- Fix Isaac's Heart being immune to lasers

Don't miss a new REPENTOGON release

NewReleases is sending notifications on new releases.