Beta Elemental Rooms!


chaosmage

Still Fresh
Joined
Apr 24, 2010
Messages
47
Here's a quick video demo of the current version of Elemental:

http://www.youtube.com/watch?v=ROc-lD6QTjo

So I've got 21 rooms of puzzles for Elemental so far.
Feel free to try them out, here are the files:

Put these in a directory:
http://www.splitreflection.com/~paw/py/el/elemental.py
http://www.splitreflection.com/~paw/py/el/elemental.txt

Put these in a directory inside that one named img:
http://www.splitreflection.com/~paw/py/el/img/ElLogo.png
http://www.splitreflection.com/~paw/py/el/img/icon.png

And then stick this in your home/username folder:
http://www.splitreflection.com/~paw/py/el/editor.txt

Now that you have all that, open a terminal in the folder that has elemental.py and run: python elemental.py

You'll get the main menu, and you'll have three options. Game, Editor, and Free Draw. Free Draw is pretty much the previous edition of Elemental, except with a pile of new tiles to work with and slightly higher res.

Game will load up the 21 rooms I've made, and Editor will let you make your own rooms. I recommend trying Game first.

Game uses the dpad and the o & p keys. Dpad moves, O jumps, P uses any elements you might have picked up. The object is to get to the exit in each room by using the elements in that room. Use the R key to restart if you need to (you can totally hose yourself if you aren't careful) and Escape or Enter will pop you out to the main menu. Hit Esc in the main menu to exit the game. Once you've beaten several rooms (or all of them), now feel free to fiddle around in the Editor.

Editor uses the same buttons that Game does. It loads up editor.txt and you can then fiddle around in it. L loads the current editor.txt, and S saves your changes to the current room to it. I recommend making a room, putting the guy where you want him (manually using jump and the dpad) and hitting S. Once it's been saved, you can test the room out and hit R if you get stuck. Touching an Exit tile will automatically move to the next room. If there is no next room, you get a blank one appended to the room list. You can hit X to copy a room are in, C will clear the room, V will insert a copied room before the current one, or a blank one if there isn't anything copied. B and N are Back and Next, useful for skipping around between rooms. E is a quick way to turn on the Eraser. F will toggle fullscreen (it's currently broken, I don't recommend it) and J will take a .png screenshot of the game.

I think that about covers it. Anyway, I am accepting submissions for rooms. If you make a room or pile of rooms you think are cool, feel free to link them here and I will add them to the game.

Try not to look too hard at the code, it's a total mess.
 
Oh my goodness. I was excited when you made a simple falling sand clone, but you've managed to turn the core concept into an actual game. This is awesome.

On top of the concept, it seems you already have it playing pretty solidly and have assembled some good puzzles (though I only played through seven rooms so far). I feel like the visuals could be improved, but I'm not sure how you would do that (though I will say the player character doesn't quite match the surroundings). Add some sound, and I think you've got a really solid game.

But what happened to water and fire creating steam? Also, a fire element that could be controlled might be useful, in addition to the constantly-burning one (or a water element that can't be controlled). Also also, have quantities given by element blocks be definable in the level editor. But all of these suggestions are just to add a few possibilities; there are already enough to make this game go a long way, so don't bother adding these if you don't want.
 
This is beautiful, well done .. I really look forward to playing with this! You could add 'sample trigger' points and tempo, and turn it into a sequencer too .. :)
 
Tempel said:
I feel like the visuals could be improved, but I'm not sure how you would do that (though I will say the player character doesn't quite match the surroundings).

I think that decreasing the size of the elements would go a long way to improving the visuals. I love Falling Sand games, and I think this puzzle concept looks great, but I would really like it to look a lot less blocky.

-God Ginrai
 
Last edited by a moderator:
But changing block size influences gameplay. I think that having the player character being the same size as one block works well gameplay-wise, and is probably easier to implement. Of course, having a larger or smaller character could be an interesting experiment if you're up for it.

Or you could allow rooms to have higher resolution, so everything (character included) is smaller on the screen. Smaller particles looks cooler, but too small of a character could easily get lost.

Or, without changing gameplay at all, you could simply create a variety of tiles to replace the current solid-colour blocks. For example, the wood could be made to use one image for a straight segment, on for a bend, one for an end piece, y'know, kinda like standard 2D tilesets. Does that make sense? I wish I could offer to make such a thing.
 
Tempel said:
Or, without changing gameplay at all, you could simply create a variety of tiles to replace the current solid-colour blocks. For example, the wood could be made to use one image for a straight segment, on for a bend, one for an end piece, y'know, kinda like standard 2D tilesets. Does that make sense? I wish I could offer to make such a thing.

Dynamically changing tiles based on the elemental interactions would be more work than using smaller blocksize.

-God Ginrai
 
Last edited by a moderator:
God Ginrai said:
Tempel said:
Or, without changing gameplay at all, you could simply create a variety of tiles to replace the current solid-colour blocks. For example, the wood could be made to use one image for a straight segment, on for a bend, one for an end piece, y'know, kinda like standard 2D tilesets. Does that make sense? I wish I could offer to make such a thing.

Dynamically changing tiles based on the elemental interactions would be more work than using smaller blocksize.

-God Ginrai

