Jonathan Holowka
Unity Developer
Hi there, and welcome to my personal portfolio.
My name is Jonathan Holowka and I am a Unity Developer. Well, that’s put putting it too simply. My passion has always been video-games. I’ve been fascinated by their mechanics, how they operate under the hood, and everything that makes them tick.
I’m not just a Unity Developer – I’m a leader, a teacher, and a mentor.
I launched my YouTube channel where I teach others how to code and make games.
Since April 2023 I have been working with Code Ninjas Milton every Friday where I work with kids (roughly ages 7 – 15), helping them learn Unity from the ground up. I also teach them version control with Sourcetree and Bitbucket. I also help the other instructors (called Senseis) learn about Unity and version control and occasionally run workshops where I live-code a game and troubleshoot issues in real-time.
Projects through Raccoopack Media (my previous employer)
- MyDojo – An isometric 2D game with a decoration system, adventure mode, and multi-app communication using Firebase Firestore Database
- Big Brain Games – A 2D bubble shooter integrated into a Swift app using Unity as a Library (UAAL)
- A 2D “Jackbox” style game with mock-multiplayer via using Firebase Realtime Database
- A Solitaire game integrated into a Swift app using Unity as a Library (UAAL)
- A 3D science exhibit software application
Projects through Wild Cockatiel Games (my own startup)
- Zombie Barrel Blast – a 2D level-based and infinite scroller game (this is under development)
- Feeding Mr. Slithers – a 2D mobile game using basic vector math for a core gameplay loop
- Portal Galaxy – a 2D style collect-a-thon game with levels and ranked gameplay modes
- Toby Can Snowboard – a 2D snowboarding game playable in a browser on itch.io
- Ultimate Ball Sort – itch.io game that received 3,000 plays after its first 48 hours and made the first page of itch.io
- YouTube: Wild Cockatiel Games – my YouTube channel where I post Unity coding tutorials
- YouTube: Indie Game Discovery – my YouTube channel where I interview indie game developers
- Jungle Jumpers – a 2D infinite jumper game (no longer available)
- Portal Ball – A precurser to Portal Galaxy, (no longer available)
Finally, I teach kids at Code Ninjas how to make Unity games. Here are some of the games I have mentored them to build from scratch:
- Fightzilla (a 3D fighting game – link coming soon)
- Speed (a 3D racing game – link coming soon)
I have also helped mentor the kids here through multiple manual-based Unity projects, coaching them in techniques such as asset and scene management, inheritance, scriptable objects, timers, building terrains, AI/nav mesh usage, sprite sorting, version control via Sourcetree, and much more.
Game Development: Zombie Barrel Blast
About: Zombie Barrel Blast is an arcade-style 2D platformer, minus the platforms, with levels and infinite gameplay modes. This game incorporates 2D physics, animations, levels and stages, a night/day cycle, weather effects and an item system.
- Managed a small team, utilizing agile methodologies, to deliver high-quality, engaging gameplay features for the game’s development
- Created 2D physics-based gameplay, barrel launching, enemies with various capabilities and interactions, items, camera transitions and more
- Developed diverse editor scripts and tools to allow our gameplay designer to focus on creating engaging and fun levels, without getting bogged down over navigating the Unity editor
- Held weekly standup meetings and sprint planning sessions to ensure we are completing tasks on a timely and ongoing basis
- Integrated immersive features such as day cycles, weather systems, URP, shaders, animations, particle systems, and post-processing effects
- Handled all devops and managerial tasks, including localization integration, controller support, managing the Steam page, attending marketing calls, compiling streamer lists and more.
Game Development: Ultimate Ball Sort
About: Ultimate Ball Sort is a simple 3D puzzle game that I challenged myself to make in under 24 hours. The idea was to develop and launch a simple game, without any extra bells or whistles, that didn’t suffer from scope-creep. I launched the game on itch.io and posted it to the r/survivor subreddit where it accumulated over 300 votes and received over 3000 browser places on itch.io.
- Utilized raycasting techniques to simulate ball movement and detect win conditions
- Quickly prototyped and developed the game logic
- Used PlayerPrefs for a basic WebGL save system
- Modeled the board in Blender based off of the board as shown on the Survivor reality show
Game Development: Portal Galaxy
About: Portal Galaxy is a game about creating portals in outer space, launching balls out of them and collecting as much treasure as possible (while blowing up a few asteroids along the way). Easy to learn but difficult to master, with 90 levels and 45 unique upgrades there are plenty of challenges to overcome. Watch the Trailer.
- Programmed gameplay features such as portal spawning, ball launching, gem collection, items, and physics
- Created 90 levels with unique objectives that can easily be modified, as well as timed and score attack modes that integrate Google Play leaderboards
- Implemented multiple F2P features such as daily login bonuses, Unity Ads integration and an in-game store with microtransactions
- Made excellent use of object pooling to cycle hundreds of game objects that appear in levels, drastically improving performance
- Created a diverse upgrade system with 45 unique upgrades for balls, portals, etc.
- Developed a level-up system and a skill tree with 15 different skill upgrade options
- Optimized the user-interface to run efficiently on multiple phone size
Game Development: Feeding Mr. Slithers
About: Feeding Mr. Slithers is a hyper-casual mobile game, which utilizes basic vector math and is designed to have a simple gameplay loop. I started making this game in mid-April, 2022 and the UI design is meant to be interchangeable between this and future games, allowing for more rapid future development.
How it Works: The player is controlled via an on-screen joystick and must collect rodents that falls from the top of the screen, while avoiding poison. Whatever is collected must be thrown. The goal is to keep Mr. Slithers well nourished. If he goes too long without being fed, or is given poison he will lose a heart. When he loses all of his hearts, the game ends.
- Created a simple gameplay loop utilizing joystick controls and vector math for throwing projectiles
- Utilized object pooling on food and poison to optimize performance.
- Implemented multiple snake skins that can be purchased with in-game currency
- Added 2D shaders to create a realistic hit effect, regardless of the set skin.
- Added bone animations, animator layers and states to create realistic snake and player movements
- Integrated Unity Ads for both interstitial and rewarded video ads
The game is available for download on Google Play here.
Game Development: Toby Can Snowboard
About: Toby Can Snowboard! is a simple little 2D snowboarding game where you race a snowboarder down a hill, collecting coins and flipping to earn a high score. This is a prototype that is available to play in a browser window on itch.io.
- Programmed all gameplay features and optimized 2D physics by using effectors
- Implemented two alternate save systems, which run based on the detected platform
- Created all of the game’s artwork and animations in Adobe Photoshop
- Utilized Unity’s particle systems to create effects such as snowfall, clouds, snow trails, fireworks and blood
- Implemented Cinemachine and 2D lighting to create realistic movements and a diverse atmosphere
- Designed all levels, menus and UI layouts
YouTube Channel: Wild Cockatiel Games
I started a YouTube channel called Wild Cockatiel Games shortly after I began learning C# and Unity. I did this for two reasons.
- To solidify concepts – I figured that I could learn better if I had to explain concepts as I learned them myself.
- To help other beginners learn how to code.
My theory (as a beginner back in 2017) was that more experienced developers may overlook teaching ideas that are confusing to beginners. At a certain point for any subject you are leaning, basic concepts and ideas become common sense.
For an experienced developer, coding principles such the difference between strings, integers and floats variables is common knowledge. Knowing how to send variables between methods and classes is something everyone understands.
But for beginners, these very basic procedures can often seem daunting. This was the goal of my YouTube channel – explain these simple points in a way that was easy to understand for beginners.
Currently, I am working on a playlist series that teaches beginners how to make a 2D platformer game in Unity. The series covers topics such as moving, locking the character the screen, jumping, double-jumping, wall-jumping, creating tilemaps, raycasting, and more.
Testimonials
Below, are a selection of comments that have been publicly posted by various individuals on my videos.
THANK YOU! Total beginner here and I was getting very frustrated. It felt like everything I tried to do ran into the issue of a script or scene not being able to access the information that it needed. This is going to make things so much easier.
Thanks for the series u r our new Brackeys. U got a subscriber..
That was literally awesome and so easy to understand without any extra this and that. Really thanks alot!
Thank you for this video…very well explained. I was looking for “lists” and ended here instead…glad I did, because I think “dicts” are what I need to be using 🙂 Instead of trying to remember which index # to use for my values, I just use a description that is easy to remember. Again, thank you.
my man u a HERO i solved 51 diferent errors with one click turned out i had aded a extra j at the first line where it says using System.Collections; thx
incredible video, literally nobody explained it this well.
used this tutorial to make a basic options screen for my game, thank you! it finally works.
These videos make me think “why do we need schools for, nowadays ?”. Jesus the world has changed. To the BETTER !!!
didnt realise it was that simple! Thanks for this
Bro! Thanks I think my codes after this video will work better
Just what I needed. Thank you so much!
yes this makes it easier for me I still have the problems that are a ‘float’ problem but thanks love vid and idea
Great tutorial easy to understand!
Thank you, you solved my problems completely. Thank you. Keep going without stopping
thanks so much! I used this for health on my FPS
i like this so much cuz finaly i understood what static is doing . ty man <3
Thanks for this, all of the other tutorials are the same copy paste setting of quality, resolution etc and don’t handle making variables available for game objects, this is really useful.
Really good description of Dictionaries. Made it very clear 🙂
This tutorial was amazing! I’ve been trying to make a game in unity for almost a month now and no other tutorial was as helpful as you. Thank you so much!
Huge thanks! I almost gave up on a project cos I couldn’t figure it out… turns out it was super simple, and I had done it before without even knowing…
Below are some of my most popular YouTube videos, with the approximate number of views
YouTube Channel: Indie Game Discovery
This is a secondary YouTube channel I started with the intention of interviewing indie game developers. The idea behind it is primarily networking, and in addition, it helps other game developers and myself with marketing their games.
It also provides me with another platform to improve my video editing skills and techniques.
Now and the Future
Thank you for visiting and reviewing my portfolio!
What am I working on now?
Currently, I am working on finishing Zombie Barrel Blast with my team members. After that, I would like to further my knowledge either by focusing on multiplayer or diving into Unreal Engine. I am also interested in project management.
jholowka@gmail.com
Milton, ON