View Single Post
Old 08-06-2009 DukeOFprunes wrote:   #11
Default Re: 22: Starcraft as a brawler

I'm totally using this thread as a dev diary after accidentally deleting progress and to help me coordinate my next move. Will keep editing this post so there won't be much thread bumping after in case anyone is interested.

1 June 09
Afternoon: The comp is about mixing two genres. Chewed on it for a bit and saw myself playing a RTS and old school brawler hybrid. Units can be based on Starcraft. Sprite-wise, I'd need to redraw everything since Starcraft's sprites are too top-downy, will worry about that later and use fugly placeholders most of the way or until I can't avoid them anymore (i.e. size-dependant calculations etc)
Got a dev environment installed and sorted after gym & some healthy microwaveable garbage, then spent a little time re-acquainting myself to BlitzMax basic.


2 June 09
Afternoon: poked a few things at work on the sly. I'll need to learn to do some things from scratch, like using a very large scrolling map and focusing the "camera" on different things. New challenge for the day, shouldn't be too hard though. Steve is taking us out tonight so I might not get much done today at all.

Evening: success! Scrolly map is working. I have an x-offset and a y-offset I subtract from every drawable object's coordinates but I still use their absolute coords for calculating everything else. After looking around online it seems that's the easiest way to do this kind of thing. I'm noob. If only I could get that trajectory math problem sorted I'd have a really good way of making the siege tanks shoot people, but that may have to wait until later.


3 June 09


4 June 09


5 June 09


6 June 09
Morning: work pressure's been high so not done much in the meantime. I have this weekend and plan on making good use of it.
So far today I've set a fundamental system in place to switch between friendlies. You hold the spacebar which creates a selector, move this near a friendly unit and release the spacebar to control it. Annoyingly, holding down the spacebar means keys can lock out, in my case I can't move the selector diagonally up-left. I've decided to not have mouse support at all to keep in spirit with the brawler-ness I want to achieve. The keyboard interface for building things should nontheless be real intuitive.
I mistakenly deleted the source for the scrolly map, will need to re-do. Started redoing it betterer, more object-orientatedishlike. Constants are now in a class so I can be lazy and use the IDE to look them up for me with "constants." and code completion picks up the rest.
I have a function in the unit class's superclass that calculates the offsets based on if you're the player or not which I thought it's lazy but I guess in awesome-programming-land they call this "elegant" not that I want to pay very much attention to that sort of thing with less than a month to go. That is a long sentence.

Evening: I got stuck redoing the scrolling thing I had working perfectly earlier and it is now kicking my ass. Brain's low on battery.


7 June 09
Finally fixed my head around the offset thing again a few annoying bugs and feeling like a moron. Redid it under a small tester application, now busy integrating it into the main program in a generic way which is again proving tricky. Had a lovely sandwich.

Evening: Finally managed to integrate scrolling in a reasonable enough way. Spent many hours cleaning up, OOPing things out and making my future work simpler and there can be bigger progress jumps as I go once the framework's done. Also had to perform many domestic duties. Living with two women is a lot of work but I did get pancakes. I think next comes the heart of all brawler mechanics: fighting. I'll start with punching. Going to need more sprites.

8 June 09
Evening: Spent the evening drawing fugly sprites for the zealot. I have it standing idle, throwing a jab, a slash and a double slash. These'll be its basic combo attacks. I've also started adding more constants I'll use as states, the driving engine behind the rudimentary AI I used in Comp 19's GraveRob (which has a sequel of sorts planned) but also very useful for tons of other stuff. Tomorrow I can get into timing its attacks between punches and moving into combo punches if an enemy is struck. If there's time, I should add a list/array used to draw things onscreen after sorting them by their "footprint", also a useful trick from GraveRob to fake a Double Dragon perspective by making objects lower down the screen draw on top of objects higher up.

9 June 09
Evening: Slowly picking up momentum. Spam the Z key and your little zealot will jab and combo into a slash followed by a double slash - fwip pow BAM! No collisions yet so it's all just for show.
List sorting is in. Objects "closer" to the screen now appear on top of objects "further into" the screen.
Switching between your units works a treat, just need to tweak the speed at which the selector moves around.
Work for tomorrow should be to add some collision checking. Once that's in place I can do a little tuning on the melee attack system and once that's reasonable I'll work on the second fundamental unit type: shooty. Dragoon go peew peeew!
Longer-term plans are to make the third & fourth fundemental unit types (siege & harvest), unit building interface and finally AI.

10 June 09
Got done what I needed today. Melee timing is in, and when I punch someone they know about it. I can start doing shooty Dragoons next. I'm on meds that are knocking me the hell out. Early bedtime.


