• 🏆 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
Can you write us a guide about how we should use it ?
Also can we use sockets with this ?
Need more info (I can't see it's potential yet).
I tried to make my own plugin based on those deprecated pics but it didn't went so well.
I'll see if I can get a tutorial up as soon as possible. You can pop by the Hive Discord and I can give you some tips.
You say that it supports version 1.27.0, but the vanilla compiler runs even though the option is unchecked.
I'll see if I can reproduce it.
Any idea when Colorizer is going to be implemented? It's not really convenient to keep switching between old JNGP. :/
I'll get it included soon as an option plugin.
 
Level 3
Joined
Dec 30, 2010
Messages
53
I'll see if I can reproduce it.
Thank you.

Do the plugins from the sharpcraft thread work with this? And if yes, which folder should I put them in?
"profiles\Warcraft III - The Frozen Throne (WEX)\plugins"?

Also is it possible to make a plugin that creates backups each time you save?
 
Last edited:

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
Thank you.

Do the plugins from the sharpcraft thread work with this? And if yes, which folder should I put them in?
"profiles\Warcraft III - The Frozen Throne (WEX)\plugins"?

Also is it possible to make a plugin that creates backups each time you save?
Sadly they don't, they're from a different plugin structure. I'm hoping to get a tutorial up soon and then get some of the older plugins up and running again. Most is ready for it.

Making a plugin that creates backups should be very simple, but I already think JassHelper does this, should be in the logs folder.
 
Level 7
Joined
Aug 11, 2010
Messages
269
This program does nothing for me. I open it up by it's executable, both it's launcher and the direct .exe file and it just launches the normal editor with new options that don't seem to work. Still can't import files, still can't make a map larger than 256x256. What am I doing wrong? I already have the two requirements installed and everything.
 
Level 3
Joined
Apr 25, 2013
Messages
38
I opened my map in the WEX for the first time. Two things I noticed I had a trigger that checked for units with the Giant Classification and it now shows up as unknown. I also had some If Picked Unit was dead booleans that also become Unknown as well. I changed them all so it not longer returns errors, but will everything work okay still?
 
Level 3
Joined
Dec 30, 2010
Messages
53
Making a plugin that creates backups should be very simple, but I already think JassHelper does this, should be in the logs folder.
You are right, they are in the jasshelper folder ("profiles\Warcraft III - World Editor (WEX)\plugins\JassHelper\backups")
 

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
This program does nothing for me. I open it up by it's executable, both it's launcher and the direct .exe file and it just launches the normal editor with new options that don't seem to work. Still can't import files, still can't make a map larger than 256x256. What am I doing wrong? I already have the two requirements installed and everything.
You'll have to send me the log if you want me to look into it.
I opened my map in the WEX for the first time. Two things I noticed I had a trigger that checked for units with the Giant Classification and it now shows up as unknown. I also had some If Picked Unit was dead booleans that also become Unknown as well. I changed them all so it not longer returns errors, but will everything work okay still?
That's interesting, I haven't heard about that before. It should be fine as long as the editor saves/loads fine.
 
Level 2
Joined
Jan 17, 2015
Messages
10
"Not Enough storage is available to process this command.

Program: WarcraftIII\World Editor.exe
Object: .PAVCWETriggerFuncion@@"
 

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
This program does nothing for me. I open it up by it's executable, both it's launcher and the direct .exe file and it just launches the normal editor with new options that don't seem to work. Still can't import files, still can't make a map larger than 256x256. What am I doing wrong? I already have the two requirements installed and everything.
You are trying to use it with version 1.28.3 which isn't supported, you need to get the hotfix for 1.28.4.

"Not Enough storage is available to process this command.

Program: WarcraftIII\World Editor.exe
Object: .PAVCWETriggerFuncion@@"
Can you send me the map so I can try?

Just a quick info: Before updating to the new version for the new patch, sharpcraft did (of course, as the world editor exe was renamed) not recognize it and by selecting it with all files filter it still opened but the features were not working. New version of the editor fixed this.
Yeah, since SharpCraft supports injecting into anything, it's possible, but the addresses were missing, which meant a lot of features were disabled automatically to avoid crashing.
 
Level 2
Joined
Jan 17, 2015
Messages
10
New issue,
I reinstalled WEX, it loads all the doodads, but now it gets a critical error when loading the triggers because

