1 2
8 9 10
14 15
Experienced player (703)
Joined: 2/5/2011
Posts: 1417
Location: France
CoolKirby wrote:
It's great that you've started on the run, but that WIP is pretty unoptimized. Or is this just a test run?
Well, It was a TAS but I don't see where it's unoptimized :P
Current: Rayman 3 maybe? idk xD Paused: N64 Rayman 2 (with Funnyhair) GBA SMA 4 : E Reader (With TehSeven) TASVideos is like a quicksand, you get in, but you cannot quit the sand
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Well, I'm not sure if anyone knows, but using dolphin and checking the game's properties, I found a file called "sb.ini" I'll post it here:
PATH=.

# Boot HIP file
BOOT=HB00

ShowMenuOnBoot     	   = 1
VideoSystemAutoDetect  = 0
VideoSystem            = NTSC

# Can the player get hurt ?  1 == YES, 0 == NO
G.TakeDamage        = 1

# Delay timers on taking damage before you can take damage again
G.DamageTimeHit     = 1.5
G.DamageTimeSurface = 1.5
G.DamageTimeEGen    = 1.5
G.DamageSurfKnock       = 1.75      # Must be non-zero
G.DamageGiveHealthKnock = 1.75      # Zero to disable knockback by default

# Cheats enabled?
G.CheatSpongeball   = 0
G.CheatPlayerSwitch = 0
# Can I always portal with the pause menu? 1 == YES, 0 == NO
G.CheatAlwaysPortal = 0
G.CheatFlyToggle    = 0
G.DisableForceConversation = 0

# Initial inventory counts (useful for debugging)
G.InitialShinyCount 	= 0
G.InitialSpatulaCount	= 0

# Play music?  1 == YES, 0 == NO
NoMusic=0
# Report SFX sizes?
SFXReport=0

#-----------------------------------------------------------------
# Global powerups -- can be given in game with the following
# events (sent to player or dispatcher):
#      Give PowerUp 0 = BubbleBowl
#      Give PowerUp 1 = CruiseBubble
#
G.BubbleBowl = 0
G.CruiseBubble = 0

# Frame rate clamping
# set to 0 for 60/50 fps, 2 for 30/25 fps, etc.
minVSyncCnt = 0

## Profiling options:
# '1'
# '2'
# - function level profiling
# '3'
# - assembly level profiling for specified routines
# - For each of the following ProfFunc* use the full name of the
#   function/method to profile. (eg, hot spots identified by profile level 2)
# - NOTE: 'X' and 'Circle' buttons are reserved in profiler mode
# - ALSO: Debug controller 'Start' resets profile tracking

# Profile=2

# ProfFuncTriangle  = IntersectBranch
# ProfFuncSquare    = IntersectLeaf
# ProfFuncLeft      =
# ProfFuncRight     =
# ProfFuncUp        =
# ProfFuncDown      =


#-----------------------------------------------------------------
# HIP/HOP loading
# Enable HIP/HOP scene loading protocol?  1 == YES, 0 == NO
EnableHipHopLoading = 1

#--------------Full Game File---------------------------------
# Task menu (says where to warp to for each task)
Menu01 = HB 01 01 01 02 03 05 07 08   # The Neighborhood
Menu02 = JF 01 01 02 02 03 03 04 04   # Jellyfish Fields
Menu03 = BB 01 01 01 02 02 03 04 04   # Downtown Bikini Bottom
Menu04 = GL 01 01 01 01 02 03 03 03   # Goo Lagoon
Menu05 = B1 01 00 00 00 00 00 00 00   # Poseidome
Menu06 = RB 01 01 01 01 02 03 03 03   # Rock Bottom
Menu07 = BC 01 02 02 02 02 03 04 05   # Barnacle Cave
Menu08 = SM 01 01 02 02 03 03 04 04   # Sand Mountain
Menu09 = B2 01 00 00 00 00 00 00 00   # Industrial Park
Menu10 = KF 01 01 02 02 04 04 05 05   # Kelp Forest
Menu11 = GY 01 01 01 02 02 03 03 04   # Flying Dutchman's Graveyard
Menu12 = DB 01 01 02 02 03 04 01 06   # Spongebob's Dream
Menu13 = B3 02 03 00 00 00 00 00 00   # Chum Bucket Lab
Menu14 = PS 01 01 01 01 01 01 01 01   # Patrick Sock Spatulas
Menu15 = KS 01 01 01 01 01 01 01 01   # Mr Krabs Spatulas

#-----------------------------------------------------------------
# Camera system parameters

zcam_pad_pyaw_scale		= 0.18;			# bigger number => faster yaw rotation about player
zcam_pad_pitch_scale	= 0.77;			# bigger number => faster look up/down

# near position:
zcam_near_d			= 3			# distance (relative to player)
zcam_near_h			= 1.8		# height (relative to player)
zcam_near_pitch		= 10		# pitch in degrees

# far position:
zcam_far_d			= 5			# distance (relative to player)
zcam_far_h			= 3			# height (relative to player)
zcam_far_pitch		= 15		# pitch in degrees

# zoomed in, above-looking-down position:
zcam_above_d			= 0.3		# distance (relative to player)
zcam_above_h			= 2.4		# height (relative to player)
zcam_above_pitch		= 68		# pitch in degrees

# zoomed in, below-looking-up position:
zcam_below_d			= 0.65		# distance (relative to player)
zcam_below_h			= 0.2		# height (relative to player)
zcam_below_pitch		= -68		# pitch in degrees

# high bounce camera
zcam_highbounce_d		= 0.2		# distance (relative to player)
zcam_highbounce_h		= 5.0		# height (relative to player)
zcam_highbounce_pitch	= 75		# pitch in degrees

# Wall jump camera
zcam_wall_d		= 7.5		# distance (relative to player)
zcam_wall_h		= 2.0		# height (relative to player)
zcam_wall_pitch	= 18		# pitch in degrees

