Development Diaries

snapman's picture

Weekly Updating 2: The Best Movement

Welcome to part 2 in our ongoing series of weekly updates on my experiments with my old friend, Klik & Play. Last week I discussed linked/paired object chains, and their potential application to swing simulations. While I considered using this week's entry for a further discussion on pairing or the advantages of wait-based simulation, I decided to talk a bit about one of the most overlooked object movements in KnP: The Platform Movement.

The Platform Movement is generally looked down upon. It doesn't function well with sprite animations of irregular height and hotspot combinations, landing a jump zeros horizontal momentum, its rudimentary inertia simulation mirrors momentum when the player tries to switch directions, and the wall jumping bug is well known. But despite all this, the built-in platform movement has great potential.

If you've every tried to make a two-player game with the platform movement, I'm sure you've noticed that the "bounce" condition when applied between two platform movement objects treats the slower/unmoving player as a wall. But a simple trick can change that dynamic. One of my recent experiments was to try transference of inertia between platform objects of different speeds. It's simple. Three events. The first tests collision, and object A moving faster than B. If A is faster, B takes its direction, and both object swap speed. The second tests collision, and object B moving faster than A. If B is faster, A takes B's direction, and both objects swap speed. The third event simply tests collision, and results in a bounce. The effect of this (with tweaking) is the ability to unexpectedly shove the other player off a platform, or into a trap.

But the greatest potential I found came from not using the platform movement as a player movement. Set a number of these object to control by an imaginary player 2, and lock player 2 input at the start of a level. When two of the same collide (from being shoved by a player object), "switch position with another object" and the two appear to transfer inertia from horizontal collisions! I've found a few other tricks with locked platformer objects, but I'll probably save them for the next KOTM. It's coming up in about 11 days, I think?

edit1: fixed a few typing errors. Original post was written under time constraints.

Pizza Time's picture

Zombie Slash Bikini Killers, the list-ening

I've decided to compile a list of stuff for the next release, for shits and giggles. Feel free to print it off and tape it to the side of your monitor so you can add exclamation marks next to the features that I neglect to add.

- Sexy combo animations
- Zombies that change attacks/animations based on how much of their
shit gets messed up
- Use hitboxes for attacks instead of that separate sword-trail object
- Hidden meaning that compares the relationship of the zombies and
the claustrophobic urban setting as some sort of reference to the
mental struggle of humanity and their modern day environments
- Puddles of gore that hang around due to the low amount of on-
screen dead people (so no huge swarms like in Dethbus and
Zombie Invasion: the Body Explosion).
More blood+less zombies=more violence!
- Trash and chaossss!!!!

snapman's picture

Potential Controversy

Two days ago I had an incredible idea for a hilarious, but easy to make game. I've spent some time collecting the basic sources for it, ranging from sounds to art, to ideas, to "implementation/translation". There's just one problem with this idea. It is likely to be highly controversial. It's a parody of a well known game series, but with a strong message, that is likely to upset a fairly large group of people. The presentation is pure Stephen Colbert, where I present ideas in an accurate, but self-contradictory manner.

The game would not be fun, for the most part. Much of the humor would come from this fact. But it would be interesting, and informative.

I sometimes wish Glorious Trainwrecks had private messaging. I'd like to ask SpindleyQ if he feels it's appropriate or not. If I find him on IRC, I'll ask him there. If he thinks it would be too much hassle for Glorious Trainwrecks, or not in the spirit of the site, I'll take the idea in another direction: either as a Shockwave Flash game submitted somewhere else, or as an animation on YouTube.

My first instinct was to make the game in Klik & Play, simply because I've been getting to grips with the system again, and I thought it would be a fun experiment. But the topic may be too serious for the light-hearted nature of our community.

Pizza Time's picture

Zombie Slash Bikini Killers

Test release.

Use the arrers to catwalk strut around, Z to give it all some bladed wrist action and C to magically appear more zombies.

