Releases: TeamREPENTOGON/REPENTOGON
1.0.9d
yup, another one, rolling back async updater stuff
1.0.9c
v1.0.9c -
Fixes:
- Fixed a bug in 1.0.9b where all cutscenes were being replaced by the intro cutscene if any mods were enabled.
1.0.9b
v1.0.9b -
Additions:
- Camera:
- IsPosVisible(position: Vector) : bool
- Game:
- RecordPlayerCompletion(CompletionType)
- ModCallbacks:
- MC_(PRE/POST)_RECORD_PLAYER_COMPLETION
Called when a player completes something that would award a mark (end bosses, tainted unlocks)
- MC_(PRE/POST)_RECORD_PLAYER_COMPLETION
- Add new Vanilla Tweaks option "Mars Double Tap Window", which determines the number of frames where a repeated movement input is counted as a double tap for activating Mars's charge
- Updater now runs asynchronously, meaning that you should no longer encounter the "white screen" issue.
- Improved mods' startup speed once again!
- Minor fix for a file map.
- "clearcache" command now reloads the file map.
- Fixed a regression that resulted in a severe slowdown for certain commands' autocomplete prompts. This fix has also made file map noticeably faster :D
- Bumbino, Ultra Greed, and familiars like Bum Friend will now trigger MC_PICKUP_GET_COIN_VALUE when collecting coins, and will default to treating modded coin subtypes as worth 1 penny instead of huge values.
1.0.9a
v1.0.9a -
Additions:
- Game:
- ClearErasedEnemies(): void
- GetShopVisits(): int
- AddShopVisits(count: int): void
- EntitySlot:
- GetShellGameAnimationIndex() : int
- SetShellGameAnimationIndex(index: int) : void
- GetTriggerTimerNum() : int
- SetTriggerTimerNum(num: int) : void
- Sorry about the startup line in 1.0.9, half of it was a lie, now it's not! This update enables "file map" functionality, speeding up file lookup, positively affecting the startup time. It shouldn't cause any issue, but if it does don't hesitate to report issues, in the meantime you can disable it in REPENTOGON's options window.
- Bug fixes
- Fixed a bug that caused the giveitem command to crash when the object to
give was reduced to a single letter - Fix "goto [s/x]." command autocomplete
- Fixed incorrect type set for Slot->_timeout (int -> short)
- Fixed a bug that caused the giveitem command to crash when the object to
1.0.9
Modified:
- Callbacks:
- MC_PRE_PLAYERHUD_TRINKET_RENDER: now provides [Vector] CropOffset parameter and accepts CropOffset vector in the return table.
- EntityPlayer:
- AddInnateCollectible() now uses a system separate from item wisps, still doesn't save on game exit though!
- Change to HasCollectible and GetCollectibleNum:
new optional boolean (IgnoreSpoof), ignores collectible block when set to true
- Game:
- ShowGenericLeaderboard no longer fades to main menu
- PersistentGameData:
- TryUnlock now accepts an optional boolean to prevent popping up with the achievement paper for modded achievements
Additions:
- Game:
- SetDizzyAmount(amount, intensity)
- GetDizzyAmount()
- PlayerManager:
- AnyPlayerTypeHasTrinket(PlayerType, TrinketType, IgnoreModifiers = false)
- AnyPlayerTypeHasCollectible(PlayerType, CollectibleType, IgnoreModifiers = false)
- Lootlist:
- constructor
- PushEntry(Type, Variant, SubType, Seed = Random(), RNG = nil)
- GetEntries
- LootListEntry:
- [Get]Type/Variant/SubType/Seed/RNG
- EntityPlayer:
- Get/SetBombPlaceDelay
- Get/SetBloodLustCounter
- GetSpoofedCollectiblesList
- New functionality for blocking items:
BlockCollectible(int itemID)
UnblockCollectible(int itemID)
IsCollectibleBlocked(int itemID) - HasGoldenTrinket
- Get/SetHallowedGroundCountdown
- EntityTear:
- GetTearHaloSprite
- GetTearEffectSprite
- GetDeadEyeSprite
- ResetSpriteScale(bool Force) - New optional "force" boolean, when set to true forces the tear to re-evaluate which scale animation it should be playing
- EntityPickup:
- GetLootList(ShouldAdvance = false)
- GetPickupGhost
- UpdatePickupGhosts
- EntityNPC:
- GetFireplaceLoot
- GetShopkeeperLoot
- EntityFamiliar:
- [Get/Set]MoveDelayNum
- ItemConfigItem:
- HasCustomTag
- GetCustomTags
- Input:
- GetDeviceNameByIdx
- Isaac:
- Get/SetDwmWindowAttribute (for use with new DwmWindowAttributes enum)
- Get/SetWindowTitle (appends text to our title as to avoid confusion)
- SetIcon(int/string,bool) (takes a 0/1 int or a path to .ico file, bool bypasses the 16x16 resolution cap)
- Game
- SetBloom
- Console:
- Added a popup error when a script ran by luamod errors, highlighting the last error thrown, to prevent it from being instantly buried
- Isaac:
- StartNewGame(int playertype, int challenge, int difficulty, int seed), allows starting the game from within the main menu
- MenuManager:
- SetInputMask(int mask) for use with the new ButtonActionBitwise enum, selectively allows/disallows the game's menu read certain inputs, useful for custom menus
- GetInputMask()
- MinimapState Enum:
- Used for Minimap.SetState() and Minimap.GetState().
- RoomConfig:
RoomConfig:GetStage(StbType) - RoomConfigStage
- Get/Set DisplayName, Suffix, PlayerSpot, BossSpot, Music, Backdrop
- GetRoomSet(Mode)
- RoomConfigSet:
- Acts like other ArrayProxy classes, but for RoomConfigRoom
- __len and Get method, Size const variable
- Level
- Set/GetGreedWavesClearedWithoutRedHeartDamage: you read that right, finally, the highly requested function is here!
- Cutscenes
- Support for custom music for the music attribute on cutscenes.xml
- NightmareScene
- GetPlayerExtraPortraitSprite
- RoomTransition
- GetPlayerExtraPortraitSprite
- Sprite
- SetCustomShader(string Path) - Overrides only the default ColorOffset shader. Path starts at
.../resources/
and expects to find both a .vs and .fs file. For example: SetCustomShader("shaders/my_shader") - ClearCustomShader()
- HasCustomShader(string Path) - Returns true if the specified shader is currently set. If no string is provided, returns true if any custom shader is applied.
- SetCustomChampionShader(string Path) - Same as SetCustomShader but for overriding ColorOffset_Champion instead.
- ClearCustomChampionShader()
- HasCustomChampionShader(string Path)
- SetCustomShader(string Path) - Overrides only the default ColorOffset shader. Path starts at
- LayerState
- SetCustomShader(string Path) - Same as sprite:SetCustomShader() but only for a single layer.
- ClearCustomShader()
- HasCustomShader(string Path)
- SetCustomChampionShader(string Path)
- ClearCustomChampionShader()
- HasCustomChampionShader(string Path)
- Callbacks:
- MC_PRE_PICKUP_GET_LOOT_LIST callback (Pickup, bool ShouldAdvance) - Return LootList to change loot content
- MC_PRE_PICKUP_UPDATE_GHOST_PICKUPS (Pickup) - Return true to apply pickup ghost to your pickup entitiy, false to cancel it
- MC_POST_PLAYER_TRIGGER_EFFECT_REMOVED (Player, ItemConfigItem)
- MC_POST_ROOM_TRIGGER_EFFECT_REMOVED (ItemConfigItem)
- MC_PRE_X_GRID_COLLISION and MC_X_GRID_COLLISION (EntityX, int gridIndex, GridEntity or nil) - PLAYER/TEAR/FAMILIAR/BOMB/PICKUP/PROJECTILE/NPC, Return true on PRE to ignore collision.
- MC_PRE_PLAYERHUD_RENDER_ACTIVE_ITEM(EntityPlayer, ActiveSlot, Vector offset, float alpha, float scale, Vector chargeBarOffset) - Return true to cancel rendering
- MC_PRE_PLAYER_REVIVE(EntityPlayer) - Return false to prevent the player from reviving
- MC_POST_PLAYER_REVIVE(EntityPlayer)
- MC_POST_PROJECTILE/TEAR_DEATH (EntityProjectile/EntityTear)
- MC_POST_BOSS_INTRO_SHOW (int BossID1,int BossID2)
- MC_POST_ROOM_TRANSITION_UPDATE ()
- MC_POST_ROOM_TRANSITION_RENDER ()
- MC_PRE_X_UPDATE (EntityX) - PLAYER/TEAR/FAMILIAR/BOMB/PICKUP/KNIFE/PROJECTILE/LASER/EFFECT/SLOT, return true to skip internal code, same as MC_PRE_NPC_UPDATE
- All stages now have a spritesheet suffix (formatted _[stage name, no spaces], ex _burningbasement)
- Added the "noshake" attribute to the players.xml which can "disable" the player portrait shaking animation in the nightmare scene/boss intro
- Added support for a "customtags" attribute in items.xml - a space-separated list of tags that can be checked with ItemConfigItem:HasCustomTag() or ItemConfigItem:GetCustomTags()
- Added custom tag "nometronome" to items.xml to prevent items from being picked by Metronome
- Improved startup time! (for both REPENTOGON and the game itself)
- Buffed Trisagion
- Added a new option in "Vanilla tweaks" section called "Fast lasers", it tracks the game's lag and (if present) reduces the number of samples used by lasers to ensure better performance
Fixes:
* Fixed Isaac.CreateTimer
crashing the game when setting the delay argument to 0
* Fixed bonehearts not displaying correctly when set through players.xml
* Fixed console custom commands starting with "help" not triggering while being eaten away by repentogon's help cmd
* Fixed a crash that could occur if Isaac exited the Berserk! state without any remaining health with Spirit Shackles ready
* Fix Downpour/Dross rooms generated in The Void not having any water
* Potentially fixed reported but unreproducable instance of a trapdoor deal room variant being generated outside of floor 8
* Fixed incorrect declaration for ItemConfig::GetTaggedItems
* Fixed Gamma scale on the visual settings imgui menu
v1.0.8c -
Fixes:
- Fixed adding a callback function with an optional param to a vanilla callback that does not support optional params leading to that function never being called, where it used to previously.
- Fixed the result of Isaac.GetCallbacks() no longer having a metatable.
v1.0.8b -
Fixes:
- Fixed the MC_PLAYER_GET_HEALTH_TYPE callback causing the last heart to render underneath the first one.
v1.0.8a -
Fixes:
- Fixed issues with EntityPlayer:GetSmeltedTrinkets() and EntityPlayer:GetFootprintColor()
1.0.8c
Fixes:
- Fixed adding a callback function with an optional param to a vanilla callback that does not support optional params leading to that function never being called, where it used to previously.
- Fixed the result of Isaac.GetCallbacks() no longer having a metatable.
1.0.8b
Fixes:
- Fixed the MC_PLAYER_GET_HEALTH_TYPE callback causing the last heart to render underneath the first one.
1.0.8a
- Fixed issues with EntityPlayer:GetSmeltedTrinkets() and EntityPlayer:GetFootprintColor()
1.0.8
Additions:
- New general callback improvements to address some performance issues on some scenarios
- Deal rooms can now generate variants above 100
- Add new BlendTypes CONSTANT, OVERLAY
- EntityPlayer:
- SetHeadDirection(Direction, Time, Force)
- Get/SetHeadDirectionLockTime
- Game:
- SetDonationMod[Angel/Greed]
- ItemPool:
- GetBibleUpgrades(ItemPoolType)
- Player:
- Added Player:AddNullItemEffect and Player:AddCollectibleEffect, both with the same params (int type,bool costume, int cooldown=defaultcd, bool additive=true)
Fixes:
- Added Player:AddNullItemEffect and Player:AddCollectibleEffect, both with the same params (int type,bool costume, int cooldown=defaultcd, bool additive=true)
- Fixes a crash on MC_PRE_LEVEL_SELECT when a callback returned null
- Fixed a crash that could happen when you ran stage and achievement-related commands with bad syntax (missing a space)
- Fixed an issue with some Bethany challenges where you are supposed to start without book of virtues, starting with book of virtues
- Planetarium chance stat HUD is now initialized properly on save/continue
- Planetarium chance will now always return 0.0 if a planetarium room cannot spawn in the run (i.e. if a challenge doesn't spawn treasure rooms, the game is greed mode, or if planetariums aren't unlocked)
- Fix previously incorrect BlendType enums (ADDITIVE -> CONSTANT, MULTIPLICATIVE -> ADDITIVE)
- Fix ItemPool:GetPillColor not checking all identified effects
- Fix potential buffer overflow in ItemPool:UnidentifyPill
1.0.7c
Additions:
- Options.StatHUDPlanetarium
Fixes: - Fixed a bug where sounds were duplicated if MC_POST_SFX_PLAY was in use