# camera collision parameters
xcam_collis_radius		= 0.4;	# bigger number (not > 0.5 please) should keep sb in frame better.
xcam_collis_stiffness	= 0.3;	# bigger number (keep it between 0 and 1) moves quicker in response.

# "smart" camera rotation parameters (camera "over-rotates" to
# get around behind player when he's running sideways or backwards)
zcam_overrot_min     = 25       # angle at which rotation adjustment starts (0 degrees = forward)
zcam_overrot_mid     = 90       # angle at which rotation adjustment peaks
zcam_overrot_max     = 170      # angle at which rotation adjustment goes back to zero (180=straight back)
zcam_overrot_rate    = 0.1      # rotation speed factor -- keep this small, set to zero to disable
zcam_overrot_tstart  = 1.5      # time where rotation starts while holding down stick
zcam_overrot_tend    = 2.5      # time where rotation peaks while holding down stick
zcam_overrot_velmin  = 3.0      # minimum velocity to cause rotation to adjust
zcam_overrot_velmax  = 5.0      # maximum velocity to cause rotation to adjust
zcam_overrot_tmanual = 1.5      # extra time rotation is disabled when manual camera controls used


#--------------------------------------------------------------------------------
#   Skip times (when player can use button press to skip something)
#--------------------------------------------------------------------------------
gSkipTimeCutscene = 1.0		# Minimum of 1.0 allowed
gSkipTimeFlythrough = 1.0


#-----------------------------------------------------------------
# Tuning values for player character:
#    Anything with a "G" prefix is a global setting (affects all
#    characters).  The other character prefixes are "SB", "Sandy",
#    and "Patrick".
#
G.AnalogMin = 32
G.AnalogMax = 110

#-----------------------------------------------------------------
# Sundae powerup info timeout
G.SundaeTime = 10.0
G.SundaeMult = 1.5



#-----------------------------------------------------------------
# Shiny Object Values
G.ShinyValuePurple         =    50
G.ShinyValueBlue           =    10
G.ShinyValueGreen          =     5
G.ShinyValueYellow         =     2
G.ShinyValueRed            =     1

#-----------------------------------------------------------------
# Shiny Object Values for Combos

G.ShinyValueCombo0         =     0 # These first two should be the same
G.ShinyValueCombo1         =     0
G.ShinyValueCombo2         =     2
G.ShinyValueCombo3         =     3 # These two should be the same as well
G.ShinyValueCombo4         =     3 # because they use the same textbox
G.ShinyValueCombo5         =     5
G.ShinyValueCombo6         =    10
G.ShinyValueCombo7         =    15
G.ShinyValueCombo8         =    20
G.ShinyValueCombo9         =    25
G.ShinyValueCombo10        =    30
G.ShinyValueCombo11        =    40
G.ShinyValueCombo12        =    50
G.ShinyValueCombo13        =    60
G.ShinyValueCombo14        =    75
G.ShinyValueCombo15        =   100
G.ComboTimer               =   1.0




#-----------------------------------------------------------------
# Bubble Bash parameters:
#   Time is time to peak height (from launch), Delay is time before launch happens,
#   CVTime is duration of constant-velocity period, before gravity sets in.
#	As far as the animation goes, the transition to "Attack" animation
#	occurs as soon as "Start" animation finishes.  transition to "Strike"
#	occurs when contact is detected, otherwise transitions to normal fall when
#	peak height is reached.
#
G.BBashTime			= 0.315		# JPH:  increased from 0.3 to compensate for code change
G.BBashDelay		= 0.25
G.BBashCVTime		= 0.215		# JPH:  increased from 0.2 to compensate for code change
G.BBashHeight		= 3.3		# JPH:  increased from 3   to compensate for code change
G.BBounceSpeed		= 15

G.BSpinMinFrame		= 0
G.BSpinMaxFrame		= 11
# The radius of the damage ball at the center of the bubble wand
G.BSpinRadius       = 0.4

G.SandyMeleeMinFrame = 1.0
G.SandyMeleeMaxFrame = 9.0
G.SandyMeleeRadius = 0.3

G.BubbleBowlTimeDelay       =  0.75
G.BubbleBowlLaunchPosLeft   =  0.0
G.BubbleBowlLaunchPosUp     =  1.0
G.BubbleBowlLaunchPosAt     =  1.5
G.BubbleBowlLaunchVelLeft   =  0.0
G.BubbleBowlLaunchVelUp     =  0.0
G.BubbleBowlLaunchVelAt     = 10.0
G.BubbleBowlPercentIncrease =  0.85
G.BubbleBowlMinSpeed        =  0.6
G.BubbleBowlMinRecoverTime  =  0.15