In my continued efforts to avoid working on Monster Mashers (and due to a bolt of inspiration) I am now working on what is basically Oneechanbara with a dinky visual style and more exploitive animations. I've laid down the basic groundwork here which I will obviously elaborate on further. Zombies will wander around aimlessly until they approach a 64 pixel radius to you where they will then home in. Slashing them with your sword will cut them in half when they will shortly disappear. Only a maximum of 32 zombies can hang around at once if you ignore the few that are hanging around at the start, slightly more than 32 if you leave those cats be. I intend to enlarge all the sprites but only after I have all the animations done so you'll have to bear with the titchy bird and her dead friends for the time being.

Next version will probably have more attack animations (combos!), blood, zombie dismemberment and my version of the 'tired' animation which is totally different as it involves more ass shaking and breast swaying. Achievement Unlocked: Objectivism Get!

snapman's picture

W.U.1 Addendum

Attached are screenshots from my linked even/odd object pairing tests. There are two shots of the rope/grappling hook test (old version) and three from an attempt using the same idea to generate artillery-like landscapes. (I have it set up to make the ground in the middle steeper than the flatter terrain, in hopes of it generating mountains.)

Sorry about the boring solid-colored research-paper-like graphics, but I am just messing around with behaviors and effects right now.

snapman's picture

Weekly Updating 1: Grappling Hooked

In an effort to help this site grow, I will be giving weekly updates on my various experiments with Glorious Trainwreck's favorite democratized game creator, Klik & Play. I haven't used KnP in 8 years, during which I've learned a fair amount about both programming and game design by making games in other languages, and working towards obtaining a college degree in computer science (the last part being in the last 3 1/2 years). So far, returning to the event-based game design paradigm has felt extremely limiting. Many simple things I could do in more advanced languages are either difficult or impossible to accomplish in Klik & Play. What I've found very interesting, though, is that solving Klik & Play problems rely on both computational, and physical strategies. What would be impossible to do with the built-in object movements can usually be done with numbers, and what is difficult to do with the limited calculation abilities of Klik & Play can be assisted with the built-in movements, or other properties and behaviors of the program.

One of my later projects in KnP was an attempt at recreating the grappling hook, or "Ninja Rope" from the game Worms. At the core of my original design was a platform movement object constantly shooting particles at the grappling hook center point. I assumed that I could measure the distance from the player to the center point by the number of particles not destroyed by contact with the hook. Whenever the number was too high, I would lift the player higher. Eventually there would be some swinging code, changing angles, and everything would work out fine. Of course, this didn't work at all. The player quickly levitated off-screen, never to be seen again.

Yesterday, I took up the problem again. My first notion was to create chained object groups in even-odd pairs, aligning them by hotspot to action point. After a lot of testing various object selection methods (to some rather hilarious and frustrating results), I found a simple cycling scan worked best to build a segmented chain. I could easily manipulate the length by setting visibility cutoffs for chain elements with values higher or lower than the desired length. The biggest drawback to this multi-object line was the apparent refresh rate, due to the cycling update. With only 16 chain elements, the fastest I could rotate the construct was once per 30/100th of a second. I went as far as adding objects to calculate and visualize impulse speed (IE: letting go of the rope), but the results were inconsistent.

Today I plan to revise the system to a two-origin line, by calculating the end point of the chain directly, and drawing the line from both ends. This should effectively double the refresh rate, and thereby the maximum rotation speed. But by calculating the end point directly, the chain becomes not the driving force of the simulation, instead a visual cue. If the visual representation of the chain becomes broken slightly at high speeds, at least the actual positioning of the end point will remain consistent.

I have taken screen shots of this experiment, but I'm not currently at the computer they're on. I might post them later if people are interested in them. Next time I'll either talk about the difference between a swing simulation powered by update wait adjustments vs distance adjustments, or I'll talk about misuse of the built-in platform movement to approximate a limited physics simulation. Whichever people are more interested in. Or I'll post some pixel art. Who knows for sure!

Back in the heyday of Klik, I sometimes called myself "The Master of Useless Effects". I've spent a lot more time on game design balancing as of late, but sometimes it's just fun to make effects. At least now I have a better chance of transforming these ideas into finalized projects!

snapman's picture

Statement of Purpose

