Jump to content


  • Content Count

  • Joined

  • Last visited

  • Medals

  • Medals

Community Reputation

10 Good

About Milyardo

  • Rank
    Private First Class
  1. Milyardo

    Arma Geography

    Bystrica and Bukovina aren't fictional, they're real districts/provinces of the Czech Republic.
  2. You might want to look into a few more English lessons before you keep making accusations like these. That part means they have to make an offer for your entire mod, and not parts of it.
  3. That isn't what that means at all. It just means once you submit it to the contest you can't unsubmit it. Which makes sense because BI is probably going to tweet/blog/make press relases about the the mods in the contest and include demos, download links, videos, screenshots, etc of the mod, be it images or videos made by the author, or by BI themselves. If that still doesn't get you take take off your tin foil hate there's this: iTL;DR they can't money off your mod without an agreement.
  4. What does it matter to you what someone wants to do with their project? It's not yours and you have no say what they do with it. It's not like mods with commercial goals don't already exist. Once again, helping someone make something doesn't mean you're entitled to their work; you have a disturbed notion of copyright assignment and derivative work. Also, for the second time, no ones going to "hunt" you, if someone uses someone else's work the project gets disqualified and no one gets any money. What part of it's against the rules do you not understand?
  5. You can't assert copyright over someone else's work because you taught them how to make it, nor can you assert copyright over configuration files. The contest rules forbid this anyways, and it a moot point.
  6. Milyardo

    JavaScript for ARMA

    (_something + " = null;") call JS_fnc_exec _something = nil; In this particular example(it's a bad example for what we're trying to illustrate). The user explicitly created a global variable, so it should be up to them to manage it. Detecting user explicit globals would be a fairly advanced feature however and beyond the scope of what I was describing. Returning our earlier example: _result = "2+2" call JS_fnc_exec //At this step your framework should create a global variable in JavaScript, say "expr1" and return that name //It's important to note that your framework creates this reference, not SQF, it's up to you to manage it //and by extension SQF cannot leak references it doesn't create. "expr1" call JS_fnc_exec //returns 4 _result call JS_fnc_exec //also returns 4 _result = nil "expr1" call JS_fnc_exec //returns 4 call JS_fnc_reset //A new method to reset the v8 execution context or just collect the list of evaluated expressions your framework maintains //resetting the execution context is more desired because it allows us to undefine classes as well. "expr1" call JS_fnc_exec //returns undefined ---------- Post added at 01:27 PM ---------- Previous post was at 12:08 PM ---------- Reference binding and synchronization in general would be a nice to have.
  7. Milyardo

    JavaScript for ARMA

    You should reread my first post on this subject, your framework should create the the global reference, and return the name or identifier of that reference as in the second example I posted.
  8. Milyardo

    JavaScript for ARMA

    That not a leak even in the loosest definition of word. There is still a reference to the JavaScript object as a global, which can easily be evaluated through the list of global variables. SQF can't leak those values because SQF doesn't manage those references. That said you will have a ever growing list of evaluated expressions as global variables, this is a common in REPL environments and they usually come with some sort of command to reset the environment or session(in addition to evaluated expressions many other environm
  9. Milyardo

    JavaScript for ARMA

    Serialization would probably better than toString() however I still don't think it is correct. When passing values into a REPL assignments should be transitive, passing a value returned from the REPL should result in the same value. The following sequence should be valid regardless of object's type(instead of an object it could be String, or a Long, or an Array) when calling by value, or by reference(ignoring issues of precision). _expr1 = "new someObject" call JS_fnc_exec; _expr2 = "someObject" call JS_fnc_exec; //This should return true (expr1 + " === " + expr2) call JS_fnc_exec; Yes a named reference is exactly what I was refering to: _value = "new someObject" call JS_fnc_exec" //Should return "expr1"(or some other token of your choosing) as a value ("_value+".toString()") call JS_fnc_exec //Should invoke toSting() on expr1 I don't understand how that makes references useless at all. references don't work across different VMs or networks in any other language without some sort of framework to serialize objects and send them for you in any other language, even SQF. Serializing still wouldn't be correct, in the example above a new object would be constructed every time I pass a the value back to repl, instead of reusing the same object via a reference.
  10. Milyardo

    JavaScript for ARMA

    After playing around with this shortly, I don't think this is correct behavior. The framework should instead return a reference(assigning some sort of global named reference would probably be easiest, though I don't know if that would be best) that can be reused in subsequent calls to JS_fnc_exec in a manner similar to many other REPL implementations do for returned values. EDIT: Of course this raises the question on how one would manage reference to primatives as well, a how to manage a system for call by value/call by reference(EDIT: Sorry calling by reference/value is a non issue as that is evaluated by v8, instead a system would be needed for returning references or values).
  11. You mean as part of the command menu for player team leaders? Before this is implemented the whole radio/command system should be overhauled to be a little more dynamic that is it is now. A simple land command wouldn't be applicable to every unit and there should should be variations of it to respond to the current RoE and combat status. Even if the command system were programable outside the support/radio radio menu would be great as to allow the community to address the now dated static nature of the command menu.
  12. Milyardo

    JavaScript for ARMA

    I would suggest adding debug support as a todo. Perhaps even add the calling SQF function/line as content in the debug message. I don't have experience with v8 but I would first look into a implementation of a handler for v8::Debug::SetDebugMessageDispatchHandler() to do this.
  13. Milyardo

    ARMA 3 Alpha - Java Virtual Machine

    How did you hear that if there has been no news on the subject?
  14. Milyardo

    Arma 3 Linux Version ?

    From what I remember it was Svartalf from LGP about the port of the Armed Assault, not ArmA 2, I don't think if free was part of that discussion or not(I doubt it if Svartalf was trying to contract the port for LGP). http://www.phoronix.com/forums/showthread.php?t=17492 Those aren't the only issues, AFAIK, BattleEye regressed a few months ago when BattleEye started using KiUserExceptionDispatcher.
  15. You asked if SQF was interpreted or if it was run from bytecode. It's neither, it's compiled. I did state there was a intermediate representation in ArmA(raP) but incorrectly assumed it applied to SQF. However I was correct in stating that intermediate representation is not a bytecode language. I don't understand how this anything different from what I said, other than you seem to be implying that Zend and the classical PHP intrepreter are the same which they are not. EDIT Your question still doesn't make sense. What exactly is a 'bytecode layer'? You have machines and you have input. Bytecode is input into a virtual machine.