The scripts, along with other data, are located in the later portion of scene2.bin files.
I'm not sure what the official name of this scripting language may be, so I just call it all Mafia script.
The only general-purpose variables available in Mafia script are elements of the array flt which are able to store integers, presumably 32-bit unsigned integers. I don't know Czech, but I'm assuming that flt is the abbreviation of a Czech word that may mean variable or something similar. (I would appreciate any input on this, very much.)
Like in good ol' BASIC programs I used to write on my ATARI 400, the dimensions of flt must be defined at the beginning of the script. To define flt, use the keyword dim_flt nn, where nn is the number of elements (flt variables) you want to allocate for usage in the script.
In this example, your script may use 5 flt elements to store numbers (flt...flt).
To assign a value to an flt variable, use the keyword let.
let flt = 10
let flt = 30
In this example, the value 10 is stored in the variable flt and the value 30 in the variable flt.
There is no string data type.
There are no global variables, variables that persist outside of a particular script except for those that are special system variables like player health, compass, etc.
This download contains much, much information which you will definately find useful. Some of it is slightly flawed but mostly solid.
To begin scripting mods for Mafia you will need some tools, (As always.) which will depend on what kind of mod you want to make.
car adder - Mafiascene.com
car changer - Mafiascene.com
Text editor - Mafiascene.com
weapon Value Editor - Mafiascene.com
Mafiahack - Mafiascene.com
Car Value Editor - Mafiascene.com
Data Xtractor - Mafiascene.com
Zmodeler - Mafiascene.com
Capone - Mafiascene.com
BscriptView - Braingib.privat.t-online.de
The rest is self explanatory. Just use Data Xtractor to extract the dta files into folders. Then use DCED or BSV to look through the original missions.