JavaGaming.org

March 20, 2010, 03:33:12 pm *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News:
Advanced search  
Pages: [1] 2   Go Down
Print
Author Topic: Spiderball4k [updated, new map]  (Read 10852 times)
0 Members and 1 Guest are viewing this topic.
Morre
Sr. Member
****
Offline Offline

Gender: Male
Posts: 460


Apocaquatic syntomy.


View Profile WWW
« on: December 13, 2007, 02:58:03 pm »

Spiderball website and map archive:
http://www.x2d.org/java/4k/spiderball/

Spiderball4k:
http://www.x2d.org/java/4k/spiderball4k.jnlp

SpiderEditor:
http://www.x2d.org/java/4k/spidereditor.jnlp

Spiderball with replays (currently not 4k):
http://www.x2d.org/java/4k/spiderballreplay.jnlp

Currently, there's a pretty low number of maps. It weighs in at ~3950 bytes, so there's a bit of space for more maps (at least low-poly maps). Might replace some of these maps, too. I'm not doing injection so that just might decrease size further, at least for the maps?

Any maps made in the editor can be saved as a string (notepad, yay) and loaded again, and they can be loaded from within the game itself by pressing "L". I'd love to see any maps you make (the map editor should be fairly easy to use), and I might use one or two of them in the game if you post them here Smiley

Controls:
- Left click to fire yellow rope, right click to fire red rope.
- Z and X fires yellow/red ropes too, for mac users.
- Alternatively, holding CTRL lets you fire the red rope with left-clicks.
- Q and W to skip levels backwards and forward.
- L to load a map.
- Map editor has instructions in the editor window.
- In the replay version, press A to save a replay when it says "click to begin", and A to load when in a game.

   

Above are screens of the game and editor.

As always, any comments or thoughts are appreciated and very welcome! Smiley

UPDATE: Better mac support.

UPDATE2: I've altered key firing. Now holding CTRL lets you shoot the red one with left-mouse, yellow is fired as usual (left-mouse with no key).  Also, I've added Q and W for level skip.

UPDATE3: I've added a link to the version with replays, added a timer to both versions, and added a link to the game's website.
Thanks to Laundon for website backend (map preview generation and stuff like that) and the very awesome replay functionality! Smiley

UPDATE4: Z and X fires the yellow/red ropes respectively for macs (ctrl+mouse works too). Also, one new map, level 10 (tricky one!).
« Last Edit: February 29, 2008, 04:12:04 pm by Morre » Logged

Hansdampf
Sr. Member
****
Offline Offline

Gender: Male
Posts: 328


too offending?


View Profile WWW
« Reply #1 on: December 13, 2007, 03:31:07 pm »

That was fun!  Smiley

maybe you could limit the amount of shots per level so you can't advance in micro steps or reward the player with a bonus score for not using all shots. Really nice game.
Logged

lots of sillystupid games: http://www.emaggame.com
Abuse
JGO Kernel
*********
Offline Offline

Posts: 1758

falling into the abyss of reality


View Profile
« Reply #2 on: December 13, 2007, 03:32:30 pm »

Sweet game!

Captures the spirit of Gish!

Very satisfying completing it!  Grin
Logged
Morre
Sr. Member
****
Offline Offline

Gender: Male
Posts: 460


Apocaquatic syntomy.


View Profile WWW
« Reply #3 on: December 13, 2007, 03:46:56 pm »

Thanks! I'd never heard of gish until now Smiley
Regarding the small steps, I think it's okay - most people seem to think it's too hard as it is, but I don't know.
Please, feel free to post levels! I want more to put in the game :>
Logged

tom
JGO Neuromancer
*******
Offline Offline

Gender: Male
Posts: 1015



View Profile WWW
« Reply #4 on: December 13, 2007, 11:53:22 pm »

Great game!!
Logged

Markus_Persson
Global Moderator
JGO Kernel
*****
Offline Offline

Gender: Male
Posts: 1996


Mojang Specifications


