Changes

Jump to navigation Jump to search
973 bytes added ,  04:16, 18 July 2012
Line 1: Line 1:  +
{{Lowercase title}}
 
{{Infobox homebrew
 
{{Infobox homebrew
 
| title      = iiii
 
| title      = iiii
| image      = [[Image:Iiii_Icon.png]]
+
| image      = [[File:Iiii_Icon.png]]
 
| type        = board game
 
| type        = board game
 
| author      = [[User:Yossi|Yossi]]
 
| author      = [[User:Yossi|Yossi]]
| version    = 2.0
+
| version    = 2.1-TR
| download    = Media:Iiii2.0.rar‎
+
| download    = Media:Iiii_v2.1-TR.rar
| source      = Media:Iiii2.0 source.rar
+
| source      = Media:Iiii_v2.1-TR_source.rar‎
| peripherals = {{Wiimote2}} {{FrontSD}}  
+
| peripherals = {{Wiimote2}} {{GCNController}} {{FrontSD}} {{USBMSD}}
 
| hbb        = yes  
 
| hbb        = yes  
 
}}
 
}}
 +
'''''iiii''''' is a digital clone of the popular retail and pen-and-paper game "Connect 4". It is similar to Tic-Tac-Toe.
    
== Rules ==
 
== Rules ==
[[iiii]] is a digital clone of the popular retail and pen-and-paper game "Connect 4". It is similar to Tic-Tac-Toe. 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 get 4 of your pieces touching in a straight line (diagonals also count) before your opponent does.
+
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 ==  
+
== Details ==
This game has one and two player modes. By default there is one player and one wiimote in the game. Hitting plus (+) will toggle control of the red pieces between the CPU and a human. Hitting A on the second wiimote will cause red to be controlled by the second wiimote (rather than share on the first wiimote).
+
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 ==
 
== Controls ==
   
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! {{Wiimote}} '''/''' {{WiimoteHorizontal}} !! Action
+
! {{Wiimote}} '''/''' {{WiimoteHorizontal}} !! {{GCNController}} !! Action
|-
  −
| {{WiimoteDPadLeft}} '''/''' {{WiimoteDPadUp}}  || Move Left
   
|-
 
|-
| {{WiimoteDPadRight}} '''/''' {{WiimoteDPadDown}}  || Move Right
+
| {{WiimoteDPadLeft}} '''/''' {{WiimoteDPadUp}}  || {{GCDPadLeft}} || Move Left
 
|-
 
|-
| {{WiimoteBButton}} '''/''' {{Wiimote2Button}} || Drop Checker
+
| {{WiimoteDPadRight}} '''/''' {{WiimoteDPadDown}} || {{GCDPadRight}} || Move Right
 
|-
 
|-
| {{Wiimote1Button}} || Restart Game (Can only be done on your turn, or if the AI beat you)
+
| {{WiimoteBButton}} '''/''' {{Wiimote2Button}} || {{GCControlStickC}}Down ||Drop Checker
 
|-
 
|-
| {{WiimoteAButton}} || Start Game, or on Wiimote 2: Join game.
+
| {{Wiimote1Button}} || {{GCZButton}} || Restart Game (Can only be done on your turn, or if the AI beat you)
 
|-
 
|-
| {{WiimotePlusButton}} || Toggle AI on/off
+
| {{WiimoteAButton}} || {{GCAButton}} || Start Game, or on Wiimote 2: Join game.
 
|-
 
|-
| {{WiimoteMinusButton}} || Arikado's Homemenu <!-- sadly pointless as my game doesn't use the pointer at all -->
+
| {{WiimotePlusButton}} || {{GCXButton}} || Toggle AI on/off
 
|-
 
|-
| {{WiimoteHomeButton}} || Direct Exit to Loader
+
| {{WiimoteHomeButton}} || {{GCStartButton}} || 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 ==
 
== 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.<br>
+
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.<br>
+
 
