As game programmers often do, I was working on DEV-WICK, my Game and Play Design project in the early hours of the morning. In an attempt to get the player-coded block stack to process, I wrote a function that called itself, with logic which I presumed would prevent an infinite loop. I quickly learned that that’s too late to intervene—once that function starts calling itself and hangs, there’s no going back. Most programmers would kill the relevant process or alt+F4 at this point, but that wasn’t an option for me—I had forgot to save my in-Unity work from the past hour or so 😬.
After a bit of Googling I learned that there is hope: you can connect Visual Studio, my programming IDE of choice, to Unity, force all running code to break, go into the CPU thread that’s hung, then the call stack, find the relevant script that the program is hung on, then modify a variable to result in the program throwing an exception (in my case, setting the location variable of a nav agent SetDestination(location) function to null).Â
Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
✓ Live Streaming✓ Interactive Chat✓ Private Shows✓ HD Quality✓ Free Actions
Free to watch • No registration required • HD streaming
I quite enjoy programming, so as one of my genres that I wanted to mix in my Game and Play Design project was the programming video game genre. In this genre you can find games like Human Resource Machine, Zachtronics’ games, and Hacknet (more of a hacking game, to be fair).Â
Educational games are often seen to be boring or sub-par when compared to games that are primarily focused on other areas. I want to challenge this idea in DEV-WICK. Arguably, programming games are an evolution of the puzzle game genre, which are technically educational (you’re required to learn new mechanics), although typically have no real-world application, other than say exercising your brain. These games present the player with a problem and the means to solve it—the rest is up to them.Â
The video I linked above, by the Youtuber Chadunda, discusses how games teach programming, in particular analyzing the game Human Resource Machine, where players create sorting algorithms and other programs. The game teaches basic programming concepts, in addition to teaching the lesson that algorithms have quality. For instance, in the game TIS-100 (Zachtronics, 2015), players are presented with a graph showing how their algorithm compares with the rest of the players that attempted the very same level. Now things get competitive, and for some, they’re hooked after that, trying to squeeze every last drop of efficiency out of their work in order to top the leaderboards.
In my game DEV-WICK, I want players to program a killer robot, but I want the programming to not be as daunting as it is in TIS-100, for example, which mirrors assembly language coding (see below).
For the moment, I’ve created a basic programming language in Unity inspired by Scratch (for simplicity and UX’s sake).
I did some playtesting prior to making what can be seen in the image above in order to find out what programming blocks would be entertaining and useful in DEV-WICK. I playtested with both programmers and non-programmers to get a feel for what would be most accessible while still providing a decent degree of control in the game. I feel like what I’ve got at the moment should be good, lots of potential for visual gags and cinematic moments (convenient, since the action film genre is another genre I intend to mix into DEV-WICK).
I was inspired by the aesthetic of the game Party Hard 2, so I went about figuring out how to get sprites to cast shadows in Unity. Pretty simple, you just put a custom material on the sprite with a lit shader instead of a sprite shader. This paves the way for me to create the visually impressive game that I’m hoping to create. It’s really easy to make pixel art look great with this method because I can cast dynamic lights and VFX on top of the sprites themselves.