If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Ikachan

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Ikachan

Developer: Studio Pixel
Publishers: Studio Pixel (Windows), Nicalis (3DS)
Platforms: Windows, Nintendo 3DS
Released in JP: April 19, 1999 (Windows)
Released in US: January 31, 2013 (3DS)


GraphicsIcon.png This game has unused graphics.
DebugIcon.png This game has debugging material.
Carts.png This game has revisional differences.


This cactus is UNDER CONSTRUCTION
This article is a work in progress.
...Well, all the articles here are, in a way. But this one moreso, and the article may contain incomplete information and editor's notes.

Ikachan is a cute underwater platformer, and quite possibly the first game in the niche "play as a squid" genre (Splatoon's not looking so hot now, is it?). It's mainly notable for being "that game Pixel made before Cave Story", though.

Level Editor

Ikachan Editor.png

Ikachan has a built-in level editor that allows the player to modify the placement of all entities (excluding Ironhead, whose position is hardcoded). To access it, hold down the S key when selecting Continue or New Game.

Several things to note about this editor:

  • To place or move an entity, left click on any tile on the screen. This also moves that entity's target position to the entity's current position.
    • Holding left click after placing an entity allows the player to move the object's target position (represented as a crosshair).
  • To delete an entity, right click on the currently selected entity.
  • Press the arrow keys to scroll the view of the stage.
  • There is a window at the top of the screen that shows the currently selected object's attributes.
    • NO is the currently selected entity. Left click to go to the next entity, and right click to go to the previous one.
    • CH is the type of NPC it is. The player can choose any type of object between 0 (Porcupine Fish) and 9 (the Ship).
    • X and Y are the x-coordinate and y-coordinate of the object. These cannot be changed by clicking on them in the window.
    • SW is set to 1 if the entity exists, and 0 if it does not.
    • EV is the event that the entity runs if it is killed/interacted with.
    • TY determines the NPC's collision behavior. The player can scroll through the following options:
      • NULL makes the entity not solid, and runs its event when the player interacts with it.
      • BLOCK is not used in normal gameplay. It eliminates the NPC's collision with the player altogether.
      • ENEMY gives the NPC a solid hitbox, as well as the ability to both deal damage to the player and be killed by the player. Runs its event upon death.
      • EVENT makes the object solid, and runs its event when the player touches it.
    • COL is always blank, and cannot be changed. Maybe it is simply meant to be read alongside TY as an abbreviation for "type of collision"?
  • The editor seems to have problems with displaying entity sprites, as they tend to be misplaced at least a few tiles from the object's location. Moving the entity fixes the issue for that particular one.
  • To save the level, press the Z or S key at any time. Although there is no audiovisual feedback for this, the entities are in fact saved to NPChar.dat, and can be loaded in-game by starting a new save file.

Unused Graphics

Alternate Dash Sprites

Ikachan CaplessCondensorSprites.png

In MyChar2 there are sprites for the player charging up a dash without having the Pointy Hat. In the final game, the Pointy Hat is necessary in order to obtain the Compressor since the player cannot even leave the starting area without the ability to break sponge blocks.

Extra Damage Numbers

Ikachan UnusedDamageNumbers.png

The floating numbers that appear when the player takes damage or collects experience have graphics for values from -9 to 9, as well as a question mark graphic for undefined values. Very few of these values are actually used in-game, leaving most of these sprites unused.

Unused Tiles

Ikachan PrtBack.png

Found only in v1.0 is a completely unused graphics file called PrtBack. The tile graphics are rudimentary compared to the graphics used in-game, suggesting that these are placeholder tiles. Notably, the date it was last modified is January 29, 1999, a good deal earlier than most of the other used sprites.

Some of these tiles can be seen in action in footage of the earliest builds of Cave Story.

v1.0 v1.2 - v1.4.0.1 v1.4.2.0 Onward
Ikachan Prtfilt V1.png
Ikachan Prtfilt V1.2.png
Ikachan Prtfilt V1.4.2.png

A tile similar to the ones above could also be found in Prtfilt, before it was eventually replaced when the clam's "IN" sign was added in v1.2.

Performance Meter

Ikachan PerformanceMeter.png

Buried in the executables for all versions through v1.4.0.1 are graphics for a performance meter, which consist of the above rectangle, but repeated 60 times.

It can be seen at the very left edge of the screen in the previously mentioned early Cave Story footage.

Unused Color Palette Entries

In v1.0 only, several graphic files have data for colors that aren't used in the actual sprites. These extra colors were removed from the image files in all later versions, likely to save space.

PrtItem & PrtFilt (Collectible fish & foreground decorations)

Ikachan PrtItem Palette.png

Both of these spritesheets contain what appears to be an auto-generated 255-color palette. This may have been the palette that was used as the basis for all colors in the game, before they were tweaked into more pleasing colors.

PrtDmg (Spikes)

Ikachan PrtDmg Palette.png

The unused colors present here are all holdovers from the 255-color palette.

PrtDir (Currents)

Ikachan PrtDir Palette.png

Only the blue colors are used, as the spritesheet consists of nothing but bubbles. Who knows what Pixel intended with the other colors?

Isogin (Sea anemone NPCs)

Ikachan IsoginPalette.png

There is an extra shade of green at the end of the palette. Although Pinky's father and Zu are both colored green, they don't use that particular value.

Hari (Porcupine Fish)

Ikachan Hari Palette.png

The unused brownish colors at the end of the palette somewhat resemble colors used in the final sprites. Perhaps they are remnants of a scrapped idea for the Porcupine Fishes' coloration?

Kani (Crab)

Ikachan Kani Palette.png

A few shades of blue that have roughly the same brightness as the used red colors. Were the crabs originally going to be blue?

Staff (Credits image)

Ikachan StaffPalette.png

A light pink color fills the last three unused color slots.

YesNo (Yes / No selection)

Ikachan YesNo Palette.png

It seems Pixel was having trouble deciding which color the Yes/No selection would be. In the final game, he settled on blue, before jumping to teal in v1.2, and finally red in v1.4.2.0.

Item (Inventory)

Ikachan Item Palette.png

A single red color exists, despite all the graphics in this file being colored a shade of blue.

Back (Background)

Ikachan Back Palette.png

Interestingly, the unused colors in this palette seem to be taken directly from a preliminary build of Cave Story! Specifically:

  • The greens used on the generic solid blocks.
  • An olive color and brown colors that were used on the girder-like tiles.
  • The greenish white used as a highlight on the girders and blocks.
  • Various red colors that were used on the collectible crystals.

Internal Flag List

At the top of the game's script file, a list of every single flag set throughout the game can be found. It was most likely used by Pixel to ensure he didn't accidentally use the same flag for two different events. For whatever reason, this listing was translated for the US release of the 3DS version.

Original US Release
f50フーズの依頼
f51ズーの戦闘開始
f52ズーの終戦
f53地震で亀裂が広がる
f54説明書をもらう
f55スカシカシパン
f56エビ料理
f57カニ料理
f58フグ料理
f59パール取られた
f60ピンキー落下
f61閉じ込められ
f62コンデンサ
f63ピンキー帰宅
f64フグ料理を受け取る
f65キャリアしびれる
f66アイロンヘッド倒す。
f67最後の地震
f50Food Request
f51The beginning of the Zoo Battle
f52The end of the Zoo Battle
f53The earthquake caused more cracks
f54Obtained the Undersea Handbook
f55Sand Dollar
f56Shrimp Tempura Dish
f57Crab Dish
f58Fugu Sashimi Dish
f59Your Pearl was confiscated
f60Pinky's falling off
f61Locked in
f62Compressor
f63Pinky's returned home
f64Obtained Fugu Sashimi Dish
f65Carrier's got electrocuted
f66Defeated Ironhead!
f67The final earthquake

Notably, the third dish that is brought to the Pearl Carrier is translated as Fugu Sashimi here, whereas it is called Blowfish Sashimi in the final game.

Truncated Music

The track Magirete.pmd is the jaunty song heard in the intro. However, it lasts quite a bit longer than the intro actually lasts. As a result, the latter half of the track goes unheard in-game.

Version Differences

Ikachan eShopVersionIcon.png
eShop version
...Oh, carp! Oh my Cod! Heeeere's Johnny!
Ikachan GraphicDifferences.png
Graphical Differences
The bulk of the differences between revisions.

v1.2

Stage Differences

v1.0 v1.2 Onward
Ikachan MovedFish V1.pngIkachan MovedFish 2 V1.png Ikachan MovedFish V1.2.pngIkachan MovedFish 2 V1.2.png
  • These two-sided fish in the starting area were originally placed much earlier on, making the tunnel they patrolled a fairly tight squeeze, requiring precise timing of the player. They were moved to another location in v1.2.
  • One of the spikes near the fishes' original location was moved to the right slightly, and another spike was placed right below it.
  • Three more collectible fish were added to the two-sided fishes' new home, and the spikes on the ground to the right were outright removed.
v1.0 v1.2 Onward
Ikachan ClamIn V1.png Ikachan ClamIn V1.2.png
  • An arrow pointing to the save point clams labelled "IN" was added above every clam in the game, probably to make it more apparent that they are not enemies.
  • Oto was given a crevice to hide in. However, the placement of Oto himself was left unchanged, resulting in him spawning slightly above the ground before falling into place.

Text

v1.0 v1.2 Onward
This is a Original by Pixel!
Presents by Pixel.

The Engrish text in the popup that appears when you boot the game was changed.

v1.0 Translation v1.2 Onward Translation
再挑戦しますか?
Will you try again?
粉々に飛散りました・・・。
ゲームオーバー?
You've been shattered to pieces...
Game Over?
  • The game over text was spiced up a bit.
  • Oto has loads of new dialogue for when the player is at certain points in the story. Previously, he would continually ask the player if they came from the bottom of the sea, regardless of how far into the story the player was, unless the player had a Pearl or the Ship in their inventory.
v1.0 Translation v1.2 Onward Translation
あ、パールを手に入れたんだね。
いいなぁ。
Oh, you have a pearl, huh? 
Nice.
おや、
パールを手に入れたの?!
う、うらやましぃ・・・。
Whoa,
you got a pearl?!
I-I'm so jealous...

Oto's dialogue for seeing the player with a pearl was changed to be a bit less clumsily written.

Original Translation
もう一つ

このソフト
「いかちゃん」の
ダウンロードサービスを
してくれるページを募集中です。


もし、

「このゲームなら
 うちのページに置いてもいいかな」

と思う方あれば、
是非ご連絡ください。
お待ちしております☆
One more thing...

I'm currently looking for
pages that would be willing
to offer "Ikachan"
as a free download.

If you think this game would be 
a good fit for your site,
please be sure
to contact me.

I'll be waiting for your response! ☆
  • This spiel in the intro monologue, which asked players if they would consider hosting the game on their website, was removed from all versions after v1.0.
v1.0 Translation v1.2 Onward Translation
音楽:

 「水の中で」
 「いかちゃん」
 「Quake」
 「雨に紛れて」
 「ブリキの行進」

   By

 PiyoPiyo
 Pixel音楽部
Music:

"In the Water"
"Ikachan"
"Quake"
"Lost in the Rain"
"Tin-Plate Parade"

By

PiyoPiyo
Pixel Music Club
音楽:

 「水の中で」
 「いかちゃん」
 「Quake」
 「雨に紛れて」
 「ブリキの行進」
 「しおだまり」

   By

 PiyoPiyo
 Pixel音楽部
Music:

"In the Water"
"Ikachan"
"Quake"
"Lost in the Rain"
"Tin-Plate Parade"
"Tide Pool"

By

PiyoPiyo
Pixel Music Club
  • Tidepool (the credits song) wasn't mentioned in the credits in the initial release. This, combined with Tidepool's last modified date of February 13, 1999, suggests that the song was not originally made for Ikachan, and was added at the last minute. For reference, the other songs have last modified dates ranging from late March to April.

Music

All of the tracks except for Quake and Tidepool were changed at least slightly for v1.2. The earlier versions of the songs, however, were still included among the sample songs featured in PiyoPiyoPlayer.

Ikachan.pmd

v1.0 v1.2 Onward

The tempo was dramatically increased compared to in v1. Interestingly, the PiyoPiyoPlayer version actually has a slightly faster tempo than the v1 file, suggesting it was added to the collection of sample songs right as Pixel began tweaking the tempos of some of Ikachan's music.

The wait value was changed from 140 in v1.0, to 131 in PiyoPiyoPlayer, then to 116 starting with v1.2.

Buriki.pmd (Tin-Plate Parade)

v1.0 v1.2 Onward

This song was also sped up, though not as drastically as Ikachan. Its wait value was decreased from 115 to 100.

Mizuno.pmd (In the Water)

v1.0 v1.2 Onward

The tempo of this song was changed almost as much as Ikachan's, with the wait value being changed from 179 to 152.

Magirete.pmd (Lost in the Rain)

v1.0 v1.2 Onward

This song received the most significant changes compared to the others; the instrumentation in the earlier version was fairly rough, with notes in the melody often bleeding into each other. This was fixed in v1.2 by changing the envelope of the first instrument channel to make the notes more staccato. Additionally, the tempo was increased somewhat, with the wait value going from 150 to 130.

Other Differences

v1.0 v1.2 Onward
Level: 0
Max HP: 2
Level: 0
Max HP: 4
Level: 1
Max HP: 4
Level: 1
Max HP: 8
Level: 2
Max HP: 8
Level: 2
Max HP: 12
Level: 3
Max HP: 12
Level: 3
Max HP: 18
Level: 4
Max HP: 21
Level: 4
Max HP: 26
  • Ikachan's maximum health from Levels 0 to 4 was increased overall. Of particular note is the increase in starting HP from 2 to 4, likely done because the spikes at the beginning deal enough damage to instantly kill a player at 2 health, making it a somewhat brutal section for newer players.
  • A sound effect was added for when an earthquake is triggered.
  • In v1.0, "Swim, Ikachan!" resumes playing after defeating Ironhead. Starting with v1.2, "Mizuno" (the title screen theme) starts playing instead, seemingly to indicate a more somber tone. This reverts back to "Swim, Ikachan!" when the save file is reloaded, however.

v1.3

Hmmm...
To do:
Confirm that the squares aren't just a bug with Wine.
  • The Japanese text now shows up as mojibake on computers with English locales. Previously, the text showed up only as a series of squares.
v1.0 - v1.2 v1.3 Onward
Ikachan IronheadCurrent V1.png Ikachan IronheadCurrent V1.3.png
  • A downwards current in front of the entrance to Ironhead's room was replaced by a left-facing current inside of the entrance. This makes it so that the player is required to build up speed or charge through with the Compressor in order to get through.


v1.4.0.1

  • The framerate has been lowered from 60 FPS to 50, matching the framerate of the final version of Cave Story.
  • The game now gives you the option to display the game in 320×240 windowed, 640×480 windowed, or fullscreen. Previous versions defaulted to fullscreen.
    • Unfortunately, as a side effect of this change, you are no longer greeted with a "Presents by Pixel." when you open the game.
Cacti may speak Japanese, but do they speak it well?
...But does it make sense?
The translations on this page need to be proofread. If you are fluent enough in this language, please make any corrections necessary!
Notes: What's the context here?
v1.0 - v1.3 Translation v1.4.0.1 Onward Translation
参った!
君の勝ちだ。
焼いて食うなり、
煮て食うなりしてくれ・・・。/
I give up!
You win.
Go ahead and roast me
or boil me or whatever...
参った!/
君の勝ちだ。
焼いて食うなり、
似て食うなりしてくれ・・・。
I give up!
You win.
Go ahead and roast me, or whatever...
Eat me however you want...

Zu/Zoo's dialogue after defeating the last attack star was tweaked towards the beginning.


(Source: N. Onymous (translations))

v1.4.2

  • The script syntax has been changed slightly: all commands must now start with a less than sign ("<"), and all event numbers must begin with a number sign ("#"). This may have been done to make the scripting language more closely resemble Cave Story's TSC, which has a similar format.
    • As a side effect, the game is now able to print English characters and spaces into dialogue boxes, allowing for unofficial English translations to be made without much hassle.
  • In this version only, the game outputs debug information into a file called debug.txt.

v1.5.2.0

The FPS counter is in the top-right corner of the screen.
  • The syntax for scripts has been changed once again:
    • In previous updates, the minus sign ("-") was used to mark comments, whereas this version uses tildes ("~") instead.
    • The "nod" command (pauses the dialogue until you press a button) used a forward slash ("/") in previous versions, but now uses a left-facing curly brace ("{").
    • Spaces, as well as the specific exclamation mark and question mark symbols that are not used in SHIFT-JiS encoding, are no longer printed in dialogue boxes.
  • The player now has the ability to fast-forward through the intro and credits by holding the swim button.
  • An FPS counter is now printed in the top-right corner of the screen.
  • The performance seems to be overall more optimized for modern computers than previous versions.

Oddities

  • Whenever in normal gameplay or talking to an NPC, every time the player presses the "X" key, Ikachan moves exactly half a pixel to the right. Yes, really.
  • Although all Porcupine Fish and crabs used in the game have the ENEMY type, they are specifically coded to not attack the player when they are set to another collision type. Similar behavior is used in-game when the player is holding a Pearl.
  • A few NPCs have stats that go unseen, due to these values only being used by enemies:
    • The sea anemone characters require the player to be level 4 or higher in order to damage them.
    • The save clam has a damage value of 4, and a required level of 9. For reference, the highest amount of damage dealt in the game is 3, and since the player's level caps out at 6, this NPC would be effectively invulnerable if it were an enemy.
    • Ben is set to deal 4 damage, and requires the player to be level 3 or higher. While not invulnerable like the clam, this still would've been quite the fearsome enemy.


(Source: Ikachan v1.5.2 decompilation)