Joined: 12/17/2004
Posts: 99
Location: Karlsruhe, Germany
I think this would be a beautiful example for a time attack, because: - you can manipulate luck - it should not be too long - and it can be very difficult (depending on the players skills ;-) ) Problem about Animaniacs could be: - There are no known glitches (at least I found none) cu Fabian
Joined: 3/8/2004
Posts: 185
Location: Denmark
Just played a bit of this game. It would most definetively make for an interesting timeattack (the dash function certainly helps) I fail to see what the actual objectiv of the game is, though. Could anyone enlighten me?
"We observe the behaviour of simple folk, and derive pleasure from their defects." -Aristotle - Book of Humour
Former player
Joined: 8/17/2004
Posts: 377
You can finish the game quickly just by beating the Four Studios then going straight to the editing room. Though if you don't spend time getting the scripts then you'll get the bad ending. I think this game could warrent two time attacks, one for as fast as possible, and one collecting all the scripts as fast as possible to get the best ending. Overall the game isn't very long, and it's very entertaining.
Former player
Joined: 8/1/2004
Posts: 2687
Location: Seattle, WA
Unless youre a fan of the series, you won't really appreciate a huge portion of this game's gags. However, I do concur that this movie would make for some good time attacks. Back when I was semi-interested in the game, I messed around with the dash and stack features, only to realise that the game doesn't really require much skill, just manipulation. Still, a run would be entertaining, for the 15 minutes it would probably take to beat.
hi nitrodon streamline: cyn-chine
Former player
Joined: 7/29/2005
Posts: 459
Location: Brazil
a run of this would be really entertaining.. i.i no one want to try it?
<small>My big signature was cleared by admin; i should read <a href="http://tasvideos.org/ForumRules.html">forum rules</a>. But... who does?</small>
Former player
Joined: 6/25/2006
Posts: 138
Location: Fort Collins, CO
I have decided to work on this when I am not working on my Super Mario World small run. Here is the first room of the opening stage. http://dehacked.2y.net/microstorage.php/info/3242/Animaniacs%20WIP1.smv I just wanted to see if this is the fastest method for going through this game, and if there is anything that I should be doing that I didn't do in this movie. I tested 3 different methods for movement. 1. Dash then walk right until I can dash again 2. Dash then press back to stop movement then dash again 3. Dash then jump out of the dash, then dash again #1 turned out to be faster I am going to get every script in this game(100%), unless people would rather see a minimalist. The only difference is the ending. I don't know of any tricks in this game, other than dashing being the fastest form of movement, and pressing L+R lets you backwalk but at the same speed as normal walking so there aren't any advantages to it. Some of the old posts in this thread mention luck manipulation. I am curious as to what manipulation that is.
Former player
Joined: 6/25/2006
Posts: 138
Location: Fort Collins, CO
I was going through the sci-fi stage but then came to a script that I couldn't obtain. The FAQ said "In stead of going through the door, make a short stack (3 Warners req.) and jump to the left. The script is there" That didn't really help much, as there wasn't any script visible and I couldn't jump to the left. After a while, I managed to jump up onto that roof thing and jump all the way to the beginning of the stage and found the script. The only problem is that I can't grab it. If anyone knows how to get it, please let me know. http://dehacked.2y.net/microstorage.php/info/3251/Animaniacs%20WIP2.smv This gets to the script, but doesn't get it.
Joined: 1/11/2007
Posts: 1
skamastaG wrote:
Some of the old posts in this thread mention luck manipulation. I am curious as to what manipulation that is.
The slot machine can be manipulated.
skamastaG wrote:
I was going through the sci-fi stage but then came to a script that I couldn't obtain.
I watched the movie and you're too far left. Stand directly in front of the door, move towards it then make a short stack and jump onto the roof.
Active player (354)
Joined: 1/16/2008
Posts: 358
Location: The Netherlands
I might pick this up after i finish my current run as stated here is anybody else working on this or has there been any progress other than the available WIP and the non-accepted TAS? (speedrun progress, memory analysis, glitches found, etc) edit: I'm not quite sure yet whether it would be any% or 100% (all scripts)
TASes: [URL=http://tasvideos.org/Movies-298up-Obs.html]Mr. Nutz (SNES), Young Merlin 100% (SNES), Animaniacs 100% (SNES)[/URL]
Former player
Joined: 8/1/2004
Posts: 2687
Location: Seattle, WA
I think Brushy did some work on this, so you may want to PM him.
hi nitrodon streamline: cyn-chine
Former player
Joined: 6/25/2006
Posts: 138
Location: Fort Collins, CO
I found this to not be a very suitable game for TASing due to all of the autoscrollers. The WIPs I made a long time ago were faster than mushroom's run and I was only halfway through the first level. I was going for 100% which I think is the best choice for a TAS of this game. I did a lot of character switching and "played with death" in the autoscrollers to try to be entertaining. Also sorry but i don't think i have my old WIPs because they were on a really old computer. If you post WIPs I can give you feedback if you want.
XkyRauh
He/Him
Joined: 6/9/2005
Posts: 171
Location: Southern California
Why not start by giving feedback to what's already in the WIP, if you know you've had success being faster? :)
Active player (354)
Joined: 1/16/2008
Posts: 358
Location: The Netherlands
Did a little digging and will do an initial WIP to get the hang and see how this game works... some useful memory addresses
7F0016,2s,coin total
7F0018,2s,coins displayed
7E0070,2s,zone loading
7E0090,2s,zone index
7E0402,2s,player state
7E0408,2s,X
7E040C,2s,Y
7E0410,2s,Z
7E0413,1s,X velocity
7E0415,1s,Y velocity
7E0417,1s,Z velocity
7E041B,1s,X speed
7E046E,1s,dash left
7E04Ca,1s,dash stance left
7F0030,2s,Yacko dead
7F0032,2s,Wacko dead
7F0034,2s,Dot dead

