What would you like to see in a level editor?


(Abel Toy) #1

What would you like to see in a tile-based, 2D level editor?

Any features you’d like OGMO or Tiled to have? What do you think is essential but hasn’t been done?

I’m grabbing a few ideas for something I’ll release soon, in order to plan future versions.


(Bora Kasap) #2

I haven’t used OGMO before, i don’t know is it have these features already. But i’m gonna write here some of my ideas:

  • Tiling with mouse like drawing a line. “Tile as Line”
  • Filling inside of any shape-like tilings. “Fill with Tiles”
  • Store any object built with tiles in “another window” to be used in anywhere anytime. “Object Inventory”
  • A sample character has some properties like “jump speed, gravity, wind etc. as you wish” to check and fix “jumping distances” in editor while building levels. (for platformers) (actually i’m not sure about that, jump distance is almost fixed in grid based games, but if there is difference between “heights” of tiles, developer may not be able to fix that distance without playing it)

(Jonathan Stoler) #3
  • Mac Support!
  • Custom/scriptable exporters (importers, too, if possible), so I can make it output/read any format I want
  • Allow settings to be changed without having to remake maps (I think this is a problem that Ogmo had - not sure if it still does - but if I want to tweak something, I don’t want it to mess up my existing maps)
  • Components/mixins, so I can create submaps to include in larger maps (good for arranging “screens” or reusing common level components)

Overall, I think Ogmo is pretty full-featured and reasonably intuitive, although I haven’t used it much. Tiled was really buggy when I last tried it. My biggest gripe about Ogmo is that it isn’t cross-platform.


(John Andersson) #4

It needs a lot of export modes,

XML

  • Co-ords
  • IDs

CSV

Whatever more

Also, make it so that unlike OGMO, if you edit the project, the level doesn’t close down. Don’t make it open new levels automatically either.

Make it really fast. The thing I hate the most with OGMO is that it is soo slow if I try to make bigger maps. It’s extremely slow.

Magic wand tool, much like in photoshop. Select tiles near each other that are the same.

Nodes, paths, etc.

Snap to grid, etc.


(rostok) #5
  • general purpose area triggers with definable options/properties
  • export to PNG and HTML (it may be cool to manually edit tiles and other props and instantly see effects, by editing I mean tweaking them with Photoshop for example)
  • rules for tiles (same as in Tiled)
  • import of bitmap files as tile grid
  • simple geometry objects like paths, polygons, circles, rectangles
  • on screen info on mouse position, in case of moving some object also position’s delta is displayed

(Abel Toy) #6
  • Mac support: This was planned from the start. I’m developing it with Python and Qt, so it should be cross-platform. It’s just a matter of building there, but I already have a Mac available to build there (and I’m on a PC, so that as well). I’ll try to build on Linux too.

  • Exporters support: I’ll try to add custom and scriptable exporters on the level editor on a future version, but it will come with one or two when I release it.

  • Object Inventory / Components / Mixins: Good idea. Will keep in mind! I can see why it would be useful.

  • Settings don’t break current maps: Yeah, that would be awesome. I’ll have to figure something out though. I had a thought of doing a update tileset feature as well, where you could sort the tiles in a tileset differently and the maps would be updated. I think I will do an updater tool of sorts, which will know what maps correspond to the project changed and update them, or something. Not sure yet. But it’s definitely on my mind.

  • Speed: Yes. The number one reason I started this was because my project needed large maps, and OGMO was just too slow to be able to do anything useful with it. I also didn’t like Tiled’s object support.

  • Tools: Yes. Lines, floodfill, selection, magic wand. All planned. Magic wand might come later, though. Would it just select all the tiles of a certain ID on the map?

  • Platformer “previews” thingie: Interesting. This would be very helpful indeed. Will think about it.

  • Area triggers: So, just an object that would be a rectangle or another shape that would have a certain tag and properties? Without defining it first in the project file? Yes, that would be a bit useful. Will think about it.

  • Export to HTML: huh?

  • Tile rules: Yes. This would be awesome. Definitely planned, just not for the first released version.

  • Bitmaps as tile grid: So, a bitmap of black and white pixels? Or what?

  • Simple geometry objects: Yes, planned.

  • On screen info: So, mouse coordinates, delta, etc. on the status bar? Okey, cool!

Also, yes, editting a project won’t close down the level. Nodes, path, etc. are also planned. Snap to grid as well.

I’m also thinking of a randomiser feature. You select a bunch of tiles, and when you paint, a random tile of the selection is used. Would work great for having a bit of variation in floors, walls, etc. - you’d just floodfill or draw a rectangle with a selection, and the random tiles would be applied.


