The Rendtest Cometh.
It’s that time again, entry 002 into the gruedorf challenge. Things have picked up in this challenge, with ragamuffin me-tooers joining left and right. Of course… none of them get top billing because they are neither ‘grue nor ‘dorf. Or using verge, for that matter. Tsk, tsk. Well… maybe we could make it the Gruedorf Code Challenge, since Code totally is using verge, and he has a suitably confusing nick. I guess to disambiguate we’d then have to make it the GrueDorf-Code Code Challenge. You know. For that ironic sort of disambiguation.
But I digress.
that slime is totally from sully. Thank Overkill.
My current update is a few hours of work into improving and debugging my vc-based Render Engine, lovingly known as the McGrender Engine. Currently in it’s 5th version (#4 is in the current build of Sully), it allows for custom auto-animated sprites, static images, or “roll your own” functions (ie, Callfuncs that get triggered when they’re up on the stack). All this is put into layer functionality so you can turn on/off layers as needed, and, say, render fancy effects between your background and your sprites, or just effect the PC sprite layer while not touching the enemy sprite layer. Etc.
Also in here is bubbling click items. Any image on in the McGrender system can be given clickable properties with a bubble-down effect: that is, if you had three clickable items layered on top of each other, you’d only activate the topmost visible clickable item.
The most notable virtue of the McGrender System in this demo is it’s automoving feature… which, as trivial as it is, is the reason I made mk I a few years ago. I just wanted to throw a sprite that, while animating, would move it’s location at an even rate without me having to worry about it after setting it. Unfortunately, non-linear movements presently need a custom function (whereas an OOP system could have some custom, but more reusable, implementation of the “Hey, I move in some way!” concept), but that’s fine.
Another small, but handy, feature that lets this bitch be largely hassle-free in keeping itself moving is the optional “OnStopMoving” callback function. You can see this in effect in the demo with the close-button’s movement. Everytime it stops, the rebounceX() function is called setting new destination coordinates and sending it on it’s merry way.
Instructions for seeing this in action
Okay, if it wasn’t apparent from the screenshots, talking to any of the flasks in the first room will start you into the rendertest demo. For the interested, the pertinent code is all in ./vc/rend/ with the mcgrender.vc and sprite.vc being the “system” files, and test_render.vc being the implementation of this demo (ignore general.vc in that dir… that was me being laaaazy).
once you’re in the demo, you can click on the slime to watch a demo of the sprite-autohandler (changing from “idle” to “death”) being triggered by the clickable feature, and clicking on the floating winXP “X” will stop the render engine demo, whereupon you can talk to a flask ans start it over. Exciting!
Click here to download the second Gruedorf release of Saga of the Stars/The Astrad. You’ll be glad you did… probably!
One last thing: new music!
Zathras was inspired to make the fourth major revision to Castle Alden’s music, which is far and away the best version to date. It’s much more soothing and gentle on the ears, and has a lot more in common with both Onam’s Theme and Amin’s theme. Nice! You can also check out Zathras/Matthew Steele’s Homepage at the newly minted zath.org. Good times.