#-----------------------------------------------------------------
# Track-sliding parameters:
# -	Slide acceleration scales from AccelStart down to AccelEnd as velocity
#	(in direction of slope) increases from AccelVelMin to AccelVelMax.
# -	velocity is directly boosted by a combination of AccelPlayerFwd and
#	AccelPlayerSide based on how much the player points the stick
#	in the downward direction.
# -	max speed increases from VelMaxStart to VelMaxEnd over
#	VelMaxIncTime, as long as actual speed stays >= max speed.
#	if speed falls below max speed, timer resets.
# -	air speed stays constant for AirHoldTime,
#	then drops to zero over AirSlowTime.
#	-	that was the intention anyway...  whats really happening now
#		is that normal air controls blend ON over AirHoldTime period,
#		with speed held constant, then
#		velocity blends OFF over subsequent AirSlowTime period.
#		(seems to work okay, but give us your thoughts.)
#	-	same thing for the AirDbl*Time parameters, except these
#		apply to the double jump when sliding.
# -	VelDblBoost is boost to velocity applied on double jump,
#	in current direction (but not uphill).
#
# Recommendations for tweaking:
# - AccelStart/End  = increase to reduce time to accelerate from 0 - 11 m/s without stick control
# - AccelPlayerFwd  = increase to reduce time to accelerate from 0 - 11 m/s with stick pressed forward
# - AccelPlayerBack = increase to reduce time to decelerate
# - AccelPlayerSide = increase to improve turning
# - VelMaxIncTime   = reduce   to reduce time to accelerate from 11 - 16 m/s without stick control
# - VelMaxIncAccel  = increase to reduce time to accelerate from 11 - 16 m/s with stick pressed forward
#
G.SlideAccelVelMin		= 5
G.SlideAccelVelMax		= 10
G.SlideAccelStart		= 8		# Higher value reduces time from 0 - 11 m/s
G.SlideAccelEnd			= 3
G.SlideAccelPlayerFwd	= 5
G.SlideAccelPlayerBack	= 8
G.SlideAccelPlayerSide	= 22.5
G.SlideVelMaxStart		= 11
G.SlideVelMaxEnd		= 16
G.SlideVelMaxIncTime	= 4
G.SlideVelMaxIncAccel	= 1
G.SlideAirHoldTime		= 3
G.SlideAirSlowTime		= .75
G.SlideAirDblHoldTime	= 2
G.SlideAirDblSlowTime	= .5
G.SlideVelDblBoost		= 6
#
#G.SlideAirHoldTime		= 0.75
#G.SlideAirSlowTime		= 3.0
#G.SlideAirDblHoldTime	= 0.5
#G.SlideAirDblSlowTime	= 2.0
#G.SlideVelDblBoost		= 6

#---------------------------------------------------------
# StartSlideAngle - Degrees of slope that scooby starts sliding on
# StopSlideAngle  - Degrees of slope that scooby stops sliding on
# 					... should be less than StartSlideAngle
#
G.StartSlideAngle	= 20
G.StopSlideAngle	= 10

#---------------------------------------------------------
# RotMatchMaxAngle  - Max degrees of slope that scooby will match
#						his orientation to
# RotMatchMatchTime - Time (in seconds) it takes scooby to match the slope
# RotMatchRelaxTime - Time (in seconds) it takes scooby to relax to
#						normal orientation (eg while in air)
#
G.RotMatchMaxAngle	= 30
G.RotMatchMatchTime	= 0.1
G.RotMatchRelaxTime	= 0.3

# Gravity for all characters
G.Gravity          = 30


#---------------------------------------------------------
# Patrick Pickup / Carry / Throw settings
#
Carry.MinDist		= 0.675		# Min dist to detect item to pick up
Carry.MaxDist		= 1.900		# Max dist to detect item to pick up
Carry.MinHeight		= -0.2		# Min height to detect item
Carry.MaxHeight		= 0.4		# Max height to detect item
Carry.MaxCosAngle	= 45.0		# Angle to detect item to pick up

Carry.ThrowMinDist	= 1.5		# Min distance to autotarget for throwing
Carry.ThrowMaxDist	= 12.0		# Max distance to autotarget for throwing
Carry.ThrowMinHeight	= -3.0		# Min height to autotarget for throwing
Carry.ThrowMaxHeight	= 5.0		# Max height to autotarget for throwing
Carry.ThrowMaxStack	= 2.75		# Max height fruit can be stacked
Carry.ThrowMaxCosAngle	= 25.0		# Angle to autotarget

Carry.GrabLerpMin	= 0.0		# First interpolation frame for pickup animation
Carry.GrabLerpMax	= 0.2		# Last interpolation frame for pickup animation

#---------------------------------------------------------
# Global settings for throwable objects--note that these
# are settings from where patrick actually releases the
# object in the animation--so the actual height and distance
# is somewhat higher.  You'll have to fiddle with it...
# Note that throw gravity is currently the same as normal
# gravity in the scene, it could be changed though...
#
Carry.ThrowGravity	= 50.0
Carry.ThrowHeight	=  3.0
Carry.ThrowDistance	= 10.0


#---------------------------------------------------------
# Fruit bounciness settings.  The first two numbers are velocity
# values over which the bounciness is decayed over time on the floor
# (to make the fruit settle with fewer bounces).  In other words, if the
# fruit is moving 6.0 m/s (MAX) or more, it will bounce at the values shown.
# As the velocity drops to 0.3 m/s (MIN), it will decay to zero--once it
# reaches zero, the object stops its motion and comes to rest.
#
# Higher bounce values = more bounciness.
#   1 == perfect reflection
#   0 == no reflection
#
# Higher friction values = less friction (I know, it seems kinda backwards):
#   1 == frictionless (object will slide forever)
#   0 == infinite friction (object stops on a dime)
#
# Note that off ceilings and walls, there is no friction.  If you wanted to
# change the fruit so that it bounces "in place" where it first lands, you
# could set the FruitFloorFriction to "0".  This might make puzzles where
# you have to transport objects across gaps easier.
#
Carry.FruitFloorDecayMin	= 0.3
Carry.FruitFloorDecayMax	= 6.0
Carry.FruitFloorBounce		= 0.15
Carry.FruitFloorFriction	= 0.4
Carry.FruitCeilingBounce	= 0.1
Carry.FruitWallBounce		= 0.5

# Fruit lifetime in seconds.  Note that it takes around 0.75 seconds to pickup
# and 0.75 seconds to throw for Patrick (with current animations which have
# been accelerated somewhat).
# 
Carry.FruitLifetime		= 15.0