View Profile WWW
« Reply #5 on: December 14, 2007, 12:37:09 am »

Oohh, addictive! Feels really solid, nice game. =)
Logged

Play Minecraft!
jojoh
Moderator
Sr. Member
*****
Offline Offline

Gender: Male
Posts: 426


games4j.com


View Profile WWW
« Reply #6 on: December 14, 2007, 02:41:24 am »

Great fun!

Very well implemented also. Simple to control, yet quite challenging. Yes, hope to see some more levels. Maybe give score according to how fast one completes a level? It does have a bit of Gish spirit, and a good dose of extremeclimbing

Have to test the editor now.
Logged

oNyx
JGO Kernel
*********
Offline Offline

Posts: 2863


pixels! :x


View Profile
« Reply #7 on: December 14, 2007, 02:54:33 am »

It's so awesome! :O
Logged

弾幕 ☆ eee gamesze blog
irrisor
Full Member
***
Offline Offline

Posts: 210



View Profile
« Reply #8 on: December 14, 2007, 04:26:54 am »

Hey, this is cool! Great idea!! Cool - and very well done
Logged
CaptainJester
JGO Neuromancer
*******
Offline Offline

Gender: Male
Posts: 1014


Make it work; make it better.


View Profile
« Reply #9 on: December 14, 2007, 05:43:05 am »

Very nice.  One option you could add to the map editor is the ability to clear the entire level to start over.


Try this map.  I was able to complete it by luck.

1e0c4c0a7e177f417b5e255c2349584c56291735301e2d51,271165397538
Logged

irrisor
Full Member
***
Offline Offline

Posts: 210



View Profile
« Reply #10 on: December 14, 2007, 05:51:31 am »

Very satisfying completing it!  Grin
Tongue
Logged
CaptainJester
JGO Neuromancer
*******
Offline Offline

Gender: Male
Posts: 1014


Make it work; make it better.


View Profile
« Reply #11 on: December 14, 2007, 05:55:07 am »

Here's another tricky one.

3226632662303a313a366336634e324e32455844583e323e31305c2a374b,3d2e473a604058294c4b
Logged

CaptainJester
JGO Neuromancer
*******
Offline Offline

Gender: Male
Posts: 1014


Make it work; make it better.


View Profile
« Reply #12 on: December 14, 2007, 07:29:13 am »

Some more levels.
Code:
2a012865786478256b256b20772078014d5d4e04,49595259695933585825442532243d514d525f526e52314844495549664a3b3e4d405f4070403036453657366c36612d4d2c3c2d3b1b4f1a601a2f13431358126d13680759074b093a08

1a4e7361735135021d062a066d52,

0c63130f230a23527350791b6b1b68452a452b0941093f3a573b61235606820784631a13360f,322142415041245b3b5c555c6d5c7c3363306f103514
Logged

Morre
Sr. Member
****
Offline Offline

Gender: Male
Posts: 460


Apocaquatic syntomy.


View Profile WWW
« Reply #13 on: December 14, 2007, 07:51:22 am »

Thanks for all the responses! I'll be sure to test all those levels, Captain Smiley
Also, you can "sort of" clear the map. Just press L and load an empty string, it'll reset the whole thing and say "could not load map".

EDIT: Hadn't seen extremeclimbing either - yeah, it's similar Smiley

EDIT2: The first one was really simple if you know a little trick - if you fire ropes into thin air at regular, long intervals (1 sec or more) you can "fly", sort of. I've thought of disabling this feature but I kind of like it as it is Smiley

The second one was really good. With your permission I might add it into the game.

EDIT3: I've now completed them all. Number 3 was interesting, with all those balls. Number 4 on the easy side, and number five I liked - quite a challenge, although some of the passages seemed to have balls that weren't really needed Smiley

Good stuff! Just one thing, I try to keep it so that the ball will always start out attached to something (never falling towards its death in the start). Dunno. Smiley
« Last Edit: December 14, 2007, 08:08:14 am by Morre » Logged

