Perfectionism, in psychology, is a belief that perfection can and should be attained. In its pathological form, perfectionism is a belief that work or output that is anything less than perfect is unacceptable. At such levels, this is considered an unhealthy belief, and psychologists typically refer to such individuals as maladaptive perfectionists.
Ok, i realize trying to make everything flow absolutely perfect is unhealthy and cannot really be achieved ... but i just can't help it. I mean it has to work right! The lives of villagers depend on it! Ok, not really .. :p
Making good progress on getting the map to flow correctly though! What i've done is created 9 arrays that hold the basic map data. each of these arrays draws to a seperate canvas that is 2048x1024 ... i do this in order to speed processing. While i *could* try and make that canvas buffer larger that in itself would run into more problems, mainly having to go through map reloads. the 3x3 buffer allows me to reload and redraw areas off-screen and reduce the amount of time that the useri has to spend reloading data.
Also, the 3x3 array is dynamic ... meaning that the data as position 1,1 may not always be what's in the top, left corner. I simply have a pseudo-pointer (javascript doesn't do real pointers), that points to the current top-left of the drawing area. since the width and height of the array are fixed this allows me to draw the overflow sections by using 1st grade math ... p1+3 (right side), p1+1 (bottom), p1+4 (buttom right). Very simple!
The biggest trick is having to fit the pieces together smoothly. Because the minimap is click-able and draggable this changes a lot of the reference data. The good thing is that once i get this working, the same math applies to square tile-based layouts as it does to isometric tile based layouts.
And thus no code to show off today, perhaps soon though but again i only allow myself to work on this for a little while each week as bills come first. bleh!
Once i get this done, build some simple animation routines and get the basic collision working I will start making some mini-games in order to test the engine out properly. Not sure what i'm going to do first, i'm thinking perhaps a canvas-based tower defense game.
Making good progress on getting the map to flow correctly though! What i've done is created 9 arrays that hold the basic map data. each of these arrays draws to a seperate canvas that is 2048x1024 ... i do this in order to speed processing. While i *could* try and make that canvas buffer larger that in itself would run into more problems, mainly having to go through map reloads. the 3x3 buffer allows me to reload and redraw areas off-screen and reduce the amount of time that the useri has to spend reloading data.
Also, the 3x3 array is dynamic ... meaning that the data as position 1,1 may not always be what's in the top, left corner. I simply have a pseudo-pointer (javascript doesn't do real pointers), that points to the current top-left of the drawing area. since the width and height of the array are fixed this allows me to draw the overflow sections by using 1st grade math ... p1+3 (right side), p1+1 (bottom), p1+4 (buttom right). Very simple!
The biggest trick is having to fit the pieces together smoothly. Because the minimap is click-able and draggable this changes a lot of the reference data. The good thing is that once i get this working, the same math applies to square tile-based layouts as it does to isometric tile based layouts.
And thus no code to show off today, perhaps soon though but again i only allow myself to work on this for a little while each week as bills come first. bleh!
Once i get this done, build some simple animation routines and get the basic collision working I will start making some mini-games in order to test the engine out properly. Not sure what i'm going to do first, i'm thinking perhaps a canvas-based tower defense game.