# Special moves for the characters
eSPECIAL_Slippers       	= 0	# First sneak
eSPECIAL_LampShade      	= 0     # First disguise
eSPECIAL_Spring         	= 1     # Double jump
eSPECIAL_FootballHelmet 	= 0     # Headbutt
eSPECIAL_StickyBoots    	= 0     # Anti-sticky boots
eSPECIAL_LightningBolt  	= 1     # Buttsmash
eSPECIAL_LightningBoltStun	= 0     # Buttsmash Stun
eSPECIAL_Plungers       	= 0	# Anti-slippery
eSPECIAL_Shovel         	= 0	# Dig powerup
eSPECIAL_Umbrella       	= 0     # Floating
eSPECIAL_BubbleGum      	= 0	# Spits wads of sticky/bouncy gum
eSPECIAL_SoapBar        	= 0	# Spits soap bubbles
eSPECIAL_BlackKnight    	= 0	# Second disguise
eSPECIAL_FlowerPot      	= 0	# Are these last two being used?
eSPECIAL_DivingHelmet   	= 0     # Last disguise (that you don't use?)




#--------------------------------------------------------------------------------
#   SPONGEBOB SETTINGS
#--------------------------------------------------------------------------------
# Speed values for character.  First value is minimum speed character can move,
# any less than that and character turns in place.  First to second is the walking
# range, second to third is running range.  The last 3 numbers are the
# corresponding stick deflections for those speeds.
#

# SB.MoveSpeed = 0.6,2.5,5,  0.1,0.6,1.0 (E3 values)

# Faster sneak
SB.MoveSpeed = 0.6,4,5,  0.1,0.8,1.0

# Anim speed values, first value is nominal movement speed of animation
# assuming animation playing at normal speed.  The next two values are
# the minimum and maximum allowable speed the animation will play at.
#
SB.AnimSneak = 1, .6, 4
SB.AnimWalk  = 1, .6, 4
SB.AnimRun   = 4.0, .5, 1.5

# Airborne parameters
SB.JumpGravity      = 5
SB.GravSmooth       = 0.2
SB.FloatSpeed       = 3
SB.ButtsmashSpeed   = 24

# Jump parameters
SB.Jump   = 1.4,   0.1, 0.1
SB.Double = 1.4,   0.1, 0.1
SB.Bounce = 2,   0.3, 0.0
SB.Spring = 3.5, 0.3, 0.0
SB.Wall   = 1.5,   0.3, 0.0
SB.WallJumpVelocity = 7.0

# Ledge hanging parameters
# animGrab = time in animation (in frames) to where character is in contact with ledge
#            (time for interpolation from airborne position to grabbing position)
SB.Ledge.animGrab   = 3

# Dampening factor for xz and y velocity while spinning.  The higher this is, the less SB can 
# move when spinning.
SB.spin_damp_xz = 15.0
SB.spin_damp_y = 15.0

# Model ordering indices for SB.  Change these whenever the exporter chooses a different random order.
SB.model_index.body				= 1 #0
SB.model_index.arm_l			= 2 #1
SB.model_index.arm_r			= 3 #2
SB.model_index.ass				= 4 #3
SB.model_index.underwear		= 5 #4
SB.model_index.wand				= 0 #5
SB.model_index.tongue			= 6
SB.model_index.bubble_helmet	= 7
SB.model_index.bubble_shoe_l	= 8
SB.model_index.bubble_shoe_r	= 9
SB.model_index.shadow_body		= 10
SB.model_index.shadow_arm_l		= 11
SB.model_index.shadow_arm_r		= 12
SB.model_index.shadow_wand		= 13


#--------------------------------------------------------------------------------
#   CRUISE BUBBLE SETTINGS
#--------------------------------------------------------------------------------
##################################################################
# Variables affecting the aiming state.
##################################################################
# Distance of camera from player.
SB.cb.aim.dist = 2.0
# Height of camera above player.
SB.cb.aim.height = 1.5
# Vertical pitch of the camera, -90 to 90 degrees.
SB.cb.aim.pitch = 0.0
# Speed of the camera movement around center.
SB.cb.aim.speed = 1.0
# Time required to move between two positions.
SB.cb.aim.move_time = 1.0
##################################################################
# Variables affecting the camera attachment state.
##################################################################
# Time to wait before moving the camera to the launch position. *Incomplete
SB.cb.attach.wait_time = 1.0
# Location relative to player to start the launch.  *Incomplete.
SB.cb.attach.offset.x = 1.0
SB.cb.attach.offset.y = 2.0
SB.cb.attach.offset.z = 0.0
##################################################################
# Parameters affecting the missle while flying.
##################################################################
# Missle acceleration.
SB.cb.fly.accel = 6.0
# Max missle velocity.
SB.cb.fly.max_vel = 12.0
# Field-of-view angle while flying.
SB.cb.fly.fov = 100.0
# Maximum time the missle can be in the air.
SB.cb.fly.live_time = 6.0
##################################################################
# Rotational flying parameters.
##################################################################
# Horizontal turn speed.
SB.cb.fly.turn.xdelta = 5.0
# Vertical turn speed.
SB.cb.fly.turn.ydelta = 4.0
# Speed at which horizontal rotation decays.  0 to 1.  A value of 0 never
# stops turning, and a value of 1 stops immediately.
SB.cb.fly.turn.xdecay = 0.99
# Speed at which vertical rotation decays.  0 to 1.  A value of 0 never
# stops turning, and a value of 1 stops immediately.
SB.cb.fly.turn.ydecay = 0.99
# The vertical rotation boundary.  0 to 1.  A value of 0 allows no
# vertical rotation, and a value of 1 allows completely vertical rotation.
SB.cb.fly.turn.ybound = 0.6
# The fraction of turn speed applied to roll.  A positive value rolls into
# the turn, a negative value rolls out of the turn, and a 0 value does not
# roll at all.
SB.cb.fly.turn.roll_frac = 0.2
##################################################################
# Parameters affecting collision distance.
##################################################################
# Minimum distance to hit a non-enemy, non-environment object.
SB.cb.fly.hit_dist.object = 0.2
# Minimum distance to hit an enemy.
SB.cb.fly.hit_dist.enemy = 0.2
# Minimum distance to hit the environment.
SB.cb.fly.hit_dist.env = 0.2
##################################################################
# Parameters affecting the explosion state.
##################################################################
# Delay before returning to player after explosion.  *Incomplete.
SB.cb.explode.wait_time = 1.0



