Jump to content

IT07

Member
  • Content Count

    345
  • Joined

  • Last visited

  • Medals

Posts posted by IT07


  1. Yes and no.

    It depends on your system but not completely either. There is a certain limit in the ArmA 3 engine that makes it so it does not fully utilise the power of hardware.

    For example: if you have a very good rig and a sick rig; the difference will be small because the engine has it's limits. Which means that if you get 50fps on a good system, there is no guarantee that you would get 100 on a sick system.

    One other thing arma does not like: objects really close to each other. For example: 200 objects in 50m is worse than 40 objects in 50m.

    So, many objects within a certain radius will drop your fps a lot. But, it also depends on which objects were used. Some have more poly's than others.

    It's just a matter of trying it out :)


  2. Script hooks in ArmA are usually hacks. In ArmA, you put code in the mission that you are making.

    Have you checked these links?

    https://community.bistudio.com/wiki/Category:Scripting_Commands_Arma_3

    https://community.bistudio.com/wiki/

    Also, just a tip: do not start something new in ArmA 2. It is old (not forgotten though).

    Try starting with ArmA 3 :)

    A good tip would be to find a mission or script which has the thing in it you want to make and then study it.

    Good luck!


  3. NEVER put waitUntil in the init.sqf :)

    It will probably not solve your problem but it will improve you mission.

    And I have a question about line 47:

    waitUntil {!isnull tio1 && tio1 == tio1 && !isnull tio2 && tio2 == tio2 && !isnull tio3 && tio3 == tio3 && !isnull tio4 && tio4 == tio4 && !isnull tio5 && tio5 == tio5};

    What the hack are you trying to achieve with that line? It does not make sense to me. But you are the one that made it probably so maybe you could shed me some light?


  4. I should help you out a little bit more:

    Let's say you have 3 spawn points that are randomly selected, and after the player is spawned on one of them, you want to delete the rest

    Here's how you do it: Create 3 triggers and build the spawn place and whatever you want to be at the spawn place. Give all of those objects a name. (make the names really obvious, it will save you a lot of brainwork, I promise) Then you need to make sure that it (whatever selects the random spawnpoint) can run a little script for each spawn point. It should be able to run this little script if player spawns on place 1:

     playerSpawnedOnOne = true; 

    Do the same for the other spawn point scripts:

     // for spawn place 2
    playerSpawnedOnTwo = true; 

     // for spawn place 3
    playerSpawnedOnThree = true; 

    Now you can setup the triggers: for trigger 1, use this condition:

     playerSpawnedOnOne; 

    (this will check if playerSpawnedOnOne is true)

    Do this for the other triggers too. (playerSpawnedOnTwo for trigger 2 and so on.....)

    What we currently have is 3 triggers that will activate when a player spawns on the spawn point that belongs to that trigger :)

    Now we only have to do the last part of scripting: make sure that if trigger 1 becomes active, it will delete all of the objects that belong to spawn point 2 and 3. And of course, same counts for the other triggers. (2 deletes objects for 1 and 3, 3 deletes objects for 2 and 1)

    For this, you can do the following:

    put all of the names for the objects belonging to each point in an array and attach a variable to it:

    objectsForOne = ["someFireplace", "aTent", "canOfBeans", "emptyMag", "someOtherCrap"];

    (put the above in some script that runs as early as possible. (preferably in a script being loaded with preproccessfilelinenumbers)

    Do the same thing for the other points. (you can put the rest one line below the others)

    Then, for trigger 1, put this in it's ON ACT field:

    deleteVehicle objectsForTwo; deleteVehicle objectsForThree; 

    This will keep the on act field very clean instead of putting all of the object names in the on act field :)

    Do the correct thing for the other triggers as well.

    Now you should have a solid system running like it should :) You might need to test it though. all of the above code is out of the top of my head so there might be something in there you know ;) Anyways, I hope this was clear enough to you. Good luck!


  5. You are actually not doing anything wrong. It is rather a stupid design flaw of ArmA 3.

    I shall explain: object condition is checked ONCE really really early at the start of the mission. It would be impossible to set a condition for those objects because the condition check for objects is so early. What you can try though (I have made a random car spawn system with this) is let all objects spawn, but when a certain condition is met or not met, you can make a trigger delete all of the not-needed stuff with

    deleteVehicle nameOfObjectHere;

×