"Trigger function does not exist in Database: DestroyTrigger"

What is the fix for this?
 

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
New issue,
I reinstalled WEX, it loads all the doodads, but now it gets a critical error when loading the triggers because

"Trigger function does not exist in Database: DestroyTrigger"

What is the fix for this?
I'm guessing you used UMSWE before, which isn't included in WEX. You need to open up the map in JNGP and disable the UMSWE GUI triggers or convert them to JASS instead.
 
Level 3
Joined
Apr 25, 2013
Messages
38
I've was able to run the map in Warcraft 3 just fine, so far so good. :) I did have to Save As and make a new file to address those trigger issues. Is it still okay to use Vexorians Optimizer with this?


@Fantasy If your not in a hurry you could email the file. My laptop's WC3 is still old (.27 or .26) and still runs JNGP. I could also check on my comp to make sure it works. Emails still the same.
 
Level 4
Joined
Jun 19, 2010
Messages
49
MindWorX said:
That's an UMSWE feature.
Sure that it's only an UMSWE feature? I avoided UMSWE since its first days & stayed with JNGP. I always had & have this feature!
In my german JNGP, when I create a new map & open Object Editor & look in tab Units at human peon worker 'hpea', I have:
NameWert
Bewegung - Basistempo (umvs)190
Bewegung - Drehrate (umvr)0.60
Bewegung - Gruppen-Teilung - Aktiviert (urpo)False
......
Notice that in my german JNGP all options under tab "UMSWE" are disabled, like "Enable UMSWE".
 
Last edited:
Level 8
Joined
Jun 25, 2010
Messages
153
Hey, I'm enjoying WEX quite a bit! But I'm wondering on the off chance if you are able to increase the memory usage/speed of the editor itself. This has been a problem in the default editor a long time concerning huge maps, as the more custom data you have the longer it starts to take to do things.

Not talking about Brush list, had that off since day one. I'm talking about the Editor as a whole. Since the World Editor is an old program it can't utilize the large processing power of my machine.
 

Zwiebelchen

Hosted Project GR
Level 35
Joined
Sep 17, 2009
Messages
7,236
I have a problem with WEX currently: It seems that it crashes when you view certain vJASS scripts. I'm not quite sure yet what causes the crash. I couldn't find something particulary special about the one trigger that causes this behaviour. It's a long one (3k lines), but then again I have longer scripts than that and they display just fine without crashing.

Oddly enough, the crash doesn't happen when I randomly view other scripts before. When I don't, then the crash happens almost 100% of the time.

I will copy and paste the code to an empty map and see if I can reproduce that issue.


EDIT: I could successfully reproduce it on a test map with other empty dummy triggers:

Instructions on how to reproduce it:
1) open the test map below
2) go to trigger editor
3) rapidly click around between the triggers
4) when you click the "test" trigger, the editor sometimes crashes (W10)

If the editor doesn't crash when you click on the "test" trigger, try restarting the editor and try again.
In my test map the crash happens only like 25% of the time.

In my actual project its almost 75% of the time, dunno why exactly.
This crash didn't happen in Newgen and it's very annoying as it can cause users to lose mapping progress when they forgot to save before viewing a trigger that is affected by this bug.

EDIT2: I also made a quick video about it, maybe that helps.
 

Attachments

  • WEX-Crash.w3x
    51.4 KB · Views: 129
  • WEX-Crash.avi
    7.1 MB · Views: 166
Last edited:
Level 4
Joined
Feb 13, 2015
Messages
53
Why can't I open my map ?

I downloaded it, i launched it, very well, but when i try to open my map, it is said that "le fichier de carte principal n'a pas pu être ouvert" -> the main file is impossible to open.

I don't understand
 

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
Hey, I'm enjoying WEX quite a bit! But I'm wondering on the off chance if you are able to increase the memory usage/speed of the editor itself. This has been a problem in the default editor a long time concerning huge maps, as the more custom data you have the longer it starts to take to do things.

Not talking about Brush list, had that off since day one. I'm talking about the Editor as a whole. Since the World Editor is an old program it can't utilize the large processing power of my machine.
This isn't something I could do without rewriting the entire editor.
Sure that it's only an UMSWE feature? I avoided UMSWE since its first days & stayed with JNGP. I always had & have this feature!
In my german JNGP, when I create a new map & open Object Editor & look in tab Units at human peon worker 'hpea', I have:
NameWert
Bewegung - Basistempo (umvs)190
Bewegung - Drehrate (umvr)0.60
Bewegung - Gruppen-Teilung - Aktiviert (urpo)False
......
Notice that in my german JNGP all options under tab "UMSWE" are disabled, like "Enable UMSWE".
I'll see if I can find out what enables it.

