Releases: TeamREPENTOGON/REPENTOGON
1.1.1a
This update specifically fixes the syncing of the vanilla game options (music volume, the filter, whether mods as a whole are enabled, etc) between vanilla and REPENTOGON. These options were intended to be fully shared between the vanilla game and REPENTOGON. However, for some people this did not work, and vanilla/REPENTOGON would use different options. Some actually mistook this as a feature since they could have mods disabled in vanilla but enabled in REPENTOGON. This was actually a BUG! Unfortunately, fixing the bug may appear to cause odd things for some users.
-
If your mods are no longer working in REPENTOGON, you may need to re-enable them, either by checking "Enable Mods" in the Launcher's "Change Game Options" menu, OR by using the in-game mods menu (note that this will trigger a game restart).
- Note that if you have never played with mods in vanilla Rep+, the game may automatically disable your mods if you boot up vanilla, which may also disable mods for REPENTOGON. To stop this from happening, launch vanilla and use the in-game mods menu to enable your mods, and accept Nicalis' disclaimer. Alternatively, you may disable "Sync Mods Enabled" in REPENTOGON (see below).
-
If it seems like your save files have changed or disappeared due to the update, don't panic! You may need to check the "Steam Cloud" option in the Launcher's "Change Game Options" menu. This setting determines whether the game reads your saves from local files or the Steam Cloud, which are entirely separate saves. Typically, you probably want this enabled, but there is the possibility that you had it disabled for either vanilla or REPENTOGON.
-
If you WANT to use different options for REPENTOGON, or just the "Enable Mods" setting specifically, this is now available as a feature. Open the console and go to "Tools" -> "Game Options" -> "REPENTOGON", where you will find two new options. Please note that if you disable options syncing entirely, you will not be able to change REPENTOGON's options via the Launcher. A future Launcher update may support it, however.
If you experience any issues beyond this, or need help, just let us know!
1.1.1a-unstable-2
Add toggles to disable options syncing
1.1.1a-unstable
Fixes game options (options.ini) not syncing properly between vanilla & REPENTOGON for some users.
1.1.1
Additions:
- Mods can now load assets from resources-repentogon and content-repentogon folders for compatibility. Takes priority over -dlc3 folders (e.g resources-repentogon > resources-dlc3 > resources).
- Game:
- IsStartingFromState
Returns a boolean whether the game starts from a continued state or not. Always returns false after MC_POST_GAME_STARTED execution.
- IsStartingFromState
- EntityBomb
- Get/SetFallSpeed
Formerly mislabeled as Get/SetHeight - Get/SetFallAcceleration
Formerly mislabeled as Get/SetFallingSpeed
- Get/SetFallSpeed
- EntityTear
- SetInitSound(SoundEffect sound)
- MenuSave
- SetSlotSpritesheet(int slot, string pngfilename)
Overrides the spritesheet used for a save file drawing. MC_POST_SAVESLOT_LOAD is a good place to use this.
- SetSlotSpritesheet(int slot, string pngfilename)
- ModCallbacks:
- Added "RemoveFromPlayerForm" and "Wisp" args to MC_POST_TRIGGER_COLLECTIBLE_REMOVED.
- Enums:
- SlotState
- BloodClotSubtype
- RoomDisplayFlags
Fixes:
- Isaac:
- Restored deprecated Isaac.ClearBossHazards for compatibility, but Room:ClearBossHazards should be used instead.
- Fixed possible crashes involving ClearChallenge and MarkChallengeAsNotDone.
- Vector:
- Lerp now returns a reference to the modified vector like it now does in vanilla.
- RoomDescriptor:
- Fixed GetNeighboringRooms returning a number instead of a table.
- Room:
- SetItemPool no longer crashes or errors on POOL_NULL
- ScoreSheet:
- Fixed crash related to AddFinishedStage
- ModCallbacks:
- Fixed broken color userdata in MC_POST_ENTITY_SET_COLOR
- XMLData:
- Fixed GetEntryByOrder results for XMLNode.NULLCOSTUME
- Fixed crashes on invalid node types
- Dear ImGui Console Menus:
- Game Options: Music Volume slider now immediately updates the volume of the currently-playing music.
- Save Management: "Import from Repentance" no longer "fails" if a file doesn't exist.
- Fixed possible crash on the secrets menu.
- Fixed the custom challenges menu resetting when any console command is executed.
- Fixed the game potentially getting stuck trying to generate an ascent floor if a modded boss room has certain door layouts (again)
1.1.1-unstable-2
Fix missing tear fire sounds
1.1.1-unstable
Pre-release for 1.1.1
1.1.0a
- Fixed an issue with console commands on the main menu resetting the selected challenge (will still happen for achievement-related stuff)
- Acomodated to a vanilla Isaac-ng.exe to match the launcher changes (launcher 0.3.11 is required!)
1.1.0
Repentance+ release!. From this point on, you need the REPENTOGONLauncher to properly use this updates.
Additions:
- Camera:
- Update(bool Interpolated = false)
- SetClampEnabled(bool clamped)
- IsClampEnabled
- ChallengeParam:
- IsBeastPath
- Game:
- ChainLightning(Vector Position, float BaseDamage = 3.5, TearFlags TearFlags = TearFlags.TEAR_NORMAL, Entity Spanwer = nil)
- GridEntity:
- [Get/Set/Reset]WaterClipFlags
- Entity:
- [Get/Set/Reset]WaterClipFlags
- CanDevolve
- EntityDesc:
- EntityDesc(EntityType Type = 0, int Variant = 0, int Subtype = 0, ChampionColor ChampionId = -1, float Health = 0.0, float MaxHealth = 0.0, boolean PlayerControlled = false)
- [Get/Set]Type
- [Get/Set]Variant
- [Get/Set]Subtype
- [Get/Set]ChampionId
- [Get/Set]Health
- [Get/Set]MaxHealth
- [Is/Set]PlayerControlled
- EntityPickup:
- GetMegaChest[Left/Right]Collectible
Returns the other EntityPickup for a Mega Chest - HasFlipData
Returns true if pickup is collectible and has Flip save state. - GetFlipCollectible
Returns CollectibleType if flip save state exists, nil otherwise. - InitFlipState(CollectibleType = CollectibleType.COLLECTIBLE_NULL, SetupCollectibleGraphics = true)
- GetMegaChest[Left/Right]Collectible
- EntityPlayer:
- [Get/Set]ActionHoldDrop - how long player holds action drop button.
- SetD8DamageModifier
- SetD8FireDelayModifier
- SetD8RangeModifier
- SetD8SpeedModifier
- [Get/Set]ForgottenSwapFormCooldown
- [Get/Set]MaggyHealthDrainCooldown
- [Get/Set]MawOfTheVoidCharge
- [Get/Set]MontezumaRevengeCharge
- [Get/Set]PlanCKillCountdown
- [Get/Set]PotatoPeelerUses
Used to increment Cube of Meat familiar form - [Get/Set]RockBottomMoveSpeed
- [Get/Set]RockBottomMaxFireDelay
- [Get/Set]RockBottomDamage
- [Get/Set]RockBottomTearRange
- [Get/Set]RockBottomShotSpeed
- [Get/Set]RockBottomLuck
- [Get/Set]RevelationCharge
- GetPlayerHUD
- [Get/Set]SuplexState
- [Get/Set]SuplexAimCountdown
- [Get/Set]SuplexTargetPosition
- [Get/Set]SuplexLandPosition
- CreateAfterimage
- [Add/Get]CandyHeartBonus
- [Add/Get]SoulLocketBonus
- GetTearsCap
- GetStatMultiplier
- GetSmeltedTrinketDesc
- [Get/Set]CharmOfTheVampireKills
- IsPostLevelInitFinished
- HasForcedCamoEffect
- SetForceCamoEffect
- HasCamoEffect
- EntityFamiliar:
- IsLilDelirium
- SetLilDelirium
- GetRandomWisp
- GetActiveWeaponEntity
- GetActiveWeaponNumFired
- EntityTear:
- GetHitList
- ClearHitList
- FireSplitTear
- EntityLaser:
- FireSplitTear
- EntityKnife:
- FireSplitTear
- GetHitboxParentKnife
- SetHitboxParentKnife
- EntitySlot:
- GetPrizeSprite
- EntityNPC:
- ApplyTearflagEffects
- EntityConfigEntity:
- GetDevolvedEntity
- Level:
- Added overloads for CanPlaceRoom(AtDoor) and FindValidRoomPlacementLocations that accept a RoomShape and DoorMask instead of a RoomConfigRoom.
- GetGenerationRNG
- PlayerManager:
- GetRandomCollectibleOwner
- GetRandomTrinketOwner
- Isaac:
- GetButtonsSprite
- GetAllowedDoorsMaskForRoomShape: Returns a DoorMask representing all DoorSlots that are allowed for the given RoomShape.
- UnClearChallenge(challenge id): sets the target challenge id as not cleared. Not recommended with vanilla ones, it should still work tho!
- SpawnBoss(Type,Variant,SubType,Position,Velocity,Spawner,Seed = ?) Spawns an NPC forcing it to be a Boss, giving it a boss bar and boss-lile qualities.
- GetNanoTime(): Returns a high-resolution timestamp in nanoseconds.
- RenderCollectionItem(CollectibleType Collectible, Vector Position, Vector Scale = Vector.One, Color Color = Color.Default)
- ReworkCollectible(Collectible): marks the collectible as reworked, making the game not execute the item's original logic.
- ReworkBirthright(PlayerType): marks the birthright as reworked, making the game not execute the item's original logic.
- ReworkTrinket(Trinket): marks the trinket as reworked, making the game not execute the trinket's original logic.
- ItemPool:
- AddCollectible
- AddTemporaryCollectible
- RemoveTemporaryCollectible
- ItemConfig_Item:
- Add/RemoveCustomTag
- Add/RemoveCustomCacheTag
- HUD:
- GetStackedStreakSprite
- GetPlayerStreakSprite
- Minimap:
- Refresh
- PlayerHUD:
- GetIndex
- GetLayout
- ProceduralEffect
- Fix fartScale.
- GetScore
- GetTriggerChanceScale
- Room:
- TriggerOutput(RoomEventOutput GroupIdx)
- GetWallColor()
- RoomConfig:
- AddRooms
- RoomConfigSet:
- AddRooms
- RoomDescriptor:
- [Get/Set]TaintedKeeperCoinSpawns
Prevent coin spawn from killed enemies on room reenter when counter reaches 10.
- [Get/Set]TaintedKeeperCoinSpawns
- ScoreSheet:
- GetBeastBonus
- GetDeliriumBonus
- GetMotherBonus
- Seeds:
- SetStageSeed(LevelStage, Seed)
- FXLayers:
- AddPoopFx(ColorMod Color)
- Weapon:
- GetMainEntity
Returns active entity used by weapon (Brimstone - EntityLaser, Mom's Knife - EntityKnife and etc.)
- GetMainEntity
- MenuManager:
- IsActive: returns true when MenuManager is ready to be used a.k.a if you can use the menuman functions (normally, if you are at the main menu)
- CharacterMenu
- GetPlayerTypeFromCharacterMenuID(int CharacterMenuID, bool Tainted)
Tainted boolean defaults to current menu if unspecified. - GetCharacterMenuIDFromPlayerType(int PlayerType)
Note that the normal/tainted versions of a character have the same CharacterMenuID. - GetSelectedCharacterPlayerType()
Returns the PlayerType for the character currently selected in the menu.
- GetPlayerTypeFromCharacterMenuID(int CharacterMenuID, bool Tainted)
- Players.xml
- Added support for modded/text trinkets on the "trinket" param (I forgot trinkets existed tbh, lol)
- Added "hideachievement" attribute, which hides the character from the character select menu until the corresponding achievement is obtained
(Doesn't do anything for tainted characters, since whether or not they appear on the menu is entirely dependant on the non-tainted character) - Added "hurtsound" attribute, which overrides the player's damage sound.
- Added "deathsound" attribute, which overrides the player's death sound.
- Items.xml
- Added "activegfx" attribute, which sets separate active item image for rendering in active slot.
- ModCallbacks:
- MC_PRE_PLAYER_POCKET_ITEMS_SWAP(EntityPlayer player)
Triggers when the player swaps their pocket items using the action drop button (even if they are empty).
Return true to cancel pocket item swap. - MC_PRE_TRIGGER_BED_SLEEP_EFFECT(EntityPlayer player)
Triggers if "SleepFillHP" item overlay sprite's event is triggered, and before the hearts addition is applied.
Return true to cancel vanilla behavior. - MC_PRE_BED_SLEEP(EntityPlayer player, EntityPickup bed)
Triggers on bed collision and before playing sleep sequence.
Return true to cancel vanilla behavior. - MC_PRE_ENTITY_SET_COLOR(Entity entity, int duration, int priority, bool fadeOut, bool share)
Fires when Entity:SetColor is called
Takes an EntityType as its optional argument.
Return a color to override the color. The overridden color is passed into MC_POST_ENTITY_SET_COLOR.
Return false to cancel the color change. Prevents MC_POST_ENTITY_SET_COLOR from firing.
This only fires forEntity:SetColorand does not fire when changing the entity's color directly. - MC_POST_ENTITY_SET_COLOR(Entity entity, int duration, int priority, bool fadeOut, bool share)
Fires after an entity's color is changed via Entity:SetColor
This only fires forEntity:SetColorand does not fire when changing the entity's color directly. - MC_POST_PLAYER_TRIGGER_ROOM_CLEAR
Previously missing counterpart to MC_PRE_PLAYER_TRIGGER_ROOM_CLEAR - MC_GET_STATUS_EFFECT_TARGET(Entity entity)
Fires when an Entity is about to recieve a status effect
Takes EntityType as its optional argument.
Return an Entity to apply the status effect to it instead (good for multi-segment enemies). - MC_PRE/POST_STATUS_EFFECT_APPLY(StatusEffect statusID, Entity entity, EntityRef source, integer duration)
Triggers before/after applying a status effect
Takes the new StatusEffect enum as its optional argument
Return false on the PRE callback to cancel adding the status effect - MC_PLAYER_HEALTH_TYPE_CHANGE
Runs when a player's health type changes, but before automatic health conversion - MC_POST_ROOM_RENDER_ENTITIES
Runs after all entities & grid entities in the room have been rendered, but BEFORE effects like overlays, shockwaves, and the mirror world effect are applied.
Rendering done on this callback is also preserved in room transition animations. - MC_POST_START_AMBUSH_WAVE(boolean BossAmbush)
Fires at the start of challenge/boss rush room wave - MC_POST_START_GREED_WAVE
(add description later) - MC_EVALUATE_MULTI_SHOT_PARAMS(EntityPlayer, MultiShotParams, WeaponType)
Optional param: PlayerType
Replacement for the legacy MC_POST_PLAYER_GET_MULTI_SHOT_PARAMS that passes along a mutable MultiShotParams and allows all mods to modify it. - MC_EVALUATE_STAT(EntityPlayer, EvaluateStatStage stat, float currentValue)
Optional param: EvaluateStatStage
Used to modify intermediate values of player stat calculations.
Currently supported: EvaluateStatStage.TEARS_UP, EvaluateStatStage.FLAT_TEARS, EvaluateStatStage.DAMAGE_UP, EvaluateStatStage.FLAT_DAMAGE
NOTE: Unless you need to perform complicated conditions/calculations, it is strongly suggested that you use the new XML item stats features instead of this callback! - MC_EVALUATE_TEAR_HIT_PARAMS(EntityPlayer, TearParams, WeaponType, float DamageScale, integer TearDisplacement, Entity Source)
Optional param: PlayerType
Used to modify mutable TearParams object. - MC_PRE/POST_APPLY_TEARFLAG_EFFECTS(EntityNPC entity, Vector position, TearFlags, Entity source, float damage)
Optional param: EntityType of the source, if any
Called when TearFlags effects are applied to an npc. The source could be basically anything (tear, laser, knife, nil, etc) - MC_POST_FIRE_SPLIT...
- MC_PRE_PLAYER_POCKET_ITEMS_SWAP(EntityPlayer player)
v1.1.0-testing-launcher-20
- Fixed Bridge crash
- SetActiveNenu Bound Check + Override
v1.1.0-testing-launcher-19
- Fixed custom font loading
- Fix Imgui menu crash
- Various void_ex stb tweaks
- Isaac.RenderCollectionItem