Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

AppGameKit Classic Chat / JugiMap - an editor for 2D maps

Author
Message
Jugival
1
Years of Service
User Offline
Joined: 28th Feb 2018
Location:
Posted: 5th Aug 2018 14:54
I am developing an application called JugiMap which is an editor for designing 2D tile based game levels. Several years ago I did some 2d games for which I coded my own map editor. Then I decided to turn that editor into a proper application, expand its possibilities and make it more user friendly. The result is a tool called JugiMap.

Some of the JugiMap features are:
- layers of various type (sprite, tile, vector , static layers)
- multisprite and multilayer brush
- custom parameters for all map elements

The application is currently in Beta state. It still lacks some important features but in general it offer quite a lot of possibilities.
An important thing is that includes code for developers - loaders and examples for using exported maps, both for AppGameKit Tier 1 and Tier 2.
Here is a small demo map supplied with the application, coded in Tier 1 and exported to html 5: DemoMap
One observation - the demo runs (on my i5 with integrated graphics) with smooth 60fps in Firefox and Edge but not in Chrome where it lingers a bit above 50fps!

You can download JugiMap here: http:://jugimap.com

A screenshot:
Green7
13
Years of Service
User Offline
Joined: 23rd Nov 2005
Location: Switzerland
Posted: 6th Aug 2018 14:42
Nice looking Editor!
Phaelax
DBPro Master
16
Years of Service
User Offline
Joined: 16th Apr 2003
Location: Metropia
Posted: 6th Aug 2018 15:00
From what I can gather, you can set paths for platforms to move. Does it support trigger events or is it set up on a timer?
Tiled TMX Importer V.2
XML Parser V.2
Base64 Encoder/Decoder
Purple Token - Free online hi-score database
Legend of Zelda

"I like offending people, because I think people who get offended should be offended." - Linus Torvalds
puzzler2018
User Banned
Posted: 6th Aug 2018 19:42
Did you create this in AppGameKit T1 or T2 or A.N Other

Looks good if T1 - nice looking menus and Ribbon style icons.

Good works all round
Jugival
1
Years of Service
User Offline
Joined: 28th Feb 2018
Location:
Posted: 7th Aug 2018 08:03
@ Phaelax
Neither. This application is not a game editor but a map editor. For the demo I "connected" sprites with their paths via custom parameters, the rest is done in the engine (the source code is included). It would be possible to support more specific game related behaviors via predefined parameters but then I would need to provide a dedicated game framework for it. Maybe that is a way to go in the future but for now my goal is to make JugiMap "just" a very good map editor.

@puzzler2018
It was coded in c++ using Qt framework.
JugiMap - a map editor
Tumira
3
Years of Service
User Offline
Joined: 28th Oct 2015
Location:
Posted: 8th Aug 2018 04:32
TGC should hire you to replace current Visual Editor DLC with this and more...
Jugival
1
Years of Service
User Offline
Joined: 28th Feb 2018
Location:
Posted: 6th Oct 2018 16:28 Edited at: 6th Oct 2018 16:44
A new version of JugiMap is finally available. Some new features:
- Sprite transformations
- Sprite sheet generating tool
- Support for Spine objects
JugiMap supports the latest Spine version by using the code made available by Spine developers. Unfortunately it looks they tend to change their format from time to time as the demo spine objects supplied with the application doesn't load correctly in AppGameKit (missing texture parts).
- Loading and exporting maps in Tiled TMX format
This conversion obviously includes only features and map elements which are supported by both applications. In many cases it provide good enough results if somebody need to migrate a project. Here is a screenshot of a Tiled demo map in JugiMap.



Do you have any suggestion about other third party graphic objects or formats which could be useful in JugiMap? I know of Spriter objects and plan to support them.

Get JugiMap here: http:://jugimap.com


eh... it looks image and link tags are broken (at least here)
JugiMap - a map editor

Attachments

Login to view attachments
fubarpk
Moderator
14
Years of Service
User Offline
Joined: 11th Jan 2005
Location: Adelaide
Posted: 9th Oct 2018 20:13
Looks great jugival
fubar
Xaby
FPSC Reloaded TGC Backer
12
Years of Service
User Offline
Joined: 17th Apr 2007
Location: Berlin
Posted: 9th Oct 2018 20:17
It's very impressive.

