Register - Login
Views: 96185261
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
12-13-18 02:55:17 PM

Jul - The Cutting Room Floor - Kirby's Epic Yarn (Fluff's Epic Param.txt) (which does almost nothing epic) (epic wall of text/code) New poll - New thread - New reply
Next newer thread | Next older thread
Someguy

Shyguy
Level: 22


Posts: 74/92
EXP: 56900
For next: 1450

Since: 07-26-07

From: California now!

Since last post: 1.0 years
Last activity: 1 day

Posted on 09-26-12 05:45:16 AM Link | Quote
Toying around a bit with Kirby's Epic Yarn, specifically the "fluff_param.txt" file. So far I've found little in there unused I can actually manage to get to work, nothing weird enough for the weird discoveries thread and yet way too much rambling for other topics, I thought I'd mention it here until I get some rest/a screenshot and can stick it on the Wiki perhaps. Each option has a brief Japanese comment on what it does, which helps!

There's quite a few neat debug/test options in the file... nearly none of them work for me, perhaps they require an external device/PC connection, as they like to reference a console/terminal output and so far I've yet to make it appear in-game with any key mashing with debug flags on, even trying with a nunchuk and Classic Controller. However, there is a debugfont.brfna file, so perhaps still it appears/ed in-game SOMEHOW.

There IS at least one setting that works(beyond ones that are used normally, speed, scale etc) however!

bool CONFIG_TEST__C_DASH	= false			#ダッシュの入力を1ボタン押しっぱなしにする(テスト用)


Turning this on changes the way dashing(which makes you a car, hence C(ar)_DASH?) works, it normally happens when you double tap, Kirby style. With this set to "true" it works Mario style, holding the 1 button!

Another interesting note relates to the game's "Fluff's Epic Yarn" origins. Dolphin by default lists the game name as "fluff", and as mentioned, this file's called fluff_param.txt, and goes along with a fluff_en_maki_param.txt(what the heck is a maki? Google translations of the file indicate it relates to enemy grabbing), the title of the param itself which Google says it mentions "fluff" in Japanese and probably other internal files too... but there's another interesting thing.

One section is for a few character parameters, Google says "Parameter file for character" when I translate. It lists six misc settings for what I assume are player 1 and player 2... but... while the second setting is called "PRINCE00" which fits with Prince Fluff, the first is not KIRBY but... "PRINCESS00"? Perhaps the game always was planned to be 2-player and Kirby took over the role of a Princess Fluff?

If it helps ring any bells, I've gathered what debug/test entries I could find, and what I get from Google's translations with tweaks for some. First comes things that say "debug" and then "test" which has some neat things too.
Oh, reminder: Demo refers to cutscenes here, to avoid any confusion.

debug # デバッグフラグ [TRANSLATION: "Debug flag"]

{
bool NO_SAVE = false # セーブしない [TRANSLATION: "Do not save"]
bool PLAYER_UNDEAD = true #アンデッドフラグ [TRANSLATION: "Undead flag"]
bool PAD_CHECK = true #パッドの切断チェック [TRANSLATION: "Check cutting pad"]
bool SAFE_AREA_DISP = false #安全領域の表示 [TRANSLATION: "Display of safety area"]
bool PLAYER_CAM_RECT = false #ゲームカメラのプレイヤー用マージン表示 [TRANSLATION: "Margin for the players in the game view camera"]
bool BG_DISP = true #背景画像の表示 [TRANSLATION: "Display of the background image"] [NOTE: Doesn't seem to do anything?]
bool KD_TREE_DISP = false #kd-treeのデバッグ表示 [TRANSLATION: ""] [NOTE: Doesn't seem to do anything?]
bool DOF_ENABLE = true #DOFの切り替え [TRANSLATION: ""] [NOTE: Doesn't seem to do anything?]
bool HUD_DISP = true #HUDの切り替え [TRANSLATION: ""] [NOTE: Doesn't seem to do anything?]
s32 GAMMA_PARAM_DMY = 10 [1,30]#ガンマ値の設定(_DMYをとると有効) [TRANSLATION: "(Valid Taking _DMY) setting the gamma value"]
f32 SCISSOR_BG_SPEED = 0.01f [0.01] #4v3用シザーアニメのスピード [TRANSLATION: "Scissor animation speed for 4v3"]
}

