• 0

    posted a message on Importing .m3 to Blender error

    Uhm, that error doesn't tell a lot - is it a full message you've got? There should be stack trace. (Maybe in console view).

    bpy_struct is like a superclass thing in terms of Blender API for addons.

    Posted in: Artist Tavern
  • 0.960666358167515

    posted a message on [Question] Screenshots are changing tint upon upload. How to prevent this?

    When you're saying you're uploading them, you mean uploading to Battle.net, right? As screenshots for arcade section?
    Actually that would explain something.. because I did notice such nothing for some other random arcade map.


    Anyway, it's most likely a flaw in the way Blizzard is processing TGA files. Possibly your TGA images have embedded color map which SC2 can't handle. Or what's more likely it just strips the header that included the color map, without adjusting the image. What in the end may give such effect.


    Your options are:
    - use TGA without embedded color map
    - or simply use JPGs.. as they're better suited for this use-case anyway

    Posted in: Artist Tavern
  • 0

    posted a message on UI Error in All Maps
    Quote from Prodigy454 >>
    Quote from XelnagaNaga >>

    Hi, I am still quite new with the editor, just wondering if anyone can help me out with this error message?


    UI: File [StandardDialog.SC2Layout] Line [189] Column [9]. Unknown type attribute [Browser] for: [Browser].


    I got this message on the debugger colored in dark blue, when i saved my work.

    I was working on data editor and i haven't opened or touched the UI editor.


    Will this affect the game in anyways? Publishing?



    It’s nothing to worry about. Its a blizzard native UI error that we all get.

    Just ignore it. Maybe Blizzard will fix it eventually.. but it's just annoying at most anyway.
    Posted in: General Chat
  • 0

    posted a message on Triggers that access a global variable (an array of 400 by 400 reals) malfunctioning during multiplayer only

    Forget about limits - there are no limits on anything that would be exclusive to online games. 400x400 array of scalar type like fixed (aka real) is nothing. Whether you actually need this array to achieve what you need is another thing, but let's not focus on this.


    I am assuming that global variables are only running in one spot (host? battlenet? Who handles trigger execution logic?

    It seems like you just don't get how SC2 works. It's based on so called deterministic synchrous game engine.. I'd recommend you to read this [1] to get better understanding.

    To answer your question in short - everyone.. that is every client/player connected to the game. Not the battlenet server though. When your friend drops a nuke, he has to process the action on the same terms as you do (over the wire there are transmitted only inputs/commands from each client). Thus both of you use the same global variables to get the same result.
    Perhaps this is what you've missed, when implementing triggers (I didn't try to analyze them).


    [1] https://blog.forrestthewoods.com/synchronous-rts-engines-and-a-tale-of-desyncs-9d8c3e48b2be


    and that triggers are not multi-threaded (i.e., an infinite loop will freeze the game; the game allows as many CPU cycles to finish trigger loops as those loops require, it does not save pause long loops and resume them later).

    There is multi-threading.. but no the one you'd expect - threads cannot run in parallel. And executions happen in cycles. I'll just link the wiki again, because it explains it better than I would be able to:


    In case of SC2 context switch can be initiated by Wait function. When supplied with 0.0 it guarantees the thread will be resumed in next game frame.
    And yes, there's a limit of actions VM can perform during one frame. I don't recall exact limit, but you can indeed freeze the game for few secs, before timeout occurs.

    Another thing that makes this hard is the lack of any debugger (that I know of).

    There's one.. kinda obscure, but does the job. In testmode you can open it by typing "TrigDebug". Also it requires game to be in windowed mode. If you want to have it at start of the game then head over to editor preferences -> test document.

    Is there any way at all to open some kind of debug message window DURING MULTIPLAYER and see if the map is generating errors?

    You can setup TriggerDebugMessage to save to log file. Log file will be written anytime you play the game or watch the replay.

    But, you can also relaunch SC2 with "-development" flag, that will enable test mode for replays. Including access to debugger.
    If you launch SC2 from Battle.net client, then in its options there's somewhere a field to type additional cli params. For testing purposes that would be "-development -windowed -trigdebug".


    When testing offline it's also good too add additional dummy players, that have the control shared to you. And simulate what would happen in actual online game.

    Posted in: Triggers
  • 0

    posted a message on Cannot build ultralisk in custom map..WTF......

    Yes, multiplayer and campaign dependencies don't play well together. If you want to use them together, you'll have to resolve such issues on your own.


    Multiplayer dependency is automatically injected to maps set as melee (and that's the root cause of your problem). Add VoidMulti dependency at the end of your current list, and Editor will reflect what's actually happening in game.


    Posted in: General Chat
  • 0

    posted a message on Starcraft 2 - Square Root Function Behaviour

    Are you familiar with the difference between floating point and fixed point number?
    SC2 doesn't use FPU, and the fixed type is the way around it, which comes at the cost of low precision.


    Fixed type consists of 32 bits:

    -- 1 sign | 19 integer part | 12 fractional part --

    I won't tell you how the internal implementation of this function looks like, as I don't really know myself. But there are certainly couple of methods it could've been done. 

    SquareRoot(10.5) ==> 3.2402

    The result was trimmed to 4 decimal places, but in reality it is exactly equal to .240234375 (result of 984/4096).
    The next possible value would be .240478515625 (result of 985/4096). What is above the expected result of sqrt, thus it returned the closest possible that was equal - rounded down.


    The fractional part of 10.5 is represented as 2048/4096. Now if you iterate over next possible values:


    2049/4096 = 0.500244140625 | sqrt(10.500244140625) = 3.2404080207012513 (nope)
    2050/4096 = 0.50048828125 | sqrt(10.50048828125) = 3.240445691760626 (nope)
    2051/4096 = 0.500732421875 | sqrt(10.500732421875) = 3.240483362382069 (got it!)

    So yeah, that's as far as explanation goes.


    btw. You can increase the verbosity of FixedToText when it comes to decimal places - it just defaults to 4 at most.

    Posted in: General Chat
  • 0

    posted a message on Please recovery link

    Ah damn, you're right. I thought numbering in attachments have been preserved, but nopeee.. anyway this is correct URL:




    (I have no clue where these 2 numbers come from)


    This is how I found it:
    site:sc2mapster.com "Screenshot2011-04-17_09_16_21.jpg" -"15/252/Screenshot2011-04-17_09_16_21.jpg"

    (in Google)
    then in source code of the first result search for:
    class="multi-file-upload-file-image comment-attachment-image" alt="Screenshot2011-04-17_09_16_21.jpg"
    The preceeding src attr of img element will be correct URL. But I'm unsure if this method would work for in all cases. I think it's worth to note anyway.


    (btw. this would have been easier if media.forgecdn.net was indexed by Google, but it isn't sadly).

    Posted in: General Chat
  • 0

    posted a message on GAx3 Trigger Source Code? Dependency Problems

    Yeah, this file was mostly stripped from newlines.. and whitespaces in general. I don't know why he did that.

    Anyway, I guess you don't really need to modify it, since you can just re-link the dependency that's still up on bnet, right? If no, I could fix the file for you (in the past I wrote some scripts for cases like this).


    btw. If you wanna work with Galaxy code I recommend this : https://marketplace.visualstudio.com/items?itemName=talv.sc2galaxy :p

    Although the feature which you would need right new - that is pretty print/format code is not yet finished.


    Posted in: General Chat
  • 0

    posted a message on Please recovery link

    That's different thing. Attachments (which were bound to posts) have been restored. All of them I believe.

    However attachment URLs have changed, and links manually embedded in the posts haven't been updated. But if you correct them by hand they'll work.


    With the exception of the ones that are orphaned - when original post to which the attachment was bound have been removed (or attachment was manually taken down). In such case these files haven't been moved to the new CDN.


    The example of it can be attachment in the signature of DrSuperEvil (which is trimmed btw.) - full signature can be seen in WaybackMachine:


    That's the URL:

    It uses old pattern. Now attachments are stored in CDN, corrected link would look like that:

    Unfortunately it doesn't work because of the reason I've mentioned above. It was an orphan. The post/project to which it was bound have been removed before site was migrated.


    When it comes to links in general, then yes. They didn't bother fixing them. But it's fairly easy to do that manually using search engines when there's such need. As example take the link in DrSuperEvil signature:

    Now cut the part after ID, that's: "data-actor-events-message-texture-select-by-id"

    Then build following query for the Google engine:
    site:sc2mapster.com inurl:data-actor-events-message-texture-select-by-id
    That would be:
    https://www.google.com/search?&q=site:sc2mapster.com inurl:data-actor-events-message-texture-select-by-id


    It works in most of the cases. If however title of the thread was changed, then other methods must be used.

    This is how I've fixed links in the Tutorials section of the Wiki btw.
    (using script that automated the process).

    Posted in: General Chat
  • 0

    posted a message on Please recovery link

    All attachments works now. Silent update from Curse... not actually sure if intentional, haha. Perhaps it's "side effect" of their migration to AWS.


    Posted in: General Chat
  • 0

    posted a message on GAx3 Trigger Source Code? Dependency Problems

    Yep, you did miss an include statement:


    // Custom Script: Custom Script
    include "TriggerLibs/GAx3"


    There's another Galaxy file, where all the functions are actually declared.

    It's because author coded it all by hand, and in Triggers there are just metadata definitions of these functions - pretty much like you've said. So they can be accessed from the GUI. But actual function declarations are in this custom file.

    Posted in: General Chat
  • 0

    posted a message on Galaxy IDE as Visual Studio Code extension

    In general whitespaces are ignored in languages where they are not used for indicating beginning and start of the block  (such as Python etc.). Galaxy mostly follow C syntax, thus you could even do things like:


    int lv_I;
    if (true)
    lv_I+= 1;
    // a

    And it should work (it does in current version of SC2). But you might be right - I never tested how it did behave in the past.


    Reporting bugs here is completely fine too. But I just respond to it slower, since I don't visit the site so often anymore.

    Posted in: Galaxy Scripting
  • 0

    posted a message on GAx3 Trigger Source Code? Dependency Problems
    Triggers file defines all the elements which are present in Triggers component of the Editor, and as such it is file exclusive to the editor, it is ignored by the game if present - the process of generating Galaxy code is done by editor.

    And now more specifically to your problem - *GAx3.SC2Mod* can be downloaded here: https://www.sc2mapster.com/projects/gax3-starcraft-ii-editor-enchant

    What you probably did, thus I'm kind of confused why you're saying it has no *.galaxy file included. Perhaps you were looking in root directory for MapScript.galaxy? In case of libraries the file is put into Base.SC2Data subdirectory, i.e. Base.SC2Data/LibGAx3.galaxy.

    Keep in mind that the version of GAx3 linked above is very old and likely not up to date.

    But most importantly, GAx3 is still up on Battle.net:
    There are some copies, but always look for the one from the author itself - Renee.
    It was even updated this month, what indicates any bugs introduced by recent SC2 patches were addressed.
    You probably just need to link it again into your map.
    Posted in: General Chat
  • 0

    posted a message on Galaxy IDE as Visual Studio Code extension

    Thanks for reporting these, but if you've account on Github it would be probably better to report it there - I get the notification and such.



    As for the second one, if you move things around, you'll get:


    if (true)
    lv_I+= 1;
    else if (true) // removed new line :)
    lv_I+= 1;

     What is valid code :) Unless SC2 Galaxy parser complains about something like that? O.o

    Posted in: Galaxy Scripting
  • 0

    posted a message on Time for another Is The Arcade Dead? thread!

    Hah, this kinda remainds me of all these Reddit posts "is it too late to get into starcraft" which are popping every other month since years.

    https://www.reddit.com/r/starcraft/search?q=is it too late&restrict_sr=on&sort=relevance&t=all


    Maybe an API to track stats for my game and maybe being be able to do HTTP requests inside the game? Is that too much to ask?

    From security point of view, yes it is too much.

    SC2 has official API though, where you can fetch players game history and such. But it's all kind of limited, and rather specifically suited for Ladder tracking, not Arcade.

    Posted in: General Chat
  • To post a comment, please or register a new account.