I'm still alive, and having learned only that little that pushes you along time. I'm creating a new chapter for myself, and while the past was full of ambition, today needs to be about attainment.Joined on December 19, 2006, 3:38 PM Visited on January 14, 2016, 5:22 PM
I made zPlat because nobody else was really making a platformer engine of its kind. The key difference was not in what it offered in terms of functionality, but what it offered in terms of intent. If you go to zPlat's submission page, you'll see that the one screenshot I provided was not of the engine in play, but instead, it's a screenshot of the code and the *paragraphs* of commentary I made for individual lines explaining how the functions and variables interact and what the design decisions achieve.
Despite it having a fraction of the functionality that bigger engines had, despite it even being somewhat poor coding practice, it received praise and an impressive score. The reason for this is that was made to *teach* people how to code a platformer game.
When I was in High School, I submitted a tech demo of a game called Polish. It was meant to be a full game with graphics and lives and health and all of the other holdovers of arcade platformers that are going out of style, these days. The problem was that I didn't know how to code. Some controls overrode the other, the character got stuck in places, the controls were clumsy and the collisions were sketchy even under regular circumstances. I lacked a fundamental understanding of computers and I didn't know good techniques for coding.
One issue that I find with engines submitted as open source examples is that they provide code, some of it good enough to read, but it's hard to use them as learning tools, and there aren't very many project files that teach you concepts like finite state machines or how to properly calculate your controls. zPlat 8 was rewritten seven times because I kept finding amazing breakthroughs while studying all of the engines I encountered, and I had many ideas to expand into to reach beyond that.
That's the thing, though, is that there's a huge price in making your projects and engines more complex - the code becomes less simple, and simplicity doesn't teach. The major setback that I endured was navigating lines and lines of code from different authors and trying to factor in my own ideas formed from observing these engines simultaneously.
That strain also fails to count the ignorance that I had as an inexperienced developer. I created "action recognition" in my platformer engine, which was just a variable that tracked my character's status, which was sort of how a finite state engine works, except it wasn't structurally set up correctly, so the code is still really complicated. zPlat is anything but perfect, it in fact fails to perform a lot of good coding practice even for its own time.
zPlat attempted to combat its own growing complexity by only offering the most basic possible version of itself as a download, and then anything you could add on to it would be found in a forum thread where you could copy blocks of code that add new features while explaining how they work. zPlat was intended to be distributed as simply as possible and its complexity to be as modular as possible.
As an engine, however, it betrays its own purpose a bit (albeit less so than other engines) because it still is a compilation of techniques into one large project file. This makes it harder to digest than a collection of project files that each explain one concept at a time. I feel like the latter could be more advantageous.
I still feel like zPlat deserves to exist, however. It was intended to see contributions from the community, but sadly its support didn't get off the ground, and lucky it didn't, because the code is pretty bad in a lot of spots, even if it means well. I do think we need an engine like it. There are very experienced programmers out here who can code one particular thing at a time, make the most minimalist possible creations that explain programmer concepts and tools to educate other game developers. Just *how* do you make a binary tree in Game Maker? Some of us have years of knowledge and the capability to put into words just how the pieces of a puzzle fit together.
Open source code can be made to teach, is my philosophy, in small steps, in small solutions. In retrospect, despite its major shortcomings, zPlat as a personal project was very beneficial for my game development skills, and it gave me an ambition to learn how to communicate effectively, as well as provide a platform that I could share with other people. If we can work together on an engine that is designed to teach, we will be provide the community at whole a huge potential for learning.
So far, the welcome has been really warm, so thank you, guys. When I came on the IRC as cfry people kept asking me "Hey, who are you on 64Digits?" "Wow, you're before my time." "Welcome back." It feels good to be welcomed and appreciated, so thank you, 64Digits community, you gave me a very warm and personal experience and I won't forget it.
I must've joined in 2008, because the very first post I made here seems to not understand what the point of blogging is? I'm kinda laughing a bit. I made a grand total of five posts, two of them being about "things happening," and dropped off the face of the earth for six years. I had five topics to blog about and then poof.
So... the computer engineer thing. It didn't happen. I maintained a near 3.8 GPA in university before the scholarship was yanked from me, and part of it was my fault for not doing the "paperwork," and part of it was my parents offering to do it for me while I take exams and then never doing it. I slaved away in a Texan and then Pennsylvanian Wal-mart for years, miserably, as in too depressed to expand my skill set or make any progress for myself whatsoever, and then tried and failed to work as an IT desktop technician without even having a certification.
The letdown that you need to expect, should you ever be coping with depression to the point of considering that option that we don't talk about, is that once you reach the top, you are living in a world that is the aftermath of that fight. It isn't sunshine when you finally fight it off. Sometimes, it leaves you as an unemployed, unskilled individual. There's fortunately the other side to the coin, that you are also finally free of the vice that held you back.
The big tools that pulled me through depression are ones I can pass to other people who may encounter this post, and I'll be sure to add this to my tumblr, as well.
1. "You Only Have to Win Once"
For me, job hunting even while having a miserable job is discouraging. I am against a scarier prospect, currently. I have no job, right now, and two industries probably think I'm not worth hiring for either being a deserter of the retail environment or incompetent for the IT industry. Thankfully logic doesn't apply. You just keep pulling the lever to give you survival money (tm) and you only have to win once. Today I walked into the pizza place for a job. I have no idea, heck I sincerely doubt they will hire me, but I only have to get the job to feel more secure, and thus be more able to keep winning against depression and approach a better more livable situation.
2. If changing how you feel is too hard, try changing how you think.
We're all logical people to some degree (some more than others). And this doesn't always work, since emotion can be detached from logic, but if you can will yourself to it, you can neutralize yourself with an alternative perspective. The advice is saying look on the bright side, but this isn't about making you happy, it's about finding a way to pull yourself away from the black vortex of negative dark and self-harming thoughts and rationalize away some of the self-abuse and defeatism. Like yeah, defeatism can feel like a "realist" way of thinking, but if you don't apply the off button at a very soon point, you can lose control. I've been there.
3. Loading... Please Wait.
Kinda campy since this is a video game development site, but the main thing you gotta do with depression, whether it's clinical or, in my case, severely situational, is that it's the moments that your mind is vulnerable and needs the highest care. So much of the worst possible things can happen if you act while in this state. If you want to set up a blog or express yourself through art, that's one thing, but don't do what you think suffices as a punishment or an end or an escape. Once you look at that, it's the brick wall where you start giving yourself ultimatums while ignoring other information that would give you a third option. Even the worst of situations has another route. It's life, where anyone can do anything, even find a way out of this that preserves you. If you are at this moment, don't try to apply #2 or #1, don't try to go forward with a decision, don't decide. Don't do anything except what would be considered self-care. Stop time and let the feelings be awful and run their course. Make snacks if you need them. Brush your teeth if you're pointing it out in your head. Just don't make any sudden moves. It's not time to make decisions, right now. It's time to take care of you. ... They stop after a while, and you'll be able to find a better way.
There's a lot that I can write about to people, but if there was one thing I want to say, it's that taking care of yourself, giving yourself enough time, and thinking in more than one way when you can will help you. There are more tools and I can't name them all, only the ones that worked for me, as every case is unique. Be in good company and good friends, and believe in yourself, once in a while. It's going to be okay, with time and slow steps.
The aftermath I am facing is not easy but I can accept that I'm beginning again. It all feels a lot different. I have new friends in a new city and it's all just really different. I overcame something really huge after feeling like I lost my future. But I can build another one. I could start again and try to be a computer engineer, I could start web design, I could start SEO, I could get licensed and become tech support... I could even become what I wanted to be before all of this -- a game developer. That'd be cool. Maybe that's the one, huh?
C'mon, everyone knows I'm the one who started the annual blog trend. I've been doing that here and at DeviantArt for the past 4 years! That's one year before you! </sarcasm>
If you use Linux, this font might look familiar. I guess that's a pretty big change from last year; I've switched to Linux. I got into Ubuntu, but honestly, I'm desiring some Gloria Mint delectables, right now.
I'm hearing a lot about ENIGMA, but I really would like to see some sort of tutorial about setting it up, because I'm not sure how it's supposed to work. I would love to see zPlat working in that so that the Linux community can start making some good platformer games with it.
Speaking of which, zPlat 7 is outdated. 8's being uploaded right now. Be sure to check it out. It was some serious work fixing those bugs.
I took some C# under the skin with XNA, and it was for a friend, but he spent three months not talking to me. It turned out that he could have me develop anything. ANY SOONER MOMENT WOULD HAVE BEEN GREAT, BRO.
Got a guitar that plugs into the laptop. Sounds like a ton of stuff. Later I'll make a program that makes more good sounds of it. <3
No gaming projects, anymore. I'm becoming a Computer Engineer.