The Galaxy Language is really close to C. This is a good choice because everyone knows C or a language derivated from it.
The error reporting is aweful, we only know there is an error and don't know the line. This is hopefully getting to be fixed later but we can still workaround using Lapin Syntax Validator.
The language is missing a lot of needed features (for loops, dynamic allocations, etc ...). However many of those lacks can easily be fixed by Blizzard itself or using one of the many tools. (Andromeda, MilkyWay Precompiler)
The language is faster than Jass but still way too slow. (Benchmark)
Galaxy API
The Galaxy API is really incomplete. At the moment, all the AI functions are there and all the strictly needed dependencies. From what we can see, it's pretty well done.
The API is clearly object oriented but done through naming instead of relying on syntax.
The API is not minimal, you can rewrite a bunch of API functions using another ones.
They have many containers (UnitGroup, UnitOrder, UnitGroupFilter) but no common way to use them.
XML Data
All the data are stored in XML Files. You can customize pretty much everything using them: Units, Spells, Models, Textures, Races ...
All the different spells are using the same basic nodes, this way it's very generic and easy to make custom spells.
There is an inheritance system that allows you to make different variations of the same object in few lines.
Localization is really easy. All the strings are stored in a text file inside a folder for each language.
At the moment, it's really painful to edit those files by hand, they are split in a lot of files and it's really missing autocompletion. The editor is going to help a lot in that area.
Interface
The game interface can be changed! It's a set of XML files that really looks like WoW Addons. However not much research has been done on this yet.
Support relative position and parents like WoW addons
Haven't found yet if it was possible to add custom interface inside the map files.
Terrain Data
The Terrain is probably the hardest thing to handle without the editor. It is stored in a very compact way as it already takes about 90% of the map size. We managed to understand how it was stored and will soon be able to draw it. However it's not something we will be able to edit manually.
Conclusion
After a month of Starcraft II maps analysis we can expect great possibilities. Everything we talked about here is going to have a polished GUI that will make edition much easier and faster. Let's hope Galaxy Editor is going to come soon!
Only differences are being saved in the map, that allows small maps. However this is a bit annoying for now.
You do realize this is easily fixable?
Using your example posted there (i'd reply on that thread, but I feel it is important to note this in newer threads), you can do the following:
patch.SC2Data
<Cunitid="RandomUnit"><CardLayouts><LayoutButtonsFace="Move"Type="AbilCmd"AbilCmd="move,Move"Row="0"Column="0"/><LayoutButtonsFace="Stop"Type="AbilCmd"AbilCmd="stop,Stop"Row="0"Column="1"/></CardLayouts></Cunit>
Map itself
<Cunitid="RandomUnit"><!-- if you want to overwirte --><CardLayoutsindex="0"removed="1"><CardLayouts><LayoutButtonsFace="PhotonCannon"Type="AbilCmd"AbilCmd="ProtossBuild,Build8"Row="0"Column="0"/></CardLayouts><!-- if you want to append --><CardLayouts><LayoutButtonsFace="Gateway"Type="AbilCmd"AbilCmd="ProtossBuild,Build2"Row="0"Column="1"/></CardLayouts></Cunit>
That is pretty much how i did it for the hero mod.
EDIT:
Take into account index="x" and removed="1" also work for other array elements, be it abil array, behaviour array, starting units, etc. You need to know the specific index tho.
Haven't found yet if it was possible to add custom interface inside the map files.
Well it's definitely going to be possible with the Galaxy editor if not already. Just by watching the BlizzCon 2009 preview you can see custom UI, let alone that Dustin Browder announces that it is possible.
Well it's definitely going to be possible with the Galaxy editor if not already. Just by watching the BlizzCon 2009 preview you can see custom UI, let alone that Dustin Browder announces that it is possible.
Nope, UI Customization cannot be done via GE, as seen in one of the Q&A Batches. However, we're going to implement it into MWE.
I think that modifying the UI will not be supported in the editor but they will have the ability to add custom UI
How do you figure? There won't be any UI Customization via GalaxyEdit. So what do you mean "add custom UI"? I'm thinking if you're smart enough to be able to edit the UI manually, you wouldn't need GE to implement it, :P.
Nope, UI Customization cannot be done via GE, as seen in one of the QA Batches. However, we're going to implement it into MWE.
I always thought that it was simply unsupported, but it is possible, just difficult to do. I suppose in a similar sense as WarCraft III, where it isn't easy to change how the UI looks but custom images can be imported to replace stuff.
Seeing from the BlizzCon map editor preview, it is indeed possible to have add simple form of custom UI at the very least, with the dialogue button in the SC: Ghost game as well as the health gauge at the top.
I always thought that it was simply unsupported, but it is possible, just difficult to do. I suppose in a similar sense as WarCraft III, where it isn't easy to change how the UI looks but custom images can be imported to replace stuff.
Seeing from the BlizzCon map editor preview, it is indeed possible to have add simple form of custom UI at the very least, with the dialogue button in the SC: Ghost game as well as the health gauge at the top.
UI Customization is more than possible, as i've said above. We've already done it, in fact. GE will not support or have the ability to do any UI Customization. The only way to customize the UI is to edit the .SC2Layout files yourself... Or wait until we implement it into MWE.
Galaxy Language
The Galaxy Language is really close to C. This is a good choice because everyone knows C or a language derivated from it.
Galaxy API
The Galaxy API is really incomplete. At the moment, all the AI functions are there and all the strictly needed dependencies. From what we can see, it's pretty well done.
XML Data
All the data are stored in XML Files. You can customize pretty much everything using them: Units, Spells, Models, Textures, Races ...
Interface
The game interface can be changed! It's a set of XML files that really looks like WoW Addons. However not much research has been done on this yet.
Terrain Data
The Terrain is probably the hardest thing to handle without the editor. It is stored in a very compact way as it already takes about 90% of the map size. We managed to understand how it was stored and will soon be able to draw it. However it's not something we will be able to edit manually.
Conclusion
After a month of Starcraft II maps analysis we can expect great possibilities. Everything we talked about here is going to have a polished GUI that will make edition much easier and faster. Let's hope Galaxy Editor is going to come soon!
You do realize this is easily fixable?
Using your example posted there (i'd reply on that thread, but I feel it is important to note this in newer threads), you can do the following:
patch.SC2Data
That is pretty much how i did it for the hero mod.
Go play Antioch Chronicles Remastered!
Also, coming soon, Antioch Episode 3: Thoughts in Chaos!
Dont like mapster's ugly white? Try Mapster's Classic Skin!
Oh nice, I didn't know the removed="1" thingy. Thanks
@vjeux: Go
Reading how changelings worked helped shittons.
EDIT: Take into account index="x" and removed="1" also work for other array elements, be it abil array, behaviour array, starting units, etc. You need to know the specific index tho.
Go play Antioch Chronicles Remastered!
Also, coming soon, Antioch Episode 3: Thoughts in Chaos!
Dont like mapster's ugly white? Try Mapster's Classic Skin!
Can you do <SomeArray removed="1" /> to removed all the array contents?
Good question. Beats me. Probably not, but worth trying out.
Go play Antioch Chronicles Remastered!
Also, coming soon, Antioch Episode 3: Thoughts in Chaos!
Dont like mapster's ugly white? Try Mapster's Classic Skin!
Well it's definitely going to be possible with the Galaxy editor if not already. Just by watching the BlizzCon 2009 preview you can see custom UI, let alone that Dustin Browder announces that it is possible.
Nope, UI Customization cannot be done via GE, as seen in one of the Q&A Batches. However, we're going to implement it into MWE.
I think that modifying the UI will not be supported in the editor but they will have the ability to add custom UI
How do you figure? There won't be any UI Customization via GalaxyEdit. So what do you mean "add custom UI"? I'm thinking if you're smart enough to be able to edit the UI manually, you wouldn't need GE to implement it, :P.
Then again...
I always thought that it was simply unsupported, but it is possible, just difficult to do. I suppose in a similar sense as WarCraft III, where it isn't easy to change how the UI looks but custom images can be imported to replace stuff.
Seeing from the BlizzCon map editor preview, it is indeed possible to have add simple form of custom UI at the very least, with the dialogue button in the SC: Ghost game as well as the health gauge at the top.
UI Customization is more than possible, as i've said above. We've already done it, in fact. GE will not support or have the ability to do any UI Customization. The only way to customize the UI is to edit the .SC2Layout files yourself... Or wait until we implement it into MWE.