lol 2 week gamedev project reportback
so early march i finally finished and released the new hive 1.1 patch & in the time right after that i decided to pick on some other projects. one thing was working on the old 'hell game 2' demo that i think i posted here once months ago (if not well i've been working on a hell game 2 demo); that's actually now up over here. it's basically just an engine demo but i reimplemented the whole event framework & body tree editor & got that working and wrote some starter events. really the huge thing there wrt engine coding is figuring out the challenge/combat mechanics, since that's an entire microcosm of interactions. it really made me think about how... in practice, the game is mostly event text. but in terms of code, or interface, the challenge page and the body editor page are these huge complex uis, since they have to display a bunch of state and let you alter them in complex ways. the body editor is basically as complicated as a filesystem tree navigator, since it ends up doing the same thing: hierarchically display information for viewing and editing. and it turns out that's kind of a big thing to do
anyway so i got all that working
and then i ended up working more on that 'realtime' javascript canvas renderer. my progress with that is currently up over here, which is basically just a very basic movement demo. i'm kind of impressed at how much progress i made (adding sprites and textures does a lot for 'game feel') but at the same time all the code is an ad-hoc mess and performance is starting to really take a hit due to the way the rendering is organized, and also there are a bunch of weird visual glitches that occur solely because of some of the rendering optimizations i made. currently i'm seriously tempted to recode it all in haskell or something, but that would mean, uh, totally rewriting all that code.
still, it's been nice to actually work on a fun project like this again. graphics code is always kind of fun because there are actual results that you can see; so many of my coding projects end with a big library of inscrutable code.
so early march i finally finished and released the new hive 1.1 patch & in the time right after that i decided to pick on some other projects. one thing was working on the old 'hell game 2' demo that i think i posted here once months ago (if not well i've been working on a hell game 2 demo); that's actually now up over here. it's basically just an engine demo but i reimplemented the whole event framework & body tree editor & got that working and wrote some starter events. really the huge thing there wrt engine coding is figuring out the challenge/combat mechanics, since that's an entire microcosm of interactions. it really made me think about how... in practice, the game is mostly event text. but in terms of code, or interface, the challenge page and the body editor page are these huge complex uis, since they have to display a bunch of state and let you alter them in complex ways. the body editor is basically as complicated as a filesystem tree navigator, since it ends up doing the same thing: hierarchically display information for viewing and editing. and it turns out that's kind of a big thing to do
anyway so i got all that working
and then i ended up working more on that 'realtime' javascript canvas renderer. my progress with that is currently up over here, which is basically just a very basic movement demo. i'm kind of impressed at how much progress i made (adding sprites and textures does a lot for 'game feel') but at the same time all the code is an ad-hoc mess and performance is starting to really take a hit due to the way the rendering is organized, and also there are a bunch of weird visual glitches that occur solely because of some of the rendering optimizations i made. currently i'm seriously tempted to recode it all in haskell or something, but that would mean, uh, totally rewriting all that code.
still, it's been nice to actually work on a fun project like this again. graphics code is always kind of fun because there are actual results that you can see; so many of my coding projects end with a big library of inscrutable code.