Gaming Sand Game

Sausage Head

Lord Sausage LXIX
Member
Joined
Oct 28, 2010
Messages
1,675
Solutions
4
Reaction score
26
Trophies
0
Age
24
Location
alanjohn check ur pm
XP
220
Country
Netherlands
I made a "falling sand game" with Java (or actually Processing) in the past 3 days.


11cdz01.png

It's a screenshot


I based it on the source code from Pyro Sand. I made some personal changes:
  • Removed the sources (Sand, water, salt, oil)
  • Made the menu smaller (Bigger playfield)
  • Removed the pen-type menu (Size of sources and stuff)
  • Removed some unrealistic elements (Spout, well, plant, eraser is now right-click)
  • Removed the element C4 (I plan to keep only one solid element, "wall")
  • Added lava, acid and propane-gas
  • Added mouse-click related stuff (Left click: size 2 draw, middle click: size 4 draw, right click: size 4 erase)
  • Added screenshot ability (Key "C")
  • Added clear function (Backspace)
  • Probably more, but I forgot

The reason I'm posting this is because I have no ideas of what elements to add. I've done almost nothing today and yesterday, and my goal was to make a clone of Powder Game without the wind physics and only realistic elements.
If you want to see a specific element in the game, please tell me. It has to be a realistic element, with programmable physics. No life-forms. (I know, this is stupid to say, but ha55i (Creator of Powder Game) added "bird" in his game as an element. It's useless, and it lags like hell)

The current version is the first public release, it's a stable, so everything that's implemented as of now will keep that way. You will need the Java Runtime Environment-thing to be able to execute Java Archives (JAR), so make sure you have it before asking why it doesn't work. (It's not like I expect this from people on here, but still, I'll say it anyway)

Download
Note that this is my first project with Java/Processing, so it's probably not fully optimized.
I might release the source code (if anyone is interested) when I stop working on it.
 
Wow, this looks cool! Nice work!

Played around with it for a bit, some feature requests:
  • A way to change cursor brush size
  • A way to differentiate propane from the background
  • Some explanation on buttons in the game/program itself
Good luck with this game!
 
Berthenk said:
Wow, this looks cool! Nice work!

Played around with it for a bit, some feature requests:
  • A way to change cursor brush size
  • A way to differentiate propane from the background
  • Some explanation on buttons in the game/program itself
Good luck with this game!
Thanks for your feedback, Berthenk.
In the original source code, there was a menu to change the brush size (Check the Pyro Sand link to see it), but in my opinion the menu wastes too much space, for future elements. That's the reason why I added the left-click for size 2 and the middle-click for size 4. At the time of implementing it, I had no other ideas of changing the brush size. If you have ideas about that, you can tell me.

Propane is hard to see. In fact, it's almost the same as the background color. It might be annoying, but in real life propane can't be seen on normal temperature. Wikipedia told me.

I might write a manual on the interface and the physics, maybe a full documentation, but that's probably not going to happen soon. With new elements coming I'd have to revise it everytime. A small interface guide might be done, but I think pretty much everything is explained in my first post.

QUOTE(prwlr. @ Apr 24 2011, 05:08 PM) oh wow. i actually tried clicking the options on the screenshot.

the heat is getting to me.
That could've happened to anybody. "It's a screenshot" doesn't really say it's a screenshot, does it?
tongue.gif




Again, right now I'm stuck. I can't think of any elements to add. If you have any ideas, please tell me.
 
Gameking-4 said:
-glue
-gel

molten iron maybe, if your capable of making it hard when it hits anything...
Nice ideas, I might be able to implement glue.
But what would gel do?

I think molten iron is almost the same as concrete, but with some physics changed. Here's my view on iron:
If iron (solid element, like wall) gets hit by lava, it turns into molten iron. It sinks to the bottom of the lava, and when it hits wall, iron or water (and maybe other liquids) it turns into iron.
How does that sound? I think I can implement that easily.
 
Sausage Head said:
nice ideas, I might be able to implement glue.
But what would gel do?

If iron (solid element, like wall) gets hit by lava, it turns into molten iron. It sinks to the bottom of the lava, and when it hits wall or iron (and maybe liquids) it turns into iron.
How does that sound? I think I can implement that easily.

gel, a thick fluid which makes thing go slow? turns into water when thouched by hot things?

sound like a good idea! exactly what I had in mind.
 
Gel can only slow down things that are touching it -- which means only a small amount of the targeted liquid will be slowed down. It won't be possible to make the liquid "blend" into the gel, so I don't think it will be any useful if it's implemented.

I'm going to implement the iron and molten iron now. Thanks for the idea.
Do you have a preference of where it should be located in the menu? Just asking, I organized the menu as it is now based on... well, nothing, really.
 
Very nice, needs something to make it unique from the others though.

I've got a few ideas for improvements:
>Pre-made levels, i.e start with a floor or ceiling etc.
>Help
>Block (cannot be destroyed by the elements)

Also, i found a few bugs (sort of)
>When you set fire to nitro the explosion covers the interface (maybe deliberate?)
>When you're holding the mouse button down (placing an element) if you move mouse over the interface it changes element (can get annoying when drawing floors or wildly placing nitro
evil.gif
)
 
Sausage Head said:
Gel can only slow down things that are touching it -- which means only a small amount of the targeted liquid will be slowed down. It won't be possible to make the liquid "blend" into the gel, so I don't think it will be any useful if it's implemented.