CaptainJester
JGO Neuromancer
*******
Offline Offline

Gender: Male
Posts: 1014


Make it work; make it better.


View Profile
« Reply #14 on: December 14, 2007, 08:45:11 am »

Thanks.  You can use any of the levels that you want.

Yeah, I was thinking about that first one, but left it with the spider falling because the ball is close.

Some of the balls in number 5 were to just provide an obsticle.
Logged

CaptainJester
JGO Neuromancer
*******
Offline Offline

Gender: Male
Posts: 1014


Make it work; make it better.


View Profile
« Reply #15 on: December 14, 2007, 11:10:44 am »

3 more
Code:
0837235e32513149204927422a1817221611341031463c47402f592e621068115f344f3e41403b4e4d668b588c048304744b57535147683c77065d04512440253d050c06274b870c,38358523842d863b7d3c391a

0d0e0e597658713a693b674f1a4f1a4362435d3073337325612555255038213a1833161d741d730e3e526b2a,5837291539154b145f146c1531554e546e4b2a3f

0b648f628e587c587b538e538d3c1a2a1a258d378c020a030d15832a832f0c1b815a1208,7755124d5445323e892d881f6b1a5215390f2209

Do the rocks move after a level starts?  I have some rocks placed in a specific spot, but some of them don't end up where I placed them.
Logged

Morre
Sr. Member
****
Offline Offline

Gender: Male
Posts: 460


Apocaquatic syntomy.


View Profile WWW
« Reply #16 on: December 14, 2007, 11:13:09 am »

Yes. All rocks have a speed of "1", which is... pretty slow, to the right, when they start. They then gradually slow down and stop. Should I alter this behaviour?

I'm uploading a new version with overhauled levels 1 and 2 (easier, I hope), and two new levels. One is mine, one is a slightly altered version of a level CaptainJester did. Smiley

I also changed key behaviour (now holding CTRL works as a modifier that lets you shoot the red one with mouse1 instead of the yellow).

Also, I added Q and W - level skip keys, backwards and forward respectively.

There seems to be quite a few people that suggest adding time limits, timers (for speed runs) or limited number of shots? Personally I'd think a timer was okay but only for high-scores, not limits. What does everyone think?

EDIT: I managed to complete two of your maps, but they were very tricky. The first one I go to the very end and then died just by the goal Smiley
« Last Edit: December 14, 2007, 12:18:27 pm by Morre » Logged

CaptainJester
JGO Neuromancer
*******
Offline Offline

Gender: Male
Posts: 1014


Make it work; make it better.


View Profile
« Reply #17 on: December 14, 2007, 11:45:56 am »

It is up to you if you want the rocks to move.  The level still works.

Definitely keep the flying behaviour.
Logged

CaptainJester
JGO Neuromancer
*******
Offline Offline

Gender: Male
Posts: 1014


Make it work; make it better.


View Profile
« Reply #18 on: December 20, 2007, 12:01:45 pm »

Got another level for you.  There are a couple of graphics glitches I can't fix, but maybe you can.

Code:
94030203020d8559242a183d3f3c334822482a3f233d183d054309605362615a715a72617e62815b8f638d51120c8e3e93238923471b350e8a168923932327346f24,26190c07785c4240815053368e1f4119
Logged

Morre
Sr. Member
****
Offline Offline

Gender: Male
Posts: 460


Apocaquatic syntomy.


View Profile WWW
« Reply #19 on: December 20, 2007, 12:18:16 pm »

Passed, pretty cool map Smiley

As you may or may not have noticed, old maps are slightly altered - this is because I had a bug that displayed maps differently with different window layouts. I've fixed this, but it led to some maps being slightly broken (not very much for the most part), and I've updated the 9 official maps accordingly. I've also replaced level 1 with an easier map. There's also a version with replay functionality, but it's some 4350 bytes. I'll try to squeeze it down but if I can't, I'll put it up too as a non-4k version (because speed runs are fun!).

Also, there's a map archive in the works. Will link to it as soon as it's ready Smiley