Spriter and Spine would be really nice. Also be able to mishmash them. The problem I see, is AGK2 itself not using the latest LIBs for Spine.
But maybe there could be a workaround when using "Tier 2" C# or so?

A suggestion, but also maybe a complete sideproject, would be

- an particle editor (like putting sprites on a tween, also an emitter could be there)
- time line for "cutscenes" / scenes. At this moment, I guess, it could be done with waypoints in some way or a camera movement to a completly other position where the action would happen

Or maybe an example. For testing, some gamepad / joypad input would be nice.

Really nice would be a "preview" or animation of Sprites in the editor, but I guess, like the particle effects, that would mean, that you would have to reinvent some of the AGK2 commands, I guess.


blink0k
AGK Developer
Gold Codemaster
6
Years of Service
User Offline
Joined: 22nd Feb 2013
Location: the land of oz
Posted: 10th Oct 2018 00:25
Looks super cool.
Great tileset btw
1. It would be cool if it recognized overlapping tiles and combined them and make a new tile (remembering the combination so you only had one image for multiple instances). That way you would remove transparency from the background
Jugival
1
Years of Service
User Offline
Joined: 28th Feb 2018
Location:
Posted: 11th Oct 2018 09:02
@blink0k

That is something I was already thinking about. Tile layers could be merged and new unique tiles stored in a new tile sheet. This would reduce the number of drawn sprites and improve frame rate on some devices. Ok, the memory usage would increase but that is usually not a problem with 2d games.
JugiMap - a map editor
Phaelax
DBPro Master
16
Years of Service
User Offline
Joined: 16th Apr 2003
Location: Metropia
Posted: 11th Oct 2018 13:39
The memory would only increase in your editor as it builds the merged sprite sheet. It shouldn't increase in the game unless you're still loading the original sprite sheets as well.
Tiled TMX Importer V.2
XML Parser V.2
Base64 Encoder/Decoder
Purple Token - Free online hi-score database
Legend of Zelda

"I like offending people, because I think people who get offended should be offended." - Linus Torvalds
Jugival
1
Years of Service
User Offline
Joined: 28th Feb 2018
Location:
Posted: 11th Oct 2018 17:08
Indeed, it could be done that all used tiles on a map are saved into a new sheet and then only that sheet would be used. But then would a game with more levels would require its own tile sheet for every level... hmm
JugiMap - a map editor
blink0k
AGK Developer
Gold Codemaster
6
Years of Service
User Offline
Joined: 22nd Feb 2013
Location: the land of oz
Posted: 11th Oct 2018 20:22 Edited at: 11th Oct 2018 20:23
I don't think having more tiles would outweigh performance increase at all. Especially if your using a sprite sheet.
Removing transparency would be a huge boost along with reducing the number of sprites drawn
Xaby
FPSC Reloaded TGC Backer
12
Years of Service
User Offline
Joined: 17th Apr 2007
Location: Berlin
Posted: 14th Oct 2018 18:32 Edited at: 14th Oct 2018 18:34
About using tiles and re-using them for saving space

We have not these restrictions, but some ideas could be used as well

Jugival
1
Years of Service
User Offline
Joined: 28th Feb 2018
Location:
Posted: 14th Apr 2019 16:28 Edited at: 14th Apr 2019 16:32
Ok, that took a long time but here it is - a new version of JugiMap.

The biggest improvements are:

1) Source graphics management

Source graphics management has been overhauled with new set of tools for editing source sprites properties like frames, handle point, collision shapes and custom properties. All tools allow bulk editing of all source sprites within a set with subtools for quickly copying properties among them.
The screenshot below show the collision editing tools. Standard vector tools are used for creating and editing shapes.




2) Composed sprites

New sprite kind in JugiMap are composed sprites. A composed sprite is a group of sprites which behave like one sprite. Child sprites of a composed sprite are oriented in its coordinate system. A composed sprite can also be used as a child of another composed sprite.


3) Sprite frame animation

You can now equip multiframe sprites with frame animations. A tool for this task is the sprite frame animation editor which features various options for setting up animations.




4) JugiMap framework

As more complex things are being added to the editor I acknowledged the need for something which would help integrating maps created in JugiMap into actual game development projects. That 'something' is JugiMap framework.

