• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

SharpCraft World Editor Extended Bundle

SharpCraft WEX Bundle v0.1.3.1
World Editor Extended is the successor to the Jass NewGen Pack. It is updated to work with the newest editor and includes the main features that JNGP had.

To use this, simply use the SharpCraft.Launcher and launch the "Warcraft III - World Editor (WEX)" profile or use the included "World Editor Extended.exe" to launch it directly.

Keep in mind that this is a work in progress. There are still several features missing. Features will be added in as time allows it and as they are requested. Some features might never return because the original developers are gone.

SharpCraft can be discussed in the hosted project subforum.

Semi-Complete Feature List
  • JassHelper, a vJASS compiler, that replaces the internal world editor compiler completely. No more crashes from bad code and many more features through vJASS.
  • Trigger Editor Syntax Highlight (TESH), a code syntax highlighter for the Trigger Editor, that makes coding in JASS/vJASS a breeze.
  • Grimoire Extensions (Grimex), a library of tools that extend the functionality of vJASS giving it the ability to create new objects(units, items, etc.) and more.
  • Increased/Removed various limits, like the number of doodads, destructables and more.
  • Object Id dialog, that allows you to manually set the object id when creating a new object. Want to make a hero peasent? Just copy the peasent, and when the dialog asks, just change the first letter to upper case, and he's ready.

Changelog
Code:
v0.1.3.1
* Updated to WE 1.29.0
* Updated TESH function database to have new natives ( thanks to @Abovegame )
* Fixed crash with ObjectDataExtractor when it couldn't locate Java, instead it will simply disable itself silently.
* Attempted to shorten paths, to avoid crash due to long path names.

v0.1.3.0
* Updated to WE 1.29.0 PTR - This is very experimental and have been done hastily. It should work with vJass/Wurst and TESH. Other features have been removed since they're now included in the vanilla editor.

v0.1.2.9
* Updated to WE 1.28.5

v0.1.2.8
* Updated TESH, to fix a rare bug where it would crash the editor.
* Added WurstScript experimentally, use at your own risk. WEX will not keep the same update cycle as WurstScript, so you will have to update it manually if you encounter bugs.

v0.1.2.7
* Added fix for the File Importer.

v0.1.2.6
* Updated to WE 1.28.4
* Fixed up SharpCraft to work with new editor executable name.
* Fixed up WEX to work with new editor executable name.

v0.1.2.5
* Improved extended settings with -window and -opengl options.
* Included the option to launch with a special WEX profile. This does nothing yet, but will in the future.

v0.1.2.4
* Fixed window names for TESH so it works on all languages automatically.
* Added more no-limits features, like steep cliffs and a wider range of terrain heights.

v0.1.2.3
* Updated to WE 1.28.2
* Added support for -loadfile and other parameters directly.
* Replaced TESH with TESH 2.0
* Fixed various issues across versions, should work perfectly for all supported versions now.

v0.1.1.2
* Fixed issues with enabling disabled triggers with vJASS code or missing init function.
* Added menu entries for JassHelper.

v0.1.1.1
* Updated with support for WE 1.26 and 1.27b. !!THIS IS EXPERIMENTAL!!
* Fixed a mistake introduced last update that might've made things unstable.

v0.1.1.0
* Added fix for Test Map. You can now get back to mapping!
* Updated Extended Editor Settings (allow local files)

v0.1.0.2
* Updated to WE 1.28.1 (still works for 1.27b, 1.28)
* Fixed Extended Editor Settings for Increased Map Dimensions, so 480x480 maps are back on the menu!

v0.1.0.1
* Updated to WE 1.28 (still works for 1.27b)
* Updated Extended Editor Settings (increased map dimensions)
* Fixed up Grimex(ObjectMerger, etc.)
* Improved menus a bit and removed some unused stuff.
* Removed various stuff like all the default profiles and some stuff that shouldn't have been included.

v0.1.0.0
* Initial release.
* * JassHelper
* * Trigger Editor Syntax Highlight
* * Extended Editor Settings (nolimits, custom object id, etc.)

Known Issues
Version Status
  • 1.28.5 - Tested and fully supported.
  • 1.28.4 - Tested and fully supported.
  • 1.28.3 - Skipped!
  • 1.28.2 - Tested and fully supported.
  • 1.28.1 - Tested and fully supported.
  • 1.28.0 - Tested and fully supported.
  • 1.27.1 - Tested and fully supported.
  • 1.27.0 - Tested and fully supported.
  • 1.26.0 - Tested and fully supported.