Why can't I open my map ?

I downloaded it, i launched it, very well, but when i try to open my map, it is said that "le fichier de carte principal n'a pas pu être ouvert" -> the main file is impossible to open.

I don't understand
You'll need to share the logs.
Is there any way to implement colorizer and more terrain tiles into this editor?

Those are main functions I miss from and loved JNGP for.
I'm working on getting both back in.
 

Sverkerman

Hosted Project: BoW
Level 17
Joined
Feb 28, 2010
Messages
1,325
@MindWorX You've done such a great job with the editor and I love how you update it right when there is a new WC3 version out that scuffed it, great job!

I have something to request that terrainers have been asking for for ages.
When you copy and paste a doodad it's Z height is not saved, so the new object's Z height will be 0. This is annoying, think you can fix it? (Has been like this for AGES.)
 

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
*cough* Colorizer? *cough*
*cough* Coming ... *cough*
@MindWorX You've done such a great job with the editor and I love how you update it right when there is a new WC3 version out that scuffed it, great job!

I have something to request that terrainers have been asking for for ages.
When you copy and paste a doodad it's Z height is not saved, so the new object's Z height will be 0. This is annoying, think you can fix it? (Has been like this for AGES.)
It's doubtful that it'll be an easy fix, since it's more complex and involves a lot of moving parts.
Is the doodad limit automatically deactivated in this editor or do i have to check a field to deactivate the limit?
It's under "Extended Settings", but it's turned on by default.
 
Level 6
Joined
Mar 7, 2011
Messages
124
I love your extension for the editor. It's clean but includes a lot of improvements that make coding, and general development easier. I've been using it for awhile, and really have been liking the small improvements you've made to using the code editor

The inclusion of WurstScript is sick -- is there a place I could look to see more details on that? Wurst is still mostly incompatible with vJASS right? I was going to say that I'd give my left nut to have a tabbed code editor, but maybe I can do some stuff in Eclipse / Wurst...

The custom tile pathability would be nice / necessary for some maps. Why do you say it's impossible without modifying the Warcraft master files? I thought a map reads from the master files on creation, but then stores the pathing information for the used terrain tiles within the map files (I forget under which file, maybe .w3e or .w3i)? Or, this might be crazy, but could you override the generated pathing file (.wpm) using the user's defined tile pathability? that's ultimately the only thing that matters
 
Last edited:

MindWorX

Tool Moderator
Level 20
Joined
Aug 3, 2004
Messages
709
I love your extension for the editor. It's clean but includes a lot of improvements that make coding, and general development easier. I've been using it for awhile, and really have been liking the small improvements you've made to using the code editor

The inclusion of WurstScript is sick -- is there a place I could look to see more details on that? Wurst is still mostly incompatible with vJASS right? I was going to say that I'd give my left nut to have a tabbed code editor, but maybe I can do some stuff in Eclipse / Wurst...

The custom tile pathability would be nice / necessary for some maps. Why do you say it's impossible without modifying the Warcraft master files? I thought a map reads from the master files on creation, but then stores the pathing information for the used terrain tiles within the map files (I forget under which file, maybe .w3e or .w3i)? Or, this might be crazy, but could you override the generated pathing file (.wpm) using the user's defined tile pathability? that's ultimately the only thing that matters
I'll try and explain exactly how the pathability hack works. When you enable the pathability hack in JNGP, it adds some files to your WC3 folder, specifically "TerrainArt\Terrain.slk" which is the file that houses the pathability for all terrain types. Once this file is added, with your custom settings, the editor will use this file whenever it saves a map and generates the pathing file. Since this file is only generated on save, you don't need to include the custom Terrain.slk in the map itself. So what I mean when I say it messes with the installation is because it adds files that can cause problems if not cleaned up properly.

I like your idea of doing it manually though. We have a good understanding of the terrain format and if I recall correct, the pathing map is just a tga file which should be easy to make. I'll give this a try as soon as possible.

I will check and make sure that no-limits is still working. I'll get back to you as soon as possible.
 
Top