Moonlite Map Studio open beta release

Vestras

Retired
Reaction score
248
Thanks for the issue report. I fixed it.
A little update for you guys - the next update is gonna be huge. It'll feature the complete OOP code completion, new code navigation tools, loads of bug fixes, and more. I might be doing a vid of the code completion when it gets a little further.

And just to let you know, I'm trying to find an efficient way to constantly update the offsets and lengths of code objects (classes, methods, etc.) without having to reparse the text every time the user types. Without that I can't really make the code completion truly context sensitive. (Because it wouldn't always be correct about whether the user is in a method or property)
Also, I will be featuring a somewhat complete documentation.
 

rover2341

Is riding a roller coaster...Wee!
Reaction score
114
Sounds Great. And Thanks for fixing that.

How Long might it be for the next update 1-2 weeks?
I am very happy you are continuing to support and develop this its been a very handy tool and cant wait for the new features.
 

Moogle

New Member
Reaction score
1
Getting same problem as someone mentioned a while back. Code is not being replaced inside the MPQ. It worked fine on my first compile (I made a new project, wrote some code, tested, it was fine) and after I changed code (which has no errors) the file isn't being overwritten in the MPQ. It's the same as my first compile.

When I manually run Andromeda on it (the Andromeda in the Moonlite Compilers folder) I get:

Code:
stringz_COMP.SC2Map

+++ Compiling map stringz.SC2Map +++
Extracting code from map file...java.lang.NullPointerException
	at java.io.ByteArrayInputStream.<init>(Unknown Source)
	at com.sc2mod.andromeda.parsing.TriggerExtractor.extractTriggers(Unknown Source)
	at com.sc2mod.andromeda.parsing.AndromedaWorkflow.parseAllFiles(Unknown Source)
	at com.sc2mod.andromeda.parsing.AndromedaWorkflow.compile(Unknown Source)
	at com.sc2mod.andromeda.gui.jobs.JobExecMap.execute(Unknown Source)
	at com.sc2mod.andromeda.gui.jobs.WorkerThread.run(Unknown Source)
--- Compilation unsuccessful, no code generated! ---

So it might just be something with the default map which you generate.

Edit: Not working for a normal map either. Dunno! Weird problems all around. Might just be Andromeda.
 

Vestras

Retired
Reaction score
248
Getting same problem as someone mentioned a while back. Code is not being replaced inside the MPQ. It worked fine on my first compile (I made a new project, wrote some code, tested, it was fine) and after I changed code (which has no errors) the file isn't being overwritten in the MPQ. It's the same as my first compile.

When I manually run Andromeda on it (the Andromeda in the Moonlite Compilers folder) I get:

Code:
stringz_COMP.SC2Map

+++ Compiling map stringz.SC2Map +++
Extracting code from map file...java.lang.NullPointerException
	at java.io.ByteArrayInputStream.<init>(Unknown Source)
	at com.sc2mod.andromeda.parsing.TriggerExtractor.extractTriggers(Unknown Source)
	at com.sc2mod.andromeda.parsing.AndromedaWorkflow.parseAllFiles(Unknown Source)
	at com.sc2mod.andromeda.parsing.AndromedaWorkflow.compile(Unknown Source)
	at com.sc2mod.andromeda.gui.jobs.JobExecMap.execute(Unknown Source)
	at com.sc2mod.andromeda.gui.jobs.WorkerThread.run(Unknown Source)
--- Compilation unsuccessful, no code generated! ---

So it might just be something with the default map which you generate.

Edit: Not working for a normal map either. Dunno! Weird problems all around. Might just be Andromeda.

I think it's Andromeda. Does that code indicate something about Andromeda not extracting triggers from the map or is it just me? Anyways, report it at SC2Mod please :)
 

PuritysDisci

New Member
Reaction score
0
I just downloaded Moonlite, and aside from a few random crashes it seems to be running just fine. I can test my map and such, however, I can't seem to find a way to add trigger events. Anyone have an example of how to do this in Moonlite?

this is what I have right now:

Code:
bool MapInitializationFunc (bool testConds, bool runActions) {
    if (!runActions) {
        return true;
    }
    
    UIDisplayMessage(PlayerGroupAll(), c_messageAreaSubtitle, "testing my code");
    
    return true;
}

void InitTriggers () {
     UIDisplayMessage(PlayerGroupAll(), c_messageAreaSubtitle, "testing my code");
    
    trigger MapInitialization = TriggerCreate("MapInitializationFunc");
    TriggerAddEventMapInit(MapInitialization);
}

static {
    InitTriggers();
}

Neither of my UIDisplayMessage shows up in game. Any help would be greatly appreciated.
 

Moogle

New Member
Reaction score
1
You should use
Code:
trigger MapInitialization = TriggerCreate(MapInitializationFunc.name);
because Andromeda sometimes changes names. Although, I dont think Moonlite is using the newer versions of Andromeda that add that, so that probably wont work.

Your first message should pop up though, weird that it does not.
 

overload119

New Member
Reaction score
5
I hope your next patch includes the external natives. I don't have GE open but like SetUnitInvulnerable and stuff uses a library, but isn't technically a native, but since the library is on all maps, you should include it in the syntax shit.

And with code completion I hope you have a description hint of what the function does, like in the GUI, like you said you would have.
 

tooltiperror

Super Moderator
Reaction score
231
You should use
Code:
trigger MapInitialization = TriggerCreate(MapInitializationFunc.name);
because Andromeda sometimes changes names. Although, I dont think Moonlite is using the newer versions of Andromeda that add that, so that probably wont work.

Your first message should pop up though, weird that it does not.

It's no different than NewGen, it will probably not be updated as much as JassHelper, and Moonlite won't be updated as much as Andromeda, unless gex- decides to do heavy beta testing on each release and make a big deal with Vestras. And I don't see that happening, everything about Andromeda is made to be compatible for all (Java).
 

Vestras

Retired
Reaction score
248
I hope your next patch includes the external natives. I don't have GE open but like SetUnitInvulnerable and stuff uses a library, but isn't technically a native, but since the library is on all maps, you should include it in the syntax shit.

And with code completion I hope you have a description hint of what the function does, like in the GUI, like you said you would have.

I don't understand what you mean.
And no, the code completion won't have documentation for natives. However, users can provide documentation on their own code, like JavaDoc.
 

Moogle

New Member
Reaction score
1
He's saying that functions to turn a unit invulnerable can be found in the Liberty library (I have not checked this) - which is not in the current natives list.
Code:
include "TriggerLibs/LibertyLib"
is where it can be found.

Every function dealing with these library functions is prefixed with "libLbty_". For example,
Code:
libLbty_gf_OrderWorkerstoGatherNearbyResources(RegionEntireMap(), 1);
 

Vestras

Retired
Reaction score
248
A new version of Moonlite has been released: 1.0.0.1. Changelog:
  • Features:
  • Implemented a new Team Foundation - Subversion in Moonlite.
  • Implemented two new navigation features. Navigate To (Ctrl+, in the text editor to open, searches for anything - classes, structs, files, etc.) and the quick links - the two dropdowns at the top of the text editor.
  • Changed the Ribbon UI to a toolbar-based layout.
  • Implemented Ximl. (Not fully)
  • Implemented full keyboard support for all commands.
  • Bug Fixes:
  • Ctrl+V now pastes properly.
  • Fixed flickering in the Project Manager.
  • Fixed random renaming in the Project Manager.
  • A lot of minor bug fixes...

Known issues:
  • Ximl currently does not support images.
  • Ximl cannot place BarItems correctly. (Therefore the Team menu is the first on the main menu)
  • For some errors, Andromeda does not create line and offset values. This means that although there might be errors in your code, Moonlite will not add them to the Error List, and then the parser will not parse, resulting in stuff such as Navigate To not working.
  • There might be some Subversion unhandled exceptions. Please report them here.

As a little side note, I am going on vacation for three weeks from tomorrow, so I won't be doing updates in that time. When I get back I will most likely finish the OOP code completion once and for all, and hopefully fix a lot of issues that you guys have reported!

Enjoy.
 

Renendaru

(Evol)ution is nothing without love.
Reaction score
309
I for one cannot run the new Moonlite. Post if you can/not.

Edit: Older version, one I tested with which I CAN run, will be attached to this post. It includes all of the above, but some of the features there and a few glitches. DON'T rename a file if you use the Svn feature, or just don't use it at all I would reccomend. From my experience, renaming any file uploaded to the svn will crash that project.

Installer
 

Moogle

New Member
Reaction score
1
SVN fails on commiting all, which is the main reason I want SVN on Moonlite. It was having problems with the temp directory.

I have managed to get it to work with minor effort.

I believe the steps were:

Create project. Import it to SVN (the directory to the project is Documents/Moonlite Map Studios/Projects/<project name>), but not with Moonlite. Use Tortoise SVN or whatever SVN client you have!

Take project out of your Projects directory. Delete it, whatever.

Use Moonlite to check it out into Documents/Moonlite Map Studios/Projects/<project name>.

Use Moonlite to open the project. You should be done!

--

Also, Moonlite directory structure means sadness for /trunk and stuff. Google Code's directory is called svn, and it has a trunk folder below that. I dont really care though.
 

Vestras

Retired
Reaction score
248
SVN fails on commiting all, which is the main reason I want SVN on Moonlite. It was having problems with the temp directory.

I have managed to get it to work with minor effort.

I believe the steps were:

Create project. Import it to SVN (the directory to the project is Documents/Moonlite Map Studios/Projects/<project name>), but not with Moonlite. Use Tortoise SVN or whatever SVN client you have!

Take project out of your Projects directory. Delete it, whatever.

Use Moonlite to check it out into Documents/Moonlite Map Studios/Projects/<project name>.

Use Moonlite to open the project. You should be done!

--

Also, Moonlite directory structure means sadness for /trunk and stuff. Google Code's directory is called svn, and it has a trunk folder below that. I dont really care though.

Hmm... Can you elabroate on what problems it had? I will fix the issues when I get home frmo my vacation.
But what's wrong with just Commit?
I don't get what you mean with the directory structure.
 

rover2341

Is riding a roller coaster...Wee!
Reaction score
114
Paste never works for me, Unless I go tot edit or press ctrl v like 4 times. Any Idea? I mean it works fine every else but moonlite
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top