Test Instructions (for those interested in helping)
  1. Start the Editor
  2. Create a new 480x480 map
  3. Test the map to make sure test map works
  4. Open the Trigger Editor, make sure TESH is present, and add the following custom script somewhere
    1. Script to add: //! external ObjectMerger
    2. Save the map and make sure it comes up with an error about ObjectMerger arguments
  5. Open the Object Editor and create an object, making sure the object id dialog pops up.
The SharpCraft WEX Bundle should not be redistributed! The Hive Workshop is the only official source for the SharpCraft WEX Bundle!
Contents

SharpCraft WEX Bundle (0.1.3.1) (Binary)

Reviews
StoPCampinGn00b
Approved. One of the best and most essential tools a Warcraft 3 modder can have. 5/5!

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
Will the ability to modify tileset be implemented back eventually? Currently the JNGP extension does not work and this does not have it.
If it doesn't work for JNGP then it isn't likely to make it back any time soon. The people who made the tool are gone and no one knows how it worked.

Why custom cliffs no longer work?
Because UMSWE/WEU is outdated and doesn't work with anything newer than 1.21. Working on transferring the important parts in a better way that doesn't need so frequent updates.
 
Last edited:
Level 4
Joined
Jun 28, 2012
Messages
23
My WEX is crashing whenever I try to launch it :/
WEX run as admin and my Worldedit is set to be runned as admin too
I link the log if it can be of any help :/
 

Attachments

  • log-20170510.debug.txt
    152.4 KB · Views: 50
  • log-20170510.txt
    152.4 KB · Views: 63
Last edited:
Level 7
Joined
Mar 10, 2013
Messages
366
My WEX is crashing whenever I try to launch it :/
WEX run as admin and my Worldedit is set to be runned as admin too
I link the log if it can be of any help :/
Looks like you're missing the Fasm.NET.dll (which is weird since it's included with the zip folder).

Can you check if you have it in your Sharpcraft root folder?

If you don't, try to download it again, or get the dll from here (Fasm.NET - Stable (binaries)).

