• 🏆 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!
Arhowk
Reaction score
25

Profile posts Latest activity Postings Experience Resources About

  • Check out Network thread again and watch the video under Synchronizing Many Integers under features. Also open that map up that's above video.

    I finished BitInt : P, and it shows how to do the string to int to string stuff.

    AES also supports BitInt now, so there's your encryption

    Mag is still doing MD5, which is validation.
    Reputation (+1):
    (Post) Thanks for the corruption strike, I'm still trying to figure this out and trying to import in my test map for further study of some sort.
    lol...

    for syncing and WaitForGameToStart, be sure that you are running them in an executing thread.

    For the other stuff, it's obvious why it crashed, you put in ABZ for Base 0123456789. Do you see the chars ABZ in 0123456789? No, lol.
    Read my last visitor message to answer question 1

    Read Network documentation to answer question 2 (this is in module)

    * static method allocate takes integer amountOfData returns thistype
    * - Call this inside of your create method. Pass in the number of integers
    * - you would like to synchronize. This number is local!


    You should look at the 2 feature demonstrations at the top of the resource as well: after you finish reading the docs.
    I'm driving back home now, so I'll be back online in like an hour : \

    You were reading a plain string from a file before. In order to synchronize a plain string, you have to serialize it into a sequence of integers and return those integers. That is why I said that what you were trying to do was much more daunting : P.

    You could put them together via a BigInt and then do BigInt.convertString and return the digits. That'd be the simplest way until I finish up my new BitInt stuff : P.
    Well, I can tell you right now why it's doing what it's doing

    You have to synchronize the data. File I/O has no synchronization in it, you have to do it yourself.

    I suggest you start with something a little less daunting.

    call file.write("123456")

    local integer i = S2I(file.read())
    local Packet packet = Packet.broadcast(i, i != 0)
    call DisplayTimedTextToPlayer(GetLocalPlayer(),0,0,60000,I2S(packet[0])) //assuming you are player 0

    After you successfully do 1 integer, then try a stream of integers


    call file.write("1")
    call file.write("2")

    struct Test extends array
    private File file

    private method getNextBroadcast takes nothing returns integer
    return S2I(file.read())
    endmethod

    implement StreamMod

    static method sync takes nothing returns nothing
    local integer i = 0
    local thistype this
    local File file = File.open(...)

    if (GetLocalPlayer() == Player(0)) then
    set i = 2
    endif

    set this = allocate(i)

    call synchronize()

    call DisplayTimedTextToPlayer(GetLocalPlayer(),0,0,60000,I2S(read(0, 0))) //1
    call DisplayTimedTextToPlayer(GetLocalPlayer(),0,0,60000,I2S(read(0, 1))) //2

    call file.close()

    call deallocate()
    endmethod
    endstruct
    I didn't comment it out, you did

    You also changed some of the lines in the Bonus script too.. I had to do a lot of fixing

    Proof
    http://www.hiveworkshop.com/forums/jass-resources-412/system-bonus-196954/

    Last edited by Nestharus; 02-18-2012 at 02:50 PM.

    You changed this line to CREATE_BONUS_ABILITIES
    //! runtextmacro BONUS_SCRIPT()

    You commented out UnitIndexer

    and I don't know what else you did, I can't guarantee the script to work because I don't know what else you modified.

    In order to guarantee the script working, cnp the original Bonus script on top of your script from library to endlibrary. Do not replace the macro below that or it'll totally break : ).
    I'll put it in for you then on the old comp

    the link you sent me is gone, resend the map to me
    I think it's that the exes like ObjectMerger etc weren't design for 64 bit. I ran it on a 32 bit machine just fine.

    go run the Lua stuff on a 32 bit machine and cut/paste the generate JASS code into the map.
    hm... I'm trying it in a blank map and am getting the same errors..

    I can't run Lua anymore? wtfx? rofl
    hm.. I got everything to run except for the initscript trig...

    your map is totally screwed up >.>, I have no idea what in your map is corrupt to be causing it, heh.

    What I'll try doing is extract all of your object editor data and then put it back in later.
    Arhowk, I ran into the same error you did, it's your map, so I believe you can run it just fine.

    Here is how to run it. Change all FileExporter to ObjectMerger and it'll run just fine.

    Give it a try.


    //! externalblock extension=lua ObjectMerger $FILENAME$
    I can't save your map because I'm using vex's jasshelper

    as such, I'm disabling all of your triggers, you can enable them again : )
    well, today I'm pretty much recovered, but tomorrow is a holiday, so I'll be out of town until Friday.

    On another note, I do have some good news. The new version of Data Sync appears to work perfectly : ). I'm just trying to see what I can do to make it as fast as possible.
    I've been extremely sick since Friday and haven't been able to get anything done. I'm only starting to feel better today -.-.
    send me your map, I'll put Bonus into it >.>. I'll just import the Lua code directly so that you don't need to run Lua : ).
    Lol, i'm quite retired of mapping, but i wouldn't give credit for a such system since i knew how to do it, i mean no offense but i didn't need you to make it.
    The only part i didn't knew that was possible is for the unselectable part, it comes from a friend of mine.
    Well, since you've closed your thread i ask it here ...

    So you have tried with an item which have a passive effect, it desyncs if the dummy and the "real" item has not the same effect on pickup event ? (even if you remove the item on this event)
    What he "makes" is likely not that you actually want to have, at least not me. But if you are givin' up warcraft modding then nvm.
    The ban reason appears to be...

    ----------
    Harrassing moderator, constant disobidience of rules, spamming, flaming, aggressive behaviour
    ----------
    Which was mentioned to him in the message he received when he was banned.
    Hi, could you give me the textures that you made this with? or the path to altering the minimap if you don't mind...

    ----------
    what? no. stole this from your signature





    if your UI-Tile1 (i think its 1 anyway) overlaps the minimap, the ui will show not the minimap
    ----------
    Yea we levelled the 1/4 part of the garden also I have finished 2/3 part of my middle level English exam. Also I planned some schematic for an alarming system. To the save-system I did nothing.
    I don't want to keep the saved numbers as numbers either, thats why I am using an unique saving style which is basically series of special characters. Also I name files specially so overall who is enough dumb to try and haxor money through files, deserves it ;D Also I am sure nobody had hacked the actual save code. It is easier to read the map's .j file, export needed functions, run them for your taste, get impossibru character, and WIN!

    Well... Tomorrow you will be able to find me on THW chat about 3 PM. Basically I'll be at keyboard except when I won't ;P
    I am planning to do it a lot different way. I'll make it with more files and just encrypting them not compressing. At all infinite save size. I dunno what can screw up at you but I recommend to clear and set a new gamecache after every use. Also don't sync one-by-one cause every sync takes few time, so if you have 1000trillion things to load then the whole game will pause in multiplayer each load. And as I said you can't synchronize strings. For some reason it doesn't work.

    http://www.hiveworkshop.com/forums/pastebin.php?id=2uokd8 the library I made for synchronizing integers. If it can help you then use without credits or anything.
    Use integers. Don't ever use the strings since you can't synchronize them only if you convert it into integer. Also string hash can cause some desyncs. I recommend you to give nes' shit up and save everything one-by-one encrypted. Also Nes' system is slow as hell. I had saved successfully but it not really worked in multiplayer. In single I could make the whole thing easily but in multiplayer things get complicated a bit.

    Why don't I use? I don't like shortcuts, also if you'd like to use it you have to make jass function what is inefficient. Basically the vJass is inefficient. Ofc it saves time and some work but I don't like shortcuts. Also systems I am making takes more data than vJass could handle.
    Yea I am willing to do the local files thing. Well.. I don't know actually what you want to get at the end also I have never worked together with others. I have a pretty different coding style than others so that can mess up.( no-structs, scopes, privates ... )
  • Loading…
  • Loading…
  • Loading…
  • Loading…
  • Loading…
Top