I'm going to implement the iron and molten iron now. Thanks for the idea.
Do you have a preference of where it should be located in the menu? Just asking, I organized the menu as it is now based on... well, nothing, really.
I'd prefer it this way: iron turns fluid in fire/lava/explosion(?), and turns solid once it's cooled down (by anything, sand, water/any cold liquid). Maybe make it turn solid over an amount of time?
How about the number pad for changing the brush size?
And I guess you're right about propane being invisible.
Also, a button on the interface that triggers a new window displaying information about the game, its elements and controls?
 
Sausage Head said:
Gel can only slow down things that are touching it -- which means only a small amount of the targeted liquid will be slowed down. It won't be possible to make the liquid "blend" into the gel, so I don't think it will be any useful if it's implemented.

I'm going to implement the iron and molten iron now. Thanks for the idea.
Do you have a preference of where it should be located in the menu? Just asking, I organized the menu as it is now based on... well, nothing, really.
you're welcome, i'll keep telling you my ideas.

maybe on colour, function or with how many things you combine it

QUOTE(Wizerzak @ Apr 24 2011, 07:19 PM) >When you set fire to nitro the explosion covers the interface (maybe deliberate?)

this is true, also it goes away when you click on it. so not a major problem

EDIT: thunder/electricity would be a good element
maybe a better screenshot
tongue.gif
where you're doing stuff
 
Wizerzak said:
Very nice, needs something to make it unique from the others though.

I've got a few ideas for improvements:
>Pre-made levels, i.e start with a floor or ceiling etc.
>Help
>Block (cannot be destroyed by the elements)

Also, i found a few bugs (sort of)
>When you set fire to nitro the explosion covers the interface (maybe deliberate?)
>When you're holding the mouse button down (placing an element) if you move mouse over the interface it changes element (can get annoying when drawing floors or wildly placing nitro
evil.gif
)
Those aren't bugs -- they are just coded that way. Right now I can't fix it.
The element-selecting thing, however, might be fixed by setting it to "mouse button released".

About your ideas, in theory I thought I could make the game to load the pixels from a screenshot. I haven't implemented this, but I think it is possible.

Block might not be in the general playfield, as it isn't very realistic (maybe a real element, that has the same strength), but if there's going to be a ceiling, it'll be made out of "block".

Joe88 said:
theres tons of elements here

http://dan-ball.jp/en/javagame/dust/
If you read my first post, you could've seen that this is going to be a clone of Powder Game without the wind physics. Isn't it obvious I would've checked the game I'm planning to clone? Besides, half of them aren't really what I'm looking for. I got the idea for acid, lava and propane from there.
I'll check out the Powder Toy though. I've seen it many times, but I never really gave it a try.

Berthenk said:
QUOTE(Sausage Head @ Apr 24 2011, 07:16 PM)
Gel can only slow down things that are touching it -- which means only a small amount of the targeted liquid will be slowed down. It won't be possible to make the liquid "blend" into the gel, so I don't think it will be any useful if it's implemented.

I'm going to implement the iron and molten iron now. Thanks for the idea.
Do you have a preference of where it should be located in the menu? Just asking, I organized the menu as it is now based on... well, nothing, really.
I'd prefer it this way: iron turns fluid in fire/lava/explosion(?), and turns solid once it's cooled down (by anything, sand, water/any cold liquid). Maybe make it turn solid over an amount of time?
How about the number pad for changing the brush size?
And I guess you're right about propane being invisible.
Also, a button on the interface that triggers a new window displaying information about the game, its elements and controls?

I'll add your idea. That will mean that if iron is hit by fire or lava, it will become molten iron. It will not get solid by hitting other solid elements, but by water and such, or over time.

A button in-game will probably not happen, for the same reason as why I deleted the old pen-type menu (the yellow menu in Pyro Sand), but a documentation (HTML, with pictures) in seperate files will probably happen.
Still, I don't see why anyone would need much explanation. Is it because nobody here is familiar with falling sand games/powder game?
 
Sausage Head said:
Still, I don't see why anyone would need much explanation. Is it because nobody here is familiar with falling sand games/powder game?
Don't underestimate Sop...
On a serious note though, indeed, there might be some people out there that aren't familiar with powder games.
Also, any input on changing the brush size using the number pad?
 
Berthenk said:
Sausage Head said:
Still, I don't see why anyone would need much explanation. Is it because nobody here is familiar with falling sand games/powder game?
Don't underestimate Sop...
On a serious note though, indeed, there might be some people out there that aren't familiar with powder games.
Also, any input on changing the brush size using the number pad?
Ok, the documentation will come (as a seperate file, once the game has a load of elements)

Changing the brush size with the numpad is be possible, but where will it display the current brush size?
 
Sausage Head said:
Berthenk said:
Sausage Head said:
Still, I don't see why anyone would need much explanation. Is it because nobody here is familiar with falling sand games/powder game?
Don't underestimate Sop...
On a serious note though, indeed, there might be some people out there that aren't familiar with powder games.
Also, any input on changing the brush size using the number pad?
Ok, the documentation will come (as a seperate file, once the game has a load of elements)

Changing the brush size with the numpad is be possible, but where will it display the current brush size?
Make it display the brush size next to the version number on the program bar thing. Like this:
Sand Game -- Version 1 Size: x
I guess that would be the best option to make the interface less cluttered.
 
Ok, I'll put it in the window title.
But, if I ever make the game as an applet (in the browser, not displaying a window), it can't be seen.
I guess it won't matter that much, as it'll lag more in browsers.

Update: iron physics have been completed.
I can't really explain the physics, so you'll have to check it when the new version is released (glue will probably be included).

Update 2: Glue isn't coming in the next update. It's harder than expected.
I'm looking for new elements.
 

Site & Scene News

Popular threads in this forum