"BOX OFFICES for iPhone/iPad"
Open Entertainment Development Project


Apr 04, 2012 BOX OFFICES Seed (Reference App on App Store) has been released
Mar 24, 2012 Added iPhone Source for Xcode 4.3
Sep 01, 2011 Added "VN BOX": BOX OFFICES Family by this open source
Dec 12, 2010 Added BOX OFFICES for iPad ver 1.2 source code (See download)
Sep 27, 2010 Created

TABLE OF CONTENT

  • Open Source of "BOX OFFICES for iPhone/iPad"
  • What's The Difference Between "BOX OFFICES on the App Store" and "Open Source"?
  • Minimum Modifications for your release
  • Licenses
  • Download
  • How to run
  • Stage Edit
  • Resource List (Replaced For Open Source)
  • BOX OFFICES Family by this open source
  • Contact



    Open Source of "BOX OFFICES for iPhone/iPad"

    The goal of this project is to share, enjoy and find the potentialities of the original design of the game "BOX OFFICES for iPhone/iPad" with the colleagures all over the world. To find the next step of this game design, this project releases Xcode project files of "BOX OFFICES for iPhone/iPad" on the App Store (replaced with free images, tunes, etc. only). You can release this software as your application only by replacing the resouces (images, music, stage data) and modifying the source code under the MIT license.

    By your derivative work from this source code,

  • You can distribute as your application on the App Store.
  • You can sell as your application on the App Store.


  • Let us know and play your original exciting stages based on this work!

    This Source Code

    Reference App
    BOX OFFICES SEED
    on the App Store
    Sample

    BOX OFFICES
    on the App Store







    What's The Difference Between "BOX OFFICES on the App Store" and "Open Source"?

  • Replaced images and tunes with those designed by Entatonic.net. All of the resources in this project files is free to use.
  • Replaced the application name, version and credit
  • Removed tutorial. This is not enough implementation to share.


    BOX OFFICES
    For Open Source
    Game Logic
    Same as the original
    version perfectly
    App Name
    Version
    Credit
    Replaced with
    Open Source Version
    Resources
    Replaced with
    Free Resources
    Tutorial
    -




    Minimum Modifications for your release

  • Replace Resource files.
      If you change the file names,
      Replace file name also in MenuScene.m, GameScene.m, BoxOfficeAppDelegate.m. (you can find them to search by "m4a")
      Replace file name also in StageData.xml. (Object Name)
    
  • Edit Stage Data
      Edit StageData.xml.
    
  • Modify Application Information
      Replace "Bundle display name"(app name), "Bundle identifier", "Bundle version"(app ver) in info.plist.
    
  • Replace credits text (CreditScene.m)
      DON'T REMOVE COCOS2D AND BOX OFFICES CREDIT.
    




    Licenses

    MIT License

  • The copyright notice and the permission notice shall be included in all copies of the Software.

    /*
     * BOX OFFICES for iPhone/iPad
     *
     * The Original Game is Designed by Entatonic.net
     * Copyright (c) 2010 Entatonic.net
     * http://entatonic.net
     *
     * Permission is hereby granted, free of charge, to any person obtaining a copy
     * of this software and associated documentation files (the "Software"), to deal
     * in the Software without restriction, including without limitation the rights
     * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
     * copies of the Software, and to permit persons to whom the Software is
     * furnished to do so, subject to the following conditions:
     * 
     * The above copyright notice and this permission notice shall be included in
     * all copies or substantial portions of the Software.
     * 
     * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
     * THE SOFTWARE.
     *
     */
    


  • The copyright notice shall be included in substantial portions of the Software. ex) Credit Scene

    BOX OFFICES for iPhone/iPad
    The Original Game is Designed by Entatonic.net
    Copyright (c) 2010 Entatonic.net
    http://entatonic.net
    




    Download

    CAUTION
    We know "executing on Simulator" and "Debug Mode" cause some issues. To avoid them, see "How To Run".
    These project files are "Two device-specific applications", not "One Universal application". (iPad and iPhone projects are separated.)

    [NEW] BOXOFFICES_iPhone_1.1.1203240.zip Build Requirements
    Mac OS X 10.7.3, Xcode 4.3.2 or later

    Runtime Requirements
    iOS 4.0 or later

    Library
    cocos2d for iPhone 0.9.9-4-rc3

    Changed to build on Xcode 4.3

    1. Changed Icon.png registration and added retina icon.
    2. Changed build setting "Skip Install" for cocos2d libraries.
    3. Changed /libs/cocos2d/CCLayer.m


    Reference App on App Store

    BOX OFFICES SEED is reference app submitted only by changing followings from this version. This is prepared to skip the steps to build and provision settings, and you can know about this source code level now.


    [ Steps to submit ]

    1. Replaced icons and images
    1.1. \Resources\Default.png
    1.2. \Icon.png
    1.3. \Icon@2x.png
    1.4. \Resources\images\menu\logo_iPhone.png
    2. Modified CreditScene.m
    3. Changed App "TARGETS" info
    3.1. BoxOffice - Summary - Version: 1.0
    3.2. BoxOffice - Summary - Deployment Target: 5.0
    3.3. BoxOffice - Info - Bundle display name: BO SEED
    3.4. BoxOffice - Info - Bundle Identifier: net.entatonic.boxofficesseed
    4. Changed All Build Configuration by "Edit Scheme": Debug -> Release
    5. Added Code Sign of provisioning (developer and distribution)
    6. Tested on device
    7. Submitted to App Store
    BOXOFFICES_iPhone_1.1.1009270.zip Build Requirements
    Mac OS X 10.6.4, Xcode 3.2.3 or later

    Runtime Requirements
    iOS 4.0 or later

    Library
    cocos2d for iPhone 0.9.9-4-rc3


    BOXOFFICES_iPad_1.2.1012120.zip Build Requirements
    Mac OS X 10.6.5, Xcode 3.2.5 or later

    Runtime Requirements
    iOS 4.2

    Library
    cocos2d for iPhone 0.9.9-4-rc3
    The version of cocos2d is old for
    the minimum modification to fix.
    Fixed Issues
  • Cocos2d issue #886
    #886 JPEG pictures on iOS4 are dark.
  • GameScene.m (line 539): Using CCLabel will cause the performance down on iOS4.

    How to update from 1.1
    See this page

    CAUTION
    It's slow on iPad Simulator. Now we can not find how to avoid this.
  • BOXOFFICES_iPad_1.1.1009270.zip Build Requirements
    Mac OS X 10.6.4, Xcode 3.2.3 or later

    Runtime Requirements
    iOS 3.2

    Library
    cocos2d for iPhone 0.99.3-rc
    Known Issues
  • Cocos2d issue #886 is not fixed.
    #886 JPEG pictures on iOS4 are dark.
    We need to replace with the fixed cocos2d(0.9.9-4 or later).

  • GameScene.m (line 539): Using CCLabel will cause the performance down on iOS4.
    We'll need to replace with CCLabelAtlas

    CAUTION
    1. It's slow on iPad Simulator. Now we can not avoid this.
    2. We need to update to fix followings when iPad will be upgraded to iOS4 (2010/Fall).




  • How to run

    1. To execute on simulator,
      Remove comment out("//") of following lines and avtivate the codes to avoid "atan" divide by zero error on simulator issue.
    
      - Classes\Manager\FieldManager.m (line  398 -  427)
      - Classes\Scene\GameScene.m      (line 1256 - 1268)
    
      (CAUTION) Take care that these are not tested code on device.
    
    2. Select Release Mode
      Project > Set Active Build Configulation > Release
    
      If you select Debug Mode, Box Explosion does not work well. Still not find the cause.
    
    3. Set Active Target (iPad Only)
      Project > Set Active Target > BoxOffice-iPad
    
    4. Build and Run the project
    




    Stage Edit

    You can edit the stage data by modifing StageData.xml.
    This data consists of objective-c array and dictionary.

    StageData.xml
    See the file in project file for your reference.

    
    (
    	{
    		StageRound = 0;
    		background_imagepath = "Stage_Tutorial";
    		bgm_path="Flyweight";
    		bgm_song_name = "Flyweight";
    		bgm_artist_name = "DP Satellites";
    		bgm_artist_name_position = "bottom_left";
    		collision_soundpath="collision_soundpath";
    		expand_soundpath="expand_soundpath";
    		text_shadow_color =		(180.0, 180.0, 180.0);
    		box_image_path = (
    			"box_1_1",
    			"box_1_2",
    			"box_1_3",
    			"box_1_4"
    		);
    		StageData = (
    						{
    							StageNumber = 1;
    							Friction = 0.2;
    							CielingDown = 0;
    							FieldLineColor =	(0.0, 0.0, 0.0, 1.0);
    							StageStringColor =	(0.0, 0.0, 0.0, 1.0);
    							ArtistNameStringColor = (0.0, 0.0, 0.0, 1.0);
    							ClearStringColor =	(0.0, 0.0, 0.0, 1.0);
    							GameOverStringColor =	(0.0, 0.0, 0.0, 1.0);
    							LauncherType = "loop";
    							launcherLoop = ( 1 );
    							Boxes = (
    								{x = 0.5; y = 0.4;vx = 0; vy = 0; type = 1; scale = 50;}
    							);
    						},
    						...
    						{
    							StageNumber = 4;
    							.....
    						}
    		);
    	},
    	{
    		StageRound = 1;
    		...
    	},
    	{
    		StageRound = 2;
    		...
    	},
    	...
    	{
    		StageRound = 8;
    		...
    	}
    )
    


    Definitions

    CAUTION The number of StageRound definition except stage 0 must be same as (or more than) #define NUM_OF_STAGE_ROUND in StageManager.m.

    StageRoundNUMBER for reference. Stage consists of [StageRound]-[StageNumber].
    This is not used in the program.

    CAUTION
    Keep Stage 0 (Dummy). This is for tutorial in the original application.
    background_imagepathObject Name (See Resource List for the detail).
    File type must be jpg or modify the source code.
    bgm_pathObject Name (See Resource List for the detail).
    File type must be jpg or modify the source code.
    bgm_song_nameText displayed in the game screen.
    bgm_artist_nameText displayed in the game screen.
    collision_soundpathReserved (Not used in this version)
    expand_soundpathReserved (Not used in this version)
    text_shadow_colorRed(0.0-255.0), Green(0.0-255.0), Blue(0.0-255.0)
    box_image_pathThe array of Object Name (See Resource List for the detail).
    These boxes get numbering from 1 as box type, and indicated from others.
    You can set any number of boxes, but keep the number from 1 to the max of the definition to indicate.
    StageData
    StageNumberNUMBER for reference.
    This is not used in the program.
    FrictionFriction in the field.
    0.0: no friction, 2.0: suitable friction, 4.0: hard friction
    CielingDownAdditional Speed of Ceiling down
    FieldLineColorRed(0.0-255.0), Green(0.0-255.0), Blue(0.0-255.0), alpha(Ignored)
    StageStringColorRed(0.0-255.0), Green(0.0-255.0), Blue(0.0-255.0), alpha(Ignored)
    ArtistNameStringColorRed(0.0-255.0), Green(0.0-255.0), Blue(0.0-255.0), alpha(Ignored)
    ClearStringColorRed(0.0-255.0), Green(0.0-255.0), Blue(0.0-255.0), alpha(Ignored)
    GameOverStringColorRed(0.0-255.0), Green(0.0-255.0), Blue(0.0-255.0), alpha(Ignored)
    LauncherType"loop" or "random"

    "loop": Launcher loops the fixed box type sequence defined by "launcherLoop" bellow.
    "random": Launcher sets the random boxes.
    launcherLoopAny number of Box Type number for "loop"

    This enum is defined by box_image_path above.
    This is ignored if LauncherType is "random".
    ex. (1, 2, 3, 4 ,3, 2, 1)
    Boxes You can define multiple boxes.
    ex.)
    Boxes = (
      {x =  0.2;  y = 0.4; vx = 0; vy = 0; type = 2; scale = 60;},
      {x =  0.8;  y = 0.4; vx = 0; vy = 0; type = 3; scale = 60;}
    );
    


    x0.0 (Field Left) - 1.0 (Field Right)
    You can share stage data with iPhone/iPad

    y0.0 (Field Bottom) - 1.0 (Field Top)
    You can share stage data with iPhone/iPad

    vxX axis initial velocity when the game starts
    vyY axis initial velocity when the game starts
    typeEnum number between 1 to n for Box Type. This enum is defined by box_image_path above.
    scaleBox scale. 100 is same size as the box image.




    Resource List (Replaced For Open Source)

    Resource TypeiPhoneiPadIndication
    Stage Background Images [Object Name]_iPhone.jpg

    Stage_Sky_iPhone.jpg
    Stage_Tile_iPhone.jpg
    Stage_Green_iPhone.jpg
    Stage_Sketch_iPhone.jpg
    Stage_Noise_iPhone.jpg
    Stage_Wave_iPhone.jpg
    Stage_Record_iPhone.jpg
    Stage_RedSky_iPhone.jpg
    320x480 [Object Name].jpg

    Stage_Sky.jpg
    Stage_Tile.jpg
    Stage_Green.jpg
    Stage_Sketch.jpg
    Stage_Noise.jpg
    Stage_Wave.jpg
    Stage_Record.jpg
    Stage_RedSky.jpg
    768x1024 Use
    [Object Name]


    in
    StageData.xml
    Stage BGM

    Any Parameters you may be able to set, but it may be extracted to wave file. So to support old devices which have not enough memory, it's safe that you make duration, sampling rate, bitrate, number of channels as possible.
    [Object Name]_iPhone.m4a

    BGM1_iPhone.m4a
    BGM2_iPhone.m4a
    BGM3_iPhone.m4a
    BGM4_iPhone.m4a
    BGM5_iPhone.m4a
    BGM6_iPhone.m4a
    BGM7_iPhone.m4a
    BGM8_iPhone.m4a
    mp4
    22khz, 64kbps, mono
    [Object Name].m4a

    BGM1.m4a
    BGM2.m4a
    BGM3.m4a
    BGM4.m4a
    BGM5.m4a
    BGM6.m4a
    BGM7.m4a
    BGM8.m4a
    mp4
    22khz, 128kbps, stereo
    Use
    [Object Name]


    in
    StageData.xml
    Box Images [Object Name]_iPhone.png

    box_1_1_iPhone.png
    box_1_2_iPhone.png
    box_1_3_iPhone.png
    box_1_4_iPhone.png
    box_2_1_iPhone.png
    box_2_2_iPhone.png
    box_2_3_iPhone.png
    box_2_4_iPhone.png
    box_3_1_iPhone.png
    box_3_2_iPhone.png
    box_3_3_iPhone.png
    box_3_4_iPhone.png
    100x100 [Object Name].png

    box_1_1.png
    box_1_2.png
    box_1_3.png
    box_1_4.png
    box_2_1.png
    box_2_2.png
    box_2_3.png
    box_2_4.png
    box_3_1.png
    box_3_2.png
    box_3_3.png
    box_3_4.png
    200x200 Use
    [Object Name]


    in
    StageData.xml
    Credit Background Image Credit_Background_iPhone.jpg
    320x480 Credit_Background.jpg
    768x1024 CreditScene.m
    Applicaiton Logo
    on Menu Scene
    logo_iPhone.png
    200x30 logo.png
    400x60 MenuScene.m
    Default Png Default.png
    320x480 Default-Portrait.png
    Default-PortraitUpsideDown.png
    768x1024 Project Resource
    Icon Icon.png
    57x57 Icon_72x72.png
    72x72 Project Resource




    BOX OFFICES Family by this open source

    VN BOX

    Produced by @TAK_VN
    Aug 29, 2011 Released

    Distribution Support: Entatonic.net




    Contact

  • Mainly we are going to communicate for development work on cocos2d forum.
  • If you developed exciting derivative game, please let me know!
    Send app name and app web url by twitter direct message to account @entatonic with prefix "[BOXOFFICES]".
    We would like to introduce your app as BOX OFFICES FAMILY on our web.



    Copyright (C) 2010, 2012 Entatonic.net. All Rights Reserved.