Strange Eons
Introducing the Project System
Send Feedback
Home Page > Strange Eons >Miriam's Basement
> Project System Tools
Contents
Introducing the Project System
Creating a New Project
Adding a Task
Automatically Building a Deck of Cards
Creating an Expansion Icon Plug-in
The Project System is a feature of Strange Eons designed for those who are
working on a related collection of files. For example, an entire deck of cards,
an expansion, or a plug-in (or all of these at once!). Inside of a project, you
add one or more tasks depending on what you want to do.
On your computer, a project is just a regular folder. Strange Eons can
recognize project folders because they contain a file, seproject,
that contains the settings for the project. But when you open the project in
Strange Eons, by either dragging and dropping the folder or using the
File | Open Project
command, Strange Eons will show the project in a special pane on the left
side of the application window. When you right click on a file in the
project, you will get a special menu of commands that you can perform. The
set of commands will change depending on the kind of file and the task it is
a part of. For example, if you right click on a plug-in bundle, one of the
options lets you test the plug-in by running a separate copy of Strange Eons
in a special test mode.
To create a new project:
- Choose File | New Project.
- Enter a name for the project.
- If you wish, change the "resource identifier." This identifier
is only used by projects that will contain new plug-ins. It is used to
prevent plug-ins written by different people from conflicting.
- Initially, new projects will be created inside of your "documents" or
"home" folder, depending on the platform. You can choose a different
folder if you wish.
- Choose Make Project.
Your new, empty project will be created and immediately opened.
Within a project, tasks are used to split up your work into manageable
chunks. Each task represents both a kind of activity and a collection
of related files. For example, one type of task is a Deck of Cards. For each
deck that is part of your project, you would add one task of this type. Then
you would create all of the cards related to a deck in its respective task
folder. The type of task you choose is important, because the commands that
the project system provides will depend on the kind of task.
To create a new task:
- In the project area, click Add New Task
(or right click on the project name and choose New
| Task from the menu).
- Enter a name for the task.
- Choose the task type.
- Press Add Task.
- Depending on the type of task you requested, you may be presented
with additional options.
- The new task folder will appear in the project view and you can
start working with it.
Once your new task is ready, right clicking on the task folder or files
inside of it will present you with a menu of special commands tailored to
the kind of task. In this demo, the new card deck task provides a
New | Game Component command that is used to
add a new card to the deck:
For the technically-minded, the deck packer uses a variant of the
first-fit decreasing bin packing algorithm.
The packer is available to plug-in authors to use for other purposes.
One of the features of Strange Eons is a deck editor that allows you to
lay out decks of cards, tokens, custom expansion boards, and other content.
Although creating a deck of cards is easy with the deck editor, it can get
tedious for large decks, or if you want to provide the same deck in
different formats. Here is where the project system can help: it
provides a special command for deck tasks that will make a deck of cards for
you. The command is fairly clever at laying out decks, too: it can handle a
mixture of different card sizes, it groups cards that are the same type and
size together when it can, it knows what to do with front and back sides,
and it does a good job of minimizing the number of pages needed for your
deck.
Making a deck with the deck packer couldn't be easier:
- just right click on a
deck or factory task and choose Make Deck.
The deck packer provides a few options to choose from:
- First, choose a file name.
- Choose whether cards with two sides should be laid out side-by-side
(so they fold together) or on the front and back sides of a single
sheet of paper. If card faces are laid out side-by-side, you can also choose
to create groups for them so that selecting either face selects the entire
card.
- Finally, you can choose a value to trade off between the quality of
the packing and how quickly it works. The packer generally works well even on the
fastest setting. Setting it to higher values only makes a difference in
certain tricky cases, but can take a lot longer.
Note: Version 2.1 alpha 9 contains a bug that
prevents this from working correctly. This has been fixed for the next release.
The project system includes support for creating plug-ins. One of the most
common reasons that people write a plug-in is to register a new expansion to the
program. Because this is so common, the project system even lets you create this
kind of plug-in with a few clicks.
To register an expansion to go with our new deck, we start as if we were
making any other kind of plug-in:
- Choose Add New Task.
- Enter a name for the task ("Expansion Icon Plug-in").
- Choose the New Plug-in task type (not
Import Plug-in!).
- Press Add Task. A dialog appears to
guide you through the process.
- The Plug-in Name is the name that will appear in the plug-in
manager and other places. Fill in something like "GME Expansion".
- The Bundle Name is the name of the plug-in bundle (the file
that you install to use the plug-in). The Script Name is the name
of the script that will be created in the plug-in. This script will
contain the code that Strange Eons runs to start the plug-in. Both of
these will have values filled in already based on the Plug-in Name.
You can just leave them as they are.
- The Description is a short description of what the plug-in
does. Fill in "Adds an expansion icon for the GME".
- Choose the type of plug-in. For an expansion icon, this must be set
to Extension. See here for an
overview of the different plug-in types.
- Press Continue to go to the next step.
This page provides options that will write plug-in code for you. In this
case, check only Register a New Expansion.
- Press Continue to go to the next step.
This is where you describe your expansion icon. Enter the name of the
expansion in the Expansion Name field, in this case "Gilman
Memorial Exhibit". The code field will be filled in for you, but you'll
have to change it if it is the same as an already-registered expansion.
- Now you get to choose the icon and symbols used for the expansion.
The icon is the graphic that is used to represent the expansion in the
expansion menu and other parts of the interface. The symbols are what
get printed on the actual game components. You can either drag and drop
image files onto the boxes, or else click on them to open a file
chooser.
- The first symbol box is the version of the symbol that is used on
light-coloured cards (so the symbol should be black or another dark
colour). The second, "inverse" symbol is used on dark-coloured cards.
However, you can create an inverse symbol automatically by checking the
box below the images.
- Press Continue to go to the next step.
The last page has an option to localize the generated code. This lets
you make plug-ins that support multiple languages. We'll leave this
option turned off and just press Finish.
- The code for the plug-in will be created and your selected images
will be copied into the plug-in's resource folder. The task folder now
contains the unpackaged files needed for the plug-in. When a plug-in is
installed or distributed, these files are packaged up into a bundle. To
create a bundle from the task folder, just right click the folder and
choose Make Bundle. Everything will be
packaged up and the bundle will be placed in the main project folder.
- To test your new plug-in, right click on the bundle and choose
Test Plug-in. A special test version of
Strange Eons will be started, and it will start the tested plug-in
automatically. You can tell this version of Strange Eons from the normal
non-test version because the interface will be tinted in a gold colour.
When the test version is done starting, create a component and then set
the expansion icon to your new custom icon (Edit |
Expansion Symbol | Gilman Memorial Exhibit). Exit the test
application when you are done.

Return to Home Page
Send Feedback
January 19,
2010 — Updated
March 15, 2010