-
-
Notifications
You must be signed in to change notification settings - Fork 492
SuperTux C# Editor FAQ
This is about the SuperTux C# Editor, NOT about the editor built into SuperTux
Ask somebody! There is an internet chat (we use IRC) that you can get on, show your level, and if you stick around for a few minutes (it takes a little while to get noticed), they'll probably love to tell you how good it is or isn't and what's right or wrong about it. Now isn't that exciting?
Keep in mind that many people on #supertux
have spent many hours
playing SuperTux. Therefore it is often hard for them to judge
difficulty of a level. If you have a sister, young cousin or son, they
may be a better judge with regard to difficulty.
Don't forget that if you're young, you should get your parent's permission before getting on the webchat. Most people that get on our webchat are nice, but that doesn't change that you need permission.
: Join using freenode Webchat or see Contact#IRC.
Oh, and if your level is good enough, the third party fansite would ask you if they can add it to the player made levels area. Let's see some levels! :)
You have two options:
- From source through Subversion.
- Choose the supertux-editor URL from the
listing
and checkout the repository:
svn checkout http://supertux.lethargik.org/svn/supertux/trunk/supertux-editor - Install the development versions of the necessary dependencies. This requires you to know methods appropriate to your distribution or operating system.
- Compile:
cd supertux-editor
make
- Choose the supertux-editor URL from the
listing
and checkout the repository:
- From a binary package by MMlosh or for your distribution.
You first need the supertux-editor package from the Subversion Repository.
The following packages are required by the SVN supertux-editor at runtime and buildtime:
- gtk-sharp
- glade-sharp
- mono
The following packages are only needed at runtime:
- libsdl
- sdl-image
- opengl
- glu
Unix-specific dependencies:
- make
Windows-specific dependencies:
- Microsoft .net development program
Because of the interdependencies of these packages, you probably only need to ask your package manager to install glade-sharp. Also, most unix systems will have a good copy of make installed already.
Click and drag with the middle mouse button.
There are also scrollbars since r4886.
\
Click on the layer you want the tiles on and select the tile you want from the Tiles Tool. Note: Tiles can be places only on “Tilemap” layers (check property editor's title to ensure);
With the Tiles tool selected, there is a combo box above the pane with all of the tiles in it. This combo box contains categories (called tile groups) which filter what is displayed in the pane.
Click on the small eye () in the layer listing to adjust how hidden a layer is. Options are shown, semitransparent, and hidden.
The best way to learn this is to look at existing levels. For the exit tree in MS2 the best place to look at is levels/test/tree-exit.stl at this point. Also note that using tiles for triggering the end sequence, although still supported, is no longer necessary. See What is the SequenceTrigger object for?
Select the tilemap object and place
it like a normal object anywhere in the level. The result will be a new
that a new tilemap is created.
Since r5427: Right-click any item in LayerList and select “Add”, this
will currently (8.5.2009) add only tilemaps, but it may contain a
sub-menu in the future.
\
Press the Control key while moving an object to snap to every 16 pixels. Press the Shift key to snap to every 32 pixels.
The SequenceTrigger object is used to define the areas that start and stop the end sequence (Tux walks into Igloo / Exit). The sequence names for that are “endsequence” and “stoptux”, respectively. Also, you can use “fireworks”.
The SpawnPoint object is used to define places where Tux could “spawn”. This is used to mark where Tux should start in the level, the destination of doors and more. The spawnpoint where Tux will start on loading the level must be named “main” and be in the sector called “main”.
The script object is used to define an occurrence which will happen when Tux enters the defined area. To edit the script, click the 'Edit Script' button. For details please see Scripting reference. Some examples of scripting:
To move a moving platform: Change the platform's name. Example, Plat1. Then in the script, type:
Plat1.goto_node(#);
The node the platform starts on is 0, then 1, et cetera. To make the platform return:
Plat1.goto_node(0);
You can also make the platform go and return in one go.
Plat1.goto_node(#);
Plat1.goto_node(0);
To light candles: Change the candle's name. Example, Candle1. Untick the 'burning' box.
Candle1.set_burning(true);
The candle will light. To make a candle turn off, leave the candle 'burning' and type:
Candle1.set_burning(false);
A few more simple commands:
wait(#); (wait the specified number of seconds)
And example of using wait:
Candle1.set_burning(true);
wait(0.1);
Candle2.set_burning(true);
wait(2);
Candle1.set_burning(false);
wait(0.1);
Candle2.set_burning(false);
The result of this will be that candle1 lights, followed by candle2 a fraction of a second later. After two more seconds, candle1 and then candle2 will go out.
Select “Background” in the sector objects view. There you can change
it's properties, including what picture(s) should be used for
background.
Since r5769: Background image is present as “BG Image” in LayerList.
Click it.
Since r5888: Background image is present as “Background IMG.”
Brushes are used to clean up edge tiles. The brush tool does that by replacing a chosen 3x3 section of tiles with the best of several “good-looking” patterns stored in so-called brushes. Keep that in mind when working with brushes - a brush will never apply a pattern it does not know about.
There are already a few brushes in trunk/supertux-sharp/data/brushes
that know some valid patterns e.g. for earth tiles or snow tiles. Load
one in the level and then drag it over tiles to correct edge tiles of
rough tile “blocks”.
Note that the brushes are incomplete, so you might need to fix some things manually. If you used a pattern a brush did not yet know, you can add it to the list of known patterns by dragging a selection around the new pattern(s) with your right mouse button. All patterns in the selected region will be added to the list of valid patterns for the currently loaded brush. Because patterns are currently 3x3 tiles in size, your selection obviously has to be at least 3x3 tiles big. Also don't forget to save the brush afterwards or your changes will be lost when you deselect the brush.
To create a new brush you currently got to “train” an empty one:
- Make a level that looks good.
- Select the tilemap you placed those tiles in.
- Load the brush
trunk/supertux-sharp/data/brushes/empty.csv
- Right click and drag to select the area to get tiles from.
- The minimum size for a selection that works is 3x3 tiles.
- When you are finished save the brush.
Note that a good brush would need several thousand patterns.
Near the top of the editor. The default sector in a level is called “main” and is the sector where the game will start.
Right click on the tab for the sector and select “Resize”.
Right click at the sector tab area and select “New”.
Right click at the sector tab for the current sector and select “Delete”.
Could not load file or assembly 'gtk-sharp, Version=2.10.0.0,
Culture=neutral, PublicKeyToken=35e10195dab3c99f' or one of its dependencies.
If you are on OpenSUSE and get a message like this you might want to try this and the note directly below it as well.
We (the developers) are unable to reproduce the problem but we do not use OpenSUSE. Try asking the OpenSUSE developers about what is going on there.
Yes, it does, but the setup is complex; you will have to do the following:
- install Apple's X11
- download and build Gtk and its dependencies (Glib, Pango, Cairo, Atk, Gdk and maybe more)
- download and build Mono and GTK#
- install glew and boost via Mac port
- download and build the editor
Since the Mono project doesn't pre-package Gtk# and its dependencies with the OS X installer, we are unable to provide a nice editor package. Additionally, we offer no official support, so no one might be able to help you on the mailing list if the editor crashes due to an OS X-specific problem.
Unfortunately, since it needs mono/GTK, that would be pretty hard. The editor relies on some programs, so it could not be without manually installing the components.
: Why run it in wine? Mono binaries run natively on Linux, too. Don't be confused by the .exe extension, just run it. : Because is really hard to run with mac without it. I would be nice just to be able to open it, no building necessary. 173.55.240.235(Monstertux)
Yes, but it requires a complete setup. you will have to compile some GTK# programs amongst other things. We are able to provide a package.
Very common. You just need to make sure your out of the “Node Editor” and switch to the tile editor.
: There is no bug report about this so called “common problem”. Works fine on all systems I know about. : Well you must not have tested with the 0.3.0 mono one then. Its fine with the net version.
[s=For any bug reports where please provide the full backtrace (if one exists) when reporting at our bugtracker](Template:Attention "wikilink")
This can be several things:
- Check that the paths to the supertux data directory and to supertux itself in the editor preferences are correct.
- If you run it under mono (unless you know that you don't do it, you probably do run it under mono) check that the mono version is at least 1.2.2.1.
Note: That the Mono version with installation is not compatible with the Level Editor.
This bug has been reported on the bug tracker and will be fixed some time in the future.
If any of the above didn't solve the problem and you manage to recreate the error, report the bug with at least this info:
- Full backtrace
- What you did to cause the bug
- What OS and OS version you use
- What versions of mono, the editor itself, GTK and GTK# that you use
These types of bugs can not be solved without that info (and sometimes we might need more details than that, so please check back at the bug once day or so if there is any more info asked for).
Category:Development Category:For Users Category:FAQs
Home
Guidelines
Game Mechanics
Tools
Engine
- Cameras in other games
- Collision
- Configuration File
- Console
- Cutscenes
- Game_Engine
- Lighting
- Map_transformer
- Portables
- SceneGraph
- Scripting
Specifications
Milestones
- Milestone 1 Analysis
- Milestone 2 Design Document
- Milestone 2 Design Document Old
- Milestone 3 Design Document
Building (mostly outdated)
- INSTALL.md
- Building
- Building on macOS
- Building SuperTux
- Building on Windows
- Building with MXE (cross-compile)
Meetings