 whats next! |
Posted - 5/15/2006 8:33:37 AM | so now i'm thinking i wanna do some more prototyping of simpler stuff than dual analog-ing. like, how to do multiple monster striking, simple ai and item screen testing. i'm going to back up and go with d-pad and simple attacks like Z:LA, but i need to make a base for the next series of prototypes to come. we'll have the background, the basic d-pad movement and basic 4-dir sword attacks (with lower-right quadrant weakness and everything).
i want to test out different ways to do hitting monsters with the sword - is it better to have a slash hit just one monster (diablo/maplestory/mana) or as many monsters as are under the blade (zelda/etc)? i want to write test cases for these. i also want to have monster clipping against other monsters as another test case, like in diablo - what's it like if monsters can't walk through each other?
i want to add map clipping to the base demo scenario too, shouldn't be hard to make a static coldet array and do simple box-testing against it.
when you hit a monster, will it be knocked back a little (zelda) or not at all (diablo - without "of the bear"), and alot with "of the bear"? or a little and alot? what is monster clipping against monster like with these cases?
in order to do the monster knockback test, having two swords (one basic, one of the bear) in inventory and allowing selection would be a way to test an item screen. hmm, well i'm just looking for an excuse to make an inventory screen demo. i'll need a full item demo test series for it to really be worth doing. picking up, viewing ground items, viewing in inventory, dropping, equipping, etc.
lots of tests still to try!
| |
 dual analog sword prototype |
