iiii

From WiiBrew
Jump to navigation Jump to search

iiii
Iiii Icon.png
General
Author(s)Yossi
TypeBoard game
Version2.1-TR
Links
Download
Source
Downloadable via the Homebrew Browser
Peripherals
WiiMote2.svg GameCube Controller Loads files from the Front SD slot USB mass storage device

iiii is a digital clone of the popular retail and pen-and-paper game "Connect 4". It is similar to Tic-Tac-Toe.

Rules

The rules are simple. You take turns with another player to drop red or black pieces into the board. Pieces fall in from the top and slide down to stack up on top of each other. The goal is to be the first to get 4 of your pieces touching in a straight line (diagonals also count).

Details

This game has one and two player modes. By default there is one player and one controller in the game. Hitting plus (+) (or x on the GameCube controller) will toggle control of the red pieces between the CPU and a human. Hitting A on the second controller will cause red to be controlled by the second controller (rather than share on the first controller). This does not automatically turn off computer control of the red pieces.

Controls

Wiimote.svg / WiimoteHorizontal.svg GameCube Controller Action
Wiimote D-Pad Left / Wiimote D-Pad Up Gamecube D-Pad Left Move Left
Wiimote D-Pad Right / Wiimote D-Pad Down Gamecube D-Pad Right Move Right
Wiimote B Button / Wiimote 2 Button Gamecube C Control StickDown Drop Checker
Wiimote 1 Button GameCube Z Button Restart Game (Can only be done on your turn, or if the AI beat you)
Wiimote A Button Gamecube A Button Start Game, or on Wiimote 2: Join game.
Wiimote + Button Gamecube X Button Toggle AI on/off
Wiimote HOME Button GameCube START Button Direct Exit to Loader (only controller 1)

The GameCube controller is treated almost like an extension of the Wiimote. So you can switch from pushing buttons on Wiimote 1 to pushing buttons on GameCube 1 (and vice-versa) and the game wont notice. If you want the GameCube controller to be player 2 only, you need to plug it into port 2.

Of course, you only need one controller of any kind to play the game.

Settiiiings.ini

If you want, you can put a settiiiings.ini file in the same directory as the game (root of the SD for wiiload) and change some of the defaults with it. This is entirely optional.

You can set how many pieces are needed in a line to win, adjust the size of the board or set the AI difficulty (setting this to 10 or higher will introduce noticeable lag). See the included settiiiings.ini for way more details.

The included settiiiings.ini may be messed up when opened with an editor that doesn't understand *nix line endings. Either get an editor that can read these files (good to have in general), or start nagging random people to format it for windows. I know I said future versions will have a notepad happy settiiiings.ini, but I am back to coding on Linux and don't feel like doing the windows thing every time.

Images

Starting in v1.1 1.2 v1.2+, you can put custom images into path/images/ and the game will load them. See sample images and included readme for more info. This readme might have the same issues as the settiiiings.ini file. Whatever. Deal with it. I already told you how. :P

Special thank you to drchink from tehskeen for pointing out the first of many path loading bugs. Per your suggestion, I made it look like the piece is sliding down (very fast) rather than just appearing there. Now post your images here so everyone can enjoy.

(Doesn't have to only be drchink, if YOU make some good images, post them here too :) ).

Name Author
Sample images Yossi
Koopa Vs Boo Edition drchink

History

v2.1-TR

  • simple recompile for compatibility with new wiimotes

v2.1

  • fixed the file loading from SD. again. was broken since HBC 1.0.2
  • added USB support (?)
  • added GameCube controller support
  • bunch of behind the scenes changes

v2.0

  • added AI by Keith Pomakis
  • rewrote win() to be smarter (pointless now that I found that AI, but it was a lot of work so I'm adding it here anyway)
  • Wiimote can be held sideways (push two (2) to drop)
  • misc. cleanup

v1.2+

Download v1.1 and replace iiii.cpp with this. For 1.2+, the fix was to make std::string path be global and edit line 564 to reflect that. (Thanks to rck`d & TD-Linux for the idea for this fix. TD-Linux had a better solution, but I didn't implement it yet.) Even better solution now.

  • Really really loads images from path/images/ now
  • Pieces slide down rather than teleporting to the bottom.

v1.1

  • Tries to load images from path/images/
  • Red player can switch to second Wiimote during play
  • settiiiings.ini also acceptable as settings' file name

v1.0

  • Initial release

Why the Name?

The main reason I chose this name is that some people think too many programs are being released with "ii" in their names. Some of these names would normally have nothing to do with the ii sound, but the names were mangled to force an "ii" into them. I don't really care one way or another. I tend to think of ii as a way to identify the program as a Wii program.

If you don't like that excuse, then the 4 dots on the top of iiii represent the 4 pieces you need to line up to win.