7E1D02,1s,slot 1 result
7E1D12,1s,slot 2 result
7E1D22,1s,slot 3 result
7E1D08,1s,slot 1 time left
7E1D18,1s,slot 2 time left
7E1D28,1s,slot 3 time left
7E1D32,1s,slots state
7E1D38,2u,slots seed
7E003A,2u,frame counter
7F001A,1s,spins left
slots 1,2 and 3 can have the following valid values, all others mean nothing (using a cheat to set it to anything else will only make it spin some more):
0 = Yacko
2 = Wacko
4 = Dot
6 = Ralph
8 = Pinky
10 = Brain
12 = Brown Squirrel
14 = Chicken
16 = Nurse
18 = CEO
20 = Grey Squirrel
So the following values are result combinations:
00 02 04 = Regain every Warner sibling captured.
06 06 06 = Lose all of your coins.
08 08 08 = Lose 10 coins.
10 10 10 = Lose half of your coins.
12 12 12 = Receive 20 coins.
14 14 14 = Double the amount of coins you have.
16 16 16 = Be invincible for a brief time.
18 18 18 = Receive a Continue.
20 20 20 = Receive 50 coins.
note how 666 is the worst combo :P Using a GameShark cheat to set these three slots to something useful will indeed make the game think that that combo was rolled (so it's not just a resulting value) slots state assumes the values 0, 2, 4, 6, 8, 10, 12 with what i believe to have the following meanings
0 = nothing is happening
2 = slots are started, this is where/when the result is determined
4 = spinning
6 = slots are stopped
8 = slots standing still
10 = results being processed (locking this to 10 will re-apply the result over and over)
12 = result screen
7E1D38,2u and 7E003A,2u together form the seed for the slot machine, locking them both will endlessly produce the same spin 7E003A,2u is simply a frame counter (loops on overflow) that continues during an in-game pause. 7E1D38,2u is determined by the value of the frame counter and is only set when a new spin is started (slots state==2) now i need to figure out how these 2 values determine the results other useful data is welcome as well ofcourse edit: Much against my personal preference, I might do this run in Snes9x v1.43 simply because I think I can write some LUA scripts that will help a great deal in manipulating the slot machine So far I found two ways to manipulate the slot-machine both based on the same principle 1) One can choose to stop the currently spinning round prematurely, thus the frame on which the next one will start is different, thus the frameCounter will be different, thus the result will be (or, can be) different. Unfortunately, one is not completely free to choose on which frame the next one start, quick tests indicate that one can only choose between 4 options (more research needed) 2) In pause mode one can wait for a more favorable slot-result (since the frameCounter changes). Pausing costs at least 2 frames (more if you need to wait longer for the wanted result) edit2: Ok I was wrong, if you have 1 (or more) spin queued for after your current spin... its very easy to manipulate what will come up next (not sure yet how easy it will be to make sure its something we want) the 'time left' values for slots 1, 2 and 3 start at 32, 64 and 76 respectively. By pressing L, the value on the lowest non-zero counter is subtracted from all three values. The result is evaluated a fixed amount of frames after all timers hit 0 edit3: with kind regards to nitrodon whos figured out the disassembled ROM:D great work
<Nitrodon> ok... here's the routine
<Nitrodon> 50% of the time, simply randomize all 3 reels
<Nitrodon> the other 50% of the time:
<Nitrodon> randomly choose a good result
<Nitrodon> if the timer meets some conditions (strictest for 6 6 6, always for 0 2 4), keep that result
<Nitrodon> otherwise, re-randomize all 3 reels if the timer meets a different condition
<Nitrodon> otherwise, re-randomize all 3 reels 75% of the time
<Nitrodon> otherwise rig the slots against you
<Nitrodon> and then, when it checks to see if you got something, it rigs the slots against you if that result is impossible
<Nitrodon> 10 10 10, 16 16 16, and 18 18 18 are less likely to be rigged in your favor than 8 8 8, 12 12 12, 14 14 14
<Nitrodon> 20 20 20 is also in the "more likely" category
Nitro managed to fully explain the RNG... my hero :D now its available a LUA version :) next step is writing it to tell me when to press 'L' (or how long to pause).. as soon as i have some spare time :(
FRAMECOUNT_ADDRESS = 0x7E003A
RNG_ADDRESS = 0x7E1D38
local frameCounter,RN

--[[
code for bit_and(m,n) goes here
]]--

function randomize()
	originalHigh = (RN >= 32768)
	RN = RN * 3
	if (originalHigh) then RN = RN + 1 end
	RN = RN * 257
	RN=RN % 65536
	RN = RN + 129
	if (RN >= 65536) then RN = RN - 65535 end
	RN = RN + frameCounter
	RN = RN % 65536
end

function assignReel()
	randomize()
	
	RNmod16 = RN % 16
	if (RNmod16 <= 10) then 
		return RNmod16 * 2
	end
	
	RN256mod16 = math.floor(RN/256) % 16
	if (RN256mod16 <= 10) then
		return RN256mod16 * 2
	end
	
	timerMod8 = frameCounter % 8
	if (timerMod8 == 7) then timerMod8 = 3 end
	return (RN256mod16 - 5 - timerMod8) * 2
end

riggedReels = {{0,2,4},{6,6,6},{8,8,8},{10,10,10},{12,12,12},{14,14,14},{16,16,16},{18,18,18},{20,20,20}}
riggedReelConditions = {0x00, 0xFF, 0x10, 0x30, 0x10, 0x10, 0x30, 0x30, 0x10}

function spin()
	randomize()
	if (RN % 2 == 1) then
		return assignReel(), assignReel(), assignReel()
	else
		randomize()
		cappedRN = RN % 256
		
		rigIndex = 0
		if (cappedRN <= 31) then rigIndex = 1
		elseif (cappedRN <= 39) then rigIndex = 2
		elseif (cappedRN <= 71) then rigIndex = 3
		elseif (cappedRN <= 103) then rigIndex = 4
		elseif (cappedRN <= 135) then rigIndex = 5
		elseif (cappedRN <= 167) then rigIndex = 6
		elseif (cappedRN <= 199) then rigIndex = 7
		elseif (cappedRN <223>0) then
			return assignReel(), assignReel(), assignReel()
		end
		
		reels = riggedReels[rigIndex]
		return reels[1], reels[2], (reels[3]+2)%22
	end
end

while true do
	frameCounter = memory.readword(FRAMECOUNT_ADDRESS) + 1
	RN = memory.readword(RNG_ADDRESS)
	initialRN = RN
	r1, r2, r3 = spin()
	snes9x.message(frameCounter..","..initialRN.." exp:"..RN..", with "..r1..","..r2..","..r3)
	snes9x.frameadvance()
end
the code gets messed up by some process in the TASvids code :P here's the full stuff: http://lua.pastey.net/96769-38zw
TASes: [URL=http://tasvideos.org/Movies-298up-Obs.html]Mr. Nutz (SNES), Young Merlin 100% (SNES), Animaniacs 100% (SNES)[/URL]
Active player (284)
Joined: 3/4/2006
Posts: 341
DaTeL237 wrote:
		if (cappedRN <= 31) then rigIndex = 1
		elseif (cappedRN <= 39) then rigIndex = 2
		elseif (cappedRN <= 71) then rigIndex = 3
		elseif (cappedRN <= 103) then rigIndex = 4
		elseif (cappedRN <= 135) then rigIndex = 5
		elseif (cappedRN <= 167) then rigIndex = 6
		elseif (cappedRN <= 199) then rigIndex = 7
		elseif (cappedRN <223>0) then
			return assignReel(), assignReel(), assignReel()
		end
Looks like you deleted something and ended up deleting too much. If this part of the post was pasted directly from your script without modification, I think that's your problem right there.
Active player (354)
Joined: 1/16/2008
Posts: 358
Location: The Netherlands
Nitrodon wrote:
(...)Looks like you deleted something and ended up deleting too much. If this part of the post was pasted directly from your script without modification, I think that's your problem right there.
:lol: haha hum no, thats not what was in the running script... but i found the cause :) I was testing for the wrong parity... "if (RN % 2 == 0) then" should have been "if (RN % 2 == 1) then" love how people blindly seem to neglect seeing their own obvious mistakes :D anyway i fixed the LUA code in the post above and from the tests i've done it'll perfectly predict the results when the slots state (7E1D32) contains value 2 :D w00t great work nitro! if i can free up some time, then I'll write a script tonight that tells me when to press L for result X (in case a spin is queued) or tells me how much to delay picking up a coin (in case no spin was queued)
TASes: [URL=http://tasvideos.org/Movies-298up-Obs.html]Mr. Nutz (SNES), Young Merlin 100% (SNES), Animaniacs 100% (SNES)[/URL]
Active player (354)
Joined: 1/16/2008
Posts: 358
Location: The Netherlands
edit3 (deleted previous post): heres the newest WIP, reaches end of room1 of SciFi stage http://dehacked.2y.net/microstorage.php/info/959126442/AnimaniacsTASWIP.smv oh one question btw... do ppl think i should try to collect as many continues as possible with the slot-machine (i.e. same result every time, might look boring after a while?) or vary the results a bit? edit4: oh and here's the script i'm running.... dont try to read that code because it's well messy, its just for me to have a backup http://lua.pastey.net/97062-37ku
TASes: [URL=http://tasvideos.org/Movies-298up-Obs.html]Mr. Nutz (SNES), Young Merlin 100% (SNES), Animaniacs 100% (SNES)[/URL]
Joined: 2/7/2008
Posts: 185
DaTeL237 wrote:
oh one question btw... do ppl think i should try to collect as many continues as possible with the slot-machine (i.e. same result every time, might look boring after a while?) or vary the results a bit?
Variance is interesting. Or maybe get a stupid number of coins? Doubling seems like it'd get hilariously ridiculous fairly fast. And since it's doubling, we'd see an acceleration of numbers, which I find cool to watch.
I'm just some random guy. Don't let my words get you riled - I have my opinions but they're only mine.
Active player (354)
Joined: 1/16/2008
Posts: 358
Location: The Netherlands
Bezman wrote:
DaTeL237 wrote:
oh one question btw... do ppl think i should try to collect as many continues as possible with the slot-machine (i.e. same result every time, might look boring after a while?) or vary the results a bit?
Variance is interesting. Or maybe get a stupid number of coins? Doubling seems like it'd get hilariously ridiculous fairly fast. And since it's doubling, we'd see an acceleration of numbers, which I find cool to watch.
unfortunately, every time the coincounter exceeds 99, 100 coins are converted to 1 continue... so i can't do insane amounts anyhow, some variance it is! and Stage 1 is complete! :) wip-smv can be found: http://dehacked.2y.net/microstorage.php/info/814022899/AnimaniacsTAS_DaTeL237_WIP.smv
TASes: [URL=http://tasvideos.org/Movies-298up-Obs.html]Mr. Nutz (SNES), Young Merlin 100% (SNES), Animaniacs 100% (SNES)[/URL]
Joe
Joined: 6/10/2006
Posts: 152
Location: Wisconsin
Looks very good as far as I can tell. Keep up the good work.
Active player (354)
Joined: 1/16/2008
Posts: 358
Location: The Netherlands
Thanks, I'm currently in the autoscrolling section of the 3rd (fantasy) word where the warners ride Falkor (the flying dragon) and it shouldn't take much longer than a month to finish this TAS :) I'm not going to post any more WIPs anymore though :P edit: at the 4th stage, working on the handy boss... but currently the run is on hold edit2: now at the boss-stage, again at the handy boss... annoying to have 4 bosses in a row with a lot of standing around waiting for the time to attack :( also first time every I TAS with a keyboard (rather than with a ps2 controller)... which i have some troubles to adjust to :/ edit3: now halfway the final boss (Pinky and The Brain) having thrown 5 bolts out of 8... needs some manipulation to get a shorter attack sequence
TASes: [URL=http://tasvideos.org/Movies-298up-Obs.html]Mr. Nutz (SNES), Young Merlin 100% (SNES), Animaniacs 100% (SNES)[/URL]
Active player (354)
Joined: 1/16/2008
Posts: 358
Location: The Netherlands
The all-scripts run has been submitted: http://tasvideos.org/2270S.html edit: and published: http://tasvideos.org/1311M.html
TASes: [URL=http://tasvideos.org/Movies-298up-Obs.html]Mr. Nutz (SNES), Young Merlin 100% (SNES), Animaniacs 100% (SNES)[/URL]
EZGames69
He/They
Publisher, Reviewer, Expert player (4120)
Joined: 5/29/2017
Posts: 2722
Location: Michigan
Currently working on an any% category for this game. Link to video[/submission]
[14:15] <feos> WinDOES what DOSn't 12:33:44 PM <Mothrayas> "I got an oof with my game!" Mothrayas Today at 12:22: <Colin> thank you for supporting noble causes such as my feet MemoryTAS Today at 11:55 AM: you wouldn't know beauty if it slapped you in the face with a giant fish [Today at 4:51 PM] Mothrayas: although if you like your own tweets that's the online equivalent of sniffing your own farts and probably tells a lot about you as a person MemoryTAS Today at 7:01 PM: But I exert big staff energy honestly lol Samsara Today at 1:20 PM: wouldn't ACE in a real life TAS just stand for Actually Cease Existing