#--------------------------------------------------------------------------------
#   PATRICK SETTINGS
#--------------------------------------------------------------------------------
# Speed values for character.  First value is minimum speed character can move,
# any less than that and character turns in place.  First to second is the walking
# range, second to third is running range.  The last 3 numbers are the
# corresponding stick deflections for those speeds.
#
Patrick.MoveSpeed = 0.6,2.5,5,  0.1,0.6,1.0

# Anim speed values, first value is nominal movement speed of animation
# assuming animation playing at normal speed.  The next two values are
# the minimum and maximum allowable speed the animation will play at.
#
Patrick.AnimSneak = 1.5, .5, 2.5
Patrick.AnimWalk  = 1.5, .5, 2.5
Patrick.AnimRun   = 3.0, .5, 2.5

# Airborne parameters
Patrick.JumpGravity      = 5
Patrick.GravSmooth       = 0.2
Patrick.FloatSpeed       = 3
Patrick.ButtsmashSpeed   = 24

# Jump parameters
Patrick.Jump   = 1.5,   0.1, 0.1
Patrick.Double = 1.5,   0.1, 0.1
Patrick.Bounce = 2,   0.3, 0.0
Patrick.Spring = 3.5, 0.3, 0.0

# Ledge hanging parameters
Patrick.Ledge.animGrab   = 3


#--------------------------------------------------------------------------------
#   SANDY SETTINGS
#--------------------------------------------------------------------------------
# Speed values for character.  First value is minimum speed character can move,
# any less than that and character turns in place.  First to second is the walking
# range, second to third is running range.  The last 3 numbers are the
# corresponding stick deflections for those speeds.
#
Sandy.MoveSpeed = 0.6,2.5,5,  0.1,0.6,1.0

# Anim speed values, first value is nominal movement speed of animation
# assuming animation playing at normal speed.  The next two values are
# the minimum and maximum allowable speed the animation will play at.
#
Sandy.AnimSneak = 1.5, .5, 2.5
Sandy.AnimWalk  = 1.5, .5, 2.5
Sandy.AnimRun   = 3.0, .5, 2.5

# Airborne parameters
Sandy.JumpGravity      = 5
Sandy.GravSmooth       = 0.2
Sandy.FloatSpeed       = 3
Sandy.ButtsmashSpeed   = 24

# Jump parameters
Sandy.Jump   = 1.5,   0.1, 0.1
Sandy.Double = 1.5,   0.1, 0.1
Sandy.Bounce = 2,   0.3, 0.0
Sandy.Spring = 3.5, 0.3, 0.0

# Ledge hanging parameters
Sandy.Ledge.animGrab   = 3


#--------------------------------------------------------------------------------
#   PLAYER OUT-OF-BOUNDS STATE SETTINGS
#--------------------------------------------------------------------------------

# Time in seconds the player can be out of bounds.  Range: greater than 0.
#player.state.out_of_bounds.out_time					= 9.0
# Time in seconds required before out-of-bounds timer resets.  Range: greater
# than 0, less than out_time.
#player.state.out_of_bounds.reset_time				= 3.0
# Distance of camera from player.
#player.state.out_of_bounds.cam_dist					= 3.0
# Height of camera above player.
#player.state.out_of_bounds.cam_height				= 1.0
# Time it takes the camera to reorient itself to zoom in and face SB.
#player.state.out_of_bounds.reorient_time			= 0.25
# The resource identifier of the model.
#player.state.out_of_bounds.hand_model				= hand

# Settings affecting how the hand moves while grabbing the player.
#########################
# The max velocity of the hand as it comes in.  Range: greater than 0.
#player.state.out_of_bounds.grab.in_vel				= 1.0
# The distance required for the hand to stop, as a fraction of the screen.
# Controls how suddenly the hand stops.  Range: 0 to 1.
#player.state.out_of_bounds.grab.in_stop_dist		= 0.05
# The amount of time the hand waits before moving back out.
#player.state.out_of_bounds.grab.wait_time			= 0.5
# The max velocity of the hand as it goes out.  Range: greater than 0.
#player.state.out_of_bounds.grab.out_vel				= 0.5
# The distance required for the hand to reach max velocity as it goes out,
# as a fraction of the screen.  Controls how suddenly the hand starts moving.
# Range 0 to 1.
#player.state.out_of_bounds.grab.out_start_dist		= 0.1
# On-screen position of the hand.  This position is in 0 to 1 screen
# coordinates, with (0, 0) at the top left and positive y going down.
#player.state.out_of_bounds.grab.in_x				= 0.0
#player.state.out_of_bounds.grab.in_y				= -0.25
# The time that elapses before fade-out starts.
#player.state.out_of_bounds.grab.fade_start_time		= 2.0
# The time required to fade to black.
#player.state.out_of_bounds.grab.fade_time			= 0.5

# Settings affecting how the hand moves while dropping the player.
########################
# The max velocity of the hand as it comes in.  Range: greater than 0.
#player.state.out_of_bounds.drop.in_vel				= 0.5
# The distance required for the hand to stop, as a fraction of the screen.
# Controls how suddenly the hand stops.  Range: 0 to 1.
#player.state.out_of_bounds.drop.in_stop_dist		= 0.1
# The amount of time the hand waits before moving back out.
#player.state.out_of_bounds.drop.wait_time			= 0.5
# The max velocity of the hand as it goes out.  Range: greater than 0.
#player.state.out_of_bounds.drop.out_vel				= 1.0
# The distance required for the hand to reach max velocity as it goes out,
# as a fraction of the screen.  Controls how suddenly the hand starts moving.
# Range 0 to 1.
#player.state.out_of_bounds.drop.out_start_dist		= 0.05
# On-screen position of the hand.  This position is in 0 to 1 screen
# coordinates, with (0, 0) at the top left and positive y going down.
#player.state.out_of_bounds.drop.in_x				= 0.0
#player.state.out_of_bounds.drop.in_y				= -0.25
# The time that elapses before fading back in.
player.state.out_of_bounds.drop.fade_start_time		= 0.2
# The time required to fade in from black.
#player.state.out_of_bounds.drop.fade_time			= 0.5

