Jump to content


Photo

FrozenNova - A GameMaker to Java Converter


  • This topic is locked This topic is locked
47 replies to this topic

#1 Mayhem Games

Mayhem Games

    Proud Kiwi

  • GMC Member
  • 955 posts
  • Version:GM:Studio

Posted 03 June 2011 - 07:10 AM

Hello GMC

FrozenNova is a GMK to Java converter i have been working on for the last 2 weeks. I have become quite busy with school recently so i have decided to release this so others can extend on it. I might pick it up again at some point or even rewrite it but currently its not in development. You will need the Java Development Kit for this to work as well as a system variable pointing to the JDK so that it runs from the CMD. Does also include the Flash library but was never implemented.

To make it even easier there is just one script that handles the conversion of GML to Java, the rest doesn't need to be modified to add more funtions.

Screenshot
Posted Image

Working
- Single Image Sprites
- Animated Sprites
- Simple Drawing commands
- Simple Keyboard support
- Room Size and Background colour
- Few Maths commands (irandom, irandomrange, Mod, Cos/Sin/Tan)
- Create, Step and Draw Events
** Please see the example for more information

Things that need to be added/fixed
- Room Captions
- Multiple Rooms
- Collisions
- Mouse Support
- Sound
- Backgrounds
- LAYERS (Depth)
- Font Fix

Download - Including Source
Box.net

Unfortanatly version 2 was lost when my laptop was sent into Toshiba (Why they needed to reformat when they were replacing the fan I will never know :confused: )

Anyway, Since GM:HTML5 has come out I have stopped developing FrozenNova. I searched my external HD and found a more updated version then the one posted here with backgrounds, applet support, a plugin system and a general clean up (Link).

IF I was to start development again I would need help as the version above is ready to go, It just needs plugins to be written for each GM command (The base is mostly finished)

If someone PM's me and is willing to help I will consider restarting the project :tongue:


Thanks
Mayhem Games

Edited by Mayhem Games, 07 December 2011 - 03:04 PM.

  • 3

#2 ihato

ihato

    Destroyed

  • Banned Users
  • 739 posts
  • Version:GM8

Posted 05 June 2011 - 07:25 PM

Wow! great! This is an awsome thing!

stupid question: Can this be played in cell phones?

#3 Mayhem Games

Mayhem Games

    Proud Kiwi

  • GMC Member
  • 955 posts
  • Version:GM:Studio

Posted 05 June 2011 - 10:26 PM

Wow! great! This is an awsome thing!stupid question: Can this be played in cell phones?

Thanks for the feedback :)
The java engine I used supports J2ME and Android, I never implemented J2ME but i did do a test with Android. I decided not to add it to this release as there is alot of manual work you have to do as well. Once i get the Android script fixed and working like it should i will add it to the next release.
  • 0

#4 Candlejack

Candlejack

    GMC Member

  • New Member
  • 96 posts

Posted 10 June 2011 - 07:40 PM

WOW. Please add mouse support :) This is insanely useful!!

Good job 10/10
  • 0

#5 Mayhem Games

Mayhem Games

    Proud Kiwi

  • GMC Member
  • 955 posts
  • Version:GM:Studio

Posted 11 June 2011 - 12:41 PM

WOW. Please add mouse support :) This is insanely useful!!Good job 10/10

I have mouse support working sort of working on my current build. Clicking on an object sometimes doesn't work. Many things still to fix but will be in next version. :)
  • 0

#6 YellowAfterlife

YellowAfterlife

    GMC Member

  • Global Moderators
  • 3493 posts
  • Version:GM:Studio

Posted 11 June 2011 - 10:25 PM

May I crush your dreams now? Thank you.

There is no real point in developing GameMaker-Java converter as of today.
Why? See below:
  • It'll take pretty long.
    Game Maker has over 1200 functions (excluding the undocumented ones).
    Even if we shall assume that you will be making one function per 10 minutes (which is already impossible, considering the fact that you need to check if they work as intended), it'll take you 12000 minutes = 200 hours = 8.3 days of straight work. And you do not come from school\college\(insert a place where you spend half of day), sit down, and work only on your grand project till you fall asleep. Oh, yes, there is also life to live too.
  • You are extremely likely to give up.
    As you may know or not, you are far not first person to attempt on making a GameMaker-Java converter. All of ones do the same mistakes. They start from something basic (i.e. all GameMaker drawing operations are extremely easy to do in nearly any language with canvas-styled drawing support) and later crash into a wall of something harder.
    Some of these walls:
    • Collisions. Apart from fact that you need to do box, ellipse, and pixel mask collisions (which need to work rather fast by the way), there is such feature as rotation and scaling. Rotated & scaled pixel mask is not a rare thing in GameMaker games. And don't forget that it must function same as in GameMaker, or your converter will only grant free frustration to people. They might even blame you for doing a bad job later.
    • Data structures and path finding. While first will just take you long time to do correctly (hint: all GameMaker ds_ functions support storing strings and numbers in the same structure, and even sorting one), second is rather complicated in the context of existing pixel-perfect collision engine.
    • execute_string, events, and other dynamic behaviour modifications. I believe you do not need additional information about these.
    • Specifics of GM. Many things don't work exactly like you could expect them to work (i.e. round() function), and GameMaker games rely on that way. Do something incorrectly - and converted games will not work properly.
  • You will get 'pushed out' YoYoGames later anyway.
    As many know, YoYoGames are developing a 'automatic' HTML5 exporter for GameMaker, which is warranted to work better and faster than something you'll be able to make in next ~3-4 years.
    GameMakerStudio is coming up later, but shall shatter point of making a Android exporter.
What you could do instead:
  • GM-Java ME converter
    Since YoYoGames is unlikely to be ever interested in porting games to non-Apple cellphones, this may make sense.
    Of course it'll be much harder to implement a fast & properly working engine in restricted micro edition, but at least you won't waste your time as much this way.
  • Your very own framework (or even IDE)
    Frameworks are fun to do, exclude the possibility of getting into a trouble with original developers, and increase your overall level of awesomeness. See FlashPunk for reference.
  • Game. Incredibly, in our age of silly technologies, games are still a thing to play. Especially the good ones, because there are not many of these coming up.
I apologise if this post looks messed up a bit. I had to leave while half-way done with it.
  • 1

#7 slam drago

slam drago

    The slam drag

  • New Member
  • 422 posts
  • Version:GM:Studio

Posted 11 June 2011 - 10:56 PM

This can be very useful. But its usefulness will be short lived as the upcoming GMStudio will allow you to export to: HTML5, iPhone, iPad and many other devices.
It would be nice but I doubt this will ever get finished.

Edited by slam drago, 13 June 2011 - 11:03 PM.

  • 0

#8 1Koakuma1

1Koakuma1

    GMC Member

  • GMC Member
  • 129 posts
  • Version:GM8

Posted 07 July 2011 - 11:47 PM

Sorry for the super bump.. but..



Error: Failed to extract the GMK file!
Something has gone wrong with GMKSplit. Redownloading may fix this error.



Am I doing something wrong?
  • 0

#9 Mayhem Games

Mayhem Games

    Proud Kiwi

  • GMC Member
  • 955 posts
  • Version:GM:Studio

Posted 08 July 2011 - 12:20 PM

If you type "java" into the command prompt do you get "'java' is not recognized as an internal or external command,operable program or batch file."?
If so you are getting this because you don't have java installed or you don't have a system variable set up pointing to java.

To set up a variable...
Right click on Computer/My Computer in the start menu and select properties.
Click Sdvanced System Settings
In the Window that opens, goto the Advanced tab
Click the Environment Variables
Under System Variables find one called "path" (If its not there create it)
Set the variable as the directory of you JDK setup. For example for me its "C:\Program Files (x86)\Java\jdk1.6.0_23\bin"
If there is already something in the variable add a semi colon. For example "C:\Windows\SysWOW64;C:\Program Files (x86)\Java\jdk1.6.0_23\bin"
  • 0

#10 1Koakuma1

1Koakuma1

    GMC Member

  • GMC Member
  • 129 posts
  • Version:GM8

Posted 08 July 2011 - 12:34 PM

If you type "java" into the command prompt do you get "'java' is not recognized as an internal or external command,operable program or batch file."?
If so you are getting this because you don't have java installed or you don't have a system variable set up pointing to java.

To set up a variable...
Right click on Computer/My Computer in the start menu and select properties.
Click Sdvanced System Settings
In the Window that opens, goto the Advanced tab
Click the Environment Variables
Under System Variables find one called "path" (If its not there create it)
Set the variable as the directory of you JDK setup. For example for me its "C:\Program Files (x86)\Java\jdk1.6.0_23\bin"
If there is already something in the variable add a semi colon. For example "C:\Windows\SysWOW64;C:\Program Files (x86)\Java\jdk1.6.0_23\bin"



Oh this worked :D

Will you be updating this ever again?
  • 0

#11 Mayhem Games

Mayhem Games

    Proud Kiwi

  • GMC Member
  • 955 posts
  • Version:GM:Studio

Posted 08 July 2011 - 12:45 PM

I might pick this up during the holidays but this was really a test to see if i could do it. Like what YellowAfterlife said with Game Maker studio coming up this project will be lost. But will people want to pay $100 for GM Studio?
  • 0

#12 1Koakuma1

1Koakuma1

    GMC Member

  • GMC Member
  • 129 posts
  • Version:GM8

Posted 08 July 2011 - 01:31 PM

I might pick this up during the holidays but this was really a test to see if i could do it. Like what YellowAfterlife said with Game Maker studio coming up this project will be lost. But will people want to pay $100 for GM Studio?



Oh god. I cant afford GM Studio. I'll wait for you to update this.
  • 0

#13 YellowAfterlife

YellowAfterlife

    GMC Member

  • Global Moderators
  • 3493 posts
  • Version:GM:Studio

Posted 08 July 2011 - 02:45 PM

I might pick this up during the holidays but this was really a test to see if i could do it. Like what YellowAfterlife said with Game Maker studio coming up this project will be lost. But will people want to pay $100 for GM Studio?

It is a very interesting thing.
People say that they can't afford $100, but how are they going to afford licences in according stores?
iOS publishing costs $100 per year.
PSP publishing costs even more (also is hard to get to, as YYG stated in glog post).

Additionally... HTML5-publishing version of GM will likely be a separate product and cost less than that.
  • 0

#14 Mayhem Games

Mayhem Games

    Proud Kiwi

  • GMC Member
  • 955 posts
  • Version:GM:Studio

Posted 10 July 2011 - 02:21 AM

Its a good point. PSP and iOS publishing are out of most members price range. I have an Apple Developer account so i am fine in that department, but most people on here won't pay the $125NZD per year. I almost question why Yoyogames even are doing PSP and iOS publishing when it will won't be used. Also Apple added to their EULA that all Games/Programs must be made in an approved SDK, i highly doubt that Game Maker is approved.
  • 0

#15 Doombring3r

Doombring3r

    GMC Member

  • New Member
  • 107 posts

Posted 10 July 2011 - 07:24 PM

Error: Failed to extract the GMK file!
Something has gone wrong with GMKSplit. Redownloading may fix this error.

I checked everything yous aid but still get the error...
  • 0

#16 Mayhem Games

Mayhem Games

    Proud Kiwi

  • GMC Member
  • 955 posts
  • Version:GM:Studio

Posted 11 July 2011 - 10:52 PM

The reason you get this error is because GMKSplit has not created the folder /"Projectname". Try extracting the GMK manually and see what you get.
java -jar Data\gmksplit.jar "Example.gmk" "Temp"
pause
Save this as Extract.bat and place it in the root directory of FrozenNova, and post the output of the CMD window.

I got the following output
C:\Users\Neiko Ambrose\Desktop\FrozenNova Alpha 1>java -jar Data\gmksplit.jar "Example.gmk" "Temp"
Java Version: 10600 (1.6.0_24)
Loading lib files in C:\Users\Neiko Ambrose\Desktop\FrozenNova Alpha 1\Data\gmksplit.jar
01_move.lgl 02_main1.lgl 03_main2.lgl 04_control.lgl
 05_score.lgl 06_extra.lgl 07_draw.lgl
time taken to load file: 32 ms

C:\Users\Neiko Ambrose\Desktop\FrozenNova Alpha 1>pause
Press any key to continue . . .

  • 0

#17 slam drago

slam drago

    The slam drag

  • New Member
  • 422 posts
  • Version:GM:Studio

Posted 12 July 2011 - 10:03 PM

Hmmm. This is more and more interesting me, I think I will try to implement some more functions.
  • 0

#18 Mayhem Games

Mayhem Games

    Proud Kiwi

  • GMC Member
  • 955 posts
  • Version:GM:Studio

Posted 15 July 2011 - 05:33 AM

If you do add any features could you please PM or Post them here so i can see =)
  • 0

#19 slam drago

slam drago

    The slam drag

  • New Member
  • 422 posts
  • Version:GM:Studio

Posted 07 September 2011 - 03:27 PM

OK, I wasn't able to actually implement any functions do to my ignorance of the java game library.
Sorry for bumping an old topic.
  • 0

#20 Mayhem Games

Mayhem Games

    Proud Kiwi

  • GMC Member
  • 955 posts
  • Version:GM:Studio

Posted 11 September 2011 - 06:39 AM

This version is now obsolete anyway. Alpha 2 includes a plugin system which make adding other functions much easier, an example plugin set is included which adds support for Max WinAPI 2. Alpha 2 has over 170 functions included including some support for 39dll. Not quite sure when i will release but keep an eye out for the new version.
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users