Tutorials:BeginningTheming/Before You Begin

So you've decided to take the jump into StepMania theming. Excellent. This part of the tutorial, titled "Before You Begin," will help you get used to some concepts that are used in theming, as well as point you in the direction of tools you will need in order to get the job done.

Required Tools
StepMania theming can be done with whatever tools you deem necessary. Generally, these fall into two categories: Text Editors and Graphics Programs. Metrics and Graphics are two of the most important parts of theming, so it's good to have something to edit those with. You can also use a Sound Editor/Creator if you wish to create or edit sounds.

Text Editors
A good text editor can help you theme more efficiently.

Windows

"http://en.wikipedia.org/wiki/Notepad" Notepad - The default text editor on Windows, Notepad has been used by many a themer. Its lack of syntax highlighting hinders it for advanced theming, but for beginning themers, it's quite good. SciTE - The Scintilla Text Editor is a text editor with syntax highlighting, tabbed document interface, and allows for collapsing of sections (useful when editing Metrics.ini if it's grown quite big). It is open source, allowing you to edit it if need be. Notepad++ - Notepad++ is a GPL'ed source code editor that also uses the Scintilla editor component.

Programmer's Notepad  Other Windows text editors not covered here can be found on Wikipedia. <a name="Mac_OS_X"></a> Mac OS X <a href="http://en.wikipedia.org/wiki/TextEdit" class="external text" title="http://en.wikipedia.org/wiki/TextEdit" rel="nofollow">TextEdit</a> - TextEdit is the default text editing application on OS X. When using it, you will want to use plain text formatting, as TextEdit is set to rich text mode by default. </li><a href="http://en.wikipedia.org/wiki/BBEdit" class="external text" title="http://en.wikipedia.org/wiki/BBEdit" rel="nofollow">BBEdit</a> - BBEdit is the editor that "doesn't suck," according to its tagline. BBEdit is shareware, like a number of Mac applications. </li><a href="http://en.wikipedia.org/wiki/TextWrangler" class="external text" title="http://en.wikipedia.org/wiki/TextWrangler" rel="nofollow">TextWrangler</a> - TextWrangler is a continuation of BBEdit Lite. Unlike BBEdit, TextWrangler is freeware.