# Starting position of the hand, outside the screen rectangle.
#player.state.out_of_bounds.out_y					= -1.0
# Size scaling fractions.
#player.state.out_of_bounds.hand_size_x				= 0.5
#player.state.out_of_bounds.hand_size_y				= 0.5
# Rotation of the hand, expressed as yaw, pitch, and roll.
#player.state.out_of_bounds.hand_yaw					= 0.0
#player.state.out_of_bounds.hand_pitch				= 0.0
#player.state.out_of_bounds.hand_roll				= 180.0


#--------------------------------------------------------------------------------
#   SPONGEBOB UNDERWEAR-BUNGEE SETTINGS
#--------------------------------------------------------------------------------
# Uncomment any to change the default values.

# The bottom fraction of the total distance for which the bottom apex animation
# plays.  Between 0 and 0.5
#SB.state.bungee.bottom_anim_frac	= 0.05
# The top fraction of the total distance for which the bottom apex animation
# plays.  Between 0 and 0.5
#SB.state.bungee.top_anim_frac		= 0.1
# Transition time going between bottom and normal animations.
#SB.state.bungee.bottom_anim_time	= 0.1
# Transition time going between top and normal animations.
#SB.state.bungee.top_anim_time		= 0.1
# Transition time going between hit and normal animations.
#SB.state.bungee.hit_anim_time			= 0.1
# Multiplier affecting rotation induced when spongebob takes damage.
#SB.state.bungee.damage_rot				= 10.0
# Time in seconds to delay before restarting after death.
#SB.state.bungee.death_time				= 3.0
# Velocity-based blur intensity.  Increase to blur more.  0 to 1 range.
#SB.state.bungee.vel_blur				= 0.0
# Distance from camera at which the bungee cord fades in.  1 or higher.
#SB.state.bungee.fade_dist				= 2.0
# Radius of the player, while bungeeing.
#SB.state.bungee.player_radius			= 1.0

# Constants affecting the player's movement on the horizontal(x/z) plane.
########################
# Padding around the edges of the player's movement.  Increase this to ensure
# that the player is able to reach all the way to the edges.  I.e. since the
# analog control pad does not go all the way to the extremes, increase this value
# to narrow the control pad extremes.  Valid values are between 0 and 0.25.
#SB.state.bungee.horizontal.edge_zone	= 0.05
# Horizontal sway force.  The higher this is, the easier it is for the player to
# move.
#SB.state.bungee.horizontal.sway			= 3.0
# The movement decay factor.  Controls how much of the movement velocity is
# kept per frame.  Valid values are in the range 0 to 1, 
#SB.state.bungee.horizontal.decay		= 0.95

# Constants affecting the dive action.
########################
# Time during which a dive accelerates.  This value also specifies how quickly
# SB animates into a dive.
#SB.state.bungee.dive.time				= 0.5
# Specifies how long it takes for the dive to animate from the dive animation to
# the normal cycle animation. This does not effect the time spent accelerating
# downward.
#SB.state.bungee.dive.anim_out_time		= 0.5
# The minimum and maximum distance between which the dive can take place,
# expressed as a fraction of the player's vertical range.  For instance, if
# min_dist is .1, max_dist is .6, and the player's vertical movement is between
# 10 and 110 meters from the hook, the player may dive at any time while between
# 20 (10 + 100*.1) and 70 (10 + 100*.6) meters from the hook.  Note that the
# maximum distance must be greater than .5, since the player's rest position is
# at .5, otherwise a dive would not be possible from a complete stop..
#SB.state.bungee.dive.min_dist			= 0.0
#SB.state.bungee.dive.max_dist			= 0.6

# Playback options:
# PlaybackMode:  0 - off, 1 - record, 2 - play, 3 - play and dump frames
# PlaybackFile:  sets the filename to dump playback data into
# ScreenDumpPath sets the folder to dump into (for example, "c:\sb\dump\")
# ScreenDumpStartFrame and ScreenDumpEndFrame set a frame range to dump
# ForceCinematic:  if > 0, plays the nth cinematic in the scene
#
# To record:
#   1) Set PlaybackMode to 1
#   2) Run the game (controller data will be saved internally)
#   3) If you are happy with the recording, press triangle/Y on the debug
#      controller -- this will write the data to the PlaybackFile
#   4) Rerun the game with PlaybackMode set to 2 or 3 to play or play/dump the frames
PlaybackMode=0
PlaybackFile=test.pbk
ScreenDumpPath=c:\sb\dump\
ScreenDumpStartFrame=0
ScreenDumpEndFrame=65535
ForceCinematic=0


