CodeWalrus

Development => Calculators => Calc Projects, Programming & Tutorials => Topic started by: Ranman on March 06, 2017, 01:05:57 am

Title: Jumpman Resurrected
Post by: Ranman on March 06, 2017, 01:05:57 am
So... What ever happened to Jumpman for TI calcs?

Good question. 3 years ago, my hard drive crashed and the data was not recoverable. I had made a recent backup of all my TI projects on a USB thumb drive. Good idea right? Yes... but not if you lose that backup. I frantically searched for it a number of times over several years without success. Very depressing to think you've lost everything.

Well... a few weeks ago that USB stick turned up; and I have resurrected this project.

Here are some new screenshots of levels I have completed recently

(http://tifreakware.net/ranman/Jumpman/JM10002.gif)
Hot Foot

(http://tifreakware.net/ranman/Jumpman/JM10005.gif)
Dragon Slayer

(http://tifreakware.net/ranman/Jumpman/JM10004.gif)
Grand Puzzle II

(http://tifreakware.net/ranman/Jumpman/JM10009.gif)
Gun FIghter

(http://tifreakware.net/ranman/Jumpman/JM10010.gif)
Now You See It


I have 8 levels remaining to complete. Jumpman should be complete within 1 month. 8)
Title: Re: Jumpman Resurrected
Post by: p2 on March 06, 2017, 06:28:31 am
Wow I'm glad you found your backup!! Also it looks really nice!   :thumbsup:
Is it for the 84+ or for a different family? :)
Title: Re: Jumpman Resurrected
Post by: aeTIos on March 06, 2017, 06:31:14 am
Woah dude, glad to see you turn up again! Those levels look really cool and above all really fun, so I'm looking forward to a release :D
Title: Re: Jumpman Resurrected
Post by: Ranman on March 06, 2017, 07:20:48 am
Wow I'm glad you found your backup!! Also it looks really nice!   :thumbsup:
Is it for the 84+ or for a different family? :)
Thanks p2 for your kind comments. Jumpman is for the TI-89. It is coded in C using GCC4TI.

Woah dude, glad to see you turn up again! Those levels look really cool and above all really fun, so I'm looking forward to a release :D
Thanks aeTIos!! Glad to be back. It's nice to see some old timers still hangin around. :)
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on March 07, 2017, 02:57:10 am
I'm so glad to see this resurrected and that it was not completely lost. Nice work on this Ranman (https://img.codewalr.us/jumpii.gif)
Title: Re: Jumpman Resurrected
Post by: p2 on March 07, 2017, 08:56:10 am
I really love the idea of the last level, even tho it looks pretty tricky xD
you don't maybe plan on making a clone for the CE or 84+ once you're done wit hthis...? 9_9
Title: Re: Jumpman Resurrected
Post by: Ranman on March 09, 2017, 01:23:53 pm
Thanks everybody.  :)

Here's a level called Ladder Challenge:

(http://tifreakware.net/ranman/Jumpman/JM10015.gif)

You have to move with the ladder a little bit or you will slowly slide up or down depending on the direction of the ladder. 
Title: Re: Jumpman Resurrected
Post by: p2 on March 09, 2017, 01:26:12 pm
xD it looks incredible hard to get off the ladder at the right moment xD
You should mke it possible to Jump off (actual jumping, not just falling) ^^

looks great  :thumbsup:
Title: Re: Jumpman Resurrected
Post by: Ranman on March 09, 2017, 01:36:37 pm
xD it looks incredible hard to get off the ladder at the right moment xD
You should mke it possible to Jump off (actual jumping, not just falling) ^^

looks great  :thumbsup:

Thanks p2. The screenshot doesn't show everything. It's hard to get a small screenshot with all movements. You can jump on and off the ladder at will... You can even walk on to and off of the ladder from a girder.. You can also climb up and down while on the ladder.
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on March 09, 2017, 05:52:51 pm
That ladder looks hard to climb! O.O
Title: Re: Jumpman Resurrected
Post by: Ranman on March 10, 2017, 06:10:26 am
That ladder looks hard to climb! O.O

Thanks DJ!!  :)

Here's another level... Going Down?

(http://tifreakware.net/ranman/Jumpman/JM10018.gif)

12 of 12 Jumpman Jr levels completed.
24 of 30 Jumpman levels completed.

6 levels remaining. :D
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on March 10, 2017, 06:11:50 am
That looks very good. Do the moving platforms there work yet? I heard they can be hard to get to work in games. Glad to see most levels finished :)
Title: Re: Jumpman Resurrected
Post by: Ranman on March 10, 2017, 06:17:29 am
That looks very good. Do the moving platforms there work yet? I heard they can be hard to get to work in games. Glad to see most levels finished :)
Thanks DJ. All of the moving platforms work... and yes... they were difficult to implement and to get working properly.
Title: Re: Jumpman Resurrected
Post by: Ranman on March 11, 2017, 01:26:17 pm
Another level... this one is called Roll Me Over.