</li></ul> Other Mac OS X text editors not covered here can be found on <a href="http://en.wikipedia.org/wiki/Category:Mac_OS_X_text_editors" class="external text" title="http://en.wikipedia.org/wiki/Category:Mac_OS_X_text_editors" rel="nofollow">Wikipedia</a>. <a name="Linux.2FBSD.2F.2Anix"></a> Linux/BSD/*nix <a name="Command_Line"></a> Command Line Note: these applications may also be available on Mac OS X if you don't want to use a GUI text editor for whatever reason. <a href="http://en.wikipedia.org/wiki/Nano_%28text_editor%29" class="external text" title="http://en.wikipedia.org/wiki/Nano_%28text_editor%29" rel="nofollow">nano</a>/<a href="http://en.wikipedia.org/wiki/Pico_%28text_editor%29" class="external text" title="http://en.wikipedia.org/wiki/Pico_%28text_editor%29" rel="nofollow">pico</a> - nano/pico is a bare-bones text editor that is very easy to learn.

</li><a href="http://en.wikipedia.org/wiki/Vi" class="external text" title="http://en.wikipedia.org/wiki/Vi" rel="nofollow">vi</a> (or vim) - vi is the preferred editor of many people, although it may be hard to get used to if you've never used it before. </li><a href="http://en.wikipedia.org/wiki/Emacs" class="external text" title="http://en.wikipedia.org/wiki/Emacs" rel="nofollow">Emacs</a> - Emacs is the other editor in the "<a href="http://en.wikipedia.org/wiki/Editor_war" class="external text" title="http://en.wikipedia.org/wiki/Editor_war" rel="nofollow">editor wars</a>". </li></ul> <a name="Graphical"></a> Graphical (todo) Many Linux desktop environments come with their own editor. GNOME comes with Gedit. </li>KDE comes with Kate.

</li>Xfce comes with Mousepad. </li></ul> </li><a href="http://en.wikipedia.org/wiki/SciTE" class="external text" title="http://en.wikipedia.org/wiki/SciTE" rel="nofollow">SciTE</a> is also available on Linux. </li>Many Windows-only editors may work under <a href="http://en.wikipedia.org/wiki/WINE" class="external text" title="http://en.wikipedia.org/wiki/WINE" rel="nofollow">WINE</a>. Notepad++ is one of them. </li></ul> <a name="Graphics_Editors"></a> Graphics Editors The other half of a good theme is graphics. Here, good tools are a must. This list deals primarily with <a href="http://en.wikipedia.org/wiki/Raster_graphics_editor" class="external text" title="http://en.wikipedia.org/wiki/Raster_graphics_editor" rel="nofollow">raster editors</a>. If you deal primarily with vectors, then check out <a href="http://en.wikipedia.org/wiki/List_of_vector_graphics_editors" class="external text" title="http://en.wikipedia.org/wiki/List_of_vector_graphics_editors" rel="nofollow">Wikipedia's list of vector graphics editors</a>.

<a name="Windows_2"></a> Windows <ul><li><a href="http://en.wikipedia.org/wiki/Paint_%28software%29" class="external text" title="http://en.wikipedia.org/wiki/Paint_%28software%29" rel="nofollow">Paint</a> - Paint is the default image editor on Windows. It should only be used if you are developing a sequel to <a href="http://kki.ajworld.net/w/index.php?title=Paintmania&amp;action=edit" class="new" title="Paintmania">Paintmania</a>. </li><li><a href="http://en.wikipedia.org/wiki/Paint.NET" class="external text" title="http://en.wikipedia.org/wiki/Paint.NET" rel="nofollow">Paint.NET</a> - Paint.NET is an enhanced version of Paint that isn't as bad. However, it requires the .NET 2.0 framework, and the latest version will only run on Windows XP or up. The previous version is still available for Windows 2000. </li><li><a href="http://en.wikipedia.org/wiki/GIMP" class="external text" title="http://en.wikipedia.org/wiki/GIMP" rel="nofollow">GIMP</a> - The GIMP is a multi-platform image manipulation tool (so expect to see it again in the Mac and Linux sections) that goes above and beyond the call of duty. If you're on a budget or just want a good, free (as in cost AND freedom; GIMP is open source) image editor, you can't go wrong with the GIMP. </li><li><a href="http://en.wikipedia.org/wiki/Adobe_Photoshop" class="external text" title="http://en.wikipedia.org/wiki/Adobe_Photoshop" rel="nofollow">Adobe Photoshop</a> - Photoshop is the big name in image editing, and it serves well for theme making. However, it is very expensive.

</li><li><a href="http://en.wikipedia.org/wiki/Corel_Paint_Shop_Pro" class="external text" title="http://en.wikipedia.org/wiki/Corel_Paint_Shop_Pro" rel="nofollow">Corel Paint Shop Pro</a> </li><li><a href="http://en.wikipedia.org/wiki/GIMPshop" class="external text" title="http://en.wikipedia.org/wiki/GIMPshop" rel="nofollow">GIMPshop</a> - For those looking for a balance between The GIMP and Photoshop, there is GIMPshop. Like The GIMP, it's cross-platform, so once again, expect to see it in the OS X and Linux sections. </li></ul> <a name="Mac_OS_X_2"></a> Mac OS X <ul><li>Adobe Photoshop - Photoshop is also available on Mac, and is considered the best image editor for the Mac. </li><li>GIMP - If you like using The GIMP on other platforms, good news: It's available on OS X as well! <a href="http://gimp-app.sourceforge.net/" class="external text" title="http://gimp-app.sourceforge.net/" rel="nofollow">GIMP.app</a> is the way to go, but it requires <a href="http://www.apple.com/macosx/features/x11/" class="external text" title="http://www.apple.com/macosx/features/x11/" rel="nofollow">Apple's X11</a> in order to run. There may be a version of GIMP that doesn't require X11 soon, according to <a href="http://lists.xcf.berkeley.edu/lists/gimp-developer/2007-March/017587.html" class="external text" title="http://lists.xcf.berkeley.edu/lists/gimp-developer/2007-March/017587.html" rel="nofollow">this</a> message on the Gimp-developer email list.

</li><li>GIMPshop - GIMPshop was originally created for OS X. Like The GIMP, GIMPshop requires Apple's X11 to run. </li></ul> <a name="Linux.2FBSD.2F.2Anix_2"></a> Linux/BSD/*nix <ul><li>GIMP - The premier image editing application on Linux. </li></ul> Other editors not listed here can be found on <a href="http://en.wikipedia.org/wiki/Category:Raster_graphics_editors" class="external text" title="http://en.wikipedia.org/wiki/Category:Raster_graphics_editors" rel="nofollow">Wikipedia</a>. <a name="Concepts"></a> Concepts

With the tools out of the way, it's time to learn about the concepts. <a name="Metrics"></a> Metrics The Metrics are a term for the contents of Metrics.ini, where all of the data for hardcoded objects is located. <a name="Screens"></a> Screens In StepMania, there are <a href="../Category_Screens.html" title="Category:Screens">Screens</a> which determine game flow. For instance, there are Screens such as <a href="http://kki.ajworld.net/w/index.php?title=ScreenTitleMenu&amp;action=edit" class="new" title="ScreenTitleMenu">ScreenTitleMenu</a> and <a href="http://kki.ajworld.net/w/index.php?title=ScreenSelectMusic&amp;action=edit" class="new" title="ScreenSelectMusic">ScreenSelectMusic</a> which translate to the Title Menu and Music Select screen respectively.

<a name="Classes"></a> Classes Screens have <a href="../Category_Classes.html" title="Category:Classes">Classes</a>, which define what Metrics are available and which are required. This generally only comes into play if you are designing a custom Screen for your theme. <a name="BGAnimations"></a> BGAnimations BGAnimations allow you to put custom content in your themes. This can range from a simple background picture to a number of other things. BGAnimations are covered in detail in <a href="Chapter_2.html" title="Tutorial:Beginning Theming/Chapter 2">Chapter 2</a>.