env_debug # 開始時設定用環境デバッグフラグ(x付きのものはワークを直に書き換えません) [TRANSLATION: "At the start of the debug flag for setting environment(Those with x is not directly rewrite the work)"]
{
bool FLUSH_BEAD = false # ビーズをいっぱい持っている [TRANSLATION: "Have lots of beads"]

bool xKEY_ITEM_UNLIMITED = false # ワッペンをはり放題 [TRANSLATION: "Beam whatever the patch"] [NOTE: I haven't gotten this to do anything... but Patches are used to open new levels, thus keys?]
s32 KEY_ITEM_SETTING = -1 [-1,2] # ワッペンの設定(-1=設定無し[No setting], 0=Close, 1=AllOpen, 2=AllUsed) [TRANSLATION: "Setting Patch(-1=No setting,0=Close" etc]
s32 AREA_SETTING = -1 [-1,7] # エリアの設定(-1=設定無し[No setting], 0以降=エリア番号までオープン) [TRANSLATION: "Area setting(-1=No setting, 0 or later=Open to area number"]
bool STAGE_ALL_OPEN = false # ステージがすべてオープンする [TRANSLATION: "Stage is open all"] [NOTE: Didn't seem to grand all stages open on a new file... but it was File 2 too.]

s32 PATTERN_SETTING = -1 [-1,3] # 布の設定(-1=設定無し[No setting], 0=Close, 1=AllOpenNew, 2=AllOpen, 3=Random) [TRANSLATION: Same as the English, except "-1=No setting"] [NOTE: All these are for the unlockables. Why a random setting though?]
s32 INTERIOR_SETTING = -1 [-1,3] # インテリアの設定(-1=設定無し[No setting], 0=Close, 1=AllOpenNew, 2=AllOpen, 3=Random) [TRANSLATION: Same as the English, except "-1=No setting"]
s32 CHARACTER_SETTING = -1 [-1,3] # キャラクターの設定(-1=設定無し[No setting], 0=Close, 1=AllOpenNew, 2=AllOpen, 3=Random) [TRANSLATION: Same as the English, except "-1=No setting"]
s32 SOUND_SETTING = -1 [-1,3] # サウンドの設定(-1=設定無し[No setting], 0=Close, 1=AllOpenNew, 2=AllOpen, 3=Random) [TRANSLATION: Same as the English, except "-1=No setting"]
s32 DEMO_SETTING = -1 [-1,3] # デモの設定(-1=設定無し[No setting], 0=Close, 1=AllOpenNew, 2=AllOpen, 3=Random) [TRANSLATION: Same as the English, except "-1=No setting"]
s32 MEDAL_SETTING = -1 [-1,5] # メダルの設定(-1=設定無し[No setting], 0=Close, 1=AllD, 2=AllC, 3=AllB, 4=AllA, 5=Random) [TRANSLATION: Same as the English, except "-1=No setting"]

s32 EVENT_PROGRESS_LEVEL = -1 [-1,7] # イベント進行度の設定(-1=設定しない) [TRANSLATION: "Setting the degree of progression events(-1=Not set)"]
bool GAME_PROGRESS_ALL_OPEN = false # ゲーム進行フラグがすべてオープンになる [TRANSLATION: "Flag game progress will be open all"]
bool MISSION_ALL_OPEN = false # ミッションがすべてクリア状態になる [TRANSLATION: "Mission is to clear all state"]
}

//-----------------------------------------------------------------------------
// エフェクト [TRANSLATION: "Effect"]
//-----------------------------------------------------------------------------
EFFECT
{
bool DISP_DEBUG = false #画面に状態を表示する [TRANSLATION: "Displays the status of the screen"] [NOTE: Found within the beginnings of an enemy settings section, before the actual enemies I believe.]
}

