SAUSAGE

Super Awesome Ultra Sexy Adventure Game Engine — or SAUSAGE for short (sometimes I substitute Uber for Ultra but I think I like Ultra better).

All kidding aside, This is the first test of a Sierra OnLine AGI-style adventure game engine. It will have a text parser as well instead of point and click. This first bit is a test to see how I would do some of the collision stuff. I haven’t yet worked out how to structure it all.

Collision was giving me trouble as usual. But I’m also using FlashPunk which means I was trying to use the FP collision stuffs instead of rolling my own. It has something called a PixelMask which allows for pixel perfect collision detection. However the problem is, that it doesn’t give you the point of collision. So I had to work out based on the direction the sprite (the roger image) was moving, when it hit the “floor” mask. Which is essentially a pixel mask of the walkable areas. After some struggle and some help I was able to manage to get it not to jitter when it collided. In any case it works, although it may be buggy, if anyone could let me know if it is buggy. It decides what to draw in front of something else by flashpunks layer system. The higher the layer the further behind it is. So I simply subtract the y position of any object from the height of the screen/window in this case 200 to come up with the correct layer number. Works great.

Anyways here’s the first test. Just use the arrow keys to move, and that’s about it.
SAUSAGE Engine Test

Alternate engine test with sliding that isn’t that great.

Test dealing with layers.

3 Responses to “SAUSAGE”

  1. Works perfectly: no bugs. The layering is correct. Next step would be to allow “sliding” when colliding against curves surfaces so you don’t get stuck so often when touching an edge of something. Keep up the great work! I would love to see some great SCUMM style adventure game come out of this.

  2. Uhfgood says:

    Unfortunately the way I’ve done the code, and the fact I was using Flashpunk for collision means I can’t separate the axes. I also can’t find the exact point of collision which would have been helpful to set the position of the entity when it collided with the pixelmap. I think I will have to write my own collision code.

Leave a Reply

 


%d bloggers like this: