Ignition X is now here!

Monkey Forums/Monkey Programming/Ignition X is now here!

Playniax(Posted 2014) [#1]
Hi,

Ignition X is now here!!!

So what's new in Ignition X? (since Ignition)

• Integrated physics engine box2d
• NEW tile system (written from scratch) with full support for tiled (orthogonal, isometric and isometric staggered)
• Color class
• timer class
• XML support
• Base 64 decoding/encoding

And most other Ignition X features

• Scene manager
• Screen transitions
• Advanced 2d engine (virtual resolutions, playfield windows, layers, sprites, shapes, tiles, parallax scrolling, zoom/rotate/fade screens, splitscreens and more!)
• Skinnable game GUI system (text, buttons, sliders, progress bars, scrollboxes, checkboxes, shapes and more!)
• Low level system GUI (built-in pause, continue and quit button but can be customized)
• Generic particle system
• Generic collision system
• Configuration file loader
• Storage system for saving game data
• Highscore manager
• Bitmap fonts
• Object pool system
• Loader screen
• Virtual joystick and joypad controls
• Pixel perfect collision module
• Special effects
• Sound effects library
• Scripting engine for loading level data
• Common code library (tons of extra commands and functions)
• Content manager
• Delta timer class
• Retro style string manipulation
• Simple image processing module (blur image, image to black and white and mask image)
• Support for R.U.B.E. (optional module sold separately)

(Ignition X comes with 175+ source code files, templates, documentation and examples)

Go to the demo page or buy your license now!

Bye,

Tony


Sammy(Posted 2014) [#2]
Congrats on the release! :)


tiresius(Posted 2014) [#3]
Once I'm done with my current project I'm going to jump into this head-first for my next !


Landon(Posted 2014) [#4]
That R.U.B.E. support is making this very attractive to me


Playniax(Posted 2014) [#5]
Version 2.02 is now up!

I have added the Casting method to both tile world creators and examples.on how to use this.

Casting makes it easy to replace the standard iTile class with a custom made one.


Xaron(Posted 2014) [#6]
Awesome! Thanks for that, will dig into it!

edit: Regarding isometric tiles, do you have an example for this as well?


DiabloV(Posted 2014) [#7]
nice !

have tou an exemple of : • NEW tile system isometric and isometric staggered ?


Playniax(Posted 2014) [#8]
1. Orthogonal demo

2. Isometric demo (Simple tile loader and tile removal example)

I will post some more demos soon!


DiabloV(Posted 2014) [#9]
ok thanks.

but... i d'ont see the source code ?


Playniax(Posted 2014) [#10]
The tile system is very easy to use.

Loading a tilemap:
world = New iTiledWorldCreator("tileobject.tmx")


Update a tilemap:
world.map.Update(cameraX, cameraY, Width, Height)


Render a tilemap:
world.map.Render(cameraX, cameraY, Width, Height)


You can use the SetTile and GetTile commands to set or 'grab' a tile.

Here is a demo of a tiny tile editor written in Ignition X and source code

And here is the source code of the tank demo:




DiabloV(Posted 2014) [#11]
ok, but in fact, what interests me is the code for the isometric.


Playniax(Posted 2014) [#12]
Here it is:




DiabloV(Posted 2014) [#13]
unable to compile :

i get error : memmory acces violation

"D:/DEV/MonkeyPro/bin/transcc_winnt" -target=Glfw_Game -config=Debug -run "D:/DEV/iso_test.monkey"
TRANS monkey compiler V1.56
Parsing...
Semanting...
Translating...
Building...
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/enable.o ../glfw/lib/enable.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/fullscreen.o ../glfw/lib/fullscreen.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/glext.o ../glfw/lib/glext.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/image.o ../glfw/lib/image.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/init.o ../glfw/lib/init.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/input.o ../glfw/lib/input.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/joystick.o ../glfw/lib/joystick.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/stream.o ../glfw/lib/stream.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/tga.o ../glfw/lib/tga.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/thread.o ../glfw/lib/thread.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/time.o ../glfw/lib/time.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/window.o ../glfw/lib/window.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/win32/win32_dllmain.o ../glfw/lib/win32/win32_dllmain.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/win32/win32_enable.o ../glfw/lib/win32/win32_enable.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/win32/win32_fullscreen.o ../glfw/lib/win32/win32_fullscreen.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/win32/win32_glext.o ../glfw/lib/win32/win32_glext.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/win32/win32_init.o ../glfw/lib/win32/win32_init.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/win32/win32_joystick.o ../glfw/lib/win32/win32_joystick.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/win32/win32_thread.o ../glfw/lib/win32/win32_thread.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/win32/win32_time.o ../glfw/lib/win32/win32_time.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../glfw/lib/win32/win32_window.o ../glfw/lib/win32/win32_window.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../stb/stb_image.o ../stb/stb_image.c
gcc -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../stb/stb_vorbis.o ../stb/stb_vorbis.c
g++ -I../glfw/include -I../glfw/lib -I../glfw/lib/win32 -I../openal/include -I../stb -c -o ../main.o ../main.cpp
../main.cpp:14627:5: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
../main.cpp:14673:5: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
../main.cpp:14722:6: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
g++ -Wl,--subsystem,windows -L../openal/libs/Win32 -o Debug/MonkeyGame ../glfw/lib/enable.o ../glfw/lib/fullscreen.o ../glfw/lib/glext.o ../glfw/lib/image.o ../glfw/lib/init.o ../glfw/lib/input.o ../glfw/lib/joystick.o ../glfw/lib/stream.o ../glfw/lib/tga.o ../glfw/lib/thread.o ../glfw/lib/time.o ../glfw/lib/window.o ../glfw/lib/win32/win32_dllmain.o ../glfw/lib/win32/win32_enable.o ../glfw/lib/win32/win32_fullscreen.o ../glfw/lib/win32/win32_glext.o ../glfw/lib/win32/win32_init.o ../glfw/lib/win32/win32_joystick.o ../glfw/lib/win32/win32_thread.o ../glfw/lib/win32/win32_time.o ../glfw/lib/win32/win32_window.o ../stb/stb_image.o ../stb/stb_vorbis.o ../main.o -lopengl32 -lOpenAL32 -lws2_32
Use cursor keys for scrolling.
Use left mouse / touch to test layer sprites on top of the map.
Exception in iXMLParser.ParseFile : File isotest2.tmx empty or does not exist
Exception in iXMLParser.ParseString : Something seriously wrong... no tags!
Monkey Runtime Error : Memory access violation
D:/DEV/MonkeyPro/modules/playniax/ignitionx/encoding/xml/xml.monkey<861>
D:/DEV/MonkeyPro/modules/playniax/ignitionx/tilesystem/importers/tiled/tiled.monkey<134>
D:/DEV/MonkeyPro/modules/playniax/ignitionx/tilesystem/importers/tiled/tiled.monkey<120>
D:/DEV/MonkeyPro/modules/playniax/ignitionx/tilesystem/worldcreators/tiled/tiled.monkey<63>
D:/DEV/iso_test.monkey<62>
D:/DEV/MonkeyPro/modules/playniax/ignitionx/framework/app.monkey<558>
D:/DEV/MonkeyPro/modules/playniax/ignitionx/framework/app.monkey<358>
D:/DEV/MonkeyPro/modules/playniax/ignitionx/engine/components/engine.monkey<13>
D:/DEV/iso_test.monkey<37>
D:/DEV/iso_test.monkey<27>
D:/DEV/MonkeyPro/modules/mojo/app.monkey<43>

STOPPED


Playniax(Posted 2014) [#14]
Can you give me a little more data to go on?

- Are you using one of our sample tile maps or one of your own?
- What monkey and Ignition version?
- What OS?
- In what format did you save your map? Base64(uncompressed), XML, CSV?

Or send me a copy of the project so I can test it :)


DiabloV(Posted 2014) [#15]
monkey latest version
ignition latest version
win 7 64

I used the source given above in the post.

I do not have a map?


MikeHart(Posted 2014) [#16]
Trans v1.56 isn't the latest version, or?


Trez(Posted 2014) [#17]
If you look at the errors you can see Exception in iXMLParser.ParseFile : File isotest2.tmx empty or does not exist , so it cant load the tmx file from the data folder.

Stuart


Playniax(Posted 2014) [#18]
Try example_01_load_a_tile_map.monkey in the bananas\playniax\ignitionx\examples_03_the_engine\examples_04_advanced_stuff\examples_13_tiles\examples_01_world_creators\examples_01_tiled folder.

It looks like you are missing the data folder.
You need the assets too!


DiabloV(Posted 2014) [#19]
Trans v1.56 isn't the latest version, or? -> how do I know?

Try example_01_load_a_tile_map.monkey in the bananas\playniax\ignitionx\examples_03_the_engine\examples_04_advanced_stuff\examples_13_tiles\examples_01_world_creators\examples_01_tiled folder.

It looks like you are missing the data folder.
You need the assets too!

-> ok it works !!


how can i update Trans v1.56 ??


Playniax(Posted 2014) [#20]
I am using MonkeyPro 79e that says TRANS monkey compiler V1.72 :)


DiabloV(Posted 2014) [#21]
i have MonkeyPro 79e.

so how can I have the latest version of trans ?


MikeHart(Posted 2014) [#22]
Maybe you use a link to Ted, with an old version on your harddrive.


Playniax(Posted 2014) [#23]
Or maybe Jungle IDE not using the right path (to an older version).


DiabloV(Posted 2014) [#24]
The shortcuts ted was the correct one, but I still deleted and recreated, the it's ok.

!


DiabloV(Posted 2014) [#25]
by cons, I would be a buyer for a source code for a shift in character and how to handle collisions with the isometric scene.

:)


dooz(Posted 2014) [#26]
I had the same problem. The CONFIG.MONKEY file for each platform only allows for several TEXT file types, e.g.

#TEXT_FILES="*.txt|*.xml|*.json"

Add tmx to it, i.e.

#TEXT_FILES="*.txt|*.xml|*.json|*.tmx"

Clean your build folder and rebuild. It will now copy the tmx files over to the data directory.


dooz(Posted 2014) [#27]
Hi Playniax,

I'm trying to use you iTiled class to load a tmx file. I used the same code and it works fine, i.e. loads and displays. However, it has an issue with the very last tile (bottom-right).

If have a tile field of 32 x 24 tiles. Tiled outputs a file with 24 data lines with 32 items on each line. Every line except the last ends in a comma, i.e. all lines are concatenated, with the last line not needing the comma. When I load with the iTiled loader, it seems to ignore the last tile. If you add a comma to the end of the last line, it works file, but Tiled does not like a hanging comma, it thinks the file is corrupt.

I know this code is experimental, but it is very useful. Can you please take a look?


dooz(Posted 2014) [#28]
I figured out the problem, you have a glitch in your tinyxml file.

In the Descent method, there is a line:

element=iMid(element,beginPointer,e-beginPointer)

It needs to be the following with the extra +1

element=iMid(element,beginPointer,e-beginPointer+1)


Playniax(Posted 2014) [#29]
Hi,

I will have a look at this but you are not using the latest version of Ignition am I right?
You are using Ignition, not Ignition X
If you download the latest version you should not have this problem.
The Ignition X version with tiled support has full support for tiled (with the exception op zipped maps) and is no longer 'experimental'.

Tony


dooz(Posted 2014) [#30]
I was running ignitionx 1.08. Now upgrading to 2.02


dooz(Posted 2014) [#31]
I've just upgraded and got the tile stuff working.

I noticed that the timelinefx examples don't compile with missing SetUpdateFrequency


dooz(Posted 2014) [#32]
Also. The tile stuff doesn't work nicely when virtual resolution is on. You get line artefacts between each tile when scrolling.
It appears to be drawing all the tiles independently, rather than as a group to a buffer then to the screen.


Playniax(Posted 2014) [#33]
This not a Monkey or Ignition X limitation!
It is target specific and various topics can be found on the subject on the forums.
On some targets you can solve this by disabling image filtering, round positions to integers and/or not use virtual resolutions.
But that would be far from ideal or even quite useless.

You can solve this by turning on Ignition X padding.
This also means the tiles in the bitmap need a border of 1 extra pixel.
The jungle demo in the demos folder is doing this and should not show any artefacts.

Example of how to turn on padding:

tileWorldCreator=New iTiledWorldCreator()
tileWorldCreator.Padding(True,True)
tileWorldCreator.Load("testmap2.tmx")


Keep in mind that not all Ignition demos are written with all targets in mind so in some demos where padding is not implemented you will see these artefacts.


dooz(Posted 2014) [#34]
I tried the padding. I didn't really get why you have it, if you also have margin and spacing - don't that do the same thing?

Anyhow, I'm using a virtual res of 2048x1536, and a tmx file with margin=1 and spacing=2 (and gfx file appropriately spaced). When I turn on padding, I get lines drawing on the screen between tiles. If I turn-off padding, I still get artefacts.

The jungle demo uses your format, which also has margin and spacing with padding. Can you give me an example using a tmx file and the padding?


dooz(Posted 2014) [#35]
This is only on HTML5 target by the way. The iOS target works fine.


Trez(Posted 2014) [#36]
Margin and Spacing are used for the tile sheet layout and in some cases it is required to have a border between images ( no so much on modern systems now ) padding is different and may or may not be required on a target platform basis. This is down to the sub pixel rendering and how the images get draw and because of the way tile maps are draw it becomes very obvious ( lines / artefacts in the grid ). In html5 you can probably prove this by rounding the draw position of the map ( round the camera ) to the nearest pixel and the lines will go away. I did this in the tank tile demo but it does remove the super smooth scroll, but for the tank demo the negative effect seemed to work ok.

So padding adds addition pixel data to the original tile 1 or 2 pixels some developers will simply duplicate the edge pixels out to achieve the desired padding. Tiled does not handle padded tiles so you would need to use the spacing and margin to achieve this. This would allow for the extra padding pixel data to be present in the tile set but allow tiled to grab the tiles without the padding pixels.

I will try and put together a simple example over the weekend.

Stuart


dooz(Posted 2014) [#37]
Hey thanks. Which tank demo? With Ignition X, or somewhere else?


Playniax(Posted 2014) [#38]
The tank demo can be seen here http://playniax.com/showcase/tank/demo.html

Source code will be released soon.


Playniax(Posted 2014) [#39]
Hi,

I have created a little experimental tool called tileset padder and it can add the extra pixel to the border of each tile for you automatically.

Only for windows but the BlitzMax source is included.

You can download it here

Known limitations:

- Tiles in the source image file must be positioned without spacing and margin.
- Only can convert image files where the tiles are the same width as height.
- Probably best suited for orthogonal tile sets.

Bye,

Tony


dooz(Posted 2014) [#40]
Hi Tony, Thanks for this. I have already written a tool to do this, but I can't seem to get the right combination of spacing, padding and using the Padding method.

I have 1 pixel around the tiles and 2 pixels between them, just like your tool does.

I have created it in Tiled format, e.g.:

<?xml version="1.0" encoding="UTF-8"?>
<map version="1.0" orientation="orthogonal" width="32" height="24" tilewidth="64" tileheight="64">
<tileset firstgid="1" name="tiles" tilewidth="64" tileheight="64" margin="1" spacing="2">
<image source="tiles.png" width="320" height="320"/>
</tileset>
<layer name="Page1" width="32" height="24">
<data encoding="csv">

If I don't use the Padding(True, True) method call, I get a perfect render on start up, but as soon as I scroll, I get flashing black lines. Occasionally, it stops with the black lines showing.

If I use Padding(True, True), I get solid black lines between tiles.

Any other combination, i.e. changing tilewidth and tileheight to 66, or removing spacing and margin, ends up with really thick black lines.


dooz(Posted 2014) [#41]
Do you have any examples that are done with Tiled?


Playniax(Posted 2014) [#42]
I will make one and post it later...


Playniax(Posted 2014) [#43]
And here it is:

http://forum.ignitionxlive.com/viewtopic.php?f=18&t=465


dooz(Posted 2014) [#44]
Jackpot.

I must have somehow not used the output from your tileset padder tool.

Thanks for you help!


DiabloV(Posted 2014) [#45]
I would be a buyer for a source code for a shift in character and how to handle collisions with the isometric scene.

:)


Playniax(Posted 2014) [#46]
Do you mean something like this?

http://playniax.com/showcase/isosorter/demo.html

It's a demo that will be released soon including source code with Ignition X.

Use cursor keys to control the character...


DiabloV(Posted 2014) [#47]
yes is this.


Hezkore(Posted 2014) [#48]
Am I the only one that think Isometric games are best played using the mouse?
https://dl.dropboxusercontent.com/u/2842751/isoconcept/MonkeyGame.html


DiabloV(Posted 2014) [#49]
NICE !!

wath engine ? ignition X ?


Hezkore(Posted 2014) [#50]
No engine, just some concept stuff I made.


Raul(Posted 2014) [#51]
@Hezkore: your small demo is amazing.

@All: IgnitionX is the best addon for MonkeyX. I am using it to make a commercial game these days (even though I had a license from a few months) and I can say, that for a not very experienced guy this is easy to use and understand.


dooz(Posted 2014) [#52]
Do you have an example (code) for doing orthogonal collision between sprites and the map?


Playniax(Posted 2014) [#53]
Thanks Raul!

@Hezkore: Nice! I agree, it plays better with a mouse (or touch).

The boulderdash demo shows collisions between bombs and diamonds in an ortho map: http://playniax.com/showcase/boulderdash/demo.html

The collision code looks something like this:

Method CheckTiles:Int(x:Int=0,y:Int=0)

	Local tile:iTile=gameScene.tileMap.GetTile(0,Self.x+x,Self.y+y)
	If tile And tile.TileSetTile.Gid()=6
			' ...Do explosion stuff
	End If

End Method


So it tries to get the tile from tilelayer 0 at position x,y where in this case x,y is the player.
If there is a tile then it is seen as a collision.
Now for isometric maps (like the demo before) it's exacly the same method!
In most cases that is enough but the collision can be made more precise by doing some extra checks after a tile is found if you need more accurate collisions.


Playniax(Posted 2014) [#54]
Version 2.04 is now up!

• Added WorldX(), WorldY(), WorldRotation(), WorldScaleX(), WorldScaleY() to the layer objects.

• Fixed a nasty overload problem with AnimationLoop, AnimationPingPong, AnimationOnce, AnimationSequence.

• Shortened the folder and file names of the bananas to prevent possible compile errors.


SpaceAce(Posted 2016) [#55]
Edit: I just realized the last post in this thread previous to mine was about Ignition 2.04. To be clear, I am using 2.09.

I encountered some weirdness while using tile maps. Using the image and tile definitions from boukderdash, I noticed that GetTile().X(), .Y(), .Width(), and .Height() are returning unexpected results.

First off, the tile at [0, 0] reports its position as 0, 34. It took me a bit to figure out that the tile origin is bottom left (anyway, I think that's what's going on). That's a little confusing when the screen origin is top left. Secondly, as you can see, the tile reports its y coordinate as 34. However, it reports its height as 32. So, if I try to draw at Y() - Height(), I am drawing two pixels below the top of the tile. Even more odd, is that tiles in rows > 1 report their Ys in increments of 32. So, while [0, 0] is at 0, 34, [0, 1] is at 0, 66; [0, 2] is at 0, 98, and so on. It is only the tiles in row 0 that return a multiple of 34 for Y().

The definition file gives the tiles a height and width of 34. I don't understand where 32 is coming from (I tried changing the consts in boukderdash from 32 to 34, but all that did was break collision detection), or why tiles in the top row report a Y() of 34, rather than 32.


Playniax(Posted 2016) [#56]
This is because the boulderdash demo is using padding. The tile images are 2 pixels bigger because of this (but not the tiles, they are still 32). It's a trick to avoid artefacts that the happens when you use image filtering (enabled by default). The tile origin is bottom left because of the way the tiles are drawn and sorted in iso mode. I was looking through the Ignition X docs and I was sure I did a piece about it by I can't seem to find it. So I will restore that. In the mean time you can contact me on our forums (or skype: playniax) if you have a question.


Playniax(Posted 2016) [#57]
I am very busy at the moment porting Pyro to Monkey 2! Monkey 2 is not finished yet but already AWESOME! ( Please support Mark here: https://www.patreon.com/monkey2?ty=h ) And I am also working on an update for Ignition X (long overdue!). The next update will have the simple pathfinder class (the one from Pyro), a pacman-ish demo, tile engine improvements and bug fixxes.

Pacman / pathfinder demo can be found here: http://www.playniax.com/sourcecode/pyro/index.html


Playniax(Posted 2016) [#58]
Ignition X V2.10 is up!

• Fixed sliders OnRelease issues
• Remove iOrientationTest and replaced with iRotateDevice() because the html5 version got broken
• Fixed some small iVec2 issues
• Added simple pathfinder module
• Added Pacman-ish demo that uses the pathfinder
• Some improvements on getting / setting / removing tiles in engine mode


Pierrou(Posted 2016) [#59]
Thanks a lot for keeping IgnitionX updated! I like Mojo2/Pyro and backed Monkey 2 and all, but my current "big" project is using Monkey 1/Mojo 1 + Ignition X, it's far from finished and it's nice to see the tools are still kept alive by theirs authors... (has anyone heard from Ziggy lately?)


Playniax(Posted 2016) [#60]
Thanks a lot for keeping IgnitionX updated!

No problem.
I am tempted to give Ignition X an extra boost / overhaul when I am done with porting Pyro to Monkey 2 because of the Mojo1 targets but I will have to wait and see if there will still be a demand. Ignition X is still outselling Pyro at the moment!

has anyone heard from Ziggy lately?

Yes, he is very busy at the moment with some non-monkey stuff but he is currently updating Monkey Studio with the latest Ignition X

Hey Ziggy, show some sign of life here! :)


ziggy(Posted 2016) [#61]
Sorry for being a bit out lately!

I'm glad to anounce a new update for Monkey X studio.

This is the changelog:

Monkey X Studio 16.06-22-A
* Updated compiler to latest Monkey X compiler v85e
* Updated to latest Ignition X Update 2.10
* Fixed GUI rendering problems on font selection on settings window
* Background compiler could cause an unexpected exception when a solution was being closed and background compilation was still being performed
* Removed internal debug messages from the Jungle Ide console window
* Improved auto completion of language specific keywords in a way they're much more case insensitive friendly


Enjoy!


muruba(Posted 2016) [#62]
There is a few 404 demo links from Ignition-X help page under "ignition X main features" v2.10:

http://playniax.com/demos/vjoy/html5/demo.html
http://playniax.com/demos/tiles/html5/demo.html


Playniax(Posted 2016) [#63]
Thank you, I will check it out and fix it.


muruba(Posted 2016) [#64]
Cheers.

I am wondering if it would be a good idea to have automatic detection of user locale, so we could use iLanguage without specifying the language, falling back to the default locale specified?

Existing:
New iLanguage( "dutch.txt" ) ' Create and load the desired language file ( replace dutch.txt for english.txt if you want to load english )

and a new one:
New iLanguage("my-app-strings", NL) ' Detect user locale and say for english load "my-app-strings-en.txt" if locale is not available fall back to "my-app-strings-nl.txt"

Something similar to java resource bundle mechanism... https://docs.oracle.com/javase/7/docs/api/java/util/ResourceBundle.html

Whadday think?


Playniax(Posted 2016) [#65]
I will think about it...


RedGTurtlepa(Posted 2016) [#66]
Do you need Ignition X if you already have Pyro? Does it have anything over Pyro at all? The 99$ package deal with Jungle IDE seems tempting but using Pyro with a cheaper IDE seems like a better deal if theres no point.