Inspiration

I was inspired to create Toontown Rewatched because when playing the game, Toontown Rewritten, I found switching from the game to the browser or my phone to check on current invasions and field offices was very distracting. Having access to this data on my wrist through an Apple Watch meant I could easily glance at the data and continue playing.

I saw a similar abandoned project: WatchKit-Toon-HQ and decided to make my own using the official Toontown Rewritten API, adding new features such as Field Offices and Street Cog data.

What it does

Toontown Rewatched access the official Toontown Rewritten API to provide the latest invasion and field office data from the game. It also shows Street Cog Percentage data.

How I built it

I attended the Building an iOS App workshop from Global Hack Week: Beginners to learn the basics of Swift and Swift UI including how to call and process data from an API.

I used ScrollViews, Sheets, and NavigationBarTitles to create a menu of buttons that could fit in the limited watchOS screen size and provide an easy to navigate UI.

Challenges I ran into

The first challenge of the project was figuring out how to retrieve data from the Toontown Rewritten API. The data structure was more complex than the workshop I attended with an array of results.

The next was creating an UI that would work on both the smaller and larger Apple Watch sizes. Many methods of UI customisation aren't available on watchOS so I had to try different SwiftUI elements to figure out how to present the buttons in a way the user could see them all and style and align text in a way that wouldn't cut off.

The final challenge was figuring out how to package and submit the app to App Store Connect. Xcode didn't show the correct options in the Developer Document to package the app and it took a lot of searching and trial and error to find the right solution which required me to recreate the project from scratch.

Accomplishments I'm proud of

I've very proud of starting to code with Swift. My previous experiences struggling with Java meant I didn't think I'd be able to get to grisps with a typed language.

I'm also proud of getting my app to run on my Apple Watch. Seeing my app for the first time on a real device was a delight.

What I learned

I learned that learning a new programming language isn't as daunting as it first seems. The Major League Hacking workshop was a great first step in learning the essentials in a practical environment. Being able to ask questions live and code along was very helpful.

What's next for TTR Rewatched

TTR Rewatched is currently in the review stage in the App Store so the next step is to work on getting it approved and available to download.

Built With

  • swift
  • swiftui
  • toontown
  • toontownrewritten
Share this project:

Updates