#--------------------------------------------------------------------------------
#   ScrFX Settings
#--------------------------------------------------------------------------------
ScrFxLetterBoxSize				= 32.0		# y pixel height for each bar (top and bottom)
ScrFxLetterBoxAlpha				= 255		# 255 opaque, 0 completely transparent
It has information which I believe may be helpful in finding addresses for this game.
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
New post because this is somewhat important. Using the free look feature in dolphin + moonjump code, I found the hidden spatula in "The small shall rule...or not" stage, turns out it's inside the robot's brain. :o I'm going to try freelooking other places to see what I can find. Edit:
Player (223)
Joined: 1/20/2012
Posts: 534
jlun2, do you have Skype? or something that I can IM you on?
Completed: 2010-Current | Sonic Adventure 2: Battle - Individual Level TASes 2014 | Spongebob: Battle For Bikini Bottom - Any% in 1:05:03.23 2014 | Sonic Adventure 2: Battle - Hero Story (w/ THC98) in 25:11.87 2016 | Metroid Prime - Any% in 00:37 (In-Game Time) 2018 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:42.350 2020 | Spongebob: Battle For Bikini Bottom - Any% in 0:39:20.10 2022 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:25.567 Currently working on: METROID PRIME ANY%
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
itsPersonnal wrote:
jlun2, do you have Skype? or something that I can IM you on?
Sorry, but I don't have one. I do have a hotmail/Outlook account though. Btw, using moonjump, I've managed to clip into the brain in the same tunnel as COEL did in this video, but like the ones you found, this doesn't trigger the end.
Player (223)
Joined: 1/20/2012
Posts: 534
I'm wondering how you managed to get oob, could you take a screen shot of exactly where you were? Also yeah I didn't expect it to end. The trigger seems to be what ends the fights. I think it's safe to assume that all the fights have triggers floating about like the Robo Spongebob one, finding them is going to be a problem though. I want to know if the spatula is what gives you upgrades though, so we need to collect either the Robo Patrick spatula or the Robo Sandy one. To get the Patrick one we need a code to get grabbed by the hand or die or something. To get Sandys we'll need a way to edit spongebobs position or we'll need to find a clip though the floor (unlikely).
Completed: 2010-Current | Sonic Adventure 2: Battle - Individual Level TASes 2014 | Spongebob: Battle For Bikini Bottom - Any% in 1:05:03.23 2014 | Sonic Adventure 2: Battle - Hero Story (w/ THC98) in 25:11.87 2016 | Metroid Prime - Any% in 00:37 (In-Game Time) 2018 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:42.350 2020 | Spongebob: Battle For Bikini Bottom - Any% in 0:39:20.10 2022 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:25.567 Currently working on: METROID PRIME ANY%
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
itsPersonnal wrote:
I'm wondering how you managed to get oob, could you take a screen shot of exactly where you were? Also yeah I didn't expect it to end. The trigger seems to be what ends the fights. I think it's safe to assume that all the fights have triggers floating about like the Robo Spongebob one, finding them is going to be a problem though. I want to know if the spatula is what gives you upgrades though, so we need to collect either the Robo Patrick spatula or the Robo Sandy one. To get the Patrick one we need a code to get grabbed by the hand or die or something. To get Sandys we'll need a way to edit spongebobs position or we'll need to find a clip though the floor (unlikely).
Go to this tunnel using the method in the video I linked: Go all the way to the end and moon jump around here: It may be possible without moonjump, since COEL did it in the vid to reach the tunnel above. Btw, based on the .ini file above, it seems this:
## Profiling options: 
# '1' 
# '2' 
# - function level profiling 
# '3' 
# - assembly level profiling for specified routines 
# - For each of the following ProfFunc* use the full name of the 
#   function/method to profile. (eg, hot spots identified by profile level 2) 
# - NOTE: 'X' and 'Circle' buttons are reserved in profiler mode 
# - ALSO: Debug controller 'Start' resets profile tracking 

# Profile=2 

