Developing Plug-ins for iConquer

iConquer allows you to create plug-ins for both player personalities and maps. Use your artificial intelligence hacking ability to make the next great player algorithm. Or use your artistic talents to make stunning Aqua-licious game maps.

Requirements

You'll need to have the latest Mac OS X Xcode Tools installed. They're included on a CD along with Mac OS X, and are available for download from the Apple Developer Connection (free registration required).

To create player plug-ins, you'll need a basic understanding of developing Cocoa software for Mac OS X in Objective-C. You may wish to refer to the Cocoa documentation. If you're familiar with Java, you may just need to read through the Objective-C tutorial.

To create map plug-ins, you'll need a graphics program that can create TIFF images with transparency, such as Adobe Photoshop.

Mailing Lists

iConquer developer mailing lists allow you to exchange information with KavaSoft and other developers. There are separate lists for each kind of plug-in.

iConquer Player Developers
iConquer Map Developers

Getting Started

Download the iConquer Plug-in Kit by clicking the disk image at right, and install the iConquer Plug-in Kit package. Two Xcode project templates will be installed in /Library/‌Application Support/‌Apple/‌Developer Tools/‌Project Templates/‌iConquer.

After installing the package, create a new project in Xcode. In the assistant, scroll down to the iConquer project type, choose "Map plug-in" or "Player plug-in", and click "Next". Choose a name for your plug-in, and click "Finish".

Click the Build button, and Xcode will create a complete, working plug-in in your project's "build" folder.

Assistant

Customizing your plug-in

You'll want to customize some information about your project. Look at the Info.plist file, review the values that Xcode has inserted for you, and make any necessary changes.

CFBundleName The name that will be displayed to the user.
CFBundleIdentifier A unique string that identifies your plug-in.
CFBundleVersion Your plugin's version, displayed in the Plug-ins window.
ICAuthor Your name, displayed in the Plug-ins window.
ICAuthorURL Your name will be linked to this URL (http:// or mailto:).
ICColorTransparency  Specifies the color transparency for countries.
(optional, maps only)
ICComments A description of your plug-in (about four lines).
ICPlayerList Specifies what corner the player list appears in.
(optional, maps only)
ICThumbnail The name of an image that will be displayed in the Plug-ins window (ignore the file extension).
ICVersionRequired The minimum version of iConquer that this plug-in is compatible with.

You should also paste the CFBundleName and ICComments values into the English variant of the InfoPlist.strings file. Values in the InfoPlist.strings file override the non-localized values.

If you would like to translate your plug-in, click on InfoPlist.strings in the list of files. Choose Project Get Info, click "Add Localization", and choose a language. Then edit the other localized variants.

Writing your plug-in

This is the part where you get creative! Click a plug-in type below for specific instructions.

Player Map
Players Maps

Installing your plug-in

Copy your plug-in from your project's "build" folder to one of the following locations.

  ~/Library/Application Support/iConquer/
  /Library/Application Support/iConquer/

Be sure not to change the extension of your plug-in, which should be .player or .map.

To avoid having to repeatedly copy your plug-in when you make changes, you can create a symbolic link, which is similar to an alias. In the Terminal, type the following, substituting the correct path and name for your plug-in:

  cd /Library/Application\ Support/iConquer/
  ln -s ~/Projects/MyPlugin/build/MyPlugin.map MyPlugin.map

Restart iConquer to discover new plug-ins. Maps will appear in the Map menu, and players will appear in the player popup menus in the New Game dialog. Maps can be reloaded by selecting them again from the Map menu, but you must restart iConquer to reload player code.

Submitting your plug-in

Designed, built and tested your plug-in? Let us know so that we can add it to the list of plug-ins that iConquer can discover automatically.

When you build your project, an archive called MyPlugin.tar.gz will be created in the build directory. Upload this file to your web server. For example, if you have a Mac.com account you can copy the file to the Sites folder of your iDisk. The URL for the plug-in archive should look something like:

http://homepage.mac.com/jstalin/MyPlugin.tar.gz

If your plug-in is a map, upload the thumbnail image for your plug-in to your web server, at a URL such as:

http://homepage.mac.com/jstalin/MyPlugin.jpg

Then email both URLs to us at info@kavasoft.com, and we will add your plug-in to the list that will be displayed when users check for new plug-ins.

Linking to your plug-in (2.2)

After your plug-in has been released, you can link to it with a URL such as:

iconquer://getPlugin?identifier=com.mydomain.mymap.medium

Clicking on the link will automatically launch iConquer and install the plug-in with the specified CFBundleIdentifier. Here are some examples.

Updating your plug-in

If you update your plug-in, simply send us an email with the new version number. We'll update the version of your plug-in in the list. Users with the old version will see that the plug-in has been updated when they check for new plug-ins.

Download iConquer
iConquer Plug-in Kit

Version 2.3
976 KB disk image

requires iConquer 2.3

Requirements
Mailing Lists
Getting Started
Customizing
Writing
Installing
Submitting
Linking
Updating


Player
Players

Map
Maps

Home | Maps | Developer | Download | Buy Now

© 2002-2007 KavaSoft.
All rights reserved.