<br>
+
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 [http://notepad-plus.sourceforge.net/uk/site.htm 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.
+
 
 +
The included settiiiings.ini may be messed up when opened with an editor that doesn't understand *nix line endings. Either [http://notepad-plus.sourceforge.net/uk/site.htm 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 ==
 
== Images ==
Starting in <s>v1.1</s> <s>1.2</s> v1.'''2+''', you can put custom images into ''path''/images/ and the game will load them. See [[Media:Iiii-images.rar|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<br>
+
Starting in <s>v1.1</s> <s>1.2</s> v1.'''2+''', you can put custom images into ''path''/images/ and the game will load them. See [[Media:Iiii2.1-images.rar|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.
   −
Special thank you to drchink from tehskeen for pointing out the path loading bug. 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. <br>
   
(Doesn't have to only be drchink, if YOU make some good images, post them here too :) ).
 
(Doesn't have to only be drchink, if YOU make some good images, post them here too :) ).
 +
{| class="wikitable" style="text-align:left;"
 +
|-
 +
! Name !! Author
 +
|-
 +
| [[Media:Iiii2.1-images.rar|Sample images]] || [[user:Yossi|Yossi]]
 +
|-
 +
| [http://www.mediafire.com/download.php?mmgm3z22xm1 Koopa Vs Boo Edition] || [[user:drchink|drchink]]
 +
|}
    
== History ==
 
== History ==
 +
=== [[Media:Iiii_v2.1-TR_source.rar|v2.1-TR]] ===
 +
* simple recompile for compatibility with new wiimotes
 +
 +
=== [[Media:Iiii2.1 source.rar|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
    
=== [[Media:Iiii2.0 source.rar|v2.0]] ===
 
=== [[Media:Iiii2.0 source.rar|v2.0]] ===
 
* added AI by Keith Pomakis
 
* 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)
 
* 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)
+
* Wiimote can be held sideways (push two (2) to drop)
 
* misc. cleanup
 
* misc. cleanup
    
=== [http://pastebin.com/f523429d5 v1.2]+ ===
 
=== [http://pastebin.com/f523429d5 v1.2]+ ===
Download [[Media:Iiii_source1_1.rar‎|v1.1]] and replace iiii.cpp with [http://pastebin.com/fea60d98 this]. <s>For 1.2+, the fix was to make std::string path be global and edit line 564 to reflect that.
+
Download [[Media:Iiii source1 1.rar‎|v1.1]] and replace iiii.cpp with [http://pastebin.com/fea60d98 this]. <s>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.)</s> Even better solution now.
 
(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.)</s> Even better solution now.
 
* Really ''really'' loads images from ''path''/images/ now
 
* Really ''really'' loads images from ''path''/images/ now
 
* Pieces slide down rather than teleporting to the bottom.
 
* Pieces slide down rather than teleporting to the bottom.
   −
=== [[Media:Iiii_source1_1.rar‎|v1.1]] ===
+
=== [[Media:Iiii source1 1.rar‎|v1.1]] ===
 
* Tries to load images from ''path''/images/
 
* Tries to load images from ''path''/images/
* Red player can switch to second wiimote during play
+
* Red player can switch to second Wiimote during play
 
* settiiiings.ini also acceptable as settings' file name
 
* settiiiings.ini also acceptable as settings' file name
   −
=== [[Media:Iiii_source1_0.rar‎|v1.0]] ===
+
=== [[Media:Iiii source1 0.rar‎|v1.0]] ===
* Initial release.
+
* Initial release
    
== Why the Name? ==
 
== 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. Anyway, this name was chosen especially because it would get under the skin of certain people :D. Hi guys! You know who you are because you are the ones feeling pissed off right now :P.<br>
+
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.  
<br>
+
 
 
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.
 
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.
   −
[[Category:Homebrew using The HOMEbrew Menu Standard Library]]
+
[[Category:Homebrew using libfat]]
 +
[[Category:Homebrew using libwiisprite]]
805

edits

Navigation menu