EDIT: There - the map archive and a non4k version with replays is up. Laundon made both the website backend and added the replay functionality - very thoughtful! Please let me know if you think I should keep working on adding replays to the 4k version, or if I should use the space for more maps instead Smiley

Here's a link: http://www.x2d.org/java/4k/spiderball/
« Last Edit: December 20, 2007, 03:20:53 pm by Morre » Logged

nva225
Sr. Member
****
Offline Offline

Gender: Male
Posts: 298


View Profile
« Reply #20 on: December 21, 2007, 09:50:33 am »

Very nice.  One option you could add to the map editor is the ability to clear the entire level to start over.


Try this map.  I was able to complete it by luck.

1e0c4c0a7e177f417b5e255c2349584c56291735301e2d51,271165397538

Replay!
29 3a2 18b 2 3b 388 138 1 52 386 147 2 6a 39c 143 1 7e 3bf 156 2 90 3de 15e 1 a7 401 167 2 be 424 16d 1 d5 42a 173 2 ea 452 174 1 102 477 173 2 117 496 171 1 12c 4b4 170 2 141 4d2 16d 1 157 4f1 16c 2 16b 50d 16d 1 181 52f 16e 2 199 556 16e 1 1ae 574 16c 2 1ca 58c 16d 1 276 5c7 2f5 2 27b 5c8 313 1 28c 5cf 373 2 2a5 609 411 2 2c8 5e0 50e 1 2e0 540 451 2 2ef 542 464 1 2f5 540 470 2 338 466 47b 2 341 450 47b 1 384 3b3 469 2 389 3a5 46a 1 3bf 303 46f 2 3c4 2f5 46f 1 431 2d1 47e 2 434 2ce 47b 1 46a 2c7 58f 2 46b 2c5 58e 1

Wondering if you did it that way?  Tongue

Logged
Abuse
JGO Kernel
*********
Offline Offline

Posts: 1758

falling into the abyss of reality


View Profile
« Reply #21 on: December 21, 2007, 10:55:15 am »

I'd suggest trying with quadratic, or cubic curves to get rid of all those hard edges - it might even allow you to reduce the poly-count on some of the levels.
Logged
Morre
Sr. Member
****
Offline Offline

Gender: Male
Posts: 460


Apocaquatic syntomy.


View Profile WWW
« Reply #22 on: December 21, 2007, 02:52:30 pm »

Hm. That's an interesting idea... It might help poly-count for some levels but given the fact I'd need control points it might also increase it. As it is, the level's rendered using fillPolygon (gasp!) which is more or less the reason it's so slow, so it'd be a quite big change to the code. I'll give it some thought Smiley

EDIT: Cool stuff, all those maps added to the site CaptainJester! Keep it up! Cheesy
« Last Edit: December 21, 2007, 03:46:36 pm by Morre » Logged

moogie
JGO Ninja
*****
Offline Offline

Posts: 712


Java games rock!


View Profile
« Reply #23 on: December 21, 2007, 06:12:56 pm »

I have had a thought which might help shrink the sizes of embedded levels.

Instead of storing each vertex exactly, why not attempt an approximation?

proposed algorithm:

level creation side:

1. choose a random seed and set a Random instance to that seed
2. generate n random pairs doubles. where n = the number of vertices in the level
3. multiply each pair the max width and max height of your playable area
4. compare each pair to the corresponding vertex. Maybe using the squared difference.
4a. if the total squared difference of all the pairs is currently the minimum then store the random seed.
5. repeat 1 until end critera ( number of loops, or the error is below a pre-determined level)

game side:

1. Create a Random instance set to the stored random seed.
2. generate n random pairs doubles. where n = the number of vertices in the level
3. multiply each pair the max width and max height of your playable area
4. these pairs are the vertices and thus use them as usual.


With larger levels with more vetices you might need to break it up so each random seed can produce a max of say 10 pairs otherwise the error might be too large and the result not representive of the level.
« Last Edit: December 21, 2007, 06:22:05 pm by moogie » Logged
Morre
Sr. Member
****
Offline Offline