Features:
- Transparent map structure: all connections between map elements are provided and the developer can access anything within a map. The framework offer plenty of functions for finding and collecting elements based on their properties.
- JugiMap sprites wrap AppGameKit sprites and update them when required.
- A dedicated frame animation player is available for animating sprites. It supports all features from the editor and takes care of things like different collision shapes per frames.

Integration with game engine:
- Generic and open map structure allow fairly easy connecting with game specific code. A demo example is provided which show how to use use game objects (entities) to control sprites .
- Existing game engines which deals with AppGameKit sprites in their own way can still use the framework maps just to 'grab' AppGameKit sprites and nothing more.

JugiMap framework is available for AppGameKit Tier 1 and AppGameKit Tier 2.


----------------------------------
JugiMap is currently a free to use tool. In future it will become a paid application with an 'indie-friendly' price.

You can download JugiMap here: http://jugimap.com
JugiMap - a map editor

Attachments

Login to view attachments
Imagination Engineer
4
Years of Service
User Offline
Joined: 30th May 2014
Location: Shropshire, United Kingdom
Posted: 15th Apr 2019 16:48
Super coolio delalio.
Win 10 Pro - AMD RYZEN 7 Octacore 3.8ghz - 32GB DDR4 - RTX 2070 8GB
Freddix
AGK Developer
16
Years of Service
User Offline
Joined: 19th Sep 2002
Location: France
Posted: 15th Apr 2019 20:06
Your editor seems to be really cool !
Bored of the Rings
14
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Middle Earth
Posted: 15th Apr 2019 20:23
good work, nice editor
Professional Programmer, languages: SAS, C++, SQL, PL-SQL, DBPro, Purebasic, JavaScript, others
Xaby
FPSC Reloaded TGC Backer
12
Years of Service
User Offline
Joined: 17th Apr 2007
Location: Berlin
Posted: 18th Apr 2019 19:51
@Jugival

May I ask, how you would compare it to "Tiled"? Which advantages has JugiMap over "Tiled" and maybe which features are missing?

I am also interested in very big maps, maybe like "Ori and the blind forrest" or "Rayman Legends". Many layers, big Sprites, also Spine/Spriter/Skeleton animations ... how does the asset loading work?

Or would I split big levels in smaller "levels" and how does they load? Can I choose, which asstes have to be deleted from the memory in one sector maybe and which assets could stay, because they are in use in the next area e.g.

I have no idea, how I would handle a propper texture / sprite stream. And I think, that "Tiled" also have not such thing integrated. I know, that "Game Maker Studio" has some problems with loading. And also Unity. Because they load every texture / sprite needed at the beginning and GMS only handles PNG, so the "Rooms" have to be small, or with only some layers of objects / tiles.

I also wonder, how physics can slow down lower spec hardware.

I know, a lot of questions. I have no answers. Did you test your engine and levels on lower spec Android devices maybe? Great Editor btw.
Jugival
1
Years of Service
User Offline
Joined: 28th Feb 2018
Location:
Posted: 19th Apr 2019 15:40
@Xaby
I will leave comparisons with Tiled to the users. I would suggest to try Tiled, JugiMap and other editors for yourself and pick one you prefer and meets most of your requirements for the developed game.

Assets loading is part of the game engine. JugiMap is a map editor, not a game editor. It however includes a simple framework for integrating created maps with AppGameKit based game engines. Things like streaming and physics are not included in the framework. But you can still easily set individual sprites as physics objects for the AppGameKit physics system. Streaming is more complicated. I think loading and deleting AppGameKit image and sprites resources depending on the 'camera' map position should not be hard to achieve but it wouldn't be seamless. AppGameKit does not support threads so loading stuff in 'background' as you play is not possible.
JugiMap - a map editor
Xaby
FPSC Reloaded TGC Backer
12
Years of Service
User Offline
Joined: 17th Apr 2007
Location: Berlin
Posted: 22nd Apr 2019 07:50
@Jugival,

thx for the answer. I was also thinking, how I would realize "streaming" in AppGameKit, and thought about, that I only have a part of one frame to load complete textures, and I know, that some image-loading for single images would take more time than only a fraction of a frame-time.

Videoplayback is possible or music playback. Maybe I could realize that with some kind of check points, gates in the level design or find some other commands, that could run in the background and suggest, that the game is still normaly running

Login to post a reply

Server time is: 2019-05-24 03:53:09
Your offset time is: 2019-05-24 03:53:09