Jump to content


  • Content Count

  • Joined

  • Last visited

  • Medals

Community Reputation

0 Neutral

About lethal

  • Rank

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. lethal

    I think we can all agree... optimization

    there is no such thing as a new engine (generally speaking). modern software development is modular. certain elements within a product get overhauled/replaced/refactored but to scrap the whole thing would be an enormous waste of resources. guess why you see that havoc/scaleform/speedtree etc. logo on so many products? right because they've already build a working module that can be easily implemented in other products without having to do everything from scratch. no need to reinvent the wheel generally speaking. there are exceptions of course when such a product doesn't meet the specifications you set for it but as we're talking about BI internal code i'd expect it more or less already meets specifications set. only thing left to do is see which parts can be improved. maybe redo the render path to take advantage of new DX features, see if you can improve on the cost of an expensive pathfinding solution, fix issues that you have not anticipated (because you can't anticipate everything), cut too expensive stuff that doesn't meet your cost/benefit specs and so on. you get the idea.
  2. lethal

    Do you want Laaagdoll Physics in ArmA 3?

    of course not all hardware and software is the same. but it is true that there are certain standards that are guaranteed to apply. thats what they are for and thats why they exist. system requirements for any kind of software are there to guarantee that certain functionality exists in a system and that those standards are met - and if by time you mean the speed of the calculations then the same thing can be said there. its a moot point really. deterministic networked simulations that rely on massive amount of floating point calculations exist. and i have to agree with others here as well - a minute error shouldn't have a significant impact on the whole simulation as you seem to think. we are not simulating a whole world of physical objects chaotically interacting over the lifetime of a whole game but simply looking at a small window in time from where an actor looses the animation he was playing and switching over to a physical object being dynamically animated till he comes to rest.
  3. lethal

    Do you want Laaagdoll Physics in ArmA 3?

    true but that has nothing to do with determinism but is basic computer science ;) as long as you approximate the same way each time with the same initial input the result is always the same and thats the only thing that matters.
  4. lethal

    Do you want Laaagdoll Physics in ArmA 3?

    That's only half true! With a bit of extra work you can have deterministic fp operations (and thus physics) across different platforms as long as they adhere to the IEEE754 standard as Elijah kindly explained in his posts here, here, here and here provided you - as he puts it - go ninja on the code :cool:. he does indeed mention that none of the physics apis satisfy this strict definition of determinism which is why they (GPG) went head and did their own implementation; so i'm curious as to how BIs implementation of the physX api works provided they even rely on determinism as a minute difference in calculation on the physics won't have a noticable impact imo and shouldn't propagate and escalate within the simulation because of its limited lifetime... other games come to mind as well that seem to rely on determinism because of the number of states that would need to be synchronized... sins of a solar empire, the total war series to name two.
  5. great news, keep up the good work. some feature requests: i am working with two displays - would it be possible to separate the different views in separate windows so i can properly position them on my displays? also - one feature i'm really missing from np++: double clicking (and thus marking) a word highlights all the other instances of the word in the text. makes it easy to check if you've used smth already somewhere in the surrounding code. or when you want to replace smth without going through the dialog (i'm doing lots of stuff manually). and regarding the bracket highlighting: it seems to only highlight them when i move the cursor with the keyboard over the opening/closing bracket and not when i click on it. is that by design? sorry for bombarding you so much lately - i've just started using the tool a little more intensively so a lot of things come to mind right now and i wanna mention them before i forget what they were again ;)
  6. another one - this time with related files: "the given key was not found in the dictionary" the file view doesn't render anymore and all i get is a red X. project file, user.config and the exported dictionary can be found here: http://depositfiles.com/files/3orydgt1u happened before i shut down the program as i had to go to uni and when i started it back up. i have started a new project and loaded the old one again and all is well again. the files are from before i did that tho.
  7. naw - i did what any good windoze user does on a regular basis - uninstall, reinstall... problem solved :D edit: damn i must be a bug magnet: happened as i was closing the program because it seemed unresponsive. i was trying to get it to reload all the files in the project and it asked me about a billion times if i was sure i was willing to loose the changes i made (to which i answered no for about 500m and yes after that XD). upon finally finishing i decided to restart the program and then this. edit #2: hehe and now instead of not starting the program doesn't close :D
  8. That was quick! on a related note i still haven't been able to get squint started again... it updated just fine but still doesn't start :confused: no crash report/message either. i can see the little update thingie and the exe pops up in the task manager for a few moments then disappears again. :(
  9. i had it declared private before but removed that declaration for test purposes. gonna try again tho - maybe i missed something. btw that tool looks really interesting. looks like you did some fine work there - gonna try it out myself :) anyways - thanks for taking the time edit: fixed it - thanks for pointing me in the right direction. i refactored a little and moved that while loop inside another inline function with private declarations and that did the trick :) quite impressive seeing a whole ai squad clear a building quickly btw :D - now i just have to have them exit safely XD for anyone interested heres the fixed and slightly updated version: http://pastie.org/1164813
  10. Ive been working on a set of scripts to make the ai use the new buildings in oa more effectively and i am having trouble with one particular logic bug that i can't figure out. what this script does is basically take the players squad and make them clear the nearest (pathed) building from the bottom up quickly while taking the shortest path and using their manpower most effectively. this is just a test script hence the use of the player squad and not anything more elaborate. i just wanna get this basic functionality down before integrating it into something bigger. to test place yourself in the editor along with some units in your squad and run the script any way you see fit (action, radio etc..). I get the error that on a later iteration through the main loop the variable _closest is not getting any value assinged and is causing an error a few lines below (line 148) and i have experimented a bit (hence all the hints ;) ) bur cant figure out how to fix it. since i've been sitting and staring at this damn script for too long now and need some sleep i'm posting this here in hopes a fresh set of eyes can point me in the right direction. http://pastie.org/1163945
  11. lethal

    using already placed hangars?

    i tried that and it worked - sortof - i was able to "capture" the hangar and have it change color but i couldn't buy any aircraft... i'll sit down tonight and experiment a bit more. maybe i've overlooked something. where's the code located that tells a player what he can buy in his support menu? maybe i can circumvent the problem by adjusting that code.
  12. lethal

    using already placed hangars?

    that's an idea i've played around with, too. i'd prefer something a little 'cleaner' but if all else fails i will try and make that work. however - in my experience - i will most likely see a lot of clipping issues - so called z-fighting - when two objects occupy the same point in space. now if i could somehow make one of them invisible that would be great. as for sinking objects into the ground - i do not know how hard - if even possible - it would be to destroy them in that case and i want too keep that strategic option open to players.
  13. i'm currently in the process of porting warfare to another island. There are quite a few hangar buildings already placed and i thought it would be nice if i cound incorporate them into the gameplay instead of placing yet another and leaving the others without function. i haved tried to place gamelogics on top of those buildings and set their init field to not use "this" but "(position this) nearestObject ID" where ID was the ID of the hangar building the gamelogic was placed on. unfortunately this doesn't seem to work as i get strange script errors when  starting the mission and the hangars don't work as i intended either. I've also tried a few other variants but none of them seem to work. The farthest i was able to get was to have the marker change color when captured but as soon as that happened the script error was back again and i couldn't purchase anything. Any help on this will be greatly appreciated.
  14. lethal

    Afterburner on su34

    here's how you do it: <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> private ["_oldunits"]; _oldunits = []; while {true} do { _newunits = vehicles - _oldunits; { if (_x iskindof "Su34") then { nil = _x execVM "AircraftEffects\SU34_Afterburner.sqf"; nil = _x execVM "AircraftEffects\SonicBoom.sqf"; nil = _x execVM "AircraftEffects\SU34_WingtipTrails.sqf"; nil = _x execVM "AircraftEffects\SU34_FuselageVapour.sqf"; } else { if (_x iskindof "AV8B") then { nil = _x execVM "AircraftEffects\AV8B_WingtipTrails.sqf"; nil = _x execVM "AircraftEffects\AV8B_FuselageVapour.sqf"; }; }; } foreach _newunits; _oldunits = _newunits; sleep 1; }; just replace the contents of AircraftEffects.sqf with this. it checks every second but i think you can increase the interval... not tested at all, i just did that in the editor and have no time to check it atm. but please let me know if it works thanks for pointing that out. seems i forgot to make some changes to both emitters while editing
  15. lethal

    Afterburner on su34

    mhh.. i could make a loop that checks for new planes every couple of seconds... one other way would be to have the script executed whenever you create a new vehicle... like this: <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> //_aircraft is the vehicle that was just creted via scipt nil = _aircraft execVM "AircraftEffects\SU34_Afterburner.sqf"; nil = _aircraft execVM "AircraftEffects\SonicBoom.sqf"; nil = _aircraft execVM "AircraftEffects\SU34_WingtipTrails.sqf"; nil = _aircraft execVM "AircraftEffects\SU34_FuselageVapour.sqf"; //if it's a harrier only do these nil = _aircraft execVM "AircraftEffects\AV8B_WingtipTrails.sqf"; nil = _aircraft execVM "AircraftEffects\AV8B_FuselageVapour.sqf";