Nothing too fancy... just two barrels rolling around.

(http://tifreakware.net/ranman/Jumpman/JM10019.gif)

5 levels to go. :thumbsup:
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on March 11, 2017, 06:51:20 pm
How can barrels move up ladders? O.O

Also this definitively reminds me of Donkey Kong :P
Title: Re: Jumpman Resurrected
Post by: p2 on March 11, 2017, 09:01:26 pm
looks weird and amazing at the same time xD
are their paths randomly chosen or predefined and looping? :)
Title: Re: Jumpman Resurrected
Post by: Ranman on March 11, 2017, 09:20:04 pm
How can barrels move up ladders? O.O

Also this definitively reminds me of Donkey Kong :P

Thanks DJ.  :D  Yeah I agree... It is a little weird to see a barrel move up a ladder. Did you notice them move up chains too?

Donkey Kong has nothing on Jumpman.  8)

looks weird and amazing at the same time xD
are their paths randomly chosen or predefined and looping? :)

Thanks p2.  :D

The barrels' paths are predefined using waypoints. When the end of the waypoint list is reached, it starts over -- loops indefinitely.
Title: Re: Jumpman Resurrected
Post by: p2 on March 12, 2017, 07:03:35 am
you should think about letting new barrels enter the map on a high level on the left or right side of the screen, so they then roll around, eventually fall down the ladders, and finally leave the screen on the bottom of the map through the sides again :) (so they go downwards only)
that would look more natural ^^
Title: Re: Jumpman Resurrected
Post by: Ranman on March 13, 2017, 12:40:01 am
you should think about letting new barrels enter the map on a high level on the left or right side of the screen, so they then roll around, eventually fall down the ladders, and finally leave the screen on the bottom of the map through the sides again :) (so they go downwards only)
that would look more natural ^^

Thanks for your comments p2!! :D

Currently I'm attempting a faithful recreation of Jumpman from the C64 version. I agree that barrels should not climb up ladders and ropes... it is kind of weird, but that is what the original did.

Once I finish, I can always make additional levels and include your good idea.  :thumbsup:

I'm also considering making a level editor or at the very least write some instructions with some BAT scripts for users to create their own level sets.   8)
Title: Re: Jumpman Resurrected
Post by: Ranman on March 13, 2017, 06:36:55 am
Here is another level... it is called Freeze.

The enemies chase you down. They cannot kill you. But if they touch you, you are frozen for a short period of time. You only have to worry about bullets being fired at you.  :banghead:

(http://tifreakware.net/ranman/Jumpman/JM10020.gif)

Only 4 levels remaining.... of which there is 2 more enemies and one special feature to implement. Almost there... 8)
Title: Re: Jumpman Resurrected
Post by: p2 on March 13, 2017, 08:37:22 am
That makes me wonder... (sorry to sound stupid) but what's the target? What do you have to do to clear a level... ??? reaching a special point on the mp or something? ^^
Title: Re: Jumpman Resurrected
Post by: Ranman on March 13, 2017, 01:42:11 pm
That makes me wonder... (sorry to sound stupid) but what's the target? What do you have to do to clear a level... ??? reaching a special point on the mp or something? ^^

That is a good question. Once you collect all of the required number of bombs (the little white circles) for a particular level, then the level is complete and you move to the next. Grand Puzzle 2 has collectable jewels... they count toward the number of bombs collected.

Levels can have anywhere between 1 and 16 bombs. Some levels have more bombs than are necessary to complete the level.

Some levels like Runaway have bombs that move around. Some levels have bombs that have bonus points tied to them.

Here is a screenshot of Robots III:

(http://tifreakware.net/ranman/Jumpman/JM0099.gif)

It shows Jumpman completing a level as well as completing the game (note: this is not actually the final level of the game). You'll notice there are 2 high score lists... One for highest score and one for highest bonus. So... completing a level fast is rewarded with bonus points.

Edit... At the bottom of the screen you'll see:

JUMPEN:06 - this is the number of your players remaining
L:01 = this is the level number you are playing
S:5 = this is the current speed of the game. This will be from 1 to 5, 1 being the fastest.
B:1500 = this is the current bonus points. This number decrements periodically. Finish the level and you get these points added to your score.
SCORE: this is your current score.
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on March 13, 2017, 03:33:21 pm
Looks good, as always. :) Also the level editor would be a nice addition to extend this game life. :)
Title: Re: Jumpman Resurrected
Post by: Ranman on March 16, 2017, 01:48:39 pm
Another level completed. This one is called Figurit, and is a puzzle level with lots of disappearing pieces. Don't get trapped by an inadvertent bomb collection.  :banghead: :blah:

Figurit was in included in the original Jumpman; and Figurit's Revenge was included in Jumpman Jr.

(http://tifreakware.net/ranman/Jumpman/JM10022.gif)

3 levels remaining. :w00t:
Title: Re: Jumpman Resurrected
Post by: p2 on March 16, 2017, 02:15:23 pm
dow long does it take // how much work is it for you to complete each level? :)
I'm curious especially as u have to add new units and mechanics for almost every level, but yet push them on a daily basis xD
Title: Re: Jumpman Resurrected
Post by: Ranman on March 16, 2017, 02:52:15 pm
dow long does it take // how much work is it for you to complete each level? :)
I'm curious especially as u have to add new units and mechanics for almost every level, but yet push them on a daily basis xD

Good questions p2 and thanks for your interest in my project. :)

Figurit took me about 4 hours to write. I already had bullets, scriptable bombs, and disappearing/appearing platforms working. So I only had to put all the pieces together. For me... the easy thing to do is watch youtube videos of someone playing Jumpman... and lots of pausing and rewinding the video.  :ninja:

For a level like Freeze... it required about 4 hours to put the platform pieces together. But then I had to implement a new enemy and a new special feature for that enemy which required a few days of thought and a few days to write/modify the code.

Title: Re: Jumpman Resurrected
Post by: Ranman on March 17, 2017, 03:02:19 am
And another level... This one is called Jump--n-Run.

No enemies on this level; just simply finish as fast as you can. Watch out for those disappearing platforms. Plan your routes accordingly.   ;)