s32 DEBUG_EN_NO = 0 # デバッグ表示する敵の番号。 [TRANSLATION: "To display the number of the enemy debug."]

bool FRAME_DISP = false #デモ中にフレーム数を表示する [TRANSLATION: "Displays the number of frames in the demo"]
VoiceDebug [NOTE: After this is a list of Start/End number things for each demo/cutscene.]

DesignDebug [NOTE: This is right after the VoiceDebug contents, in the same "area"... there's All and then Test01/02/03/04 with the same contents.]
{
All
{
bool DEBUG_ON = false #デバッグ有効フラグ [TRANSLATION: "Enable debug flag"] [NOTE: If only it were that easy... I've enabled this among other debug flags, nothing special happened]
f32 RANGE = 2.0 [0.1f,0.0f,10.0f] #揺れ幅 [TRANSLATION: "Shaking width"]
s32 FRAME = 6 [0,60] #揺れるフレーム間隔 [TRANSLATION: "Sway frame interval"]

BG_ASYNC #背景の非同期読み込みの設定 [TRANSLATION: "Setting the background asynchronous read"]
{
bool DISP_DEBUG = false #画面に状態を表示する [TRANSLATION: "Displays the status of the screen"]
bool RANGE_DISP = false #画面に読み込み範囲を表示する [TRANSLATION: "Read on the screen to display the range"]
bool DUMP_TERMINAL = false #ターミナルに読み込み状況を出力する SYSTEM側が優先 [TRANSLATION: "Read status output to the terminal SYSTEM is the priority" or perhaps "SYSTEM side to output terminal status read-priority"]
}

bool CAM_DEBUG_ZOOM_OUT = false #カメラをデバッグ用に引く [TRANSLATION: "Pull for debugging the camera"]
f32 CAM_DEBUG_ZOOM_RATIO = 1.5 #デバッグ時のカメラのズーム値 [TRANSLATION: "Zoom value of the camera when debugging"]

bool CAM_DEBUG_CHK_DRAW_CULL = false #描画カリングの確認 [TRANSLATION: "Confirmation of culling drawing"]
bool CAM_DEBUG_BG_ASYNC_LOAD = false #背景の非同期読み込みの確認 [TRANSLATION: "Background check of asynchronous read"]

bool CAM_DEBUG_PLAYER_CENTER = false #常にプレイヤーを画面中心に据えるか(カメラリミットも無視) [TRANSLATION: "Always centered on the screen or player(Ignore the camera limit)"]

system #システム設定 [TRANSLATION: "System setting"]
{
bool PERF_BAR_ENABLE = true #パフォーマンスバーの有効無効 [TRANSLATION: "The validity of the performance bar"]
s32 PERF_BAR_MODE = 0 [0,2] #パフォーマンスバーのモード(0:バーのみ 1:カウンタのみ 2:両方) [TRANSLATION: "Performance Mode Bar(0:Bar only 1:Only counter 2:Both"]
bool DEBUG_BACK_BLACK = true #デバッグ画面の背景を黒にするか [TRANSLATION: "Do you want to black screen background debug"]
bool DEBUG_PAD_ENABLE = false #デバッグ時にパッド入力を有効にするか [TRANSLATION: "Do you want to enable the input pad when debugging"]
bool ASSERT_ENABLE = true #アサートの有効無効 [TRANSLATION: "Assert the validity of"]
bool TERMINAL_OUTPUT = true #ターミナル出力 [TRANSLATION: "Output Terminal"]
bool FILE_LOAD_DUMP = true #ファイルロードの出力 [TRANSLATION: "File output load"]
bool SOUND_DUMP = false #サウンド再生の出力 [TRANSLATION: "Output of sound reproduction"]
s32 FORCE_WIDE_MODE = 0 [0,2] #強制ワイド表示(0:本体設定 1:WIDE 2:NORMAL) [TRANSLATION: "Force wide display(0: System Settings"]

}

test #テスト [TRANSLATION: "Test"]
{
s32 TEST_PULL_CHANGE_BALL = 0 [0,2] #引き抜きと同時にキャプチャーテスト( 0=引き抜き、1=引き抜キャプチャー、2=クイック引き抜き )) [TRANSLATION: "Captured at the same time as pulling test(0=Pulling, 1=Pull capture, 2=Quick pulling"]
s32 TEST_ATK_EFFECT = 0 [0,1] #攻撃時のエフェクトテスト( 0=OFF、1=ON )) [TRANSLATION: "Effect at the time of attack test"]
s32 Z_ATK_TEST = 1 [0,1] #Z叩きつけテスト( 0=OFF、1=ON ))<< 現在、無効 >> [TRANSLATION: "Slammed Z test <<Currently disabled>>"]
s32 FRIEND_TEST = 0 [0,6] #お友達テスト( 0=OFF,1=ビーズ,2=タイムアタック,3=かくれんぼ,4=うんぱん,5=ノーダメージ )) [TRANSLATION: "Test your friends(0=OFF, 1=Beads, 2=Time Attack, 3=Hide and Seek, 4=Transportation, 5=No Damage"] [NOTE: These missions are done via friend characters in-game, so this doesn't refer to real friends]
s32 FRIEND_GATHER_TYPE = 1 [0,1] #ビーズ回収お友達挙動タイプ [TRANSLATION: "Behavior type beads recovered friends"]
bool AUTO_JUMP_CLIFF = false #崖でジャンプするか [TRANSLATION: "Do you want to jump on the cliff"]
bool PL_AUTO_ATTACK_TEST = false #自動引っかけするか [TRANSLATION: "Do you want to auto-hook"]
bool PL_HEAVY_PULL_TEST = false #すべての引き抜きを強引き抜きにする(テスト用) [TRANSLATION: "Strength to pull out all the drawing (for testing)"]
bool CONFIG_TEST__C_DASH = false #ダッシュの入力を1ボタン押しっぱなしにする(テスト用) [TRANSLATION: "Hold down the 1 button to enter a dash (for testing)"] [NOTE: This makes running work Mario style if set to true!]
bool PARACHUTE_MODE_TRIGGER = false #パラシュートをトリガー入力で切り替えるテスト [TRANSLATION: "Test switch at the input triggers a parachute"]
bool CAPTURE_BLOCK = true #ブロックをキャプチャー出来るようにする [TRANSLATION: "To be able to capture the block"] [NOTE: Is this talking about grabbing empty blocks, or getting them with the UFO maybe? It's set to true by default!]
bool BEAD_GATHER = false #放出ビーズ回収機能 [TRANSLATION: "Recovery feature release beads"]
bool ROCKET_SHOOT_TWO_BUTTON = false #ロケット/弾 1ボタン= 前集中、2ボタン = 3WAY [TRANSLATION: "Before concentrating one button = rocket / 2 button = 3WAY"]
bool FALL_ATK_TEST_VER = false #ヒッププッシュテスト [TRANSLATION: "Hip push test"]
bool LAST_DEMO_FRAME_DISP = false #最終デモのフレーム経過表示 [TRANSLATION: "Progress frame of the final demonstration"]
}

s32 TYPE_TEST = 1 [0, 3] #回転タイプ(0=傾き3段階、1=傾き同期、2=十字キー、3=キー&傾き) [TRANSLATION: "Rotation type(0=Three slope, 1=Synchronous tilt, 2=Arrow key, 3=Tilt & key"] [NOTE: Probably talking of the Tank rotation, which is done via tilting the Wii remote in the final]

test #テスト項目 [TRANSLATION: "Test item"]
{
bool GAME_POINTER_MODE = false #ゲーム中のポインタモード [TRANSLATION: "Pointer in the game mode"] [NOTE: The game makes very rare use of the Wii pointer features, only in the room decoration.
bool CREATE_FLUTTER = false #Z攻撃エフェクトを生成するか [TRANSLATION: "Do you want to generate the attack effect Z"]

f32 GROUND_MOD_RATE = 1.5 [0.01] #地形変形の度合い [TRANSLATION: "The degree of deformation terrain"]

bool KEITO_CAP = true #毛糸にキャップをするか [TRANSLATION: "Or a wool cap"] [NOTE: Wool refers to the yarn]

bool CAM_CTRL = true #カメラ制御ギミックのオンオフ [TRANSLATION: "On-off gimmick camera control"]

bool GOAL_PIZZA_FORCE = false #強制的にピザを取得済みにする [TRANSLATION: "To get the pizza already forcibly"] [NOTE: ... Goal pizza?! This is the only time pizza comes up, does it mean the actual goal?]


s32 CHK_KIRBY_DANCE = 0 #カービィダンスのテスト 0:DEF 1-6:L 7-9:S 10:W [TRANSLATION: "Test of Kirby Dance"]
}


[b]BONUS: Sample code! Just in case, you know, you wanted to hack it yourself?[/b]
//-----------------------------------------------------------------------------
//パラメータ編集のサンプル [TRANSLATION: "Sample of parameter editing"]
//-----------------------------------------------------------------------------
//
//ラベル名の後ろの「#」は詳細説明 [TRANSLATION: ""#" After the label name is a detailed description"]
//sample #サンプルのグループ [TRANSLATION: "Groups of samples"]
//{
// //「[]」の中は デバッグメニューの変動量, min, maxの順 [TRANSLATION: "Amount of variation in the Debug menu, in the "[]" is order min, max of"]
// f32 F32_SAMPLE_VALUE = 0.10f [0.001, 0.0f, 1000.0f] #f32のサンプル [TRANSLATION: "Sample of f32"]
//
// //「[]」の中は min, maxの順 [TRANSLATION: "Inside "[]" is order min, max of"]
// s32 S32_SAMPLE_VALUE = 88 [-100, 100] #s32のサンプル [TRANSLATION: "Sample of f32"]
// s32 S32_SAMPLE_VALUE2 = -0 [-100, 100] #s32のサンプル [TRANSLATION: "Sample of f32"]
//
// //bool値はtrueかfalse [TRANSLATION: "bool value is true or false"]
// bool BOOL_SAMPLE_VALUE = true #boolのサンプル [TRANSLATION: "sample of bool"]
//
// //文字列パラメータ [TRANSLATION: "String parameter"]
// str STR_SAMPLE_VALUE = "SAMPLE STRING" #strのサンプル [TRANSLATION: "sample of str"]
//
// //グループ化して階層構造を作成できる [TRANSLATION: "You can create a hierarchical structure by grouping"]
// sub_group #サブグループのサンプル [TRANSLATION: "Example of Sub-Group"]
// {
// s32 SUB_GROUP_VALUE = 10
// }
//}
//


Oh, and can anyone tell me if デバッグ時にパッド入力を有効にするか would mean to turn on debug keys or simply enable you to use the controller during some other debug function?
R.U.Hacking
Random nobody
Level: 3


Posts: 1/4
EXP: 82
For next: 46

Since: 08-28-18


Since last post: 104 days
Last activity: 103 days

Posted on 08-28-18 07:44:53 AM Link | Quote
I am playing around with this now.
Here is the complete file translation, will let you know what I figure out.
https://drive.google.com/file/d/12cqbI166knHsH_3WwZLTRidT15UP0A5Z/view
Hiccup
Member
Disgustingly Naive Smartass
Level: 54


Posts: 749/753
EXP: 1221588
For next: 12282

Since: 05-19-09


Since last post: 11 days
Last activity: 1 day

Posted on 08-28-18 10:50:42 AM Link | Quote
All this stuff is relevant to the wiki.

Have you tried using Dolphin's logging tool to see if the game outputs anything via printf when any of these debug things are turned on? Make sure to enable all the relevant settings in the Dolphin log settings.
R.U.Hacking
Random nobody
Level: 3


Posts: 2/4
EXP: 82
For next: 46

Since: 08-28-18


Since last post: 104 days
Last activity: 103 days

Posted on 08-30-18 11:29:42 AM Link | Quote

No luck with debug yet, but here are my findings exploring the game:

===============================================================================================================================
// Music

brstm - Music Files - Open with VLC Media Player

Create your own brstm with Looping Audio Converter
https://github.com/libertyernie/LoopingAudioConverter/releases/tag/v1.3

===============================================================================================================================

// Walk Through Stack of 3 Turtles - (To Explore "Water Land - Splash Beach" without Daylight)

MAIN.DOL Search for- turtle3stack.colbin ----> Replace with- turtle.colbin and HEX(000000000000)

===============================================================================================================================


// Edit Staff Credits

DemoMessage_StaffCredits.bin ----> Each letter of names are separated by HEX(00)

===============================================================================================================================

// Tools for viewing .TPL files U8 Archives and such

http://www.chadsoft.co.uk/wiicoder/

===============================================================================================================================

// Extract .gfa Files

Program - http://aluigi.altervista.org/quickbms.htm
Script - http://aluigi.altervista.org/bms/kirby_epic_yarn.bms

===============================================================================================================================

There may need to be a flag enabled to use the debug options in the .txt file.
Or possibly a hidden menu in the game.
I checked out the main menu file, but only seems to have options for 1Player and 2Player.
R.U.Hacking
Random nobody
Level: 3


Posts: 3/4
EXP: 82
For next: 46

Since: 08-28-18


Since last post: 104 days
Last activity: 103 days

Posted on 08-31-18 07:14:33 AM Link | Quote

Dolphin emulator shows that fluff_param.txt and fluff_en_maki_param.txt are the first of the files loaded into memory.

Memory Viewer in Dolphin Debug mode shows the changes made in the txt file.
But the Debug options are not applied.
Changing player speed is applied to the game, so there may just be something needed to be enabled for the debug options.

https://ibb.co/cYPnNz
R.U.Hacking
Random nobody
Level: 3


Posts: 4/4
EXP: 82
For next: 46

Since: 08-28-18


Since last post: 104 days
Last activity: 103 days

Posted on 08-31-18 11:46:23 AM Link | Quote

I have come to the conclusion that there is probably an alternate main.dol file used when they were developing the game, one that had the debug controls enabled.

You can search for the parameters that do work with fluff_param.txt in the main.dol file and find them.
https://ibb.co/f80TCz

The flags are separated by "/" in main.dol.
No occurrence is found for the debug flags. (Example: env_debug/STAGE_ALL_OPEN)

==================================================================
==================================================================

You questioned "Key Items", and you were right.
It is the patches you unlock when completing a stage.
https://ibb.co/cQCx5K

==================================================================
==================================================================

And lastly the PAD_Enabled is located in main.dol, but doesn't enable the classic controller.

There are other instances that may indicate that it refers to the Wiimote, as there is code that locks your controls when you are hit by an enemy.
(PARALYSIS_PAD_CTRL_FLAG)

==================================================================
==================================================================

Most of the other debug codes have been figured out with Gecko Codes, so I don't think I am going to mess around with this anymore.
I might switch P1 to Prince Fluff and P2 to Kirby just for fun, but that is unrelated.

.
Next newer thread | Next older thread
Jul - The Cutting Room Floor - Kirby's Epic Yarn (Fluff's Epic Param.txt) (which does almost nothing epic) (epic wall of text/code) New poll - New thread - New reply




Rusted Logic

Acmlmboard - commit 6fc366a [2018-12-11]
©2000-2018 Acmlm, Xkeeper, Inuyasha, et al.

28 database queries, 3 query cache hits.
Query execution time: 0.165560 seconds
Script execution time: 0.025604 seconds
Total render time: 0.191165 seconds