You are viewing a potentially older version of this package. View all versions.
hirnukuono-AdvancedWardenObjective-1.2.3 icon

AdvancedWardenObjective

Flowaria's AdvancedWardenObjective with a few fixes, tweaks, and addons

Date uploaded 3 months ago
Version 1.2.3
Download link hirnukuono-AdvancedWardenObjective-1.2.3.zip
Downloads 621
Dependency string hirnukuono-AdvancedWardenObjective-1.2.3

This mod requires the following mods to function

BepInEx-BepInExPack_GTFO-3.2.1 icon
BepInEx-BepInExPack_GTFO

BepInEx pack for GTFO. Preconfigured and includes Unity Base DLLs.

Preferred version: 3.2.1
GTFOModding-InjectLib-1.0.2 icon
GTFOModding-InjectLib

Dauda wants to inject things

Preferred version: 1.0.2

README

AdvancedWardenObjective

This mod is basically Flowaria's AdvancedWardenObjective (AWO_Testing) with a couple of hotfixes since R8, new features, and additional events.

This is a full AWO_Testing compile with a +1.X version bump, so no need to uninstall AWO_Testing to use this-but you can safely remove it if you so choose. Bepinex will load and use the newest version.

All credit goes to Flowaria for his breath-taking work on GTFO. We miss you and wish you the best in all aspects of life.

Wiki Here!!

Changelog

V1.2.3

  • You can now specify an area index for CleanupEnemiesInZone

V1.2.2

  • Fixed a major sync issue with Countdown, Countup, NestedEvent, and StartEventLoop.
  • SpawnHibernatesInZone now also rerolls for enemies spawning too close to other enemies. After 5 failed attempts, you can choose whether or not to cope and spawn the hibernate anyway via Enabled (default true)