(Sharon Shalom Iluz) #7

Maybe an easy screen capture for posting your score ?


(azrafe7) #8

I agree with most of the wishes expressed so far. My main concerns would be:

  1. Custom export (and JSON should be in there by default)
  2. Clear shortcuts (tooltips w/keybindings, etc.) + configurable ones
  3. Auto-tiling
  4. Geometry shapes (points, lines, poly, circles, etc.)
  5. Clear status panel to get info under mouse (or selected tile) - things like pos, id, group, layer, etc.
  6. Select/edit multiple obj props at once
  7. Open source?! - this would be awesome!

Some of these have been already proposed, but I thought to re-list them to stress their importance (for me). Hope to see this thing out soon. Any alpha-release date? :smiley:


(Jacob Albano) #9

Mixins would be amazing. I’m currently working on a puzzle game where certain objects have a limited number of uses, and I have to add the “Uses” property to each supported entity type manually. It would be awesome to be able to add a “UsageLimiter” mixin to the appropriate types and trust it to update everywhere if I make a change.

Nineslice scaling for entity images would be nice.

This may be way out of scope, but: The ability to add a preview of a level as an entity in a map, for building metroidvania maps.


(Abel Toy) #10

@azrafe7 - all planned! some will be ready on launch, some later.

It’ll be open-source, I’ll probably upload it to github or something. Not looking to make money off it (and if I really wanted to, I’d probably add some plugin feature or something, but I don’t think I will).

Hopefully there will be something ready before May!

@jacobalbano: so what you mean by mixins is some sort of template to Entity creation? or what?

Also, what’s this preview thing you mean, exactly? How would it work?


(Jacob Albano) #11

Mixins: The way I’m imagining it to work is that when you define an entity, you also have the option of defining a component that adds a certain set of properties. Adding that component to an entity definition would add those properties to that entity.

So you have some entities:

  • Medkit
  • Smart bomb
  • Ammo crate

And you have a mixin:

  • UsageLimiter
  • property: Uses (int)

Now, when you define your entities in the project options, you add the UsageLimiter to the Smart bomb and Ammo crate entities. Now they show up as having that property in the editor, and the level file would look something like this:

<Entities>
    <AmmoCrate x="100" y="100" Uses="3" />
    <SmartBomb x="200" y="50" Uses="1" />
    <Medkit x="75" y="300" />
    <Medkit x="300" y="75" />
</Entities>

Previews: You know how a Metroidvania map will often look something like this:

Each of those segments could be designed as a single level, and the game loads them all in and arranges them at runtime based on their layout in an overview level.

So imagine you’ve got one “level” file that you drag the tiny rooms around in, and each room you’re arranging is a real preview of a level you’ve previously built.

Like I said, way out of scope. :stuck_out_tongue:


(Abel Toy) #12

Oh, okey. The mixins you mentioned I did have them in mind already. Called them Definitions on my notes. Yeah, you’ll definitely see them!

The metroidvania thing, yeah, I think it’s a bit out of scope :stuck_out_tongue:


(Zachary Lewis) #13

I would like to see an editor have some kind of project management, though. Levels are rarely made in a vacuum, and few games have a single level. It makes sense that a tool should, at the very least, be aware of other maps and how they interact.

One of the coolest things about the RPG Maker series was the way they handled transitions. You could add a transition to a map (like entering a door) and it would bring up a list of maps and allow you to click a location on any map to transition to. I could see that being quite useful.


(Abel Toy) #14

I see your point. Yeah, the transitions on RPG Maker were great. I’ll try to think of a good way to implement something like that.


(Bora Kasap) #15

It’s better you make a game engine instead of level editor :slight_smile: haha


(Abel Toy) #16

But I don’t need a game engine. I already have FlashPunk… I do need a good editor that fits my needs, though, that’s why I’m doing it.


(Bora Kasap) #17

i was kidding x)

i’ve one other idea for level editor that may make everything very very useful & more understandable (maybe?)

That’s an editor asks to user when started

“What kind of levels are you going to design? (what kind of a game are you working on)”

  • Sideview (platformers)
  • Bird’s Eye (RPGs, Strategies etc.)

Why need that? Actually no need that for a game designer…

But! That makes you as a level editor designer to be able to add specific features to your editor depends on game type.


(John Andersson) #18

I’d love a layout much like Tiled, but with pre-made entities like ogmo. It sucks to have to make “new” entities in Tiled all the time.

The only thing that sucks about OGMO is how horrible slow it is. I wish someone could take the source code and make it as a fast as Tiled

Different XML exports is important