Java-Gaming.org Hi !
Featured games (81)
games approved by the League of Dukes
Games in Showcase (513)
Games in Android Showcase (119)
games submitted by our members
Games in WIP (576)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Analog - the freeform map editor, v0.5  (Read 10620 times)
0 Members and 1 Guest are viewing this topic.
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Posted 2007-09-23 23:45:33 »

I figure this is in a good enough state to let other people tinker with now, so here's the first version of my shiny new map editor! It's been written so I've got something to use to create levels for <a href="http://www.java-gaming.org/forums/index.php?topic=16899.0">Rescue Squad</a>, but it's been written to be game-agnostic. It should be reasonably simple to use it for other games (although at the moment it might be a little restritive due to only really supporting point geometry).

<img src="http://www.triangularpixels.net/Analog/Images/version0.5.png" />
[size=8pt](<a href="http://www.triangularpixels.net/Analog/Images/version0.5.png">full version</a>[/size]

<img src="http://www.triangularpixels.net/Analog/Images/version0.4.png"/>
[size=8pt](<a href="http://www.triangularpixels.net/Analog/Images/version0.4.png">full version</a>)[/size]

<img src="http://www.triangularpixels.net/Analog/Images/version0.3.png"/>
[size=8pt](<a href="http://www.triangularpixels.net/Analog/Images/version0.3.png">full version</a>)[/size]

<img src="http://www.triangularpixels.net/Analog/Images/version0.2.png"/>
[size=8pt](<a href="http://www.triangularpixels.net/Analog/Images/version0.2.png">full version</a>)[/size]

<img src="http://www.triangularpixels.net/Analog/Images/version0.1.png"/>
[size=8pt](<a href="http://www.triangularpixels.net/Analog/Images/version0.1.png">full version</a>)[/size]

<b><a href="http://triangularpixels.net/games/tools/analog/">Website link</a></b>, with downloads, screenshots and an example project.

The example project is my project file for Rescue Squad maps, which is worth checking out as it'll give you something you can just load and have a play with. It also shows how little effort is required to customise it for a particular game.

<b>Other notes:</b>
 - Please read the help files, the "getting started" section should cover the basics with a minimum of fuss (suggestions for improvement welcome!).
 - Theres bound to be some bugs when people start pressing buttons in completely different orders to me. If you find any then stick a reply in here and I'll see about fixing it.
 - It's still pretty early in it's development, so suggestions for improvements and additions are very welcome. I'm particularly after UI improvements/suggestions. And if you're writing a game that needs a map editor I'd like to hear suggestsions on must-have features for you particular project.

<b>v0.2 added:</b>
 - Layers support. Each map can have as many layers as you want, each with individual grid sizes and snap settings. Add, remove and change the ordering of layers.
 - Slick rendering. Map drawing is now done via Slick which means it's a lot faster and is properly double buffered.
 - General ui polish and refinements.
 - More complete rectangle support.
 - Renaming of elements.

<b>v0.3 added:</b>
 - Element groups. Elements can be categorised into different groups so it's easier to deal with large numbers of elements (eg. a group for all landscape tiles)
 - Expanded rectangle element attributes to include line and fill colour.
 - Rectangle instances in maps can now be resized with grab handles.
 - General UI polish (mostly improved point and rectangle element creation dialogs).

<b>v0.4 added:</b>
 - Polygon support. Right click a series of points to create and left click to finish. Select to edit and drag the control handles to add/remove points.
 - Grid changed to proper grid drawing.
 - Point elements can now have no image.
 - Map renaming.
 - General usability improvements.

<b>v0.5 added:</b>
 - Map zoom
 - Support for open polygons (polylines)
 - Recent projects list in file menu


<b>Notes:</b>
 - Theres to be an odd 3-4 second pause the first time you resize the map window. It seems to be due to some kind of SWT/AWT bridge initialisation but I'm not sure how to eliminate it at the moment.

Thanks

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Online moogie

JGO Knight


Medals: 13
Projects: 6
Exp: 10 years


Java games rock!


« Reply #1 - Posted 2007-09-24 01:08:57 »

looking pretty shmick Smiley

I'll have to remember it when i attempt to make another 2d game
Offline SwampChicken
« Reply #2 - Posted 2007-09-26 06:40:26 »

Looks good but not having tried it yet....can you layer your structure tiles over terrain tiles?
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #3 - Posted 2007-09-26 08:33:34 »

It depends on what you mean by "layer". You can certainly overlap the sprites as much as possible (I prefer not to use the term "tiles" since they're not locked to a grid) and to as much depth as you want. However there isn't explicit support for separate layers within maps. I suspect I'll end up adding it at some point though because it's suitably generic and can help keep things organised.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline keldon85

Senior Duke


Medals: 1



« Reply #4 - Posted 2007-09-26 22:01:05 »

Superb!

Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #5 - Posted 2007-10-15 21:02:25 »

I'm adding in proper layer support at the moment, so I'm open for suggestions on how the functionality should work. At the moment my plan is to base it on the layers you get in PSP and Photoshop, where you explicityly add and name layers as you see fit. Sprites will then be added to the currently selected layer.

Things I'm not sure on are:
1. Should you be able to select sprites not in the active layer? This would probably have to switch your active layer to whatever layer they live in, which could mean you end up switching layer without realising it. OTOH, only being able to select sprites in the current layer could be annoying when you want to move something out of the way.

2. I also need to add support for grids and snap-to-grid. Should these be set up per-layer or globally?

Comments?

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Online moogie

JGO Knight


Medals: 13
Projects: 6
Exp: 10 years


Java games rock!


« Reply #6 - Posted 2007-10-15 22:14:26 »

1. how about pressing ctrl and clicking will select a sprite in a different layer and switch active layers.
2. I would say by default globally but allow per layer support for different grid/snap options.
Offline kappa
« League of Dukes »

JGO Kernel


Medals: 78
Projects: 15


★★★★★


« Reply #7 - Posted 2007-10-16 11:09:50 »

could allow free movement of sprites and if the ctrl key is pressed (or any other key like shift/alt) then it automatically starts snapping to the grid when moved.
Offline uli

Senior Newbie




Java games rock!


« Reply #8 - Posted 2007-10-18 15:28:24 »

This is Eclipse RCP, isn't it? I'm just curious... is it more comfortable working with RCP than using AWT/Swing?
How about using SWT's OpenGL implementation for rendering the map? Maybe you could use much the same code for rendering and animation in both the editor and later in the game. You could also implement some kind of test mode in the editor then, which runs the game, or part of the game.
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #9 - Posted 2007-10-18 16:32:35 »

This is Eclipse RCP, isn't it? I'm just curious... is it more comfortable working with RCP than using AWT/Swing?

Yup, it's an RCP app. I'm currently finding it... mixed. For a start I havn't used SWT before, so thats a big change and is slowing me down in places. Eclipse has some really nice plug in development tools which make things easier, and you do get a certain amount of functionality for free (or at least cheap). For me that includes the rearrangable GUI, multiple open editors and the help to name the few more obvious ones. On the down side some stuff is harder than it should be (particularly handling enablement state for some actions) and the documentation could be better. Overall I'm pretty impressed with it though.

As for putting the game renderer in the editor - I've tried that an in practice it's not nearly as useful as it sounds. Plus it makes both the editor and game code all the more complicated. Plus the idea is to keep the editor independant of any particular game, so tieing it to one game doesn't make sense.

An OpenGL renderer is planned though, particularly since I want to add support for deformable quads and arbitrary polys (eg. for collision bounds). The main question is whether to use SWT's built-in OpenGL or whether to figure out how to embed a LWJGL context for display.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #10 - Posted 2008-05-01 12:42:03 »

Proper layers support is now in, which is nice, and I've been extending it to properly support rectangle elements as well as point elements.



Hopefully will post a new build up in the next few days after I iron out a few bugs with the scripting/export support.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #11 - Posted 2008-07-06 22:25:55 »

v0.2 is now available, with layers support, Slick rendering and builds for Mac and Linux.

<img src="http://www.triangularpixels.net/Analog/Images/version0.2.png"/>
[size=8pt](<a href="http://www.triangularpixels.net/Analog/Images/version0.2.png">full version</a>)[/size]

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #12 - Posted 2008-10-13 23:39:03 »

v0.3 is now available, with groups for elements (see element palette bottom-left), per-rectangle element outline and fill colours, and resizable rectangle elements in the actual map editor.

<img src="http://www.triangularpixels.net/Analog/Images/version0.3.png"/>
[size=8pt](<a href="http://www.triangularpixels.net/Analog/Images/version0.3.png">full version</a>)[/size]

Old project files will be automatically upgraded when they're opened in the new version.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline Eli Delventhal

JGO Kernel


Medals: 42
Projects: 11
Exp: 10 years


Game Engineer


« Reply #13 - Posted 2008-10-14 17:04:23 »

This looks really nice.

As for #1, why not make it like in photoshop where you can select a checkbox for "auto-select: layer / group" and if that's selected then you're able to click on stuff in a different layer?

See my work:
OTC Software
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #14 - Posted 2008-10-14 23:17:49 »

This looks really nice.

As for #1, why not make it like in photoshop where you can select a checkbox for "auto-select: layer / group" and if that's selected then you're able to click on stuff in a different layer?
Thanks.  Smiley

So far restricting editing to the active layer is working well - mostly it seems that I want to work on one layer at a time (eg. now I'm rearranging enemy positions and power-ups, I don't want to be selecting background tiles and collision geometry). But I'll keep that suggestion in mind for the future.

One thing I am considering is proper support for tile layers rather than just emulating it with sprites and snap-to-grid. There's some UI shortcuts that you can take when working with a tile grid (particularly "painting" of tiles which make it easier than doing things on a per-sprite basis and might be worth the extra coding effort.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline Knitter

Senior Newbie





« Reply #15 - Posted 2008-10-21 17:04:39 »

Linux link doesn't work, looking at the Builds folder it seems the file is not there.
If you upload the file I will try to give you some feedback on how it behaves under Ubuntu.

REJOICE! For very bad things are about to happen!
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #16 - Posted 2008-10-21 19:16:45 »

Ooops, you're right I must have missed that somehow - link should work now.

Don't know how well it'll work, since I think the SWT<->AWT bridge is a bit neglected on non-windows SWT platforms.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #17 - Posted 2008-11-07 01:22:54 »

Version 0.4 adds arbitrary polygon support (both filled and wireframe):


(full version)

A bundle of other fixes and general usability improvements as well. Also image-less point elements since Dragonene asked so nicely. Wink

Other builds and a revised test project shortly.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline pagantipaco

Senior Newbie





« Reply #18 - Posted 2008-11-18 15:34:57 »

Nice editor! I'm downloading it and trying to work with it. Only a question: what type of file manages the editor? (xml, csv, etc.).

Regards.
Paco.

--------------<br />Regards.<br />Paco.
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #19 - Posted 2008-11-18 15:41:21 »

The project and map files are stored as xml, but should you need another format (or simply a different xml structure) then the editor supports using custom export scripts and write out your data into whatever format you like (be it xml, csv or binary).

There's an example export script in the test project which should get you started.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline pagantipaco

Senior Newbie





« Reply #20 - Posted 2008-11-18 15:44:42 »

The project and map files are stored as xml, but should you need another format (or simply a different xml structure) then the editor supports using custom export scripts and write out your data into whatever format you like (be it xml, csv or binary).

There's an example export script in the test project which should get you started.

Thanks! I will test it and see if it can help me ;-)

--------------<br />Regards.<br />Paco.
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #21 - Posted 2008-11-30 12:32:30 »

Version 0.4.2 is out. This adds a "revert" option, and you can now remove a poly vert by right clicking. Also fixes a bug where maps would be saved when they shouldn't have been.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #22 - Posted 2009-02-06 18:04:41 »

The map editor is now <i>Analog</i>, complete with a <a href="http://triangularpixels.net/games/tools/analog/">proper website</a> and a shiny new release of version 0.5.

Here's the latest version, editing a <a href="http://triangularpixels.net/games/nights-4k/">NiGHTS4k</a> level:
<img src="http://www.triangularpixels.net/Analog/Images/version0.5.png" />
[size=8pt](<a href="http://www.triangularpixels.net/Analog/Images/version0.5.png">full version</a>)[/size]

<b>v0.5 adds:</b>
 - Map zoom
 - Support for open polygons (polylines)
 - Recent projects list in file menu

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

Longarmx (43 views)
2014-10-17 03:59:02

Norakomi (33 views)
2014-10-16 15:22:06

Norakomi (26 views)
2014-10-16 15:20:20

lcass (30 views)
2014-10-15 16:18:58

TehJavaDev (60 views)
2014-10-14 00:39:48

TehJavaDev (60 views)
2014-10-14 00:35:47

TehJavaDev (50 views)
2014-10-14 00:32:37

BurntPizza (66 views)
2014-10-11 23:24:42

BurntPizza (38 views)
2014-10-11 23:10:45

BurntPizza (80 views)
2014-10-11 22:30:10
Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!