Actually, I'm pretty close to pegging the processor at this point - check some of the waterfall levels, the elements move pretty slow. I have the character input and movement locked at 60fps, and the elements use 'extra' cycles - that's what makes it feel smooth.

What I plan to do are some tiles, the ones in the logo are pretty close to what I'm thinking of using. There hasn't been a whole lot of effort towards graphics, I've been focusing solely on gameplay.

As far as finer resolution... I intend to add it as an option later, so you could have rooms at different scales. It's a bit tricky, because more tiles is an exponential increase in processor usage, and as I said, the processor is somewhat pegged. I am trying to improve performance, however, and I would definitely like to do dynamic tiles, my next project will certainly want that tech anyway. I am just worried about the overhead.

Glad you guys are enjoying it so far, though!
 
Last edited by a moderator:
Tempel said:
Oh my goodness. I was excited when you made a simple falling sand clone, but you've managed to turn the core concept into an actual game. This is awesome.

On top of the concept, it seems you already have it playing pretty solidly and have assembled some good puzzles (though I only played through seven rooms so far). I feel like the visuals could be improved, but I'm not sure how you would do that (though I will say the player character doesn't quite match the surroundings). Add some sound, and I think you've got a really solid game.

But what happened to water and fire creating steam? Also, a fire element that could be controlled might be useful, in addition to the constantly-burning one (or a water element that can't be controlled). Also also, have quantities given by element blocks be definable in the level editor. But all of these suggestions are just to add a few possibilities; there are already enough to make this game go a long way, so don't bother adding these if you don't want.

Fire + water should make steam... I think the water goes to 'boiling water' first, then to steam... it's easier to get steam with lava + water. There is a Lava powerup too, so I figured a controlled fire element would be redundant (you'll see it in later rooms). If you think it would have some unique gameplay use, I can add it. Defining a block's storage would be a major rewrite - the save files only save what tiles are in the board, none of their qualities (the different element states are actually different tiles).

I've got a professional musician who offered to do sound, this will be the first game he'll have done sound for. I agree the game ain't much to look at, I'll get to that part soon enough. All the current graphics (except the title screen and icon) are 'programmer art', art generated by the software on the fly as it loads (including the player). I have the code to load in tiles, I just need to make them. =D

Edit: Huh, you're right. Fire doesn't make water into steam anymore. Odd. I might have done that intentionally (to make some water/ice/fire puzzles work better) at some point. It might be a bug. The element list is at something like 60 elements now, so I'd not be surprised if there are a few unintentional interactions in there.
 
Last edited by a moderator:
chaosmage said:
If you think it would have some unique gameplay use, I can add it.

Is there an Air element? If so, you could have enemies that suffocate if you introduce fire to the air. (wasting the oxygen)

-God Ginrai
 
Last edited by a moderator:
i thought this would be a world of sand type of game...
http://www.onemorelevel.com/worldofsand.php

there was a ds-clone
http://forum.gbadev.org/viewtopic.php?t=12027

in the ds version each particle is a pixel big, if the ds can handle that then the pandora should too, since the pandora is so many times over, more powerful compared to a ds.
bad coding? python to blame? i have no idea, but that few particles eating the cpu seems unreasonable
 
GizmoTheGreen said:
i thought this would be a world of sand type of game...
http://www.onemorelevel.com/worldofsand.php

there was a ds-clone
http://forum.gbadev.org/viewtopic.php?t=12027

in the ds version each particle is a pixel big, if the ds can handle that then the pandora should too, since the pandora is so many times over, more powerful compared to a ds.
bad coding? python to blame? i have no idea, but that few particles eating the cpu seems unreasonable

Actually, the best sand game I've seen is this one: http://dan-ball.jp/en/javagame/dust/

Sooo many kinds of elements, and it has a little player character too.

Yes, Pandora should be able to handle more tiles, but not in my engine. I am not much of a programmer, and I'm using Python, which just isn't as fast as C++ or other compiled languages. The platformer has always been my intent, what I was building towards. I don't expect to get single pixel particles in this engine.

Powder (the link I provided above) is a binary, so I expect it was probably compiled.

If you want a single pixel per particle, go ahead and build it. I doubt that Elemental will ever be that game. The tiles are currently 20x20 pixels. Which means that running at single pixel per particle will be a 400x increase in processor usage. Not 400%. 400x. So my current engine would need something like a 50Ghz machine to do that.

When I am done, I'll release the code and anyone who wants can fiddle with it. Port it to C if they like.

Edit: Fiddling around with the Powder web game: they restrict you to 20000 dots. I allow up to 24x37 = 888 dots. So about 22x usage. Of course, the Pandora has a rather high res screen (384000px), the Powder game has a 400x300 resolution play area (120000px). I'm running the Powder game on a quad core 2.5ghz machine (probably only using one core on the game) and I can get the game down to 10fps by filling it with stuff. So yeah. This is a processor intensive kind of toy. If I were to build the engine from scratch with speed in mind and without the overhead for the little player character/input... I could probably squeak some more speed out. Maybe I'll do that eventually, but I have other games I want to make first.
 
Last edited by a moderator:
The .pnd for this is now up on the Appstore!

Elemental 0.2

There are several more rooms, and some rooms are a bit more detailed than before. See if you can get to the last room! (the last few are pretty tough)
 
Back
Top