(http://tifreakware.net/ranman/Jumpman/JM10023.gif)

2 Levels remaining!   :w00t:

Btw... for those interested in what a Jumpman level looks like in C code:

Code: [Select]
{
"JUMP-N-RUN",
{
{  1, GAME_PIECE_Jumpman,     FLAG_VA,    19, 28,  SPECIAL_ABILITY_None},

{ 10, GAME_PIECE_Girder_Hor,  FLAG_VA,     0,  8,  6},
{ 11, GAME_PIECE_Girder_Down, FLAG_VA,     6,  9,  4},
{ 12, GAME_PIECE_Girder_Hor,  FLAG_VA,    10, 13,  2},
{ 13, GAME_PIECE_Girder_Up,   FLAG_VA,    12, 12,  4},
{ 14, GAME_PIECE_Girder_Hor,  FLAG_VA,    16,  8,  8},
{ 15, GAME_PIECE_Girder_Down, FLAG_VA,    24,  9,  4},
{ 16, GAME_PIECE_Girder_Hor,  FLAG_VA,    28, 13,  2},
{ 17, GAME_PIECE_Girder_Up,   FLAG_VA,    30, 12,  4},
{ 18, GAME_PIECE_Girder_Hor,  FLAG_VA,    34,  8,  6},

{ 20, GAME_PIECE_Girder_Hor,  FLAG_VA,     0, 28,  6},
{ 21, GAME_PIECE_Girder_Down, FLAG_VA,     6, 29,  4},
{ 22, GAME_PIECE_Girder_Hor,  FLAG_VA,    10, 33,  4},
{ 23, GAME_PIECE_Girder_Hor,  FLAG_VA,    17, 36,  6},
{ 24, GAME_PIECE_Girder_Hor,  FLAG_VA,    26, 33,  4},
{ 25, GAME_PIECE_Girder_Up,   FLAG_VA,    30, 32,  4},
{ 26, GAME_PIECE_Girder_Hor,  FLAG_VA,    34, 28,  6},

{ 30, GAME_PIECE_Girder_Hor,  FLAG_VA,     0, 52,  8},
{ 31, GAME_PIECE_Girder_Hor,  FLAG_VA,    32, 52,  8},

{ 40, GAME_PIECE_Girder_Hor,  FLAG_VA,     0, 70,  5},
{ 41, GAME_PIECE_Girder_Hor,  FLAG_VA,    10, 70, 20},
{ 42, GAME_PIECE_Girder_Hor,  FLAG_VA,    35, 70,  5},

{ 50, GAME_PIECE_Girder_Hor,  FLAG_VA,     0, 88, 40},

{ 60, GAME_PIECE_Rope_Down,   FLAG_VA,    10, 28, 12},
{ 61, GAME_PIECE_Rope_Down,   FLAG_VA,    28, 28, 12},

{ 70, GAME_PIECE_Rope_Up,     FLAG_VA,     0, 30,  5},
{ 71, GAME_PIECE_Rope_Up,     FLAG_VA,    12, 36,  8},
{ 72, GAME_PIECE_Rope_Up,     FLAG_VA,    26, 36,  8},
{ 73, GAME_PIECE_Rope_Up,     FLAG_VA,    38, 30,  5},

{ 80, GAME_PIECE_Ladder,      FLAG_VA,     0,  4,  6},
{ 81, GAME_PIECE_Ladder,      FLAG_VA,    38,  4,  6},

{ 82, GAME_PIECE_Ladder,      FLAG_VA,     0, 68,  5},
{ 83, GAME_PIECE_Ladder,      FLAG_VA,    38, 68,  5},

{ 84, GAME_PIECE_Ladder,      FLAG_VA,    19,  6,  4},
{ 85, GAME_PIECE_Ladder,      FLAG_VA,    19, 22,  1},
{ 86, GAME_PIECE_Ladder,      FLAG_VA,    19, 26,  1},
{ 87, GAME_PIECE_Ladder,      FLAG_VA,    19, 30,  5},
{ 88, GAME_PIECE_Ladder,      FLAG_VA,    19, 50,  2},
{ 89, GAME_PIECE_Ladder,      FLAG_VA,    19, 58,  3},

{ 90, GAME_PIECE_Ladder,      FLAG_VA,    16, 68,  5},
{ 91, GAME_PIECE_Ladder,      FLAG_VA,    22, 68,  5},

{100, GAME_PIECE_Bomb,        FLAG_VAS,   10,  9,120}, // execute script 120
{101, GAME_PIECE_Bomb,        FLAG_VAS,   28,  9,121}, // execute script 121

{102, GAME_PIECE_Bomb,        FLAG_VA,     3, 24,  0}, //
{103, GAME_PIECE_Bomb,        FLAG_VAS,   10, 20,122}, // execute script 122
{104, GAME_PIECE_Bomb,        FLAG_VAS,   28, 20,123}, // execute script 123
{105, GAME_PIECE_Bomb,        FLAG_VA,    35, 24,  0}, //

{106, GAME_PIECE_Bomb,        FLAG_VAS,    2, 42,124}, // execute script 124
{107, GAME_PIECE_Bomb,        FLAG_VAS,   36, 42,125}, // execute script 125

{108, GAME_PIECE_Bomb,        FLAG_VA,     3, 74,  0}, //
{109, GAME_PIECE_Bomb,        FLAG_VAS,   10, 84,126}, // execute script 126
{110, GAME_PIECE_Bomb,        FLAG_VAS,   19, 84,127}, // execute script 127
{111, GAME_PIECE_Bomb,        FLAG_VAS,   28, 84,128}, // execute script 128
{112, GAME_PIECE_Bomb,        FLAG_VA,    35, 74,  0}, //

{120, GAME_PIECE_Script, FLAG_NONE, FLAG_NONE,  13,  0}, // make object 13 invisible
{121, GAME_PIECE_Script, FLAG_NONE, FLAG_NONE,  15,  0}, // make object 15 invisible
{122, GAME_PIECE_Script, FLAG_NONE, FLAG_NONE,  85,  0}, // make object 85 invisible
{123, GAME_PIECE_Script, FLAG_NONE, FLAG_NONE,  86,  0}, // make object 86 invisible
{124, GAME_PIECE_Script, FLAG_NONE, FLAG_NONE,  21,  0}, // make object 21 invisible
{125, GAME_PIECE_Script, FLAG_NONE, FLAG_NONE,  25,  0}, // make object 25 invisible
{126, GAME_PIECE_Script, FLAG_NONE, FLAG_NONE,  90,  0}, // make object 90 invisible
{127, GAME_PIECE_Script, FLAG_NONE, FLAG_NONE,  88,  0}, // make object 88 invisible
{128, GAME_PIECE_Script, FLAG_NONE, FLAG_NONE,  91,  0}, // make object 91 invisible

{140, GAME_PIECE_Bullet, FLAG_VA, 0, 0, BULLET_ACTION_HorzAndVert},
{141, GAME_PIECE_Bullet, FLAG_VA, 0, 0, BULLET_ACTION_HorzAndVert},
{142, GAME_PIECE_Bullet, FLAG_VA, 0, 0, BULLET_ACTION_HorzAndVert},
{143, GAME_PIECE_Bullet, FLAG_VA, 0, 0, BULLET_ACTION_HorzAndVert},

{ 0, 0, 0, 0, 0, 0}, // end of level marker
},
1500,13,0, // bonus start value = 1500, bombs required = 13
0,0,0,0,
false,
false,
},
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on March 17, 2017, 03:35:51 am
Nice. Is there some sort of hidden timer that forces you to finish the level fast or is it due to enemy pattern or do platforms disappear automatically without stepping on them?
Title: Re: Jumpman Resurrected
Post by: Ranman on March 17, 2017, 03:54:59 am
Nice. Is there some sort of hidden timer that forces you to finish the level fast or is it due to enemy pattern or do platforms disappear automatically without stepping on them?
Every level has a (hidden) timer for the bonus point decrementer. You are not required to finish a level quickly unless you want bonus points.

You can add a GAME_PIECE_Timer to a level, and when it decrements to zero it can execute a script.

You can also (see the code in my previous post) make GAME_PIECE_Bomb scriptable by setting the 'S' flag and providing the GAME_PIECE_Script object number. When Jumpman picks up a bomb it will execute the script. Right now only collectable objects and timers can have scripts attached to them. So... currently stepping on a platform all by itself will not execute a script... this could change in the future if this feature is desired.

Most of the platform pieces you'll see above have the FLAG_VA... this the 'V' and 'A' flags ORed together. V = visible. A = active. If those flags are both set to '0' (or FLAG_NONE) then the platform piece is no longer visible nor active. Each one of the scripts in the code above clear both V & A flags of the objects they point to -- thereby making them disappear.
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on March 17, 2017, 04:21:27 pm
You should have a level where after 10 seconds, one block disappears every second like the Super Mario World rhinoceros mini bosses
Title: Re: Jumpman Resurrected
Post by: Ranman on March 17, 2017, 04:56:37 pm
You should have a level where after 10 seconds, one block disappears every second like the Super Mario World rhinoceros mini bosses

That is a good idea. And it could be accomplished with the currently implemented code.   :thumbsup:
Title: Re: Jumpman Resurrected
Post by: Ranman on March 17, 2017, 10:03:41 pm
The Roost...

(http://tifreakware.net/ranman/Jumpman/JM10024.gif)

1 level remaining. :crazy:
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on March 17, 2017, 10:06:23 pm
Will the final level be beatable? :trollface:
Title: Re: Jumpman Resurrected
Post by: Ranman on March 17, 2017, 10:09:05 pm
Will the final level be beatable? :trollface:

Of course... it will also have a level within a level that can only be reached safely at a certain time.  :-X
Title: Re: Jumpman Resurrected
Post by: p2 on March 19, 2017, 09:46:13 pm
that's actually an awesome idea:
making the last level unbeatable so noone realizes there are no levels after that :trollface:

Will you continue with userlevels after ur done or will this next one be the last piece of work u do for this projet? :/
Title: Re: Jumpman Resurrected
Post by: Ranman on March 19, 2017, 10:01:20 pm
that's actually an awesome idea:
making the last level unbeatable so noone realizes there are no levels after that :trollface:

Will you continue with userlevels after ur done or will this next one be the last piece of work u do for this projet? :/

The last level called Grand Puzzle III is actually one of the easier levels to finish... Unless you're trying to find the bonus point bombs; then you'll have to find some way to make it to that level within the level.  :-X

I am planning on creating some type of level editor.
Title: Re: Jumpman Resurrected
Post by: Ranman on March 21, 2017, 04:27:40 am
The final level called Grand Puzzle III is complete.

Sorry... no screenies of this one.  *.*   :ninja: :blah:
Title: Re: Jumpman Resurrected
Post by: p2 on March 21, 2017, 06:57:13 pm
Why no screenie? D: D:
Also nice job!!  :thumbsup:

doing the level editor next? :)
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on April 06, 2017, 05:24:10 am
Glad to hear the level is done. I can't wait to give the game a try, even though I probably won't be able to reach high levels :P
Title: Re: Jumpman Resurrected
Post by: Lionel Debroux on May 15, 2017, 08:30:36 pm
Glad to read, belatedly, that you've finished making all levels :)
Title: Re: Jumpman Resurrected
Post by: DJ Omnimaga on May 17, 2017, 10:25:18 pm
I think Ranman is doing a lot of work-related traveling, which explains his recent absence, but I saw him recently on IRC. Hopefully he has time to get back in action soon :)