1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. The SharpCraft World Editor Extended (WEX) has been updated for the latest Warcraft 3 version: Forum.
    Dismiss Notice
  3. The Paired Modeling/Texturing Contest #3 - Leaders has begun! Artists group up and struggle! May the best team lead the run.
    Dismiss Notice
  4. The long awaited results for Mini-Mapping Contest #13 is here! Congratulate the winners!
    Dismiss Notice
  5. Vote for the best Concept Art Contest - Bounty Hunter entry!
    Dismiss Notice
MindWorX
Last Activity:
May 24, 2017 at 11:36 AM
Joined:
Aug 3, 2004
Messages:
558

Awarded Medals 3

Birthday:
Jul 17, 1987 (Age: 29)
Location:
Denmark
Occupation:
Student/Business Owner

MindWorX — Tool Moderator

Wulfy loves Nex!, 29, from Denmark

Staff Member
MindWorX was last seen:
May 24, 2017 at 11:36 AM
    1. stan0033
      stan0033
      What does Sharpcraft exactly do? Only start the blizzard games?
      1. MindWorX
        MindWorX
        SharpCraft manages profiles and bootstraps plugins.
        May 10, 2017
    2. Lasersquid112
    3. MyPad
      MyPad
      Excuse me, MindWorX. May I know what else is being planned for Sharpcraft Extended Bundle? I do like it very much.
    4. jondrean
      jondrean
      Is there a way to customize player setup when doing war3.exe -loadfile <map path>?
      1. View previous comments...
      2. MindWorX
        MindWorX
        Feb 5, 2017
      3. Ralle
        Ralle
        That extension sounds pretty cool!
        Apr 29, 2017
      4. jondrean
        jondrean
        Yeah, it does, but it would be Windows only and require externally installed launcher.. Now I finally got around learning WebExtensions / JavaScript / jQuery: https://github.com/jondrean/better-vms.

        It doesn't listen for 'view previous comments...' action, but you can get where I'm going with it.

        Edit: You could consider replicating the "thumbnail into player".

        Edit 2: It should now listen to 'view previous comments...'.
        May 14, 2017
    5. deepstrasz
      deepstrasz
    6. stan0033
      stan0033
      What kind of moderator are you?
      1. MindWorX
        MindWorX
        Nothing short of the best kind. Which is a Tools Moderator.
        Sep 23, 2016
    7. Chief_Of_GxBxL
      Chief_Of_GxBxL
      Hey there MindWorX, need some troubleshooting help:

      > System.IO.FileNotFoundException: Could not load file or assembly 'EasyHook, Version=2.7.4761.0...' or one of its dependencies. The system cannot find the file specified.

      I'm not understanding what's wrong: the EasyHook.dll and the 32/64 versions are in the bin/debug folder, and the Launcher's reference to EasyHook.dll in the Assemblies folder is valid.
      1. View previous comments...
      2. Chief_Of_GxBxL
        Chief_Of_GxBxL
        3. After (2) resolved, new issue with "HRESULT: 0x80131040: The located assembly's manifest definition does not match the assembly reference". Clean solution, then re-build solution.

        SharpCraft will now launch WC3, but it now ignores my -window and other args passed in :( Let me know if the above steps work for you or if I need to clarify.
        Aug 31, 2016
      3. MindWorX
        MindWorX
        Hey Chief, I've fixed the issue. The newest version is attached to the thread. :)
        Sep 4, 2016
      4. Ralle
        Ralle
        I'm the chief here!
        Apr 29, 2017
    8. SeedinAethyr
      SeedinAethyr
      Happy birthday!
    9. Wietlol
      Wietlol
      Hya, I have a problem with SharpCraft.
      The problem I am having is when I start a map, it will show the cmd window like it should but it says "Checking versions . . . Mismatch! To fix this, you need to update your addresses to version 1.27.0.52240."
      This error came after updating the game to 1.27

      I am ussually in the chat if you need more details.
      1. View previous comments...
      2. Wietlol
        Wietlol
        Jul 25, 2016
      3. MindWorX
        MindWorX
        I've heard that error mentioned before. I'll have to figure out what might be causing it. Which version of Windows are you using?
        Jul 25, 2016
      4. Wietlol
        Wietlol
        Windows 7 Home, 64 bits
        Jul 26, 2016
    10. Ralle
    11. MasterHaosis
      MasterHaosis
      Mind
      Wor
      XXX
      :cgrin:
    12. Ralle
      Ralle
      Oh right. If you want hosting, give me a shout. It would be an honor to host you.
    13. Ash
      Ash
      Hello.
    14. Ralle
      Ralle
      Yeah. But it has so much potential! Awesome that you are still working on it!

      I see that the project is in the Archived section. This seems wrong when you are working on it. Don't you agree? Shouldn't we move it back into the Hosted Projects category instead of the sub forum?
    15. Ralle
      Ralle
      How is progress on SharpCraft? :)
    16. Chief_Of_GxBxL
      Chief_Of_GxBxL
      Ok, I've switched them back to what I thought they had to be originally. Still crashing :( I've refocused my efforts on playing around with the sample stopwatch code you gave me, but I'm confused: Should I be using newGenEditor to put the code, or the 'Start Editor (debug)' program that's built with the source code you've made available? NewGen is the only one that doesn't complain about unregistered natives when I try to use this code:


      ----------
      function Trig_Untitled_Trigger_001_Actions takes nothing returns nothing
      local integer stopwatchId
      local real elapsedTimeMs = null

      stopwatchId = StopwatchGet() // gets a free Stopwatch
      PolledWait( 3.00 ) // give the stopwatch some time to count...
      elapsedTimeMs = StopwatchElapsedMilliseconds()

      // print time to user
      call DisplayTextToForce( GetPlayersAll(), R2S(elapsedTimeMs) )
      endfunction

      //===========================================================================
      function InitTrig_Untitled_Trigger_001 takes nothing returns nothing
      set gg_trg_Untitled_Trigger_001 = CreateTrigger( )
      call TriggerAddAction( gg_trg_Untitled_Trigger_001, function Trig_Untitled_Trigger_001_Actions )
      endfunction
      ----------
    17. Chief_Of_GxBxL
      Chief_Of_GxBxL
      Tried rewriting the older HTTP plugin to use the new IPlugin interface. Whereas the previous plugin worked for a simple HTTP map my friend and I cooked up, the new plugin causes the game to crash:

      [IMG]

      Any ideas? I'm uncertain about the JassStringArg vs. JassStringRet. Which one should I be using? Could this be the reason for the crash?


      ----------
      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Text;
      using System.Threading.Tasks;
      using TinkerWorX.SharpCraft;
      using MindWorX.SharpCraft.Modules.JassAPI;
      using System.Net;
      using System.IO;

      namespace Http
      {
      [Requires(typeof(JassAPIPlugin))]
      public class HttpPlugin : IPlugin
      {
      public void Initialize(PluginContext context)
      {
      // the context is used to make game/editor specific initializing
      // for this plugin all we care about is the game
      if (context != PluginContext.Game)
      return;

      Natives.Add(new HttpRequestPrototype(this.HttpRequest));
      }

      public void OnGameLoad(PluginContext context)
      {
      // the context is used to make game/editor specific initializing
      // for this plugin all we care about is the game
      if (context != PluginContext.Game)
      return;
      }

      private delegate JassStringArg HttpRequestPrototype(JassStringArg method, JassStringArg url, JassStringArg cookies, JassStringArg values);
      private JassStringArg HttpRequest(JassStringArg method, JassStringArg url, JassStringArg cookies, JassStringArg values)
      {
      HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
      CookieContainer container = new CookieContainer();
      req.Method = method;
      req.UserAgent = "Warcraft III";
      req.ContentType = "application/x-www-form-urlencoded";

      Uri uri = new Uri(url);

      if (cookies != "")
      {
      string[] cookArr = cookies.ToString().Split(new string[] { ";" }, StringSplitOptions.None);
      string[] temp;
      foreach (string cook in cookArr)
      {
      if (cook.Contains("="))
      {
      temp = cook.Split(new string[] { "=" }, StringSplitOptions.None);
      container.Add(uri, new Cookie(temp[0], temp[1]));
      }
      }
      }

      req.CookieContainer = container;

      System.Net.ServicePointManager.Expect100Continue = false;
      // prevents 417 error

      if(values != "")
      using (StreamWriter writer = new StreamWriter(req.GetRequestStream(), System.Text.Encoding.ASCII))
      {
      writer.Write(values);
      }

      HttpWebResponse response = (HttpWebResponse)req.GetResponse();

      StreamReader reader = new StreamReader(req.GetResponse().GetResponseStream());
      string output = reader.ReadToEnd();
      reader.Close();

      return output;
      }
      }
      }
      ----------
    18. Chief_Of_GxBxL
      Chief_Of_GxBxL
      Thanks, 'unblock'ing the dlls has fixed the issue with the plugins not being loaded correctly.

      I've been testing a map with someone else that we call 'Server Test', it is just a simple map to send an HTTP request and return data in a game of two players. It used to work in Local Area Network on the previous version of SharpCraft (v3...).

      Now on Battle.Net we try to test it together on the new version of SharpCraft v4.0.0.136 and get a peculiar error:
      [IMG]
      Actually, this is the first time we've tried testing over Battle.Net. In the past we've always used LAN. Is there some sort of security measure that you know of that Blizzard has in place that is preventing us from hosting this map? Or could it be a local security feature like User Account Control. We both have tried running Launcher.exe as an administrator.

      Further, in the past I've also been able to play said Server Test map by myself in Single Player or LAN. Now when I try to load the map I cannot get into the lobby phase. The wc3 menus just animate as they do and I'm back in the map-selection screen. As shown in the screenshot below, this is after I try to host the map in LAN and the debug window seems fine with no errors, and loading all those war3map files.

      [IMG]

      Is this an issue with plugin compatibility (I'm still using the old plugins, e.g. Http.cs -> Http.dll)? I'd assumed that since there were no errors on startup with loading these plugins that they were OK, but this may be the issue here, in which case I'd need to write an updated version of the plugins.
    19. Chief_Of_GxBxL
      Chief_Of_GxBxL
      That is correct, the JassAPI plugin was not in the plugins folder. However, I did try putting it in the folder in the past in order to resolve this issue, and it looks like another error pops up, this time with WarAPI:

      Error when JassAPI is present in the Plugins folder...

      ----------
      Preparing folders . . .
      Done! (0.09 ms)
      Loading plugins from 'L:\Users\chief\Desktop\SharpCraft\SharpCraft-4.0.0.136\TinkerWorX.SharpCraft.Launcher\bin\Debug\plugins' . . .
      Locating plugins . . .
      File: Http.dll
      File: Input.dll
      File: Interface.dll
      File: MindWorX.Modules.Stopwatch.dll
      Type: MindWorX.Modules.Stopwatch.StopwatchPlugin
      File: MindWorX.SharpCraft.Modules.JassAPI.dll
      Exception: System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
      at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
      at System.Reflection.RuntimeModule.GetTypes()
      at System.Reflection.Assembly.GetTypes()
      at TinkerWorX.SharpCraft.PluginSystem.LoadPlugins(String folder, PluginContext context) in L:\Users\chief\Desktop\SharpCraft\jassnewgenpack207\SharpCraft-4.0.0.136\TinkerWorX.SharpCraft\PluginSystem.cs:line 46
      LoaderException: System.IO.FileLoadException: Cannot resolve dependency to assembly 'MindWorX.SharpCraft.Modules.WarAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
      LoaderException: System.IO.FileLoadException: Cannot resolve dependency to assembly 'MindWorX.SharpCraft.Modules.WarAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
      LoaderException: System.IO.FileLoadException: Cannot resolve dependency to assembly 'MindWorX.SharpCraft.Modules.WarAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
      LoaderException: System.IO.FileLoadException: Cannot resolve dependency to assembly 'MindWorX.SharpCraft.Modules.WarAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
      LoaderException: System.IO.FileLoadException: Cannot resolve dependency to assembly 'MindWorX.SharpCraft.Modules.WarAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
      File: StopWatch.dll
      File: String.dll
      Done! (90.84 ms)
      Loading plugin assemblies and instanciating types. . .
      ----------

      Since it's complaining about WarAPI, I've tried placing WarAPI in the plugins directory as well, and I get this:
      [IMG]


      Something about sandboxing and networking.. Lidgren.Network.dll is in the folder from which I'm running Launcher.exe. Is there a setting/flag I'm missing? Excerpt taken from the screenshot:


      ----------
      An attempt was made to load an assembly from a network location which would have caused the assembly to be sandboxed in previous versions of the .NET Framework. [...] does not enable CAS policy by default, so this load may be dangerous. [...] enable the loadFromRemoteSources switch.
      ----------
      Should I enable this so-called 'loadFromRemoteSources' switch?
    20. Chief_Of_GxBxL
      Chief_Of_GxBxL
      Ok I'm almost there I think. The new stopwatch plugin which I've been using is still getting upset though, when it loads in Launcher.exe. Here is the plugin: [IMG]

      Then I get this mess when running Launcher.exe with the stopwatch.dll in the plugins folder...

      ----------
      Loading plugins from 'L:\Users\chief\Desktop\SharpCraft\SharpCraft-4.0.0.136\TinkerWorX.SharpCraft.Launcher\bin\Debug\plugins' . . .
      Locating plugins . . .
      File: Http.dll
      File: Input.dll
      File: Interface.dll
      File: MindWorX.Modules.Stopwatch.dll
      Exception: System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
      at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
      at System.Reflection.RuntimeModule.GetTypes()
      at System.Reflection.Assembly.GetTypes()
      at TinkerWorX.SharpCraft.PluginSystem.LoadPlugins(String folder, PluginContext context) in L:\Users\chief\Desktop\SharpCraft\jassnewgenpack207\SharpCraft-4.0.0.136\TinkerWorX.SharpCraft\PluginSystem.cs:line 46
      LoaderException: System.IO.FileLoadException: Cannot resolve dependency to assembly 'MindWorX.SharpCraft.Modules.JassAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
      LoaderException: System.IO.FileLoadException: Cannot resolve dependency to assembly 'MindWorX.SharpCraft.Modules.JassAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
      LoaderException: System.IO.FileLoadException: Cannot resolve dependency to assembly 'MindWorX.SharpCraft.Modules.JassAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
      LoaderException: System.IO.FileLoadException: Cannot resolve dependency to assembly 'MindWorX.SharpCraft.Modules.JassAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the ReflectionOnlyAssemblyResolve event.
      File: StopWatch.dll
      File: String.dll
      Done! (24.61 ms)
      ----------
      It looks like the dependency on JassAPIPlugin is failing, and complaining about some pre-loading stuff. Does this mean that things are not being loaded in the correct order?


      - - -
      In response to your documentation, I think a post for each module would work very well! If I can get this plugin to work, I'd love to re-write the older plugins to be aligned with the new plugin framework you've made, in which case I can contribute some documentation.
  • Loading...
  • Loading...
  • About

    Birthday:
    Jul 17, 1987 (Age: 29)
    Location:
    Denmark
    Occupation:
    Student/Business Owner
    Current Project:
    SharpCraft
    WarCraft 3 Account:
    MindWorX
    WarCraft 3 Realm:
    Northrend (Europe)
    Favourite Race:
    Draenei
    Favorite Organization/Clan:
    Bloodhoof
    Staff Position:
    Tool Moderator

    Signature

    "Wulfy loves Nex!"
  • Loading...
  • Loading...