[color=rgb(40,40,40)]End of Day 2 (most likely start of Day 3 for me).[/color] [color=rgb(40,40,40)]As I'm about to get started working on the game for Day 3, I look back at Day 2. This journal entry is as much a means to communicate with fellow developers as it is an attempt at organizing my thoughts and making sense out of what I'm doing.[/color]
[color=rgb(40,40,40)]First and foremost, Day 1 started very quickly and ended the same, and in trying to do so much in so little time, I fotgot to mention the tools I was considering on using (it seems to have grown into a habit ever since WoA II, so heregoes!)[/color] [color=rgb(40,40,40)][font=arial]- Visual Studio 2015.[/font][/color] - Unity 5.3.3f1 - Paint.net 4.0.10 [color=rgb(40,40,40)][font=arial]- SFXR[/font][/color] - Audacity (I may yet record Drums, Bass and Guitars for a brief impromptu?) - Keyboard and Gamepad support...
[color=rgb(40,40,40)]Second, I've actually kept from discussing the actual game concept on Day 1 as I figured it is the day where most people still tinker around with their idea, and in an effort to keep each entry as unique as possible, I didn't want to pollute the brain waves too much. That being said, now's the time to do so :[/color]
[color=rgb(40,40,40)]I'm shooting for some kind of a survival crossover between a shoot'em up and a tower defense. The player controls Prometheus, a Titan-turned-statue which is awakened by the Zeus to protect the world from Hades' latest scheme. To do so, he must stop the Vrykolakas invasion (the Greek concept of undeads) from reaching human settlements, and it just so happens that his statue and broken temple stand directly in the horde's path.[/color]
[color=rgb(40,40,40)]Prometheus awakens just in time to fend off the attack, but there is much to do. Prometheus is not a fighter : though impressive in both stature and strength, he couldn't possibly defeat all of them on his own, and would surely fall to the repeated onslaught of zombies. More importantly perhaps, Prometheus is a builder and tinkerer : He brought fire to mankind, and favors creation over destruction. [/color]
[color=rgb(40,40,40)]As a result, Prometheus claims what is readily available (clay, stone, and most importantly broken bones) to rebuild the Temple in such a way that it can ward off the Undeads from entering the Peloponese.[/color] [color=rgb(40,40,40)]In his efforts to protect Greece, he will craft the Temple and draw upon the help of workers, magic and archers to keep the undeads at bay, but he's in for a nasty surprise which may only be met with fire...[/color]
[color=rgb(40,40,40)]Things I've said I'd do[/color]
[indent=1][color=rgb(40,40,40)]Evolution mechanic (tsk tsk tsk!) First Pass[/color]
[indent=1][color=rgb(40,40,40)]I actually delivered on this, and the system appears to be fully functional (with some test content). I have yet to add a number of variations to make this worth using, but overall, it works, and is already the cause of some smirks on my part.[/color]
[indent=1][color=rgb(40,40,40)]'Combat' mechanic (oh oh oh!) First Pass[/color] [color=rgb(40,40,40)]I actually delivered on this, whatever first pass meant though...[/color]
[indent=1][color=rgb(40,40,40)]The player is oddly not very involved in the combat currently, but that's to be expected given the game tries to dissuade you from playing an active part in combat.[/color]
[indent=1][color=rgb(40,40,40)]Placeholder UI / Scene Flow (better now than 24h from completion) [/color] [indent=1][color=rgb(40,40,40)]Which I didn't do of course... I can smell the sword of Damocles hanging above my head as I type. Unity's UI is powerful, but UI remains an evil beast that cannot be tamed. [/color]
[indent=1][color=rgb(40,40,40)]Basic sounds (just to make sure I have something in case I can't contribute more)[/color] [color=rgb(40,40,40)]Another field where I did not deliver. I need to look into this asap, especially now that I know almost exactly all of the assets I'll need to get started.[/color] [indent=1][color=rgb(40,40,40)]The lack of a music track is starting to be particularly concerning given the effort involved. [/color]
[indent=1][color=rgb(40,40,40)]Possibly make an asset request[/color] [indent=1][color=rgb(40,40,40)]I did more art on my own. Took me a bit, but I'm relatively satisfied with how the blocks turned out. It helped me confirm the evolution system worked flawlessly[/color]
Things I actually did
[indent=1]Depth Sorter Script [indent=1]One might be inclined to believe that at this point every feature counts and there's no time for these things, and they'd be right. Yet, for some strange compelling reason, while noticing how the boulders and character interacted, I was annoyed to the point of attaching a custom script to the character, enemies and GPIs so that they know when to be displayed on top or under. It is a limitation of strict 2D that I'm used to... (and no, Z depth sorting wouldn't help with this). After satisfying this urge, I went ahead and actually worked...
[indent=1]Implemented Enemy Types / Refactored Core Enemy [indent=1]Up to now, I was coding blind like a madman. When I realized how monsters would work, I started keeping the same GameObject for each of the monsters (though separate prefabs) and simply switch the weapons they have in-hands to determine their attack pattern (can still modify their actual life, etc. through public fields in the parent object).
[indent=1]Spawner Logic [indent=1]I created an " arbalest " which is essentially a bullet spawner which knows whether it is friendly (fires towards the UP direction, and deals damage only to enemies) or not (fires towards the DOWN direction, and deals damage to the player and ruins). [indent=1]The same script was used for enemy weapons and ruin upgrades (evolution). I almost cried in glee! How often do you ACTUALLY get to reuse a script on two radically different concepts and have it work flawlessly on the first try?
[indent=1]Strong of this experience, I went ahead and created the spawner for the monsters and originally over-engineered. I ultimately simplified it as I wasn't exactly sure about the final level of control I'd need and decided to K.I.S.S. because YAGNI.
What I think Day 3 will be about
[indent=1]Catching up on sleep [indent=1]I went sleep deprived at the end of Day 2 and need to earn some of this back if I'm to play the long game. Originally, Day 3 was to be my most productive day, but I've been having trouble focusing all day and I can't imagine it any differently by the time I get to sit in front of my dev setup. I definitely need to be very tactical about what I undertake...
[indent=1]The Intro [indent=1]While doing other things in Day 2, I also implemented very quickly some fade-in/fade-out mechanic for the character, anticipating the intro I was going for. Given I also wanted to shoot for some UI as early as possible, I think it is time to polish the intro and sequence this a bit. I'm thinking : quick flow with actual contextual text boxes to get started. All of the text will likely be placeholder at this point (particularly if I'm shooting for a written tutorial) but I need to put this system in place (chained dialogue, etc.) as this is still an area of the game I'm quite unsure about. If I can nail a first pass on the full intro sequence, this will be one fewer high-risk feature for the rest of the development, and I can focus on making the game more fun.
[indent=1]Joystick / Gamepad Controls [indent=1]Unity makes it somewhat easy, but I think it best to implement gamepad control as early as possible if it is to be a valid game input (i twill insure I get to test both with and without as I keep on devving). It sounds like a painless item to integrate today.
[indent=1]Workers [indent=1]One of the Ruin evolutions I'd like is a worker which can slowly increase the resources Prometheus acquires and becomes some kind of risk-reward upgrade to add. It is a simple script to implement, so I think it might make it in. Would likely require placeholder art...
[indent=1]UI - Resources [indent=1]Currently missing is an overlay that indicates just how many resources I have. I see it in the debug console, but the player won't have that luxury, so the earlier I have it up there, the better. Also goes in-line with nailing down UI for this game. Possibly implement Hero Life?
[indent=1]QUIT Button [indent=1]I got the axe for not providing this before, and apparently people don't like the Alt-F4 option, so I'll be sure to include this one this time around!
[indent=1]If I get all of these done, I'll likely be further worsening my sleep deprivation, so I see no reason to pursue this list.
[indent=1]Now wishing all devs the best of luck (and myself a good night's sleep)!