Lou Montana/Sandbox – User

From Bohemia Interactive Community
< User:Lou Montana
Revision as of 10:30, 7 September 2019 by POLPOX (talk | contribs) (Getting started; recommended skills to do the thing and some minor changes)
Jump to navigation Jump to search
this is at the moment only a list of topics and absolutely not the final render. Almost each list entry will result in a chapter.



Category: Scripting Topics

Getting start

Recommended skills and things

  • An Arma game
  • Passion
  • Little bit English knowledge and/or access to a translator to your mother language
  • Tutorial/example article (Such as this)
  • Skill of Googling
  • Advanced text editor (Such as Notepad++)

Best practices

Make it readable

See Make it readable for the short version!
  • Some general coding tips from here: standards, line lengths, etc
    • Variable names should indicate what they store / are used for.
Example

// Instead of private _cd = 360; // do private _countDown = 360;

  • Format, indentation, no one-line, spacing, line returns
  • Be consistent (space/tab indentation, (camel)casing, K&R style / Allman style indenting)
  • Use comments frequently to explain not what the code does, but why it is done this way.

Make reusable functions

  • Don't copy and paste the same code, make functions
  • Don't make macros to replace SQF code

Variables

  • Prefix your public variables and setVariable with your tag
  • PRIVATE (or params) your variables
  • Use #define SOME_CONST for constant values instead of variables

Code location

  • Nothing in init box but local commands for this specific unit - all the init boxes are run client-side on client connection
  • 0 = myCommand is "useful" only for editor fields that for no apparent reason refuse commands returning a value.


Final words

  • Learn from others' scripts but don't steal code and pretend it's yours — be a decent human being.
  • Don't try to obfuscate your code: it is considered rude, especially since you learnt from others.
  • Have fun!