11 June 09
Evening: I now have a fuglily drawn dragoon that shoots fuglily drawn antimatter bolts. Peeew peeeeeew and collisions are in. Now that there's something to play with, before adding any other fun units, I should get to work making an actual functional game from it. I'll prioritise some game mechanics next. Two HQs, the building interface, resources and the ever ominously looming good and evil AIs.
I knew before the comp that the scope of this extends beyond the comp and I'm totally going to keep working on it. Quite enjoying tinkering with it now and the nerd quarter of my brains keeps daydreaming about playing this one day and actually seeing what it could be like especially if I can rope an artist in. Exciting stuff, need to go lie down now.

12 June 09
Started building the interface. Busy weekend life-outside-computer-wise, but chances are I might have something almost partially prototypable by the end of it. Keywords: partially, almost.

13 June 09
Busy day but I managed to get a system up so I can now build zealots from the HQ. I'll soon add a sprinkle of AI so they rally to your current unit after getting ejected from base but it'd be most sensible to get to work on the resource system first.
Oh, the framework for special moves is in too. Units can now run (double-tap left or right) as well as walk and for fun there's floaty text above their heads proudly proclaiming "Hadouken" when you down + forward + attack, purely for test purposes.
Don't have a walking animation yet so they're kinda ice-skating about the place, it looks totally retardumalated.

14 June 09
Supported the girls I know who did Race For Life & splitscreened Resident Evil 5 with friends. Progress made to my comp entry includes (but is not limited to): nada.

15 June 09
Evening: Only had 1.2hrs, but I did start getting some of the interface in. There's a message handler and a HUD bar at the top to show what the base is doing. Presently, it either shows you buildable units or it says BUILDING... in giant letters.

16 June 09
Evening: Made the probe, crystal deposits and tiny crystal pickups. A probe's attack is a special harvest attack which does nothing unless it hits a crystal deposit. Doing so produces a small crystal pickup.
Tomorrow I'll make it so any unit can grab a crystal pickup to credit your resource count and that will get the resource system rolling.

17 June 09
You can now grab those little crystal shards that probes knock out of crystal deposits by walking over them. Once they're on the ground anyone can grab em so be greedy.
Made the tiniest scratch at the beginnings of the AI.

18 June 09
Had people over. No geeking out today ;_;

19 June 09
Midnight: Gave the probe brains. It seeks out the nearest crystal deposit and dutifully harvests the crap out of it. Need to make it have a breather and actually collect some of the shards it cuts loose every so often. I might consider making it non-playable, it's not much fun sitting there cutting away at crystals.

20 June 09
Midnight: The player has the ability to give general orders. Units will be able to rally to the player's position, fallback to base or advance towards the enemy base. These three orders will apply to all allied units in play bar the unit currently controlled. Rallying and falling back works, just need to add the meat for advancing.
AI is slowly coming together but there's still mountainous work to do.

21 June 09
Unit cap is in. Drew two extra zealot "animations", one for getting stunned after being hit/shot and one for being dead. Everything now has health and everything does damage to each other but there is friendly fire - it's kinda fun running around beating my own men to death. Must do the same anims for the dragoon and probe too.

22 June 09
These protoss are so dedicated that if you give the order to advance, fallback or back you up they follow your orders EVEN IF THEY ARE DEAD. Fking awesome! Changed it so dead people don't listen to you anymore. Same thing with probes, they now keep harvesting regardless of standing orders. The probe now animates to better indicate that he's busy and doesn't want to be disturbed.
Units following standing orders no longer move at snail's pace. They run first and only slow to a walk if they get near enough to their destination.

23 & 24 June 09
Zealots fight pretty well now. They close the distance quickly and their third attack combo knocks you to the ground. There's a tiny sliver of breathing space after you get up before they beat you up some more. Pretty happy with how this is going, need to get the dragoons sorted next.

25 - 29 June 09
Loads of cleaning up classes and there's loads more to do. Plenty of AI changes and it's possible to win/lose now so an actual bare-bones functional game now exists, I just need to make the AI build units and give orders, shouldn't be too hard now that each unit pretty much does its own thing for the most part.
Good guys have red underpants and bad guys have red. Added some animations to more clearly indicate what's happening. Dragoon animations may be unclear, just take careful note of its facial expressions (yes) to discover when it's out or stunned. Weeded out loads of null pointer errors that popped up mostly because I was in too big a rush to code this thing properly.
Tuned AI behaviour for all units so they suck less, it's still too easy for a player to kill everything but that's future work.
Might not have time to make the AI harvest creds properly so I might consider having it cheat... or perhaps making dropable creds a -bonus- on top of an income trickle as long as a probe is harvesting. Bloody good idea, I shall stick it in there immediately (after work & before going out tonight bleh).

Last edited by DukeOFprunes; 30-06-2009 at 12:17 PM.
DukeOFprunes
has fabulous hair.
even as Poe.
 
DukeOFprunes will become famous soon enough
__________________
[Steam]Steam: DukeOFprunes [PSN]
PSN ID: DukeOFprunes_
[Xbox Live]
Send an XBL Friend Request


Reply With Quote
DukeOFprunes is offline