Jump to content

bn880

Member
  • Content Count

    7023
  • Joined

  • Last visited

  • Medals

  • Medals

Everything posted by bn880

  1. bn880

    Bn880's Tracers V1.0

    ^ I approve 😄 and thank you RozekPoland! 😎 (To clarify it was more of an adaptation than a fix by Rozek, there was no bug with the initial release it was all on purpose. 😉 )
  2. BN_tracers 1.24 V1.24 Changelog: 04/07/2005 Fixed ricochet sometimes causing damage to firing unit who has very large recoil. (Modded weapons) V1.23 Changelog: 21/06/2005 Fixed ricochet floating down from barrel in burst fire at very close range targets. (thanks to Terox of Zeus for bug report) Improved mission editor's ability to override settings bn_trcolor[side] and bn_trrhit. Added visible tracer functionality in intros and outtros. (thanks to Killswitch of Zeus for pointing this out) This release will not add any CPU, Network, or Graphical load over version 1.22. V1.22 Changelog: 05/02/2005 Small improvement to make AI spawn manager scripts more reliable with the tracer initialization. V1.21 Changelog: 31/01/2005 Improved CPU useage somewhat through more function/trigenometry optimisation. V1.2 Changelog: 30/01/2005 Fixed: Vehicles which started empty always inherited civilian tracer color. Fixed: Very rare occurance of an exploding tracer on target. Fixed: MP code reworked for client issues including a null speed reading. V1.1 Changelog: 29/01/2005 Added default config to PBO and optional boolean parameter to use mission config. Removed tracers from rifle grenades (slow projectiles). Removed a reported reflector light from the tracers. Fixed ricochet synchronisation code on dedicated server. Features: [*]2 colors, green and redish (more like red/yellow) [*]true bullet trajectory path and speed (no adjustments allowed) [*]realistic and complex ricochet physics (for the most part of course) [*]ricochet does some damage (optional) [*]ricochet synchronized across MP (without any additional network load) [*]tracer frequency adjustment (every which bullet) [*]tracer color adjustable per side, memory for weapon types Enjoy, hope it's allright. Readme inside.
  3. Thank you Snake Man, nice gesture, I'm sure everyone will enjoy that huge terrain from a huge talent. And RIP Bushlurker. :(
  4. Job Title: Software Designer - Prague Position Description: Bohemia Interactive Simulations (BISim) is looking for a full-time software Designer to join the team in Prague to work on the Virtual Battlespace (VBS) flagship product. A Designer uses the mission editor, BISim’s VBS scripting, configuration files and other resources to plan, add, or modify features and content to VBS. It should be noted that--although occasional scenario development in the mission editor is required--the majority of the Designer's job will involve working with "code" (scripting and configuration files). In other words, a Designer's job includes much more in scripting and project analysis than it includes in mission editor usage. Key Areas of Responsibility: Focus on the end-user-experience, while working towards paid customer deliverables. Create and review project analyses and plans based on customer requirements. Develop scripted components using VBS/ArmA scripting language. Develop graphical user interfaces (dialogs). Repair and maintain existing scripted systems. Liaise with artists, programmers, content creators, QA, and sound engineers to effect necessary changes or fixes outside of Designer’s role or qualification. Document all work from beginning to end, including analyses, in-line code comments, and final implementation. Occasionally represent BISim to customers at events such as Government Acceptance Tests, military training sessions, or industry trade shows (typically as part of a team). Reporting to: Design Department Lead and Prague Team Lead. Desired Skills and Attributes: Be self-motivated. Be a team player; willing to work in a fast-paced environment while respecting the chain of command and established standards. Be requirement-focused; work to achieve customer or company requirements. Enjoy problem solving. Be comfortable with the Arma/VBS scripting language and configuration files. Have a professional or modding background in the ArmA/VBS community. Have some experience with other game engines and their pipeline. Experience using a number of collaborative and communication tools (eg: Skype, Google Docs, Confluence, JIRA, SVN). Capable of working within an Agile and Modified Waterfall development team/methodology. Education & Experience: 2+ Years developing modules or complex scenarios in ArmA or VBS, OR 2+ Years experience at military training center utilizing VBS1/2. High School graduate minimum, higher education a definite plus. Applicants must: Work out of our Prague office. Be capable of working in the English language (read, write, speak). Not have a criminal record. Treat every colleague with equality and respect. Comply with strict Non-Disclosure Agreement. Non-EU nationals who did not complete post-secondary education must pass Czech Visa entry test. What we can offer you: Full-time employment. A fantastic and fun working environment. An opportunity to be part of a fast growing and exciting company that is at the leading edge of gaming and simulation technology. 5 weeks paid holiday. The possibility of a year-end bonus based on performance. To Apply: Please send us your CV/portfolio with your community nickname, and a copy of your transcripts if any here, or email jobs@bisimulations.com.
  5. I created this thread to discuss anything about the entire graphics engine as a whole. (Of course I'm not an expert in this) We were told BIS is working on pixel and vertex shading, this is extremely important if OFP2 is to look better but I'm worried about one thing: improper use of this may rended the entire game to look pale and faded. Unrealistic like Raven Shield. If you don't know what I am talking about, go play the R6 Raven Shield Demo or full game and look at the colors. It's missing all bright clear colors. Even the fireworks look like a joke. I have seen this in other new games, I don't remember the titles, shading is nice, but it has to be limited and checked with real life appearance. Also, as discussed before, I would like to see harware vertex tessellation/subdivision as supported by ATI,TRUFORM... ATI's TRUFORM General Surface subdivision Pixel and Vertex Shading (ATI) Pixel and Vertex shading
  6. I believe that is intentional, it is the grass/foliage layer providing concealment at longer ranges. Because rendering that much grass at a distance would bring everyone's systems to their knees.
  7. Yep, seems to be helping a few users around here and on the bug tracker. But thanks for reporting the success for everyone else.
  8. Please try also the latest Alpha on Steam. Arma 3 properties > "BETAS" tab > Select "development - Development Build"
  9. bn880

    Cannot create DX11 device

    Meeh, this suggestion won't work in your case then. Sorry. There are specific adapter associations which would be incorrect if I sent you the cfg file, or anyone else for that matter. Thought this had gone through already.
  10. It was mentioned a few times in this forum that Zonealarm does not need to be uninstalled, see this as an example http://forums.bistudio.com/showthread.php?148945-Arma3-not-starting-due-ZoneAlarm-no-need-to-uninstall&highlight=zonealarm
  11. bn880

    Cannot create DX11 device

    You can try editing your cfg file; In Win7 at C:\Users\<yourWindowsUsername>\Documents\Arma 3 Alpha\Arma3Alpha.cfg back it up first Find the line that reads and replace it with Then try also starting Arma3 with -nobenchmark after the edit. Edit: Otherwise make sure in windows that your card does not allow the 75Hz modes at all, you might need to go into some advanced driver properties/control panel to remove unwanted resolutions/refresh rates.
  12. bn880

    Cannot create DX11 Device

    Right, the 7900GS is under the minimum system requirements for A3. (8800GT is minimum in NVIDIA Desktop cards) Specifically you have 256MB of VRAM when 512MB is required. You can try however to see if you can get it to start by editing the config file by setting everything to minimum (search the forum for config setting editing), including resolution of 800x600. Use startup paramebers of -nobenchmark -winxp The real solution however is indeed to buy some new graphics card, I wouldn't buy with less than 1GB no matter how tight the budget.
  13. bn880

    Cannot create DX11 Device

    Right click on Arma III in your Steam Library>Properties>Set launch options Add -winxp That should force Dx9 compatibility mode.
  14. This is not meant as a developer solution but just as a troubleshooting step and possible temporary aid; In other titles that had this DXGI error it has helped some users when they underclocked their NVIDIA GPU's by some frequency, like 75Mhz. You can both try this by installing NVIDIA inspector, "show overclocking" window, and in there *reducing* the frequency (Base clock offset) of Performance level 2 by about 75Mhz. (If you choose to overclock remember that I nor BIS take responsibility for any HW damage) Additionally in your NVIDIA control panel, under "Manage 3D Settings", you can try forcing VSYNC on for Arma3 to limit FPS and check if that improves stability at all.
  15. Bit of an old thread, but uiSleep is a sleep method to delay script execution where script time/simulation time is stopped. uiSleep is basically using the system time and not simulation time. So in the cases where sleep command would get stuck indefinitely, uiSleep can still be used to effectively delay script execution. For example in a mission briefing or an editor or when simulation is paused in general.
  16. Okay, I think everyone now knows how missions with a large Gamestate Variable space can cause a savegame to fail with a message like "error no entry at 'continue.bin/GameState/Variables/Item11/data.value'" Along with Dinger I think I have isolated one of the issues with the save/load game Variable state: Attempting to load this GameState from a continue.fps will cause the error <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">savepath Error no entry at 'continue.bin/GameState/Variables/Item11/data.value'. or <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">savepath Error no entry at 'continue.bin/GameState/Variables/Item12/data.value'. depending on the names of the Variables <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">class GameState { class Variables { items=30; class Item0 { name="a"; class data { type=2; class value { items=1; class Item0 { class data { type=1; value=1.0; }; }; }; }; readOnly=0; }; class Item1 { name="b"; class data { type=1; value=1.0; }; readOnly=0; }; class Item2 { name="c"; class data { type=1; value=1.0; }; readOnly=0; }; class Item3 { name="d"; class data { type=1; value=30.0; }; readOnly=0; }; class Item4 { name="e"; class data { type=1; value=1.0; }; readOnly=0; }; class Item5 { name="f"; class data { type=1; value=42.0; }; readOnly=0; }; class Item6 { name="g"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item7 { name="h"; class data { type=1; value=1.0; }; readOnly=0; }; class Item8 { name="i"; class data { type=1; value=0.0; }; readOnly=0; }; class Item9 { name="j"; class data { type=1; value=945.247131; }; readOnly=0; }; class Item10 { name="k"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item11 { name="l"; class data { type=1; value=36.0; }; readOnly=0; }; class Item12 { name="m"; class data { type=1; value=3.0; }; readOnly=0; }; class Item13 { name="n"; class data { type=1; value=0.0; }; readOnly=0; }; class Item14 { name="o"; class data { type=1; value=1.0; }; readOnly=0; }; class Item15 { name="p"; class data { type=1; value=0.3; }; readOnly=0; }; class Item16 { name="q"; class data { type=1; value=0.0; }; readOnly=0; }; class Item17 { name="r"; class data { type=1; value=1.0; }; readOnly=0; }; class Item18 { name="s"; class data { type=1; value=1.0; }; readOnly=0; }; class Item19 { name="t"; class data { type=1; value=1.0; }; readOnly=0; }; class Item20 { name="u"; class data { type=1; value=0.0; }; readOnly=0; }; class Item21 { name="v"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item22 { name="w"; class data { type=1; value=1.0; }; readOnly=0; }; class Item23 { name="x"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item24 { name="this"; class data { type=256; class value { id=0; }; }; readOnly=1; }; class Item25 { name="y"; class data { type=4; value=1; }; readOnly=0; }; class Item26 { name="z"; class data { type=1; value=1.0; }; readOnly=0; }; class Item27 { name="aa"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item28 { name="bb"; class data { type=1; value=0.0; }; readOnly=0; }; class Item29 { name="cc"; class data { type=1; value=30.0; }; readOnly=0; }; }; }; However, renaming the array at entry Item0 to 'za' makes the problem go away. Similarly swaping the array at Item0 with Item11 or Item12 fixes the problem. It depends on the naming of the variables. <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">class GameState { class Variables { items=30; class Item0 { name="za"; class data { type=2; class value { items=1; class Item0 { class data { type=1; value=1.0; }; }; }; }; readOnly=0; }; class Item1 { name="b"; class data { type=1; value=1.0; }; readOnly=0; }; class Item2 { name="c"; class data { type=1; value=1.0; }; readOnly=0; }; class Item3 { name="d"; class data { type=1; value=30.0; }; readOnly=0; }; class Item4 { name="e"; class data { type=1; value=1.0; }; readOnly=0; }; class Item5 { name="f"; class data { type=1; value=42.0; }; readOnly=0; }; class Item6 { name="g"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item7 { name="h"; class data { type=1; value=1.0; }; readOnly=0; }; class Item8 { name="i"; class data { type=1; value=0.0; }; readOnly=0; }; class Item9 { name="j"; class data { type=1; value=945.247131; }; readOnly=0; }; class Item10 { name="k"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item11 { name="l"; class data { type=1; value=36.0; }; readOnly=0; }; class Item12 { name="m"; class data { type=1; value=3.0; }; readOnly=0; }; class Item13 { name="n"; class data { type=1; value=0.0; }; readOnly=0; }; class Item14 { name="o"; class data { type=1; value=1.0; }; readOnly=0; }; class Item15 { name="p"; class data { type=1; value=0.3; }; readOnly=0; }; class Item16 { name="q"; class data { type=1; value=0.0; }; readOnly=0; }; class Item17 { name="r"; class data { type=1; value=1.0; }; readOnly=0; }; class Item18 { name="s"; class data { type=1; value=1.0; }; readOnly=0; }; class Item19 { name="t"; class data { type=1; value=1.0; }; readOnly=0; }; class Item20 { name="u"; class data { type=1; value=0.0; }; readOnly=0; }; class Item21 { name="v"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item22 { name="w"; class data { type=1; value=1.0; }; readOnly=0; }; class Item23 { name="x"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item24 { name="this"; class data { type=256; class value { id=0; }; }; readOnly=1; }; class Item25 { name="y"; class data { type=4; value=1; }; readOnly=0; }; class Item26 { name="z"; class data { type=1; value=1.0; }; readOnly=0; }; class Item27 { name="aa"; class data { type=1; value=-1.0; }; readOnly=0; }; class Item28 { name="bb"; class data { type=1; value=0.0; }; readOnly=0; }; class Item29 { name="cc"; class data { type=1; value=30.0; }; readOnly=0; }; }; }; Obviously in a small mission such as this you will not get this improper GameState ordering, but I extracted the first 30 entries from a huge savegame what was failing. And this is one of the causes, it appears that saving and loading must have a specific order of arrays or variable names which is not adhered to during save of huge missions GameState.
  17. I would be a bit apprehensive about assuming that is all. I think I'll be slightly disappointed with Dinger if it is. :D Problem with releasing updated PBO's on a whim is versioning. Same filename etc. And if there is another update, or two... I'll leave that decision up to Dinger/Walker.
  18. bn880

    Arma: Cold War Assault

    Happy birthday! Puberty is not long away. :p Great design, great memories.
  19. bn880

    Military Humor

    :) So what's deadlier, the bacon or the AK?
  20. bn880

    Closures in SQF

    Heh, but do two fakes make it a a real? That is the question. As far as I understand the namespaces, they will do just that, separate the variable space. I am just not certain how much easier this will make OOP. What, are we going to create a separate namespace for each object? You still need to keep track of the name of the namespace if you will.
  21. You know what helps to clear the GAS? sidechat of your input/data _this. :D (for general fart reduction)
  22. bn880

    Closures in SQF

    Yes, we both acknowledge it would be faked, this is why I say the issue at hand is not closures at all, it is OOP. :) In terms of closures you can get there in terms of integers by hiding them in command strings, or otherwise any other variable which can be expressed as a clear text string can be saved within a function at runtime. I think VB was trying to simplify or expand scripting in ArmA.
  23. OFP had a similar issue at one point with loadfile, it was kept low key as it is a security concern and it is good that it's fixed.
  24. bn880

    PTSD - Virtual Treatment

    Well, very interesting topic. For Clavicula and others who are skeptical I would tend to agree with Kimmeh. VR is a tool and a part of a psychological treatment and healing process. You need to have a very well qualified and experienced professional go over your trauma after getting to know your situation extensively, and if necessary he/she could potentially use a VR tool. I do not believe that the visual differences between VR and RL will make a difference if you are willing to go over a specific situation. It does not need to be indistinguishable, just like dreams are often not. Sometimes the less detail you have the better as your brain will fill in the rest with memory and imagination. For you it could be a decision making tool which can put in perspective the reality of the situation(s) you were in, and can help to make sound decisions about how to perceive them for the future. Sometimes VR is believed to be an assistance tool to retrieve repressed and disassociated traumatic memories. It can also be used to introduce alternate or false memory for these repressed traumatic experiences. It all depends on the practitioner, go to the best if you can, and remember that this is all as much of an art as a science. Professionals who take the PTSD model to heart and never question it may never be able to help you. It is a psychiatric model which is questioned in part or its entirety all the time. Maybe you don't actually have a disorder at all and are diagnosed with one, maybe everything is in order according to your new gained experiences and understanding, it may have changed who you are, but is that a DISorder? It is at times culturally subjective. Obviously it is not subjective if you are completely unable to function in life or are experiencing even worse issues. In psychology perception is everything, and everything is relative. Once your perception of trauma changes, or even your memory of it, you may be able to work it into your life... kind of massage the scarring away and begin a healing process. To me it seems like not everyone will be able to process and accept all of their traumatic experiences, it depends on who you are and what your life has included before and after the trauma. If you are focused on healing yourself, you won't be thinking about the detail of the VR. Although I can imagine how horribly difficult this may be for dedicated mod makers or game developers once they start to analyze the VR. :D
  25. bn880

    Closures in SQF

    Yes well it goes right back around to the whole concept of OFP/ArmA scripting. When creating variable names or self modifying code, storing it in a variable, then calling it, you are already working with closures. It has really been used heavily. In your example: The function makePoint2D creates and returns a string called _closure while maintaining one index variable and inserting it into the string as a string. This string can then be called as a function and the index will be retrieved from this string. Additionally you work with a global array point2D to stack the data for this possible function. It is faked as you say; globally accessible. Therefore; A) you store the index in a string called _closure, to which you later give other names like _pontA B) you store the data originally associated with this index in a global array point2D C) you call the string _closure which translates the index back to an integer and also passes along new parameters to another function which than works with the data and point2D Since we are in this realm of almost all advanced scripts using closures, it may be best to avoid using that terminology to come up with a document to describe this particular hack. As I referred to the tracers... and would like to prove to you that this really is in use around many complex projects that I have personally seen and/or worked on I will present two functions from them and highlight the relevant lines that I can still see: addTracerUnit2.sqf tracerEH.sqf In this example local data is stored in an attached event handler, while the rest is stored in other arrays such as bn_trunits or "bn_tr_%1". All data is accessible upon calling the event handler, same thing as saving this to a string _pointA and then calling it later. Anyway, no matter how you cut it, it's very neat stuff that we can do in this scripting language and engine. If you wish to document or rather even make a tutorial on OOP encapsulation/simulation in ArmA I certainly will not stand in your way and am all for it. However; what I am trying to express to you is that YES I have read this thread and its quite cool but I would like to say is CoC is well aware of this technique and has used it extensively in various areas without making a tutorial on it. From my perspective I always thought someone would go in and for example examine the tracer code to see how it manages to do all that without complex array searches and thus instant response and no lag.
×