While I realize this community is relatively new, it seems a pity that so few people participate in such an inviting opportunity to rapid prototype simple games and quickly receive feedback. Much of the humor of this site comes from the internet stigma of Klik & Play, which can both serve as a retro incentive for creators to return to using tools they had long since discarded (and discover new possibilities), and to deter potential creators with our self-deprecating ironic use of horrendous pre-amateur design. While we can appreciate the unique aesthetic of non-design, it should not be the isolated goal of Glorious Trainwrecks to reproduce the past without recognition of the present. There have been changes in the independent gaming scene. Just because we use a tool from 1994 doesn't mean we must use it as it was used in 1994.

A defense of Klik & Play:
On the surface, KnP may appear limited. And in many ways it is. Events will never be like lines of code, and "Active Object" is not the only class we need. But consider this: Many of the games gaining recognition in the independent gaming community today could have easily been produced in KnP, if not for a few surface details in graphics. KnP could be used to make interactive comedy like "I wanna be the Guy" or "Death Worm". It could be used to make surrealist experiences like "Psychosomnium", or introspective commentaries like "Passage". It could even present political commentary like "Harpooned". KnP may lend itself more easily to comedy, but it gives your average Joe a chance to try to say something with a game.

My goals here on this site are twofold. First, I will use my participation in the KOTMK to experiment with pure game design. I wish to see what new goals I can set for a player, and what new ways I can have the player interact with a system. Secondly, I will begin a Hosted Trainwreck, the purpose of which will be to push the boundaries of advanced KnP event writing. KnP is capable of far more complex things than we think. The Moteur engine proved this. KnP Tetris proved this. Time and time again, people have done unexpected things with a limited palette.

And who knows? Maybe my impression that KnP still holds potential is perfectly in line with the overambitious naive klikkers of yesteryear. If my lofty ideals are doomed to irony, there is no better place for me to fail than here.

Shovel some more coal on the furnace, and sound the steam whistle. This train is on its way.

Pizza Time's picture

A look at sprites

I haven't done anything regarding the engine since the last entry, instead I've been animating a golem character. Until I pixel wolfman and vampire sprites this will be what players will control during most of the developmental stages. It's not really placeholder art, I intend to keep him in as a third character when the other two are done then I can work on a fourth character as this game will have support for four players.

All the animations aren't finished yet, I have to add two more throwing animations (and fix up the leg on the last sprite in the 'throw left and right' animation), a hurt animation, one for falling over and a victory animation. Then do everything over again thrice more.

kirkjerk's picture

Earth Defense Force 1817

So my comment on Pizza Time's Monster Mash ideas and my love of Earth Defense Force 2017 has led me to


A KNP effort. The game play lacks that certain something, but it has some elements I dig:
* Robotron style controls
* Looming Alien Ships with Shadows
* Bugs who track you down but have to move around the buildings

I think some of these elements could be used in future games.

In the unlikely chance I can't make it to the KotM I'd like this to count as my entry...

PenguinSeph's picture

New version of Grand Theft Shmup! v0.04!

New version of Grand Theft Shmup! YAY! As this is a rapid prototype, new versions should be very rapidly released.

This game is becoming a really weird shmup. I heard that dashing doesn't give good feedback to the player, so I added a trail, and I then wanted to show enemy bullets bounching off the dashing player, so I made it so that enemy bullets colliding with the trail are replaced with player bullets going the other way. This had the side effect of meaning that whenever the player dashes, he creates a shield from enemy bullets that lasts a second.

I think it's kinda cool, but I'm not sure if I should leave it in. Any feedback from you guys?

Also, I think I should make it move obvious that you can take over the enemy ships by touching them while not dashing and that you can destroy enemy ships by dashing into them, as not many people are going to try to collide with the ships on purpose. Maybe I could add a prober help screen next version? Or a tutorial or something?

Changes to v0.03 are:
Dashing now creates a shield that defects enemy bullets.
Dashing now make a noise.
You now cannot dash the whole time.
Sub Boss appears sooner, and is harder

PenguinSeph - Game Design, Programming (I used MMF1, but it's still kinda programming), "Art"
DrPetter of for making sfxr
Everyone who has commented so far!

The controls are:
Arrow Keys - Move
Shift - Dash (while in dot mode) or Shoot (while in Ship mode)
Control - Jump out of ship.


I think this is starting to come together. Once the prototype yields a solid, playable mini-game (I'm shooting for one level) I can start production proper. I guess I'll need some decent graphics at that point.

Syndicate content