Intel sponsors gamedev.net search:   
SteelGolem's JournalBy SteelGolem      
SG's FFA Playthroughs
44 episodes, 1 tips&tricks
last updated 2007-11-05
Page:   1 2 »»

Thursday, December 28, 2006
[edit: nope, can't use youtube embeds. here's the next best thing.]

so i was talking with uhfgood and he suggested that Space Fortress was a bit like Star Castle. (i still have to look into Star Castle some more, yet.) i was reminded of a commodore64 game that i really liked when i was young and took a look around for some pictures to show him. i somehow tripped over a YouTube of gameplay!

for your viewing pleasure, i present someone else's playing of Survivor, one of the major inspirations for Space Fortress:



[edit 2: hey! i found a crappy youtube for star castle too! i guess you could liken space fortress to it, but that's pushing it imo.. lookie!



Comments: 1 - Leave a Comment

Link



Monday, December 25, 2006
i laid down and i just couldn't get the code outta my mind. why were the rings skipping so much? have a look at these shots i already posted:



notice there's a gap between successive particle ring pulses? you can see it best at the outer edge of the rings. thats because there was enough of a gap between logic updates that the ring was able to skip that far away without being updated. i was like... wtf?

well i realized that if the time between: (the start of the last loop) and (the start of this loop), msecsElapsed, was big enough, giving it right to the update functions (read: pos += vel * msecsElapsed) would mean big jumps. so what if instead, i run the logic a whole bunch of times, msecsElapsed/minTimeSlice times.. and then do the draw after that? it seems to me i shoulda been doing it that way all along. well, the results boggled my mind. i actually had to reduce the output window size so i could get something meaningful:



when both cores are exploding, the rings produce a total of just about 40,000 particles for the game to draw. and it tries drawing every one, without trying to cull! (allegro's smart enough not to draw outside the bitmap) but i'm still running through that many! there isn't any logic skipping now, and thats a plus (i gotta put that in my template), but look at that! 13fps really shows what 40,000 particles plus two fairly large pivot_sprite is like on my compy. you guys might pull some better frames than that, but man i gotta cut back on the particles!

Comments: 1 - Leave a Comment

Link



Sunday, December 24, 2006
see the framerates i'm getting and i know its because i'm doing pivot_sprite on 3meg bitmaps. i know i'm not going to get majorly better performance out of it doing things this way, but i'm starting to think that a geometry engine is the way to go here. i'm going to be putting in phsyics as soon as i can punch holes in my geometry and that'll be an even better setup than i had before. i hope this works...

Comments: 0 - Leave a Comment

Link


merry ho ho, everyone!

Comments: 0 - Leave a Comment

Link



Saturday, December 23, 2006
got the particle generator in it now. still needs some tweaks...



when you bang into walls, sparks jump off using the normal we're calculating. the harder you hit, the further they fly!




projectiles have trails now, and create bursts when they hit stuff. the chaingun one needs no trails, and the missile might look better with a ring instead.. if you saw how i was doing the projectile code you'd probably strangle me. i'll be able to fix these things when i abstract projectiles..



here i'm showing off the booster projectiles. oh look, our lovely core. let's blow it up.



the core turns red and spits energy out of it for a little bit while it counts down... and then boooooom! blast ring!



when the fortresses are bigger, the ring isn't as convincing.

as always, there's tons left to do. but its a teensy bit more exciting looking now

[edit: just for the heck of it i thought i'd throw on add-blend and make the particles circles. here's a couple of caps:


slows down the system pretty bad, but thats how she goes without hardware support!]

Comments: 2 - Leave a Comment

Link


[edit: particle rings. hot.



love it.]

[[edit 2: source now included. for you, ravuya.]]

[[[edit 3: the RIGHT source now included. ]]]

[[[[edit 4: updated, see newer post about it]]]]

finally built a particle generator. i'm not sure how i'm going to use it for space fortress yet, i know of a few spots i'm going to need it...

  • smashing into fortress walls

  • projectile explosions

  • fortress core collapses and explosions


nothing special to my particle generator, it only generates single particles or bursts right now. i couldn't figure out how to blend BITMAPs, i know i did it before, but i can't remember how i did. i'm going to want to make particle rings for the core explosions, maybe that'll be next.



Comments: 1 - Leave a Comment

Link



Friday, December 22, 2006
multiple fortresses!


i blew up a bunch of the walls on both forts so i could have a clear shot at their cores from between them. you can see the fortress extents and stuff for each in the radar. turrets, projectiles, core locations.. now to take some shots at cores.


blammo! each fort core has different countdown rates. i could set up as many forts as i want to now, i got two and thats good. i could even set them up to shoot at each other and they'd do damage to each others walls. once a projectile is launched, it has no owner or target, so any shot or missile can do damage to its owner just as easily as another entity.

more as i progress.

Comments: 0 - Leave a Comment

Link


i threw my nickname into google just for the hell of it (darn you, uhfgood!) and i actually pulled up the first times i ever asked questions about programming! google groups pulls up a whole bunch of my posts from newsgroups, from back in the day. thats where i met my first online friend.. wherever you are, Chia, whats up!

i'm pretty happy about the support back in the day. wtf, i started with QuickC?? man i used to be such a noob! haha the memories.....

Comments: 0 - Leave a Comment

Link


so now i have a real core in my fortress. you can blast the thing and it'll explode! the fortress is rendered unoperable and you've saved home base from another threat. screenies! i'm going down halfsize for you poor suckers on dialup, and so that posts don't take up so much space. (also, i have 7 this time ^_^)


showing off the radar clipping here, as well as the core display.


whoops, i guess that wasn't the core.. let's try this one.


yup that was it! i better get outta here...


oh shiiiiiiiiiiIIIIIIIIIIIIIII


noooooooOOOOOOOOOOOOOoooooooooo


if you get away from the blast, you can see the energy output on your radar, it helps to let you know you're still close to the blast.


after the core's blown, there's no energy in the fort, so the guns don't shoot anymore. crazy!

the next step is getting two or more fortresses on the go, and letting you blow them all up. i still don't have any ship damage set up, i'm not as concerned with gameover as i am with the details concerning what you spend all your time doing, destroying fortresses. i would really like to get forces up and going, but i'm going to at least get the fortress stuff into a structure and clean things up concerning that, a bit more. i'll feel more confident with the physics rewrite when i dont' have so much code in main.

Comments: 1 - Leave a Comment

Link



Wednesday, December 20, 2006
with the gf weekend over (mon-tues ) i got back to work. i don't think i really accomplished alot, but its something. fighting with matrices isn't my cup o' tea, but it turns out they're alot easier to build if you just do the vector math first, make sure it looks right, and then build a matrix that works the same way. anyways, here's some screens:



here you see the turrets tagged to the edge of the fortress, and fully able to fire. the radar shows the outline of the fortress bmp and where the turrets are tagged to it, as well as all projectiles. i should have gotten a shot to show that if you only see a part of the fortress on the radar, it's properly clipped to the radar circle. it kinda costs a little extra to do that, but eh. i could implement a floodfill that would speed up things quite a bit...



just a random shot showing the fort's actually being drawn proper on the radar. eventually the core will be displayed on the radar, and a line going to it from the ship so you can more easily hunt the fortresses down. the radar is at 1:25.. its fairly easy for me to change the scale in the radar view xform matrix, so if i find i need to tweak, no probs.

i was chatting with rtwilli and he's really got me thinking about doing another partial rewrite to support proper newtonian physics. i've been thinking about it myself for a little while anyways, and i'm not sure if its the direction i want to go just yet. the lack of kickback on missile explosions is bugging the hell out of me, though.

i also want to implement a laser system (particle cannon!!!!) that will actually act as a thruster in part, you will be forced backwards at an accelerated rate as you fire the cannon. it will cut as well as HopeDagger's, but it will be pretty difficult to use for any length of time because of that. i'm pretty excited about adding that as a new weapon ^_^

after i add the core and let you blow up the fortress i'm going to add a 2nd fortress a little bit away from the first so you can blow them both up. a few more fortresses later, i'll add the home fort and start working on refill sites. the homebase fort is going to be the key to the game - once its in, the enemy fleet will be after it. starting to get the idea yet?

Comments: 0 - Leave a Comment

Link



Sunday, December 17, 2006
finally caught up again with the rewrite. i was kinda slack today, but it's all good now that i'm set to start moving. i actually improved on a few things as i moved along!

  • the collision works better now, the reflection dampening is done only on the normal-aligned portion, so yay! you can go alongside a fortress at full speed and if you accidentally bounce off it a little you won't lose speed.

  • projectiles die after their alotted time is up.

  • you can plough through single-pixel bits. slightly larger clumps can stop you, i don't think there's much i can (or care to) do about that right now.


lots and lots to do still! oh i might as well leave some screens, nothing real new.


didn't have a reload timer in place yet.


down goes this fortress!


there's the weapon selection indicator again.


Comments: 1 - Leave a Comment

Link


after a long afternoon of hunting a horribly simple syntax error, i had to end the day on something interesting. so i made a new fortress. i made a big ball and carved out one end and added a few narrow exhaust shafts that lead to the core. its kinda like a death star ^_^


there's where the fortress-dissolving weapon'd go..


a shaft! fire in the hole!


hmm, bad shot


screw it! i'll carve my way in!

so i got to thinking. if i'm going to actually do things this way i'm going to have hella big bitmap data structures in memory -- the bitmap i use for fortress03 is 3megs on disk. drawing alot of the thing at once takes up a bit of time. its not too bad though, i don't imagine there'll be many fortresses being drawn at the same time, so thats not bad. i did plan on having a 2nd background image that lined up with the wall image, so when you blasted a wall there'd be something to show for where you nailed it instead of just black space.. i gotta get some turrets on this thing so its not so easy to break in :)

Comments: 0 - Leave a Comment

Link



Saturday, December 16, 2006


what you see is a demo i built up to test my new vector and matrix math code. it took a while and i went through alot of dumb mistakes, but i finally have it fully working. the fortress bitmap spins one way, and the turret bitmap spins along with it, properly tagged to where you see it. the turret spins the other way at 3x the rate of the fortress, and everything works as you'd expect to see it work.

it does all of this in many less lines than i'm doing things with in space fortress. i've just printed off the source to this demo as a reference and the source to space fortress and i have to basically rewrite most of the code to use these new math tools.

don't ask me why i haven't done this yet - i don't have an answer. i didn't know enough? not really true, i made a vector class long ago. i wanted to just get into the code and do something, i guess. i don't mind though. this is at least good for practice.

[edit: was looking at the difference between a bit of code..

// take a world-space point and transform it to fortress-bitmap-space
// (ship center point)
math2d::vector p = shipCenter - fortressCenter;
p = math2d::RotationMatrix(-(fortressAngle)) * p;
p = math2d::vector(p.x + fortressBitmap->w/2, fortressBitmap->h/2 - p.y); 
 

//// or ////
 

// make a matrix to..
// take a world-space point and transform it to fortress-bitmap-space
math2d::matrix toFortressSpaceTransformationMatrix =
        math2d::TranslationMatrix (-fortressCenter) *
        math2d::RotationMatrix (-fortressAngle) *
        math2d::ScalingMatrix (math2d::vector(1,-1)) *
        math2d::TranslationMatrix (math2d::vector(fortressBitmap->w/2, fortressBitmap->h/2));
 
math2d::vector p = toFortressSpaceTransformationMatrix * shipCenter;




hmm! reversing the process is alot easier to code ]

Comments: 0 - Leave a Comment

Link



Thursday, December 14, 2006

SpaceFortressTests01.zip [853.08 KB]


i got a much better collision response working now. you can actually travel the corridors. the linked zipfile has two exe files.

one is a test that lets you fly through and see the resulting normal and reflection. i generated the above screenshot with it.

the other has a proper sized boundcircle and collision implemented, so you can fly around and bounce off of the walls. the weapons are in working order, so feel free to blast up the fortress.

i've got a ways to go, so things like "too many bullets slow down fps badly" and "man the graphics suck" aren't really going to help me out much. i spent 3 hours of this update trying to figure out why the reflection function wasn't working, and i forgot to end it with return. yeahhh.

Comments: 3 - Leave a Comment

Link


i find it amusing to watch games change by screenshots put in journals. i walked backwards through HopeDagger's journal and just watched the pretty pictures lose features and graphics until it was back in its egg, and then see even the itch in his pants disappear into something else. i hope others will be half as amused with the screens i put up here about this project.



here you see i've actually got a crappy ship graphic (res/grainyAlleg/boundcircle cause it to be obscured) and i'm flying along one side of a new, bigger fortress. the new fortress is up to 1600x1200 from 400x400, and you can feel the difference as you fly around the thing. this isn't really a big leap forward in the game, but as i get more done, it starts to look and feel more like what i'm aiming to accomplish.



theres a few things going on here. the first thing that pops out is the big yellow circle. although it's disfunctional, i decided to stick a fake power core into this one. (its just colored fortress walls right now.) its sort of the goal of the game, to get to it and attack it. i suppose the game is a bit like Descent, in that regard, isn't it?

around the walls surrounding the "core" is various sized holes, and you might have noticed in the previous shot that there's now three weapons to choose from. i figured i'd just stick to HopeDagger's pattern, since it's recent and fresh in my mind.

weapon [1] is an average energy blast, doesn't break very big holes and travels/reloads at an ok rate.
weapon [2] is the rapidfire chaingun, high fire rate/speed, tiny holes.
weapon [3] is the missile projectile, super low fire rate/speed and packs a big punch.

i carved a way in with missiles from the top, and flew around the chamber and shot up the walls a bit with the other two weapons. notice that the tiny chaingun holes are into the walls a bunch, i need to fix that - push the projectiles along their travel path and check every pixel they move until they arrive where they're going.

if i were retarded enough to post a demo for this garbage, you'd notice one of the more frustrating issues with it right now: moving down one of the tight passages in the fortress shows how crappy the collision response is right now. you don't notice it so much in HopeDagger's game because you tend to not spend alot of time along the walls. i've got an idea that i'm going to try before i get the fortresses active that might do the trick.

anyways, i'll post more screens when its worth showing off again.

Comments: 2 - Leave a Comment

Link

Page:   1 2 »»

All times are ET (US)

 
S
M
T
W
T
F
S
1
3
4
5
6
8
11
12
15
18
19
21
25
26
27
29
30
31

OPTIONS
Track this Journal

 RSS 

ARCHIVES
January, 2008
December, 2007
November, 2007
October, 2007
September, 2007
August, 2007
July, 2007
June, 2007
May, 2007
April, 2007
March, 2007
February, 2007
January, 2007
December, 2006
November, 2006
June, 2006
May, 2006
March, 2006
October, 2005
September, 2005
August, 2005
July, 2005
June, 2005
May, 2005
January, 2005
December, 2004
September, 2004