| (no subject) |
[Dec. 23rd, 2009|11:12 pm] |

- another small optimization regarding drawing invisible walls - made a change to the level editor's shuffle function which made it skip invisible walls when shuffling room elements - fixed a position rounding problem when using shuffle - fixed a bug where the level editor didn't correctly change the colors of objects anymore - made it so if a nurikabe is hiding other creatures, their life bars / friend bars don't show up (which would give away their position) - made a new area - added to the game a few new sprites orchard had drawn recently (new trees and a new mushroom) - made a new area (pictured) - added the rest of the sprites orchard had drawn recently to the game (clouds) - did change to image loading for deco sprites (was mistakenly loading the same sprite into memory when i didn't need to) - made the text in the beginning of the game have a delay for punctuation etc. - made theo's portrait appear in the save menu if for some reason you save and quit in that very early part - resampled the portraits for the smaller size rather than scaling them down, which makes them look nicer and less pixelated
my new target (not a binding vow, but a promise) will be to finish two new areas per day, before i work on coding or bugfixing or new features. exceptions are coding that i need to work on those particular rooms. cause unless i start doing at least 2 new areas a day the game won't even be finished in 2010 D:
( save screen with theo in it ) |
|
|
| (no subject) |
[Dec. 23rd, 2009|07:41 am] |
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahhhhhhhhhhhhhhh

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahhhhhhhhhhhhhhhhhhhhh |
|
|
| (no subject) |
[Dec. 22nd, 2009|11:12 pm] |
- made a fix on a depth problem which should help strange cases where the player seems to jump ahead of an object instead of stay behind it - fixed a bug in map coordinates display (my string_int() function didn't know how to handle negative numbers) - i think i've figured out what's causing the flickering, but because it's so inconsistent it'd be hard to make sure that's what causes it -- in any case i made changes which may or may not fix the flickering - fixed a bug were the title screen would 'jump' up if the game lost focus and then regained focus later - did a few tests on various aspects of the recently released game maker 8; seems coding execution speed significantly increased, but porting the game to gm8 will take a while |
|
|
| (no subject) |
[Dec. 21st, 2009|10:59 pm] |
- fixed an instance activation problem more efficiently (by setting a variable whenever all objects are activated, which happens for various purposes) - optimized the 'draw double' thing for transparencies in various ways, and tweaked its various variables until it looked at least a little acceptable; came across a bug related to depth and fixed it; i think it now almost works as well as it did before i did the draw event code optimization - uploaded v0.51 for playtesters
*now* i really must focus on content, not code |
|
|
| (no subject) |
[Dec. 20th, 2009|11:39 pm] |
- made escape cancel the map (as well as enter escaping mode) - made creature call/sound frequency relate to delta time rather than frame rate - changed the title screen border slightly - optimized the title screen draw routine so that it only draws the part displayed on screen rather than the whole thing, which speeds up the title screen from previously 45 fps to 70 fps for me - made the title screen scroll according to delta time rather than frame rate, for those who still get slow rates on the title screen - fixed a bug in the instance activation script for certain cases (plan a better optimization later) - partially did a workaround for object transparencies (when appearing behind objects) but still need to work on it a bit
likely v0.51 tomorrow |
|
|
| (no subject) |
[Dec. 19th, 2009|11:16 pm] |
- discovered that the trying to use non-existing surface bug still happens, at least if you leave the game on the title screen and let the screen saver happen. changed some of the code in hopes it will fix it, but didn't test - adjusted direction += and direction -= statements to delta time (that way needbeeds won't spin faster when the game is running faster and slower when it's running slower) - re-implemented subpixel movement for floats and decofloats by storing the fractional part of their x,y position before flooring them, then re-adding it to them next step; now at faster lilypads still get pushed by the player and flowers don't come to a stop as quickly (due to the previous 'friction' of rounding the x,y position each step)
too much game-playing today -- first umbrella adventure (still want to review that), then league of legends with mr. podunkian, then starcraft with evajolli. less tomorrow. |
|
|
| (no subject) |
[Dec. 18th, 2009|10:47 pm] |
- fixed a bug in draw color (forgot to set image_blend to draw_color rather than c_white) - there are still numerous bugs with blend mode (related to object depth) and i worked through and fixed these as i came across them. now only room 0,0 seems to have blend mode flickering problems occasionally/randomly, although i'm not sure what's causing them. will need to figure it out. - found a bug where pollinated flowers don't have their pollination status shown anymore, will fix later - fixed some of the friction problems related to frame rate (at higher frame rates, things had more friction, now they have similar friction -- although not identical because there is still a rounding issue related to drawing mucking things up. i have an idea that will fix that in the future though |
|
|
| rpgcreations dot com value dropping favor |
[Dec. 18th, 2009|04:36 pm] |
As you may know, rpgcreations dot com was hijacked by spammers due to a shady company.
If you have any links to it, please delete them or just de-link them and convert them to plain-text on your site.
I already asked Inferior Minion to de-link the site from all posts it was ever mentioned in on Castle Paradox, so at least it that will drop the link rankings somewhat if the spammers decide to re-up on the domain. So thanks to IM for that! |
|
|
| (no subject) |
[Dec. 17th, 2009|10:32 pm] |

- fixed a bug where the tab/m map keys wouldn't work correctly, and some other keys not working correctly (bad game logic). will need to do a speedy update to fix the issue in the playtesting version, perhaps at the end of today or tomorrow. - did an optimization teegee (of getmagi.com) suggested (moving step events of map objects to with() statements) which improved speed a bit - began doing optimizations related to draw events, which seems promising (speed increases significantly in areas with a lot of objects) -- the idea is i'd just let gm itself do the drawing and have no code in the draw or step events at all. this has some sacrifices, for instance, i can't vary the blend mode of objects individually as the player approaches them anymore. but the speed advantages outweigh that loss -- in some areas the fps more than doubled. (see picture -- previously i would have gotten about 50fps in there instead of 120-130) - created an invisible object just to handle blend modes at a specific draw depth (necessary for the previous optimization) - optimization where the x and y values of a map object are rounded whenever an object is moved rather than every step or when drawn (necessary for the aforementioned optimization) - some optimizations of edit mode, although at the cost of exchanging round rectangles for rectangles -- now edit mode (on this computer) doesn't drop the fps from 100 to like 40, instead only dropping it from 100 to like 60). it's not really necessary to optimize edit mode, but i figured people on slow computers should be able to edit areas too if they want. one curious thing is that edit mode runs much faster when the mouse is over the edit bar than when it's over the map (difference of 80fps to 60fps for me), even though there's no difference in how it's drawn; probably has to do with collision checks and such. - found some bugs related to the blend modes (why isn't there an image_blend_mode variable!?), and fixed it -- i hate how roundabout i have to approach it though (i have to make sure i set the blend mode before particular *drawing depths*), but that's game maker - noticed a bug: how far you push flowers when you bump into them depends on the frame rate (i think it has to do with friction)
today's optimizations have actually been quite dramatic. i'm glad i took teegee's suggestion and also glad i tried the optimizing the draw event. i've a few more optimization ideas (in fact, still more than 20 -- as i've been doing them i've been coming up with new ways to optimize the game and writing them down on the wish list), but even just as is, i believe today's changes improved the game speed more than the last week of optimization combined did. |
|
|
| (no subject) |
[Dec. 16th, 2009|11:14 pm] |
- went through searching for all time-sensitive instances of width/2 and height/2 and replaced them with the precalculated halfwidth and halfheight variables, likewise with x+width/2 and y+height/2 with the precalculated cx and cy. this won't make too much difference, but might make a tiny difference, particularly for map objects when there are hundreds of them on screen at once and each is doing those extra calculations that they don't need to. - made the unicorn's (seena's) trail vary based on delta time rather than absolute frame rate - optimized the phoenix draw routines a bit - optimization in the triangle intersection formula (used for determining if you can break bushes and crystals and rocks with the weapon) - noticed a bug that, when you press escape after previously pressing and cancelling escape, for a single frame it shows the full text, before scrolling the text in again - tried and failed to use surfaces for drawing textboxes -- the mechanics don't quite work out, there's no simple way to accurately add one letter at a time to a surface and have them all placed correctly without recoding a bunch of stuff; i may do this later but right now it's a bad idea - similarly tried and failed to use surfaces to display round rectangles (one of the slower drawing primitives), it doesn't quite work scaling-wise out because the roundness of the corner varies so much depending on the height and width of the round rectangle. it could work if i have a unique surface for every different size of the round rectangle, but - made textboxes grow larger rather than appear instance, it's nice to have things morph in or transition in rather than suddenly appear, it makes things feel more polished. i want to do a lot more of that kind of thing eventually. - changed a few instances of 'fps' in the code to the timer dll's more accurate measure of fps (updated every step rather than every second) - went through all particle creations and adjusted it to the fps (so that at slower frame rates fewer particles are created to ease the slowdown a bit). eventually i also want to change their speed and lifetime/duration based on delta time. |
|
|
| (no subject) |
[Dec. 15th, 2009|10:08 pm] |
- fixed a bug in the 'nomusic' variable (which measured how long to delay the return of the music for after a special music sound effect like the friending effect or the upgrading effect - fixed a bug where sometimes it'd ask you to upgrade before you have any functions at all (if you friend enough creatures through debug keys), causing you to get stuck in the upgrade screen forever; now it'll only ask you to upgrade if you have either venus or neotheo on the party (right now either will do, but later neotheo will be required) - found a bug in the radar (the color of creatures on it isn't consistent), will need to fix later - fixed a bug where it'd ask you to upgrade during the venusjoins script if you had accumulated enough friends by then; now it'll never ask you to upgrade when a textbox is running - fixed a bug in the checking for upgrades (it seemed to only run after you loaded your game or friended a creature, now it checks more often) - fixed a bug in the sight function's radar (it would only update when the player was moving) - did a further optimization of the object activation/deactivation script; it only updates when the view is moving - found a bug where the rakari getting stuck on the player no longer slowed the player down; fixed it - for some reason the 'light' wasn't drawing and i noticed i had commented out the light-drawing script for some unknown reason; i returned it to normal - fixed a bug in the distance at which you can acquire a creature sound (the distance was too small by about half and it was using the creature's top left corner instead of its center) - began testing the game at 20fps (capped). - at 20fps noticed that the zig engine gets larger (size should depend on relative speed, not absolute speed), and fixed it - at 20fps noticed that the player didn't accelerate as fast, even though the max speed was fine, and fixed that - at 20fps noticed that the distance that the player's engine part drags behind the player depends on absolute speed, not relative speed, and tried to fix it but my fix didn't really fix it much (not sure why) - same thing with ghosting effect for the player's equipped function - noticed pegai shakes weirdly at low fps, not sure why that'd happen... - noticed scylla's tail length changes with absolute rather than relative speed, and i know why it happens but this may be very difficult to fix (would involve a complete re-write and a new method) so i'll leave it as it is for now
in any case i think it's time i updated the playtesting version, and i want to see if the optimizations i made so far matter for slower playtester computers, so we'll call this v0.5. will now zip and upload and email out newer version. |
|
|
| (no subject) |
[Dec. 14th, 2009|11:30 pm] |
- figured out how to adapt the sinusoidal time rotation functions to delta time and did so (creation of a new global which is incremented by time rather than by number of steps) - optimization where i precalculate whether movement should be paused (based on its various conditions, so that all those conditions aren't checked by each object each step, just the global condition which is checked once per step against all those conditions -- whether a textbox is showing, or the escape menu, or the upgrade menu, or the map, and so on) - made the game pause during map display (it previously did not) - made the timing variables pause during some of the pause conditions, but not other ones that rely on it - adjusted creature healing rate to delta time - changed the saved games timing variable (which measures total time of play) to be depending on actual time rather than game steps. unfortunately this makes old saved games incompatible with respect to time, and after one load, they'll revert the counter and start from 0 hours 0 minutes 0 seconds again - changed another timing variable (steps since the room began) to take delta_time into account; this variable is used for a couple things (like fading in of the last room's image, and how you can't hurt enemies in the first second of a half after entering a room); this caused a bug in fading the last room's image, because i didn't take into account load times, but fixed it - made an optimization in how object speeds are adjusted to delta_time - made the delay between the ship's functions vary by delta time - changed a bunch of miscellaneous things vary by delta_time (by doing a global search for += 1 and -= 1 and seeing if it makes sense to multiply that by the length of the frame factor, and doing that when it did) - made text speed scrolling vary by delta time; had a bug at first but managed to fix it; i think it had to do with (not variablename) resolving to false if it's negative rather than exactly 0, switching it to variablename <= 0 fixed it - a few optimizations in the title screen background wave script - optimized a few more loops with the var keyword - realized i could actually preserve time in saved games (without wiping out old games' save time) and did that - adjusted friending gain/loss rates to delta time by searching for friending += and friending -= in all scripts
now that i changed the game to change speed of gameplay according to delta time i need to go through the game to see what feels wrong / doesn't work and see what i missed etc. etc. |
|
|
| navigation |
| [ |
viewing |
| |
most recent entries |
] |
| [ |
go |
| |
earlier |
] |
| |
|
|