Skip to content

Andrew-R-Stephens/PET-Source

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,329 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Phasmophobia Evidence Tool

Phasmophobia Evidence Tool (PET) is a companion app for the game Phasmophobia. PET enhances the user experience by supplementing in-game mechanics with a more involved investigation system.

Get it on Google Play
[ iOS Coming Soon ]


Demo Screenshots

screenshot screenshot screenshot screenshot screenshot screenshot screenshot screenshot


Design and Architecture


graph


Modules

[ active ]
  • :app:compose : The Android core module.
    • Implements the shared KMP module.
    • It is a completely reworked app-legacy.
    • Adopts modern Jetpack Compose / Clean Code approach.
  • :core:resources : App core resources.
    • Contains core resources that can be shared between features and core app.
    • Currently ongoing integration with app-compose and app-legacy modules.
  • :core:ui : App core UI.
    • Implements :core:resources module.
    • Currently ongoing integration with app-compose module.
  • :shared : The KMP project module.
    • Shared KMP domain layer.
    • Currently ongoing integration with app-compose module.
[ incubating ]
  • :iosApp : The iOS project files.
    • Dependent on the shared module.
[ sunset (production) ]
  • :app:legacy : Current Live module.
    • Maintained for live hotfixes.

Technologies Used

High-Level Design

Native Android -> Kotlin Multiplatform (Android / iOS) Integration Pattern
P.E.T. has become Kotlin-first! Major code migration started in May 2024 and finished in July 2024. Planned migration to KMP will commence after confirmation of build stability and feature refinement.
  • Build for Android ♻️
    • Refactor from Java to Kotlin ✔️
    • Refactor to Clean Code ✔️
    • Migrate from Views to Jetpack Compose ♻️
  • Prepare KMP ✔️
    • Add KMP and iOS project module ✔️
    • Build shared domain layer✔️
  • Build for iOS ♻️
    • Begin migration to iOS/SwiftUI ♻️
    • (Interim steps) ♻️
    • Test for iOS 🔳
    • Publish on iOS App Store 🔳

Internal Software Solutions

P.E.T. Map Maker
Assists with the development of interactive maps.
screenshot

App Features

  • Investigation tool scores and displays ghosts based on the evidence provided and the difficulty chosen.
  • Hunt timer and hunt warning audio indicator.
  • Interactive Map which displays the location of rooms, cursed possessions, and fuse box.
  • Sanity meter keeps track of Sanity based on selected difficulty and map size.
  • Ghost Information
    • Strengths, Weakness, General Data
    • Hunt Information
    • Notable attributes
  • Evidence Information
    • General Data about the Evidence
    • Tools required and what each tool tier does
  • Equipment Information
    • Unlock Level, Unlock Cost, and Purchase Cost.
    • Shop flavor text and useful information from the shop.
    • Positive and negative attributes of each tier.
  • Thematic resemblance to Phasmophobia.
  • Kept up-to-date with Phasmophobia changes.

Accessibility Features

    • Native support for multiple Languages: English, Chinese (Simplified), Czech, French, German, Italian, Japanese, Portuguese, Russian, Spanish
    • Colorblind Themes
    • Device support: Phones, Tablets, and Desktop
    • Orientation support: Portrait / Landscape
  • RSS Feed pulled from official Phasmophobia changelogs on Steam.
  • Access to the PET support Discord.

Acknowledgements

Thank you to the team at Kinetic Games for such an amazing game!

And a huge thanks to Daniel Knighter for his permission to use the name and likeness Phasmophobia for this project!


Roadmap

Trello

License

License