# ProfFuncTriangle  = IntersectBranch 
# ProfFuncSquare    = IntersectLeaf 
# ProfFuncLeft      = 
# ProfFuncRight     = 
# ProfFuncUp        = 
# ProfFuncDown      = 
may be some kind of debug. I wonder what would happen if it was edited before inserting back into the iso? Edit: This section
#----------------------------------------------------------------- 
# Global powerups -- can be given in game with the following 
# events (sent to player or dispatcher): 
#      Give PowerUp 0 = BubbleBowl 
#      Give PowerUp 1 = CruiseBubble 
# 
G.BubbleBowl = 0 
G.CruiseBubble = 0 
Anyone good with GCN assembly want to check it out? :P
Player (223)
Joined: 1/20/2012
Posts: 534
I don't really understand that at all by the way. what would you be editing?
Completed: 2010-Current | Sonic Adventure 2: Battle - Individual Level TASes 2014 | Spongebob: Battle For Bikini Bottom - Any% in 1:05:03.23 2014 | Sonic Adventure 2: Battle - Hero Story (w/ THC98) in 25:11.87 2016 | Metroid Prime - Any% in 00:37 (In-Game Time) 2018 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:42.350 2020 | Spongebob: Battle For Bikini Bottom - Any% in 0:39:20.10 2022 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:25.567 Currently working on: METROID PRIME ANY%
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
itsPersonnal wrote:
I don't really understand that at all by the way. what would you be editing?
This: You can find it by right clicking on the iso in dolphin and selecting "properties".
Player (223)
Joined: 1/20/2012
Posts: 534
I managed to clip out of bounds here without moon jump. It was really dumb though, I was using free look when it happened and I didn't see exactly how or where it happened, and I'm having a hard time getting it to happen again <_______<. My guess is that you need to tap forward to get out, instead of holding a solid direction. I'm gonna keep trying to get out here, hopefully I figure out what I did. Edit: It has been done !!! Ok so with that over hyped moonjump code from way back in the thread I was able to get grabbed by the hand after collecting the spatula in the Robo Patrick fight! First off: no, you don't get the cruise bubble, meaning that collecting the spatula under the Robo Sandy fight would NOT give us bubble bowl. Second: After getting the spatula, if you enter Bikini Bottom through any means, you trigger the text from Plankton and the 40 spatula gate will be opened, as though you just beat the boss. So unless my theory of each major boss [major boss = bosses that give you a spatula during a cutscene] having an invisible trigger that ends the fight is incorrect, we can still find those somehow, and possibly skip Robo Sandy and/or Robo Patrick. EditEdit: I got Petire to help me find the position addresses: 005c05e0 005c05e4 005c05e8 You can edit these, but apparently they only work for spongebobs house <_<. I'm going to assume that every area has it's own address. EditEditEdit: Address for Robo Sandy: 004ae530 004ae534 004ae538 The floor here is apparently Wind Waker tier, because even if you edit spongebobs position address he can't go under the ring. I have no idea how that makes any sense either... ALSO: fun fact, the address changes, so that address is the right one for my save state, but probably not for anyone else. Here's how to find the address: Use one of these 2 "universal" sets of addresses 002c8b00 002c8b04 002c8b08 003c0cc0 003c0cc4 003c0cc8 Then open up the cheats search and look for addresses with the same value until you find the right one.
Completed: 2010-Current | Sonic Adventure 2: Battle - Individual Level TASes 2014 | Spongebob: Battle For Bikini Bottom - Any% in 1:05:03.23 2014 | Sonic Adventure 2: Battle - Hero Story (w/ THC98) in 25:11.87 2016 | Metroid Prime - Any% in 00:37 (In-Game Time) 2018 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:42.350 2020 | Spongebob: Battle For Bikini Bottom - Any% in 0:39:20.10 2022 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:25.567 Currently working on: METROID PRIME ANY%
Joined: 5/25/2013
Posts: 8
I'm not sure why this works, but if there's a trigger in Robo-Patrick's arena, this glitch should make it possible to reach it in a speedrun: https://www.youtube.com/watch?v=3_YjlR8RM1c
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Coel wrote:
I'm not sure why this works, but if there's a trigger in Robo-Patrick's arena, this glitch should make it possible to reach it in a speedrun: https://www.youtube.com/watch?v=3_YjlR8RM1c
Someone mentioned an untextured spatula in the comments. I wonder if that means the trigger from Robo-Spongebob is actually a textureless spatula? I'll play around with the wireframe mode and see. Edit: Wireframe mode doesn't work quite well with this game it seems. The wireframes dont seem to disappear, so after a while, the screen looks like a mess.
Player (223)
Joined: 1/20/2012
Posts: 534
Completed: 2010-Current | Sonic Adventure 2: Battle - Individual Level TASes 2014 | Spongebob: Battle For Bikini Bottom - Any% in 1:05:03.23 2014 | Sonic Adventure 2: Battle - Hero Story (w/ THC98) in 25:11.87 2016 | Metroid Prime - Any% in 00:37 (In-Game Time) 2018 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:42.350 2020 | Spongebob: Battle For Bikini Bottom - Any% in 0:39:20.10 2022 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:25.567 Currently working on: METROID PRIME ANY%
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
itsPersonnal wrote:
God non-TAS robo spongebob fight: http://www.twitch.tv/itspersonnaltoo/c/2725694 New WR (1:22:24): http://www.twitch.tv/itspersonnaltoo/c/2725707
New route, huh? Btw, what happen to the audio? :P
Player (223)
Joined: 1/20/2012
Posts: 534
It was 6am so I didn't want to use my mic. and my dazzle is broken and doesn't have audio for some reason :/ Edit: I TASed a thing: https://www.youtube.com/watch?v=HjbTYIVdVyw
Completed: 2010-Current | Sonic Adventure 2: Battle - Individual Level TASes 2014 | Spongebob: Battle For Bikini Bottom - Any% in 1:05:03.23 2014 | Sonic Adventure 2: Battle - Hero Story (w/ THC98) in 25:11.87 2016 | Metroid Prime - Any% in 00:37 (In-Game Time) 2018 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:42.350 2020 | Spongebob: Battle For Bikini Bottom - Any% in 0:39:20.10 2022 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:25.567 Currently working on: METROID PRIME ANY%
Editor, Experienced player (608)
Joined: 11/8/2010
Posts: 4012
A much faster, nearly TAS-only way to start Kelp Forest Backwards, found by Coel: Link to video
Player (223)
Joined: 1/20/2012
Posts: 534
There is a damage boost strat now, it's much more likely to be done non-TAS :P
Completed: 2010-Current | Sonic Adventure 2: Battle - Individual Level TASes 2014 | Spongebob: Battle For Bikini Bottom - Any% in 1:05:03.23 2014 | Sonic Adventure 2: Battle - Hero Story (w/ THC98) in 25:11.87 2016 | Metroid Prime - Any% in 00:37 (In-Game Time) 2018 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:42.350 2020 | Spongebob: Battle For Bikini Bottom - Any% in 0:39:20.10 2022 | Spongebob: Battle For Bikini Bottom - Cheat% in 1:25.567 Currently working on: METROID PRIME ANY%
Experienced player (703)
Joined: 2/5/2011
Posts: 1417
Location: France
I may wait a complete route glitched for TASers to be done before starting :P
Current: Rayman 3 maybe? idk xD Paused: N64 Rayman 2 (with Funnyhair) GBA SMA 4 : E Reader (With TehSeven) TASVideos is like a quicksand, you get in, but you cannot quit the sand
Editor, Experienced player (608)
Joined: 11/8/2010
Posts: 4012
You probably should wait anyway. You have a few other projects you should work on first.
Experienced player (703)
Joined: 2/5/2011
Posts: 1417
Location: France
Yup that's why ;)
Current: Rayman 3 maybe? idk xD Paused: N64 Rayman 2 (with Funnyhair) GBA SMA 4 : E Reader (With TehSeven) TASVideos is like a quicksand, you get in, but you cannot quit the sand
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Experienced player (703)
Joined: 2/5/2011
Posts: 1417
Location: France
this one seems to be newest one on pastebin but there already new glitches: http://pastebin.com/Fb1ETmnP
Current: Rayman 3 maybe? idk xD Paused: N64 Rayman 2 (with Funnyhair) GBA SMA 4 : E Reader (With TehSeven) TASVideos is like a quicksand, you get in, but you cannot quit the sand
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Joined: 5/25/2013
Posts: 8
Oh yeah, I forgot to post that here. :/ Thanks anyways. :D
Skilled player (1706)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Coel wrote:
Oh yeah, I forgot to post that here. :/ Thanks anyways. :D
Since I can't seem to reply on Youtube atm for some reason, can I ask will you ever submit the runs to SDA?
1 2
8 9 10
14 15