V1.2.1

  • Added new event PlayWaveRoarSound
  • Fixed Countdown and Countup using the incorrect BlinkIn/BlinkOut values
  • Increased SpawnHibernateInZone player avoid distance >:(
  • Retroactively changed ModifyPortalMachine event name to StartPortalMachine, sorry

V1.2.0

New events:

  • ShakeScreen
  • StartPortalMachine
  • SetSuccessScreen
  • PlaySubtitles
  • MultiProgression

Updated:

  • Fixed LockSecurityDoor not locking doors and implemented option to add text to locked door.
{
    "Type": 10001,
    "Layer": 0,
    "DimensionIndex": 0,
    "LocalIndex": 1,
    "SpecialText": "<color=green>://ERROR! Ultra locked!!</color>"
}
  • Fixed TeleportPlayer not properly syncing between host-clients.
  • Fixed SpawnScouts & SpawnHibernates throwing errors in the console.
  • You can now use modded custom success screens. Just put the full prefab filepath in either SetSuccessScreen or RundownDB.
  • Refactored code in most AWO events.
  • Disabled the Objective Extension module (if you were using this, DM me and I'll reenable it).

V1.1.1

  • Fixed AdjustAWOTimer bricking Countdown duration.
  • Fixed ForceCompleteChainPuzzle throwing null reference errors if a CP doesn't have a spline.
  • A positive TimeModifier for AdjustAWOTimer will now increase Countup instead of lowering it.
  • AMAWO console debug/error messages now include the event name.

V1.1.0

New events:

  • Countup (like Lockout2's E1 gimmick)
  • ForceCompleteChainPuzzle
  • SpawnNavMarker

Updated:

  • Countdown: you can now also use Duration outside of CountdownData class. Prioritizes backwards compatibility.
{
  "Type": 10010,
  "Duration": 60.0,
  "Countdown": {
    "TimerText": "Time Until Ends:",
    "TimerColor": "red",
    "EventsOnDone": []
  }
}
  • AdjustAWOTimer: Same as above. Added features for Countup.
  • SolveSecurityDoorAlarm: Now only changes door interaction state (Clearing CPs was broken, anyways). Use ForceCompleteChainPuzzle for this functionality.
  • AddTerminalCommand: You can now use TextDB for CommandDesc.
  • Refactored code in most AMAWO events.

V1.0.1650

Fixed Active EventLoop Ids persisting between levels.

V1.0.15

Amorously makes and will continue to make cool contributions. First ones merged and compiled here. See the wiki for how to use them.

New events:
   - NestedEvent
   - StartEventLoop
   - StopEventLoop
   - TeleportPlayer
   - InfectPlayer
   - DamagePlayer
   - RevivePlayer
   - AdjustAWOTimer
V1.0.14 - 1.0.1

V1.0.14

thyunsus requests: cleanupenemiesinzone IncludeOnlyID (works same as ExcludeEnemyID but in reverse)

V1.0.13

hideterminalcommands can now use a remove command entirely -switch, DeleteCommand default false. true it to make the command go poof entirely.

also some other tweaks and fixes here and there.

V1.0.12

added AddChainPuzzleToSecurityDoor / 10027

Datablock example:

              {
                "Type": 10027, // "AddChainPuzzleToSecurityDoor",
                "Layer": 0,
                "DimensionIndex": 0,
                "LocalIndex": 1,
                "WardenIntel": "door is rigged noob",
                "ChainPuzzle": 139
              }

only effective on doors that have not been opened yet. on unlocked doors the handle goes back in its hole.

V1.0.11

AddTerminalCommand does TriggerClient stuff, now it works as it should. ish. zero delay on the command but i can live with it. :)

V1.0.10

minor tweaks to AddTerminalCommand and COMAMNDS list, noticed u could repeatedly add commands with the same command numbers, not nice. made a simple duplicate check, wont let u do it now.

V1.0.9

would you like to have over 2 billion UniqueCommands? :) check TERMINALCOMMANDS.md for new commands 10024-10026 AddTerminalCommand, HideTerminalCommand, UnhideTerminalCommand

V1.0.8

spawnhibernateinzone now avoids players, rerolls position until a position is found that doesnt spawn on a player, instantly aggroing it. also solvesecuritydoor might work better. ish.

V1.0.7

spawnhibernateinzone now properly randomizes rotation of enemies, they don't all face (roughly) the same way. one enemy spawn goes by the eventdata spawnhibernates position + rotation (rotation.y should only be modified).

V1.0.6

fixed CleanupEnemiesInZone

V1.0.5

SolveSecurityDoorAlert now functions even if the door is locked by keycard, cell or lockednokey (type 3) .. it switches any chainpuzzle on the door into type 4.

V1.0.4

alertenemiesinzone chagned (wakeup mechanism, weakdoor opening). devs: if u don't want weakdoors of zone to open, use "Enabled": false on the event (default true if missing). thanks thyunsus a lot for testing this!

V1.0.3

v1.0.2 was flawed in one game-breaking way, fixed.

V1.0.2

thy reported that countdown timers after checkpoints break and play old events again. made provisions to detect cp usage and seppuku accordingly. also, made a small change to how the after-events are executed.

V1.0.1

initial.

CHANGELOG

Changelog

V1.2.7

  • Added new event SpecialHudTimer.
  • Changed CustomHudText since it didn't need to be run in a coroutine.
  • Fixed EventsOnProgress killing the timer.
  • Fixed NestedEvent potentially crashing the game when there are more MaxRandomEvents than EventsToActivate.
  • Fixed an issue where PlayWaveRoarSound would play wave roars one size larger than specified.
  • Removed the restriction of having only one active DOT DamagePlayer & IOT InfectPlayer event at a time.
  • Refactored code in some AWO events.
  • Remembered to do the version bump.

V1.2.6

  • Added new event CustomHudText.
  • Added a random event selection mode to NestedEvent.
  • You can now specify a WorldEventObjectFilter to use for PlayWaveRoarSound, SpawnNavMarker, & MoveExtractionWorldPosition via SpecialText.
  • Saved like, 20 bytes of memory for events that use coroutines.

V1.2.5

  • CleanupEnemiesInZone hotfix, sry for the wait.

V1.2.4

  • Added EventsOnProgress to Countdown and Countup.
  • You can now specify an area index for AlertEnemiesInZone (see wiki)
  • Fixed a potential sync issue with LockSecurityDoor.
  • Refactored code in most AWO events.

V1.2.3

  • You can now specify an area index for CleanupEnemiesInZone.

V1.2.2

  • Fixed a major sync issue with AWO events that activate other events (Countdown, Countup, NestedEvent, and StartEventLoop).
  • SpawnHibernatesInZone now also rerolls for enemies spawning too close to other enemies. After 5 failed attempts, you can choose whether or not to cope and spawn the hibernate anyway via Enabled (default true).

V1.2.1

  • Added new event PlayWaveRoarSound.
  • Fixed Countdown and Countup using the incorrect BlinkIn/BlinkOut values.
  • Increased SpawnHibernateInZone player avoid distance >:(
  • Retroactively changed ModifyPortalMachine event name to StartPortalMachine, sorry

V1.2.0

New events:

  • ShakeScreen
  • StartPortalMachine
  • SetSuccessScreen
  • PlaySubtitles
  • MultiProgression

Updated:

  • Fixed LockSecurityDoor not locking doors and implemented option to add text to locked door.
{
    "Type": 10001,
    "Layer": 0,
    "DimensionIndex": 0,
    "LocalIndex": 1,
    "SpecialText": "<color=green>://ERROR! Ultra locked!!</color>"
}
  • Fixed TeleportPlayer not properly syncing between host-clients.
  • Fixed SpawnScouts & SpawnHibernates throwing errors in the console.
  • You can now use modded custom success screens! Just put the full prefab filepath in either the SetSuccessScreen event or RundownDB.
  • Refactored code in most AWO events.
  • Disabled the Objective Extension module (if you were using this, DM me and I'll reenable it).
V1.1.1 - 1.0.15

V1.1.1

  • Fixed AdjustAWOTimer bricking Countdown duration.
  • Fixed ForceCompleteChainPuzzle throwing null reference errors if a CP doesn't have a spline.
  • A positive TimeModifier for AdjustAWOTimer will now increase Countup instead of lowering it.
  • AMAWO console debug/error messages now include the event name.

V1.1.0

New events:

  • Countup (like Lockout2's E1 gimmick)
  • ForceCompleteChainPuzzle
  • SpawnNavMarker

Updated:

  • Countdown: you can now also use Duration outside of CountdownData class. Prioritizes backwards compatibility.
{
  "Type": 10010,
  "Duration": 60.0,
  "Countdown": {
    "TimerText": "Time Until Ends:",
    "TimerColor": "red",
    "EventsOnDone": []
  }
}
  • AdjustAWOTimer: Same as above. Added features for Countup.
  • SolveSecurityDoorAlarm: Now only changes door interaction state (Clearing CPs was broken, anyways). Use ForceCompleteChainPuzzle for this functionality.
  • AddTerminalCommand: You can now use TextDB for CommandDesc.
  • Refactored code in most AMAWO events.

V1.0.1650

Fixed Active EventLoop Ids persisting between levels.

V1.0.15

Amorously makes and will continue to make cool contributions. First ones merged and compiled here. See the wiki for how to use them.

New events:
   - NestedEvent
   - StartEventLoop
   - StopEventLoop
   - TeleportPlayer
   - InfectPlayer
   - DamagePlayer
   - RevivePlayer
   - AdjustAWOTimer
V1.0.14 - 1.0.1

V1.0.14

thyunsus requests: cleanupenemiesinzone IncludeOnlyID (works same as ExcludeEnemyID but in reverse)

V1.0.13

hideterminalcommands can now use a remove command entirely -switch, DeleteCommand default false. true it to make the command go poof entirely.

also some other tweaks and fixes here and there.

V1.0.12

added AddChainPuzzleToSecurityDoor / 10027

Datablock example:

              {
                "Type": 10027, // "AddChainPuzzleToSecurityDoor",
                "Layer": 0,
                "DimensionIndex": 0,
                "LocalIndex": 1,
                "WardenIntel": "door is rigged noob",
                "ChainPuzzle": 139
              }

only effective on doors that have not been opened yet. on unlocked doors the handle goes back in its hole.

V1.0.11

AddTerminalCommand does TriggerClient stuff, now it works as it should. ish. zero delay on the command but i can live with it. :)

V1.0.10

minor tweaks to AddTerminalCommand and COMAMNDS list, noticed u could repeatedly add commands with the same command numbers, not nice. made a simple duplicate check, wont let u do it now.

V1.0.9

would you like to have over 2 billion UniqueCommands? :) check TERMINALCOMMANDS.md for new commands 10024-10026 AddTerminalCommand, HideTerminalCommand, UnhideTerminalCommand

V1.0.8

spawnhibernateinzone now avoids players, rerolls position until a position is found that doesnt spawn on a player, instantly aggroing it. also solvesecuritydoor might work better. ish.

V1.0.7

spawnhibernateinzone now properly randomizes rotation of enemies, they don't all face (roughly) the same way. one enemy spawn goes by the eventdata spawnhibernates position + rotation (rotation.y should only be modified).

V1.0.6

fixed CleanupEnemiesInZone

V1.0.5

SolveSecurityDoorAlert now functions even if the door is locked by keycard, cell or lockednokey (type 3) .. it switches any chainpuzzle on the door into type 4.

V1.0.4

alertenemiesinzone chagned (wakeup mechanism, weakdoor opening). devs: if u don't want weakdoors of zone to open, use "Enabled": false on the event (default true if missing). thanks thyunsus a lot for testing this!

V1.0.3

v1.0.2 was flawed in one game-breaking way, fixed.

V1.0.2

thy reported that countdown timers after checkpoints break and play old events again. made provisions to detect cp usage and seppuku accordingly. also, made a small change to how the after-events are executed.

V1.0.1

initial.