Posted - 5/12/2006 6:45:49 PM | another of my cut&paste journaling efforts! i'm not gonna bother putting this in the GDS, as its not really worth anything.
swordprototype.zip 47.71 KB
made with vc#2k3, so make sure you've got the .net runtimes before you try to run it. oh, and it uses mdx9 for the joystick interface. i'm guessing there ain't too many people that'll even bother with it ^_^
[edit: hotlinked some of the interesting trackbacks.. notepad don't do that for me!]
[edit: updated exe with crappy try/catch block so the thing isn't as ugly as 'unhandled exception' dumps]
[edit: hmm still dumps on craig's compy.. maybe he doesn't have the mdx runtimes?]
- 2006/05/10 -
whoever invented date ordering is fucked. it should be year, month, day. things are arranged better in my folders that way.
lol i just read a gamasutra article i found on the [gdnet forums > gdnet contest] thread, found here: http://www.gamasutra.com/features/20051026/gabler_01.shtml . alot of the stuff i felt i already knew, but having it put in my face again was refreshing. some of the stuff i learned was really just direction - the most important thing i pulled out was that i need to prototype before i try entire projects.
sounds obvious, huh? so where'd i miss that bulletin? anyways it got me to thinking, what projects am i not doing anything on that i want to... a ton, that's for sure! one of the simpler ones was goign to be dragon warrior. but as i thought more and more about it, the game merited different designs, some seemed to make more sense to use than others. for instance, if i was only going to ever have one monster battling you at a time, why would i bother letting the player face in any direction other than the monster? why would you turn your back or side to it? i suppose that in certain situations you might want to hit it in the back or something, depending on the monster defeat mechanism for the particular monster..
anyways, i digress. as i thought on it i realized -- why aren't i making prototypes of these ideas? some of my gameplay ideas are 2d, i don't need a fancy sprite engine for that; i can use basic forms stuff to do it. i just need a playing field and some sprites, the window background and a few (one?) picturebox will do fine for that. thinking ahead, i could even do that zelda bow&arrow idea this way as a prototype if i were so inclined in the future!
now i will chronicle my prototyping efforts! its 3:21pm and i gotta start getting ready at 8pm for work. thats a little less than 5 hours. i should be able to get this prototyped and be able to play it by then for sure. let's see how well i can deal with distractions!
-- prototype design begin --
so what is it i'm prototyping? well, one of the possible control schemes i had in mind for a zelda clone was a dual analog kinda thing. something like loaded/reloaded or smash tv, you use the left analog to move, and the right analog to face your player. pressing some other button would shoot, but this is gonna be zelda, so we'll have him swing his sword.
i've done this sort of thing once before, it wasn't hard. i think it was a smiley face that had a crosshair cursor that would move around the face and when you pressed the shoulder button you'd make a bullet fly in that direction. there'd be a target somewhere random and the point was to get as many as you could in the time you had.
i'm not aiming for any kind of game here, i just want to see how well this kind of control scheme could work for melee battle.
the idea is to use the left analog to move link around (we'll use the gameboy sprite set for simplicity's sake - plus i like it ^_^) and the right analog will aim link for his attack. when you press R1 he'll swing his sword through an arc - i might need a slider or something to allow for different arcs for testing. there'll also be a slime moving around at random that you can attack. already i'm thinking about having the slime do two different kinds of ai, but i should save that for a different prototype. he'll just slide around and thats it. no, even better, we'll just not have him move at all. put him in the animation and just have him sit there.
we'll detect whether link hits or not, and put a message up every time he attacks that says whether there was a hit or not. we might want to draw the boundtest regions over the sprites.. can i do that? maybe two sets of sprites then.. and have a checkbox that lets you turn them on and off.
i'm probably going to need to draw a line from the center of link and out to represent where the right analog is being pushed, so you can have a better guess at where you're going to attack. we'll start with a 90' arc like he gets in Z:LA and let him attack in 8 directions instead of just 4.
when the player pushes the right analog, we should face link in the direction that matches it best - but we'll only have 4 facing dirs so it won't look as great. its good enough.
i'm going to do alot of hardcoding and dirty stuff, prototyping means just getting something up and thats it. its by no means an end product. i just wanna see what it looks like.
-- production begin --
ok lets start with our project. basic windows form in c#. let's get some coding music going.
[now listening to: guitly gear music folder]
crap my coffee is empty and my tummy's acidy. i need some coding snacks. forget it for now.
first thing's first, i'm gonna add a groupbox (playAreaGroupBox) so i can set aside some of the space for any controls i might want to add. gotta lock the window to a fixed size, don't want to deal with people screwing with that. throw down a picture box for link (playerPictureBox), and one for the sword (swordPictureBox).
ok now we need to make and add some pictures to the resources for stuff. i need 4 standing pics of link, and 8 sword pics for each angle. gonna need to make 'em first. [ripping/drawing] hmm looks like i still have some stuff from when i was doing mockups. sword's done, i just need link in all 4 dirs [looking] hmm i have E and W but no N and S. easy enough to get. [working] ok now to break up the sword bmp [working] cool, done. lets grab our mockup background and set it to the groupbox background. [working] slapping some graphics on our two pictureboxes, stretching them to doublesize, and doublesizing the background image - just too small! [working] hmm setting map as groupbox bg is just too ugly. adding another bmp and pushing to back. [working]
ok now we need to set up the game loop and timing stuff. [working] hmm i can't seem to get Utility.Timer(DirectXTimer.GetElapsedTime) going. what reference am i missing? i got ms.dx in there.. [looking on msdn] argh, i'm not sure what reference i need to use the code.. i poached it from mdx9 kickstart, but looks like i gotta do it manually, with Sys.Env.TickCount. [working]
ok i think i got the main loop and logic timing set up. now lets get some joystick input and move link around. crap, a vector class would be keen. i wonder if directx's vector will do the job? let's get the joystick in. [working] got dx.di ref added in, and using clause. added an Init() routine, we'll set up the joystick in here. [working] holy crap he moves fast! gonna need to slow that down. [working] there we go. now we can face the bugger.
-- breaktime --
crap its like 6 now! ugh my tummy needs food. food break! [fooding] mmm cookies.. added a label on the right, to show what the space is for.. [fooding] next thing i should do is get rid of the purple background of the sprites.. probably gonna need to go to gif for the translucency. [fooding] mmm triple decker pb sammich (and milk!!).. crap i'm getting crumbs in my book. someone should do a survey about what kinda power lunches people eat while they're coding. [naptime!]
filled my tummy, and took a nap. now its almost worktime. gonna set up for the next step, right analog. this one isn't as easy as the last one was, because i don't remember what the two axes are. i think it might have been Z and Rz but i'm not sure. do i still have the shooter thing? [looking] yup, there it is. the (x,y) pair for the right analog is (z,rz). good to know.
- 2006/05/12 -
back to the grind. i've got 4 hours this time. i had a hard time getting the drive to come back, but i was thinking about children of mana and it got me going.
so we're going to get the right analog and use it to choose a new direction for the player. pretty easy, get a vector, and check what direction is biggest. that'll tell us which sprite to use. [working] well now, there's a mystery. i need to figure out which direction has the most on it, but wait, its just two axes i need to compare, huh? well thats way easier. [working] its dirty, and i'd say we'd more likely be taking the vector's angle and using that to pick from a sprite set. meh. [working]
ok i'm set to pick, but i don't have any pics in the resources to choose from yet. time to slap them in there. gonna have to read about that, first. probably winforms book will help me best. [looking] hmm he spells it out pretty much for me. [working] or does he? seems he doesn't tell me how to do what i'm trying to do. just a bunch of shit about culture and resx files. he tells me how to add a resource and how to get it to build as embedded, but then he doesn't tell me how to get it out and use it. fucker. guess i can't really build anything this complicated with embedded shit. i could load the stuff from file i guess but i'm feeling defeated and giving up. cockfags.
huh? olu pointed me at http://www.jelovic.com/articles/resources_in_visual_studio.htm - i'm gonna give it a shot. [working] huh, that did the job alright! the last little thingy at the bottom was what i used. funny that it's using the N image for up and down.. hmm [working] oh, i was checking the leftAnalog by mistake. fixed. and there we go, now i have the right analog facing the fecking player. bleh. looks like vs.net still needs work on the resources part. screw it, i have a working solution.
ok now we got link running around and facing, now we add the swordy! so first we detect the button press. [working] R1 maps to button 7. [working] ok, so we know we're arcing over 90deg only. we need to do it over some period of time, of which each of 3 images will be displayed and positioned. i'll have to do this with an angle variable. [working] only thing left to figure out is where to drop the sword picture. take the right analog, snap it to a 45 and extend it to the size of the player bmp. then slap it wherever that is, relative to th player. [working]
argh so close! the angles are coming up wrong though, and the pictures are exactly opposite! if i hold to the right and attack, the starting value should be 45degrees. heh turns out originally i was having such trouble because i wasn't converting radians to and from degrees.. oops! so whats the problem NOW. [looking] lol i flipped the reposition Y to negative and the pictures are being shown right! but now if you face up and attack, the sword comes out of your ass! the left and right works perfect, i just gotta figure out.. should i give tan2 a negative y? [checking] lol yeah.. stupid worldspace vs screenspace.. negate those Y values, dammit! but there. i should be able to compile a release ver and have a fully standalone test prog. [checking] yup, it works fine. gonna want to get rid of that purple shit and speed up the sword a little more. [working]
seems there was a problem i had in my mind before.. something about what happens when you're not directing the right analog and you attack.. if its a problem it'll crash or the bug will appear sometime. anyhow, yummy prototype! [testing]
hmm, it won't do transparency for some reason. oh well, i'll deal. my default control isn't as glaring as purple is. ^_^ its good enough to release for now. whee!
to try later:
- if right analog not being used, left analog should change direction
- look at adding targetting cursor or something, you can't tell where you're aiming right now
| |
 how about you? |
Posted - 5/10/2006 5:37:48 AM | not sure why i need to distract myself - i've got vs open and mdx9 kickstart right next to me, turned to p10-11. it occurred to me that i want to know mdx9 like i used to know allegro. i didn't know everything, but i could write pretty much anything with it. even though i haven't used it in quite some time now, i could probably sit down and write a tetris game start to finish without testing it and only have a few little bugs, if any. how did i get to that level of proficiency? i never actually did anything with it, at least, nothing of note. perseverance, perhaps?
back to mdx9 kickstart.
| |
 candybar doll maker thingy |
Posted - 5/2/2006 12:23:22 PM | hmm, thought this is pretty neat:

made it with doll maker. can't fire js with this either.. click on it to edit or just to see the animated background. most of the stuff they had was crappy, but its a good reference for whenever i want to do some character design.
| |
 Games all designers should play |
Posted - 5/2/2006 12:16:15 PM | so i'm looking over the listing and i've discovered that i've played most of these! at least i'm not so out of touch as i thought i was. here's what i'm missing:
Tabletop/Boardgame:
Pente
Realtime Strategy:
Warcraft III
First Person Shooter:
Goldeneye
System Shock II
Turn-Based Strategy:
Alpha Centauri
Role-Playing Games:
Baldur's Gate
Fable
Neverwinter Nights
Vagrant Story
i've seen warcraft iii, i doubt i'll be buying it anytime soon. i've played turok on n64, and thats where my n64 fps days ended. it ain't no halo. not particularly interested in alpha centauri. wouldn't mind playing all of the rpgs but (except for nwn) i won't likely see them anywhere to buy and play 'em.
| |
 huh? |
Posted - 5/2/2006 9:24:42 AM | so here i am again, on the middle of another 2-day work break, sitting on my thumbs. so i've got a bunch of time on my hands, and i want to use it to work towards something.. but the game ideas i've had so far are pretty crappy. take game X and give it a makeover; take game A and game B and put them together. not terribly inspiring, and as time has proven, completely ineffective in maintaining motivation.
is motivation the only factor in my failures? definitely not. i lack proper design methods, and don't know how to go about attaining them. i can go about listing feature after feature of games that i really like, and even rant about how noone's made a game combining them all. that isn't moving me forward. i don't consider the lack of knowledge in my language of choice / api of choice / etc to be a limiting factor - convention is easily reproduced when one has the proper facilities. but how do you go about learning design?
i've read this and that about it, but i haven't really learned anything new. i've been trying to keep at "you need to know what you want to experience" and its hard to stay focused on that. its so easy to back out of the whole thing and ask "so why do i play video games" and then get completely lost from there. examining that question itself produces more problems: sharing experiences through video games requires socialization, and i'm trying to escape that more and more every day.
so it looks as though the philosophy i live my life by is really the culprit here, but it works and i don't see it changing anytime soon. perhaps i should look at components of games, its not nearly as demanding.. my final products are never worth the effort, and its the peices i'm really interested in. i'll have to think more on this.
| |
 another break over |
Posted - 5/2/2006 12:39:23 AM | while i don't intend to start writing code right away, i'm here again. it's good to see that there's quite a few people moving forward with their projects, you guys are inspiring. if only we could all find multiple motivation triggers and use them ^_^
so i've got a stack of books here, the top three being: windows forms programming in c#, programming c#, and managed directx 9. i have the information i need to get me started in the direction i want to go. what i need now is to learn how to make plans for this stuff.
i went through all of the games i own for ps2, gamecube, pc, and gameboy and ranked them on a 5 star system. it turns out that zelda and metroid are my only 5 star games. more on metroid later.
| |
|
| S | M | T | W | T | F | S | | | | 3 | 4 | 5 | 6 | 7 | 8 | 9 | | 11 | | 13 | 14 | | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | |
OPTIONS
Track this Journal
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
|