Fig 8
-migrated-

Wondering where the hacks are at? Register or Sign In to find out!


Wondering where the sol files are at? Register or Sign In to find out!

Newgrounds top medal guys list

-migrated-
Last Updated: 04/30/2010 20:23

Fig 8

-migrated-
Last Updated: 04/29/2010 13:56

Sorry, there are no badges available for this game.

Game Dscription
Yo, so this is Fig. 8 a game about bicycles and stuff. You race around this track avoiding the obstacles in hopes of achieving a high score (if you're into that.) Other directions are in the game. We had a lot of fun developing this guy, we hope you have fun playing it!
Fig 8 Posted on: 09/08/2009 7:41pm
Quote Post
http://www.newgrounds.com/portal/view/510390

No hacks yet. Gonna try pausing and changing multiplier / points with CE.
Re: Fig 8 Posted on: 09/08/2009 7:46pm
Quote Post
multiplier is *1, but you only find it, not change anything. Hard deal, but it is fun game, beatable with some skills
Re: Fig 8 Posted on: 09/08/2009 7:47pm
Quote Post
Did you try freezing the multiplier? and no luck finding the score using *1 / *8?
Re: Fig 8 Posted on: 09/08/2009 7:48pm
Quote Post
to be exact, i didnt try score, i will try it. Freezing is no deal, it changed on its own. Maybe it found new adress. Looking on score now

EDIT: No *1 or *8, sol has only highscore, i will change it and find out what will happen

EDIT 2: It wasnt highscore, but some empty list with value of 0, so we wont go this way also

EPIC EDIT: found multiplier, it is double. It ISNT EXACT NUMBER. If you have multi 12*, it shows 11,8 and similar. Too bad you wont get medal (broken image removed)((
Re: Fig 8 Posted on: 09/12/2009 4:11am
Quote Post
I'm not too sober right now and I just jumped head-first into a world I really don't belong in but.. I know Diety has seen this, but just in-case... I think I found the stuff responsible so you can probably set your Fig deaths to 0 so you can checkpoint all you want instead of having to hit R and restart.

(Under Action >> StatsMan
)
I searched for Perfectionist to find what goes on to look up your deaths...
This is the straight-up Source Code:

Code: [Select]
{
if (currDeaths == 0)
{
trace("PERFECTIONIST!");
NewgroundsAPI.unlockMedalByName("Perfectionist");
}

And here's the Raw Data of that, and subsequent bytecode if I got everything needed of course:

Code: [Select]
_as3_getlex currDeaths
//24 00
_as3_pushbyte 0
//14 13 00 00
_as3_ifne offset: 19
//5d b4 05
_as3_findpropstrict trace
//2c 8c 08
_as3_pushstring "PERFECTIONIST!"
//4f b4 05 01
_as3_callpropvoid trace(param count:1)
//60 48
_as3_getlex com.newgrounds::NewgroundsAPI
//2c 8d 08
_as3_pushstring "Perfectionist"
//4f 9c 04 01
_as3_callpropvoid unlockMedalByName(param count:1)
//d3

Of course, after reading your Darnell post about 8 times.. I'm certain I'll never be able to partake in whatever comes next, so.. am I on the right path? I used Sothink, always have actually. Those bytes/whatevers up there are way shorter than what were in your Darnell post, even though I clicked Raw Data to extract that stuff. Can't exactly go in Fig.8 and do an AoB search for "24 00" that's shown right under CurrDeaths, now can I?
I feel so useless and yet I try so hard. xD But I have determination, so I know that counts for something.
Re: Fig 8 Posted on: 09/12/2009 8:52am
Quote Post
You're pretty much there! The reason why the raw data looks different is that this is in ActionScript 3.0 (which in many ways is easier than AS2), what you're seeing is:
Code: [Select]
as3_getlex currDeaths
//24 00
Get value of currDeaths and put on the stack

Code: [Select]
_as3_pushbyte 0
//14 13 00 00
Put 0 onto the stack

Code: [Select]
_as3_ifne offset: 19
//5d b4 05
Pop the last two values from the stack and compare. If they're not equal branch to label 19, if they're equal, continue and award the medal.

So, there's two ways of hacking this:
  • Turn the 0 into a very large number (e.g. 255 - we're limited to one byte)
  • Change the not equal to an equal and crash once during the game
Which one you choose is up to you, the time of the month, and which works best. To turn this into an AoB hack, we first need to find our search string, draw up the statements we want and expand from both sides until we have a unique match:
24 00 14 13 00 00 5d b4 05

Now we can choose what we want to alter, if we want the first hack, then we change 24 00 to 24 ff. If we want the second we change _as3_ifne to _as3_ifle, i.e. change 14 13 00 00 to 16 13 00 00 (I'm using less
than or equal to, as crashes will never be negative, so we'll always succeed). Therefore your AoB is:
24 00 14 13 00 00 5d b4 05 =>
24 ff 14 13 00 00 5d b4 05

Or:
24 00 14 13 00 00 5d b4 05 =>
24 00 16 13 00 00 5d b4 05

Personally I'd use the second one, as I'm rubbish at the game :-)
Re: Fig 8 Posted on: 09/12/2009 9:57am
Quote Post
As I tried to test this I had a quick look to see whether I could disable collisions and came across an easy way to do this, we have the code in the BikeScene object, in the hitTesting function:
Code: [Select]
if (!_loc_5.isTrigger)
{
bikeFall();
}

If we can NOP this out you can never die. This comes out, in bytecode as:
Code: [Select]
_as3_iftrue offset: 11
//5d f6 01
_as3_findpropstrict bikeFall
//4f f6 01 00
_as3_callpropvoid bikeFall(param count:0)
//10 28 00 00
_as3_jump offset: 40

Which leads to an AoB of:
4f f6 01 00 10 28 00 00 =>
02 02 02 02 10 28 00 00

As a side effect this seems to break checkpointing and score multiplier, so you get a really low score. Not wanting to play the game through again to get the last medal (Professional), I hacked it to ensure I get the Professional medal instead of Pioneer, then went through and got Pioneer:
60 48 2c 86 08 =>
60 48 2c 8f 08

Here I'm altering
Code: [Select]
NewgroundsAPI.unlockMedalByName("Pioneer"); to be
Code: [Select]
NewgroundsAPI.unlockMedalByName("Professional");
Re: Fig 8 Posted on: 09/12/2009 12:55pm
Quote Post
Woah! Thanks a bunch Deity....One problem. I used the:

4f f6 01 00 10 28 00 00 =>
02 02 02 02 10 28 00 00

Code for no collision....And I got this medal....Well I didn't but that pop-up kept flashing up quite rapidly and another little pop up saying "Place this clip in the root of your movie....Any frame Blah bla" and you can actually see.....I have only the wheels of my bike! xD

I did not get this medal and I don't know where the hell this medal has come from....Its not actually part of Fig. 8.....Hmmmm

The only problem is....When I did complete the game using the no collision cheat....I didn't get it at the end....I just got the complete the game one.....

Keep up the good work!

P.S That medal pop-up flashed so fast it too me about 15 tries to get the screenshot.
(broken image removed)
Re: Fig 8 Posted on: 09/12/2009 2:02pm
Quote Post
it is test medal and everything works as it should, you get medals, so no need it worry about other things. Case closed
Re: Fig 8 Posted on: 09/12/2009 2:06pm
Quote Post
Yeah I got that - looks like it changes the stack which messes a few things up - it does work though, just has some side effects...
Re: Fig 8 Posted on: 09/12/2009 3:04pm
Quote Post
So is there a way to get the 500x multiplier medal? I tried using all three cheats, and the first set didn't do anything for me.

Now we can choose what we want to alter, if we want the first hack, then we change 24 00 to 24 ff. If we want the second we change _as3_ifne to _as3_ifle, i.e. change 14 13 00 00 to 16 13 00 00 (I'm using less
than or equal to, as crashes will never be negative, so we'll always succeed). Therefore your AoB is:
24 00 14 13 00 00 5d b4 05 =>
24 ff 14 13 00 00 5d b4 05

Or:
24 00 14 13 00 00 5d b4 05 =>
24 00 16 13 00 00 5d b4 05

That line of code there. Is that even helpful code? or did you just post that to show how you got the no hit detection?
Re: Fig 8 Posted on: 09/12/2009 4:18pm
Quote Post
Heh, I crashed Firefox about 10 times trying to make the Pioneer medal push over to the 500x Trailblazer medal.
But thanks for that other medal one, worked like a charm!
Re: Fig 8 Posted on: 09/12/2009 4:44pm
Quote Post
Quote from: "xycho666"
Quote from: "deity"
Or:
24 00 14 13 00 00 5d b4 05 =>
24 00 16 13 00 00 5d b4 05
That line of code there. Is that even helpful code? or did you just post that to show how you got the no hit detection?

That was to show how Indigeo_aliquis could turn the actionscript he found into a hack. Then I did digging and found another one :-)

I hacked the multiplier one, by playing straight (no hacks at all) and searching for the multiplier as a double as normal. Then up it to 1 less than required for the medal.

Generally, no one hack is going to get everything!
Re: Fig 8 Posted on: 09/12/2009 4:47pm
Quote Post
I'm a chickadee and as always, thanks for your help. (broken image removed) A long and winding road (filled with red, blue, & purple lines and crashing bikes), but I'm certain I'll get all this down eventually.

Edit: I found the mult by doing a bigger than/smaller than series of searches under Double, then when it was down to 20-30 results, my mult was easy to find.
Re: Fig 8 Posted on: 09/12/2009 5:38pm
Quote Post
gonna try the double