Changelog: v0.7.0 - Mobile Controls & First Mobile Build Attempt


I did a lot today, and got little done.

  • Added mobile controls
  • Fixed a bug rendering mobile controls when a controller is connected
  • Fixed a redundancy where two methods were updating the same UI element
  • Consolidated some update logic to one method
  • Removed logic to detect controller status
  • Updated some old logic for error handling and validation

Once the code worked and the touch controls felt good on my laptop, I wanted to try it on a phone...

  • Built an APK with Buildozer to launch on Android devices from an Ubuntu venv
    • Extensive troubleshooting
    • Attempted to attach to my phone
    • Comprehensive documentation review (AI was constantly spinning me in logical circles using outdated commands)
    • Several attempts to attach to my phone later, I scrapped my environment, cleaned the connection between my phone and PC, updated my drivers, restarted Windows, confirmed hardware was not the issue, and something in this process fixed the issue
    • Successfully attached to my phone, ran the APK, a splash screen appeared on my phone and crashed instantly
  • Built a second more sterile APK to rule out potential file structure or corruption issues
    • Troubleshooting with a debugger attached

Known bugs:

  • Resizing the screen on pretty much any screen in the game will break everything in irreparable ways.
  • Current methods to detect controller status cause severe performance issues culminating in a crash during long play sessions (1 hr+).
    • Went to great lengths to never have a memory leak from the very beginning and I still have one, no clue where
  •  The logic to put Andrew into the contacts list and put stage_10 on the city map is implemented
    • Andrew isn't in the contacts list
    • stage_10 isn't on the city map
    • ???
  • Mobile test build
    • Crash on startup

The way that I'm checking if a controller is connected, and thusly deciding whether to draw graphics for the virtual joystick on screen or not, is probably causing a memory leak. You may have noticed also, that the changelog looks like crap! My AI assistant spun me in circles a lot today, so I'm reclaiming this space in my life to regain some control that I've lost over the project trajectory and momentum. I've found when it gets stuck like this it starts taking random shots in the dark at the code, and reverts irrelevant pieces of it. So it's always best to move on, pivot to a new and completely different task, and come back in a new session telling it the way you've already tried to fix it, and it 9/10 provides an immediately working solution, often throwing in a random "I spotted this redundancy and fixed it as well." So I temporarily removed the logic detecting controller status and plan to reintroduce it or a different version entirely during another session.

Right around the part where I got the debugger attached and sent the sterile APK to my phone with a run command, the Ubuntu venv inexplicably stopped detecting my phone and no amount of effort on my part got it back. At that point I decided to go camping! I've been learning about a couple different free-to-use art programs. I'm going to sit upon a mountainside for some days with hot dogs, my dog, my gun, and sodapop to make some of the artistic designs I've come up with. To refresh my soul. 

I have a sketchbook full of concepts for the game. I need to make decisions about the art now, and at the very least get some quick and dirty placeholders on the screen. Then I can start coding around and for these artistic decisions, to make the game logic actually do what I've been envisioning. All of the important functional pieces are finally there; they're just in the wrong order, on the wrong screens, and ugly.

My plan is to make the artistic style a hybrid between hyperrealism and pixel art. The UI is easy to make hyperrealistic so I think it's worth doing. In my mind it seems it would be harder to make the whole series of maps hyperrealistic. So I think pixel art is more appropriate for my skill level. It also just fits with the classic retro top-down 2D feel, which many are comfortable/familiar with. I do have designs for the map and environment that would look good in the hyperrealism style. I just don't think that all that fine detail is worth the extensive work it could end up being as the game scales over time. I guess I could always implement a clever code solution to make a little work go a long ways...but eh. 

Anyways, there might be a changelog before the weekend, there probably won't be. I'm also taking my files on my laptop, and I might touch them. I might not. The goal yesterday was to do nothing but art and I did no art at all. The goal today was to get Andrew on the screen and I didn't touch his logic once. I don't really know what I'm doing or how to proceed, but I sure am happy to be here. :)

Get DataDash

Buy Now$1.00 USD or more

Leave a comment

Log in with itch.io to leave a comment.