Roadmap
CURRENTLY WORKING ON: Last Updated 07-Feb-25
Add debug log removed in scripts (As per debug settings)
Rename all UI elements of Main Inventory UI
Make sure all systems have correct dropdowns
Issue if batteries are collected that radial item appears when examining object
Make sure all new models go into correct ART folders
Add table to demo scene
Add spawnable items inside safe
Add Keycard System
Make sure all sounds work - Commented incorrect connections
PromptManager: Make sure all the prompts are made
Keypad
Phone
Safe
Padlock
Chess
Inventory
Finalisation:
New Demo Scene
Check all scripts for useless code or comments that aren't relevant
Get full backup of Asset Store v1.6.1 before v1.7
Add separate .unitypackages for each pipelines to make installation easier
Test each pipeline against documentation
Create brand new trailer: Example
January 2025 - V1.7.0 (IN DEVELOPMENT)
Added brand new persistence bool to all managers so you can specify if you want to keep managers / singletons between scenesAdded null checks for Examine, Flashlight, Keypad, Phone, Fuse box, Safe System, Valve SystemAdded isPlaying & FadeOut to audio manager for easier usage for systemA
dded scriptableobject creation in Menu: APK > Create > ScriptableObjectNew folder structure for all systems assets in the Project tab
NEW FPS Controller & New Functionality
Added new camera zoom script to aid looking at smaller objects calledAKCameraZoomCamera zoom is disabled in disable manager and within it's own script based on GameState script
Added newer FPS Controller called AKFPSControllerAdded basic movement, camera rotation and old input systemCharacter controller now has normalized movement to stop a speed boost when pressing two buttons at onceAdded canMove & canRotate as a way to disable camera and/or player movementAddedSetPlayerDisableModemethod so this could be used in other scripts for better understanding
Added jumping functionality for more realismAdded jumping sound logic and only jumps when in the air
Added sprinting functionalityAddedSetMovementSpeedmethod so we can change movement speeds more easily and disable crouching if movement speed is too slowAdded footstep functionality when both sprinting and walkingAdded crouching functionalityLimited player movement speed when crouchingAdded Ctrl key to make crouch happen
Main System Re-write:
Basic item collectable interactions use an Interface so an event driven approach for all inputs, making systems work more fluidly, when not lookingAKInteractor now handles all basic input logic for looking, button pressing, holding and item name highlightingAKItem is now re-written to use an Interface so it can all be event drivenAdded brand new GameState global script to manage when you're inside invenntory, examining or otherwise. So you can easily negate certain systems and stop unwanted interactionsCreated new AKMasterTrigger to be used across all systems rather than seperate scripts which share similar logic
AudioManager
Created brand new custom inspector so all sound Scriptables can be categorisedCreated brand new category in Sound ScriptableObject so all systems could be organisedAdded new options in the inspector for adding a sound to the array or creating some with a button press for easier creationAdded a button to the top of the inspector to show default inspector incase the user needs to access the original array fields
Disable Manager
Removed all references to third person controllerAdded functionality for disabling mouse cursorAdded new tips with custom inspector, added nullref checks to help with setup issues on start and optimised the main script with less redundancy
AKPromptManager
Created a brand new prompt manager to control prompts that will appear during each system usageYou can now set specific lower section prompts for each system
AKUIManager
Changed AKUIManagerEditor to have dropdowns rather than tickboxesCreated custom editing variables for examine and pickup prompt buttonsAdded customisation for button prompts on highlightingRenamed Adventure Kit Canvas to InventoryContainer to match with new inventory container naming
AKItem:
Added Interact Prompt to system so the user can choose that instead of pickup or use a combination, this allows for customisation in the UI managerAdded warning message in custom editor for telling the user when ticking "Show Examine Prompt" that an ExaminableItem script should be on the objectYou can now choose whether to have prompts for examining, picking up or just showing the object nameAdded emission highlight to this script from the examine systemEmission highlighting now automatically works for child gameobjects with mesh renderersAdded custom editor note for empty parent and child types
Padlock System
Removed and deleted PadlockTrigger scripts and can now use generic AKMasterTrigger scriptsPadlockController now references the AKMasterTrigger rather than PadlockTrigger scriptRenamed all elements in the demo scene are consistent conventions and added new text to doorwaysRemoved Interactable and AKItem script from interactle padlock when using trigger
NoteSystem
Added TMP integration to note controllersUpdated custom editors for text settings to HeaderFoldoutGroupsConverted all UI elements to TMP and updated all UI managersRemoved NoteTrigger scripts and replaced with AKMasterTrigger
Basic Door System
Added new interactive door option for the object itselfAdded new red button model with PBR textures
Chess System
Updated all scripts from CP to Chess - So all scripts having better naming conventions
Lever System
Created a custom editor for LeverItem to remove the sound option for fuse box item
Generator System
Adjusted all popup UI's to use TMP rather than the legacy UI systemAdded new audio effects to the systemAdded brand new looped generator filling audioAdded brand new jerrycan pickup audio
Changed UI design for generator inventory to be more professional and en keeping with other assetsGeneratorItem script Improvements:Fuel barrel can now be set to unlimited usageMade sure collected Jerrycan updates inventory fuel as it didn't work as intendedAdded brand new functionality for being able to turn the generator on and off on the keypressAdded a new audio for looping and sound pouringAdded functionality to fill the generator over-time using a long keypressAdded new fillrate field for customisation
Gas Mask System:
Updated GMHealthManager to match v1.4 of the single asset which includes new optimisations, new ways to control health and split into helpeful methods for more consistencyRenamed Visor UI to "UI - Gas Mask Visor Overlay" for more consistencyAdded null checks for all Gas Mask UI and other UI manager related elementsAdded functionality to reference new FPSController rather than old oneRenamed all Gas Mask related inventory elementsConvert all text UI elements to TMPEdited the AKUIManager to reference this change for TMP
Themed Key System:
Added null checks for all UI elements
Valve / Pipe System:
Added null checks for all UI elements, including arraysRenaming ValveSliderContainerUI to best match other elements of the systemRemoved the CanvasGroup from the progress container and optimised the code to disable the object rather than using the group
Safe System
Removed SafeTrigger script and the system now uses AKMasterTriggerFixed an issue where safe UI numbers didn't update on the next tumbler press (Visual bug rather than anything that stopped the system working effectively)Created brand new single colliders around the skeleton of the safe, so interactions for items can be used within the safe (When opened) - Large colliders won't get in the wayCreated new input name toSafeCloseKeyand added to input manager scriptRenameSafe Modelreference in Safe Controller / Trigger to Safe InteractionRemove collider fromSafe - Modeland added toSafe - DoorRenamed all UI elements to be consistent with other systemsUpdated all UI elements to TMP
Created a new parent for Safe UI for easier disabling
Fuse Box System
Created a custom editor for fuseItem to remove the sound option for fuse box itemAdded null checks to UIManager script to avoid missing reference issuesConverted UI elements to TMP
Keypad System
Updated Keyboard Sci-Fi UI elements to TMPUpdated Keypad Sci-Fi elements to TMPUpdated Keypad modern UI elements to TMPRenamed all UI elements and organised for better debugging
Updated UI manager to reflect TMP additionsAdded null checks for all fields related to keypad system
Removed KeypadTrigger script to be replaced with AKMasterTrigger
Phone System
Updated Mobile phone UI elements to TMPUpdated Payphone UI elements to TMPUpdated Office phone UI elements to TMPRenamed all UI elements and organised those for better usage
Updated UI manager to reflect TMP additionsAdded null checks for all fields related to phone system for easier debugging
Flashlight System
Removed theFlashlightBaseClassscript as it wasn't relevantRefined all logic into theFlashlightItemscript
Removed the custom editor and now allows a certain amount of batteries to be collected on flashlight pickupAdded a new check within the update method to check the GameState to see if the player would be busy, interacting, examining or in the inventory and stop the flashlight battery from decreasingAdded "Should persist" option to the flashlight controller, so user can choose whether this should be destroyed between scenesConverted Flashlight battery parent UI text to TMPRemoved some raycast targets on the UI to avoid interaction issuesYou may pick up multiple batteries initially if theflashlight controllerhas more than 0Battery Countat the start. Fix this by adding 0 to this fieldFixed an issue where the flashlight wouldn't appear in the inventory even if the HasFlashlight bool was checkedAdded null checks for UI manager
Examine System
Added global static for isExamining so we can turn off raycast and stop unwanted interactionsRemoved all highlighting logic and emission logic from this script and moved to the AKItem & AKUIManagerAdded E to collect to AKPromptManager based on examinableItem scriptFix part of examine script which allows us to pickup item when examining
Edited Basic & Right Sided Examine UIExpanded parent UI element for better usageRecreated all text elements to TMPRenamed all elementsAdded TMP to Empty Close Button UI elementsRenamed and TMP added to Examine Help Panel UI elements
Changed the UI Manager now references the TMP type textFixed all font style issues when converting to TMPChanged Interaction naming to Highlight name for name highlight systemAdded UI debugs to UI manager for examine system
APK Support Hub Fixes
Rewritten APK hub descriptionAdded Write Review button and re-arranged button layoutUpdated header image for V1.7Added a newDont Open Automaticallycheck box so user can choose to stop this opening automatically but still open viaWindow > Adventure Kit Support Hub
Documentation Updates
Which UI objects need to be disabled by default at start for all systems
AK - Phone Canvases
All individual canvases needs to be disabled by default
Comments for more scripts and in-depth information
On Asset Store Page
Fix grammatical errors
Add keycard system note
Add mention of contacting me about v1.6.1 if you have any issues
Online documentation saved to PDF for included docs?
Mention about if text is missing, add font from "Additional Packages" (Backup font)
Mention all global states: isExamining (ExaminableItem)
In Introduction Online Doc page: Include table of contents
Strip out included documentation
Mention new FadeOut for audio manager as seen in GeneratorItem
Add page about key buttons, inputs and presses
Add more details to where inputs are located in each script
Mention AKMasterTrigger to replace all other triggers, may need to mention in individual assets
Mention new FPSController
Mention new AKCameraZoom
Examine System
Mention scroll delta for item zooming about input
Gas Mask System
Mention about setting player speeds using my new controller
Also mention using another character controller
Safe System
Mention that if you rename any objects (Door / Handle) this will cause animations to be lost on the models
Mention Safe Model has animations
Mention Model has AKItem & others
Also mention that in the opening event, we disable main collider and enable full body colliders
Inventory Canvas UI - OFF
UI_Left_ButtonContainer - ON
All items inside - OFF
V1.8 Update List:
New Additions:
Door Interaction Kit
System Updates
Note System:
Update Note System to v2.0
Add custom inventory with selector tab
Update all relevant systems to work with new inventory system
Input System:
Add functionality for new input system (Create tutorial in documentation and mention in description)
Recreate Third Person Controller functionality:
Make sure this scene uses the newer Unity TPS controller
Inventory System:
Brand new inventory system with 2 tiered functionality
Add title and description in a space relevant for each object in inventory
Make sure all collectable items use ScriptableObjects for collecting
JSON save system
Fixes / Updates:
Combine keypad & phone system together
Last updated