Jump to content

Hellop

Member
  • Content Count

    64
  • Joined

  • Last visited

  • Medals

Everything posted by Hellop

  1. >But, it doesnt remove the action once the player is healed. Read the wiki for the addAction command. It explains how to make it disappear after use. Search google for: arma scripting commands
  2. Hellop

    Moving Objects script

    Suggestion: Write comments before each block of code that tells what the purpose of that block is.
  3. That works great Captain, thanks. How did you figure that out?
  4. This is a great abstract idea that will have many uses. Only 5KB too! -So I take it the cuboids are to be used as a type of shield?
  5. Hellop

    What small details would you like to see?

    A scripting change: Change from dynamic scope to static scope like most other programming languages. I have to prefix every script with a "private[""]" statement containing all local variables to bypass the effects of dynamic scoping. Called functions should not be able to alter the "local" variables from their parents, like they do now. Because then, why bother passing variables into the functions? (execVM doesn't seem to do this like call) Perhaps, since Arma2 will require all variables to be declared, this strange behavior can be eliminated. Maybe I'm just used to C, where if you need more then one return value, you just pass parameters in by reference. But, Arma's typeless variables make it easy to return mixed arrays, so by-reference scalar parameters are not even needed. One other thing: a plain old "return" statement to return values from functions instead of "leaving the last semicolon off" would aid readability, and reliability.
  6. T_D, thank you very much for the offer. I just need any fixed-width font such as Courier or Lucinda Console... or whatever console font was used in MSDOS. It doesn't have to be fancy. Something that looks right for a size of about an 8-10 point font would be sufficient. BTW, I tried LucindaConsoleB, and while it doesn't give an error, it is not fixed-width. Having the word "Console" you'd think it would be. I wonder if there is some other dialog setting that is causing this. Thanks for your help, T_D. If you do make a monospaced font, please post here, or PM me, and I'll make sure it gets uploaded around for all to use.
  7. Dr_Eyeball, Could you release a small update that contains some more comments? Specifically, could you include a comment for each function that says what it does? e.g. fn_GetParamByName Thanks for your time. -hellop
  8. Bummer. I bet it's possible to add a font.
  9. Thanks for clarifying this. Looks like you guys fixed the wiki too.
  10. The wiki example for server.cfg has a line of code: onUnsignedData="server globalChat format['Player %1 is using unsigned data.', (_this select 0)];"; // unsigned data detected The server side scripting page says the first argument for these security checks is the User ID. So, the code should work when used in regularCheck or onUnsignedData. I move it to regular check and get an error at the "server" keyword. If I change "server" to "player" I get an error at "globalChat". I've tried changing the single quotes to double-double quotes: "". Can anyone provide examples of working code for the security checks in server.cfg?
  11. I was wondering if anyone can discuss the locality of the set damage command with me? It's a little hard to test since I don't have another computer with Arma... 1. It seems that doing "setdamage 1" on a building does not transmit to other players in MP, but "setdamage 1" on a "man" or "vehicle" class object does transmit across the network. Is that correct? 2. What effects/problems would a scripter encounter if they ran setdamage on a building, for each client, but not on the server? I suspect that server local AI would not be able to walk through a destroyed building but, the players could. Should I make sure to run it on the server too, or is it not an issue?
  12. Hellop

    Warfare 1.1[@]x_[Victor N+S]

    Victor, I read somewhere that one of the ports that Arma uses is for reporting to the master game browser. It could be that your game does not appear in the multiplayer server list because you have not forwarded the proper ports on your firewall. You need to forward ports 2302, 2304 and 2305 to your computer that is hosting the game. -hellop
  13. Nightshade, how do you know this to be true? The problem is that the server is not calculating available bandwidth correctly, so it is sending information too fast. So, the fix would be to send the information slower. Which means that it would take longer to send the data. Just because it would "take longer" is not sufficient information to determine that it would not work. Is there some other reason you think it would not work? Really, I think only the programmers of Arma can answer this question since only they know what kind of verification system there is in the application to determine the success of a file sent via UDP. It could be that it sends parts of whatever data is being sent, then waits for some type of UDP acknowledgment packet, like a checksum. It could very well be that while it is waiting, the server could process other network I/O, and hence, rate limiting would help. On the other hand, it could be that if the server doesn't receive an "acknowledgment" in a certain time period, it re-sends the data, in which case, rate limiting would only compound the problem. -hellop
  14. mr.g-c, the guy's DSL has 2MBit upload. That's pretty good for ~10 players. Unfortunately, it seems that you cannot "login" to a locally hosted game, so you cannot run the #monitor command to see what the bandwidth use it. If anyone knows how to run #monitor from a locally hosted server, please share. Of course you are right. Who knows what effect his 2Mbit cap had on our tests. Especially since it was my understanding that alt-tabbing to windows should produce more lag... but we saw the opposite. From our tests, it seemed that running a locally hosted server that is alt-tabbed out worked better then a dedicated server... But, maybe the host has a slow computer, so rendering the game lagged everyone else out. It is curious that kicking the guy with the 1mbit/384kbit DSL improved everyone's game. But, maybe he had some crappy addons. It's difficult to test in an environment which you cannot control. I think the test could be improved by: Having 12+ players. Ensuring no one has addons or custom files. Host on a fast PC with a 5mbit upload connection.
  15. Can rate-limiting on the server's firewall provide a possible work-around for the custom file issue? Would testing with/without custom files help? Â Would setting MaxCustomFileSize in basic.cfg prevent custom file lag? -To Whom it may concern, Thanks for your help.
  16. Ok, we have have followed the instructions and done some testing. Â The best that we can determine is: Summary: 1. A player with very low bandwidth values: 17, 27, 25, causes everyone to lag when that person joins or disconnects, no matter if local server has focus or is alt-tabbed out. Â This user got 861kilobits/sec down, 307kilobits/sec up, connection speed results from speedtest.net. 2. When the local server host was alt-tabbed out of the game, join/disconnect lag seemed less for everyone. Tests performed: 1. 10 players. Server host playing game. 11th player joins. # Tests: 10 Result: Everyone gets desync. Â Some yellow/red chain icons. 2. 11 players. Server host playing game. 1-2 player(s) disconnect/reconnect. # Tests: 10 Result: Everyone gets desync. Â Many yellow/red Chains. 3. 8-10 players. Server host alt-tabbed to windows. 1-2 player(s) disconnect/reconnect. #Tests: 10 Result: There was very little desync for everyone. Â Everyone got some light desync when the person joined, but no lag/chain icons. Â Joiner got the most desync. Â All desync disappeared within 60 seconds. Â 2/10 times the person reconnecting only had a yellow chain for a short time. Notes: You need to have over 10 players to reproduce lag consistently. Conclusion: We tried to reproduce our tests as exact as we could by changing only whether the server host had focus or not. Â However, we lost a couple players when we did the alt-tabbed-out-to-windows test, so that may have contributed to the reduction of lag we saw. Â At least one of our players had custom skins/sounds, which may have affected the results. Â Something we think is important, is that when any 1 player is connected that has low bandwidth, connects/disconnects by any player, causes everyone to lag. Â That is a definite bug irrespective of the focus of the local server rendering engine. -To reproduce that error, have someone connect to a server on dial-up. Â Then have any player connect/disconnect. Â You should then see desync and chain icons. Thanks to the following people from the Sahrani-Life Arma Mission Community who helped with this test: x3r0, St3v3-O, ACS|Pat|LTC, hellop, Giorgio, Die Chronik, Datscher, Blunt, =BBUK=MagicShot, |ACS|Gamster|SGT|, |ACS|DaKa|WO2|
  17. Bandwidth and Desync don't seem to be defined anywhere. Â I have seen forum posts that say that Bandwidth is in centi-bits. Â That is, 100 in the bandwidth field = 10Kilobits. People, regardless of ping seem to go through this pattern when connecting (on the one map I monitored): They start with about 50-100 "bandwidth" for a few seconds. Â Then their Bandwidth jumps to around 3000. Â Then over a period of 10-20 minutes it slowly drops down to 50-100, just like everyone else. Desync has something to do with lag, but is it frames, time, bits or what? So, can someone specify what the units of Bandwidth and Desync are?
  18. Hellop

    Ideas for scenarios

    Here's an awesome idea. Have two teams. One team is the Covert Operations and the other is the Freedom Fighters. The objective of the Freedom Fighters is to plant an explosive in one or two different designated locations. The Covert Operations must prevent this from happening, or disarm the bomb in time. Also, maybe the FF could have hostages that the CO have to rescue, or something. Sweet Idea huh? You could call this mission, "Strike Back."
  19. Put up a server. But only a couple people joined. If you see a server called "ARMA JIP-LAG Test", please join.
  20. I will test this tonight. Roadrunner cable in the US is 5Mbit down, 1Mbit up. Hopefully others will also test. The trick is that you need about 12+ people before you see the JIP "red-chain" problem. In an effort to contribute to the greatly appreciated analysis that Mr.g-c started, I think there may be other issues at play then just JIP lag. From what I have seen using the monitor command, more then 6 players on Warfare 1.1 with a 3000mhz Pentium D (2 processor) with 2GB RAM and 4MB(100MB Burstable) connection, running linux kernel 2.6.18-6-amd64 (64 bit kernel which is recommended for the Pentium D and necessitates installing the ia32-linux package)... then the server FPS drops to under 10 FPS. According to the wiki that is considered overloaded. Any more players and the FPS can go to ~5FPS. I suspect this is because of the large number of AI present in Warfare, and this is a problem unrelated to the JIP problem. I read in the wiki that 64-bit CPUs are not recommended, but that is not really a viable suggestion in this day and age. Maybe installing a 32-bit kernel would fix this problem. If anyone can post their experiences with server FPS in regards to 64-bit vs. 32-bit kernels, or any other suggestions it would be appreciated. @Suma, I also think that Actium's 2 points should be considered by the Arma devs: 1. http downloads. i.e. a new command in sever.cfg that is like: httpRedirect=www.myExternalWebServer.com. There you would put your mission .pbos, and ideally, any addon's required to play on that server so that no client would ever get kicked for not having the right files. They would just d/l them and join. 2. Get rid of the whole idea of sending to the clients info about every vehicle that was ever created. The rumor is, that this is done because scripters used the initlines in a createvehicle command to work around limitations of the publicVariable command. This is a hack. It is no longer needed. And you should always start over and do things the "right way" no matter what the cost. Otherwise you just dig yourself a deeper and deeper hole. I think this thread is a good place for all of us to discuss these suggestions and get input from admins and devs. And of course, if these suggestions are valid, they should also be posted in the Arma2 suggestions forum as Mr.g-c suggested.
  21. Hellop

    Sahrani Life

    Ok, it looks like Papa Hellop is going to have to come in here and be a good role-model for the younger generation. Let me quote a story that my great-aunt Shirley used to tell me as a kid, called: "The Triangle". Aunt Shirley would always tell me about The Triangle every time I saw her, so I guess she really wanted me to remember it. The Triangle is made up of three parts: Trust, Communication, and Respect. Every relationship is based on the Triangle... from you and your mom, dad, teacher, friends, to the guy who pumps your gas and yes, even strangers on the Internet. In order to have success in all your relationships, you must make an effort to maintain all parts of the triangle. If you don't Communicate openly and honestly, you will tend to mistrust. If you don't trust someone you can't respect them. Each leg of the triangle leads to the other. But, all you have to do to maintain the triangle in all your relationships is to start with communication by simply being open and honest with your needs and wants. Now, we are all guilty. Some computer nerds maybe have tried an admin password here or there. Some emotional server admins may lash out with a dozen unnecessary insults. Some players may have planted a gun in an innocent Civilian's car and then had him falsely arrested. We all do wrong sometimes. But what separates us from animals is our ability to Act and not just Re-Act. So, in life, you must realize and accept the flaws in us all, and take a moment to pause. Then, simply express your needs and wants openly and honestly in an effort to promote trust and respect. It's easy, and you will reap all the rewards of life. So, let us all just express our needs and wants openly and honestly without fear of the repercussions. Starting with me: Yes, I planted that gun on that innocent civ. Yes, I asked my girlfriend to turn that pic of Jana into a zombie and then suggested that "demons should be banned." But, I think that was all in fun, I apologize, and I would like to be un-banned from Jana, Terp, and Mr.-gc's servers so I can play SL. Also, all you guys need to get off your high-horses and admit your wrongs and express your needs and wants. SL team, you need to lighten-up on your "ownership" of your code. You have "cloned" other's scripts and you could easily list everyone who inspired you. Mr.g-c, Jana, Enverex, bluevein and others: you are obviously upset and feel that you have spent a lot of time on SL and deserve some consideration. But, that doesn't give you the right to disrespect others. Mr.g-c your post here on June 13 2008,14:25 mentions a lot of hard work that you and others did such as making a rules.html, suggesting a siren, and markers, but most of all, paying for a server and setting up a forum. We all know you guys paid, worked, and molded the community. But, you must realize, what you did is only a small portion of everything that Isse, Fewo and the rest of the community contributed. Without all of us, your server and website would be sitting there empty. Now, the legal stuff: Go and do your own research on International Copyright Law and the Berne Convention. Basically, Isse and Fewo automatically retain "exclusive rights" to to any "original creation" prohibiting others, without permission, from copying, creating derivative works, displaying, selling, or transmitting the work. "Cloning" does not count, unless "it is determined that the duplication was coincidental, and neither was copied from the other." So, none of you except Fewo and Isse have any argument at all for doing anything with the SL code other then what they give you permission to do.... for the next 150 years or so... Now all of us get to decide what to do. We can all apologize(respect), say what we want(communication), and together come up with the best compromise(trust) that will allow the greatest happiness for the greatest number of people. Or, we can all just go and make our own missions and fight it out in the courts, or on the street. I suggest: Fewo and Isse, make a big splash screen on the Mission Intro that lists every single script author and script that you got inspiration from, (that's so easy!. GC, Jana, apologize for turning so harshly on the guys who enabled you to have your forums and server. Everyone apologize whether or not you personally feel you did anything wrong, but listen and apologize for what the other person feels. Then say what you want. Do you want to make your own mission? Do you want to run the SL RPG? Do you want to contribute code or suggestions? Do you want to host? I'm sure Isse and Fewo can allow certain responsible volunteers to host their code and keep it secure. But remember, Isse and Fewo alone get to say what happens with any "original work" they created. Everyone grow up, kiss and make up.
  22. Hi, thanks for the reply. I just want to achieve what is in the wiki. Here's the URL: http://community.bistudio.com/wiki/server.cfg At the bottom of that link there is this line: onUnsignedData="server globalChat format['Player %1 is using unsigned data.', (_this select 0)];"; // unsigned data detected Are you saying the wiki is wrong? Or is my problem that "server" is not an actual arma keyword?
  23. Hellop

    Sahrani Life

    There was a reason I put quotes around the word.
  24. Hellop

    Sahrani Life

    My two cents: You spend a year making a mission. Then someone else registers a domain name using the name of the mission you created. Personally, I would think that was pretty rude. It is completely reasonable for the creator of something to want to be the admin of the website related to that thing. If someone else goes and registers "your" domain name, they should at least offer you to be a top-level admin on that site. IMHO, a more chivalrous approach would have been to tell the creator, "Hello, I am a website designer. I would like to offer you free website hosting on my server for your mission. I will create the site and be a forum admin. If this sounds good to you please register a domain name and point it to this IP: xxx.xxx.etc... Also, I will make you a top-level forum admin." Something like that. From my (possibly wrong) point of view, that's not what happened. Now, on the other hand, someone was so enamored with Isse's mod, they went and made a whole community in honor of it. That is a good thing. And I don't doubt that if Isse asked, he could have come a forum admin. Point is, I don't think Isse should be faulted for trying to make a website for his own mod. Especially considering all the bickering that when on at sahrani-life.com.
  25. This is a Request for Information, a Brainstorm, an Informative Analysis of hack prevention useful to mission makers: When coding an Arma mission, should we think about where we store game data in order to reduce hacking? For example, your players have an attribute called "Money". You could: 1. Have a Money variable on the client only 2. Have a Money variable server that keeps track of all clients' money. Then when the player earns/transfers/uses money, his client must get or set the Money variable on the server. Assume the hacker client has a "console" where they can run any scripting command. So, they can change any local variable, but can't directly change anything on another client or server. They can also publish Public Variables with any value. If the mission is designed in such a way that allows the clients to set data on other computers or the sever, then the hacker could alter other people's games. So, a good practice would be to only allow clients to run a limited number of scripts, or change a limited number of Public Variables. IOW, have a subset of your scripts that are only used for network communication. "PV functions". Then as a mission designer, your could more easily monitor the communication and potentially detect cheating. For Example: The hacker could run the script that deposits money in his Bank. The server keeps track of the players cash on hand, and the bank balance. So, if the player sends a command that deposits more money then he has on hand, you have detected a hacker. Now, the createVehicle or setVehicleInit commands are able to bypass any such checks, so the whole idea of trying to stop hackers at all is pointless. Unless, the Init eventhandler is executed before any type of object executes it's initline. Then the server could just monitor spawned vehicles checking for anomalies. It says it only fires on createVehicle, so we're probably SOL. Now, assuming we could guarantee the clients can't improperly alter data on other computers. They could still run local commands that had global affect. Like, setPos, setVelocity, setDammage on any unit or object. Well, after thinking about it, it seems hopeless to have a scripting defense from hackers. Is there anything we can do to prevent or detect hackers?
×