(Trying to give some help while MindWorX doens't show up)
 
Would it be possible to change destructible flags from within editor without having to hex edit? Every placed destructible has a default flag of 02, they are defined in war3map.doo file inside map.

Code:
*flags:
0= invisible and non-solid tree
1= visible but non-solid tree
2= normal tree (visible and solid)

You can find more information here.
You could do the same as you did with object id window, when you select a destructible or a group of them and double click to go to doodad properties it would show extra options to set the flags of selected destructibles.


Zepirs Map Editor already did this but it's not convenient and lacks GUI elements.
Zépir's War3 Map Editor 1.0
 
Last edited:

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
This is a very tough order, that requires a lot of reverse engineering, among it, figuring out how objects are stored in memory, how to detect what is selected and more. Not impossible, but not easy. It might be better to request the functionality from Blizzard.

Risc's Colorizer will probably make it into WEX soon. There is some controversy because it has disruptive features, so it'll likely be included, but disabled by default.
 
This is a very tough order, that requires a lot of reverse engineering, among it, figuring out how objects are stored in memory, how to detect what is selected and more. Not impossible, but not easy. It might be better to request the functionality from Blizzard.

Huh, reverse engineering? Destructibles are defined and created from war3map.doo file, every time map is saved it generates a new war3map.doo. You just have to generate a new war3map.doo file with the appropriate flags.

You should take a look how Zepir did it in Zépir's War3 Map Editor 1.0. The source code is public and you can take a look, it's inside the package.

That's a much easier task, but not what A Void is asking for. He wants to make it work with the actual selected items in the editor.

Even that would be helpful. :p
 

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
There's a world of a difference between the file formats and how they're stored in memory. It's nowhere near a 1:1 relationship. At best we could load the .doo files when the maps loads but you wouldn't have anything new you add to the map. You'd need to reload every time. And you still couldn't select the doodads in the editor without a lot more work. As I said, not impossible, but far from easy.
 
There's a world of a difference between the file formats and how they're stored in memory. It's nowhere near a 1:1 relationship. At best we could load the .doo files when the maps loads but you wouldn't have anything new you add to the map. You'd need to reload every time. And you still couldn't select the doodads in the editor without a lot more work. As I said, not impossible, but far from easy.

Or you can create an additional menu button (at the top bar) that will open destructible flag options, you select your flag and click done then the war3map.doo will be overwritten with appropriate flags replaced. Initial flags are 02 so replace 02 with *flag value*. Of course you will need to do this every time you place a new destructible as they will have the initial value.

The manual way of doing this is by opening .doo with a Hex Editor and replacing all values 02 to *flag*.
 
Level 7
Joined
Mar 10, 2013
Messages
366
And you will need to reload the map every time you've made any changes since the tool only works by what it knows from when the map was opened. Not sure it's an improvement over just having a separate tool for the job.
You don't have any mapping of reverse engineering values from the memory and values to control? I know it may be few, but it would help to map things and experiment with new features along the way to work with the application running time.
 

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
Yep, works fine.

But other features are still missing:
  • Custom editor categories
  • Tile pathability editor
  • Tile set editor
Also, if I want to add my own plugins, how would I do it?
Custom editor categories can be added easily. I just haven't done so since I didn't know anyone who used them.
Tile Pathability editor and Tile Set editor can only be added if they still work with JNGP and 1.28.2, but from reports I've gotten this doesn't seem to be the case. If you can confirm it still works in 1.28.2 with JNGP I can give it a look.
As far as your own plugins go, all you need to do is reference SharpCraft.Framework.dll and MindWorX.War3Editor.dll. I'll see if I can't get a sample up on the repo along with the source code for all the other plugins.
 
Level 12
Joined
Mar 21, 2008
Messages
358
when I try to run WEX, I get an error that says "SharpCraft.CLILauncher has stopped working"

pls help
 

Attachments

  • log-20170513.debug.txt
    28 KB · Views: 34
  • log-20170513.txt
    28 KB · Views: 39
Level 2
Joined
Sep 6, 2016
Messages
8
Hi there, i cant make it run... i run it as administrator, then i choose place where worldeditor is. But then nothing happens. It never runs...

Windows 7 x64, Warcraft 3 TFT 1.28.2
 
Level 21
Joined
Dec 4, 2007
Messages
1,473
Getting an "Unrecognized PJASS (syntax)" error (just when jasshelper fires) during saving.
Also can't test maps due to missing map data (everything is setup to run as admin, the game is not installed in program files)
 

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
didn't work, also using windows 7
I'm not sure what's going on then. The logs you are showing aren't giving any indication that you ever actually run it. It doesn't show that any profiles are being launched.

Hi there, i cant make it run... i run it as administrator, then i choose place where worldeditor is. But then nothing happens. It never runs...

Windows 7 x64, Warcraft 3 TFT 1.28.2
This has been reported by some users, not sure what's causing it. You can try and run the "SharpCraft.TroubleShooter.exe" once, and then try again. If that doesn't help, then I need the latest logs.
Getting an "Unrecognized PJASS (syntax)" error (just when jasshelper fires) during saving.
Also can't test maps due to missing map data (everything is setup to run as admin, the game is not installed in program files)
Make sure you check the known issues section on the post. It explains how to fix that.
 
Level 2
Joined
Sep 6, 2016
Messages
8
i run "SharpCraft.TroubleShooter.exe" and then tried again "World Editor Extended.exe". Same result.

Logs atacched.
 

Attachments

  • diagnostics-20170515.txt
    24.9 KB · Views: 57
  • log-20170515.debug.txt
    4.9 KB · Views: 35
  • log-20170515.txt
    4.9 KB · Views: 48

Chaosy

Tutorial Reviewer
Level 40
Joined
Jun 9, 2011
Messages
13,182
Uhh, the buttons scaled super small on my monitor.
(Object editor, trigger editor etc)

3456a196ef23bac7c7c4187aca0d7419.jpg


Clearly not meant for 4k monitor

You removed the object editor lag the old JNGP had for me which is a huge + though.

edit: I also dislike the front used for jass.

edi2: seems to apply with the UI overall
fce75deb02a8ae6baa84313aa076816a.png


Remember this is on a 4k monitor so divide the image size by 4 and you will get what I am seeing.
 
Last edited:
Level 26
Joined
Oct 2, 2011
Messages
2,482
I have the Visual C++ and .NET thingys (although a more updated version of .NET).
I've run it as an admin.
Last problem I ahve not encountered.

...but it doesn't open up still. :/
I've tried the launcher and just clicking the Icon.


Any ideas on what I may be doing wrong?
 
Level 11
Joined
Jun 2, 2004
Messages
849
Wanted to try this out, and am getting a crash when trying to load. Logs attached.

The windows error claims it has something to do with War3EditorExtendedSettings and a System.InvalidCastException.
 

Attachments

  • diagnostics-20170523.txt
    31.5 KB · Views: 43
  • log-20170523.debug.txt
    22.4 KB · Views: 31
  • log-20170523.txt
    22.4 KB · Views: 67
Another idea:

Man, I don't know if it's already inside but it is a good idea to make function that, when you are creating new object in object editor to check if already is another object with the same ID and, dispkay an error! Conflicting IDs are pain in the ass, especially if you don't know where are they!
 
Top