Gender: Male
Posts: 460


Apocaquatic syntomy.


View Profile WWW
« Reply #24 on: December 22, 2007, 02:40:39 am »

Hm... that's a very interesting thought. It might slow down the level editor process some, but it should decrease map size and map loading times. It has a rather unexpected side effect; I'll explain by first explaining the current format.

<long story>

A map currently looks like "hexstring,hexstring". Both strings are divisible by four. Every four characters is a coordinate pair that ranges from 0-255 x, 0-255 y. These are then multiplied by 16 ingame, to increase the level size. Thus, I'm sacrificing precision to decrease level size.

The first string consists of n pairs of coordinates for the polygon, then two pairs of coordinates for start and end. The second string holds all the moveable objects on the map.

A side effect of this storeage method is that any coordinate in the level editor is rounded down to the closest multiple of 16. This allows for entirely straight lines for the polygon, which in turn lets you make lines with no width (that you can pass) to smaller polygons within the polygon. Due to how polygons behave when its lines cross each other, the new polygon will count as "outside" the first one. The collision checking in the game is done using a simple Polygon.contains(int x, int y), and so my method allows for caves with obstacles without having more actual polygons.

Of course, it'd be better to support several polygons, but as it is I'm only checking whether the player is outside the polygon or not. With more polygons, I'd have to check whether the player is outside the first polygon, and inside the rest of them, so I'd have to keep track of polygons seperately. This could be replaced by subtracting the main polygon from an Area, but that would instead decrease performance.

</long story>

The point is, if I changed to random approximation of maps I would most likely lose the ability to have straight lines, and thus the ability to fake having multiple polygons.... I think? Currently, the maps compress well, and each map tends to stay at some 20-30 bytes. On the other hand, I have decided to only have small maps in the game, so randomization would help by allowing for larger maps... It might well be worth it. I'll give it some further thought Smiley
« Last Edit: December 22, 2007, 02:43:53 am by Morre » Logged

wilburthemexican
JGO n00b
*
Offline Offline

Posts: 8


View Profile
« Reply #25 on: December 24, 2007, 08:49:38 am »

This game is so addictive!! I hope you can fit it into 4k.  It reminds me of the 4k submission bullets a little.  It was awesomely rewarding to finish the game, and i just wanted it to go on forever.  Has the same sort of addictive fun as Portal!!
Logged
Morre
Sr. Member
****
Offline Offline

Gender: Male
Posts: 460


Apocaquatic syntomy.


View Profile WWW
« Reply #26 on: December 24, 2007, 02:27:43 pm »

Thanks!

It's no coincidence that spiderball feels a bit like bullets. I made both games, and I'm using a modified version of the bullets map format for spiderball game, meaning some elements are similar Smiley
Logged

erikd
JGO Kernel
*********
Offline Offline

Gender: Male
Posts: 2424


Maximumisness


View Profile WWW
« Reply #27 on: December 28, 2007, 02:33:26 pm »

Very neat game, it seems the quality of those 4k games is going up! This is just great addictive fun, even if it were 40k  Smiley
Logged

EnderGT
Jr. Member
**
Offline Offline

Posts: 98


View Profile
« Reply #28 on: February 27, 2008, 11:17:49 am »

Very neat game, it seems the quality of those 4k games is going up! This is just great addictive fun, even if it were 40k  Smiley

Wow, this is a lot of fun, I can't believe I haven't tried this before now. Excellent game, good job.
Logged
Morre
Sr. Member
****
Offline Offline

Gender: Male
Posts: 460


Apocaquatic syntomy.


View Profile WWW
« Reply #29 on: February 29, 2008, 01:04:32 pm »

Thank you, thank you!

New version up. I've added Z and X as keys representing mouse1 and mouse2 again as an option for macs (Ctrl+mouse still works too). Also, one new map (lvl 10 - tricky one!).
Logged

Pages: [1] 2   Go Up
Print
 
Jump to: