Jump to content

[SCRIPTS] Fichiers Fondamentaux


Recommended Posts

COMPILATION

Les fichiers *.fos correspondent à AngelScript.
Toutefois, tous les .fos ne sont pas destinés à être compilés ceux commençant par un underscore par exemple. Vous reconnaitrez les autres au fait qu'ils refusent la compilation tout simplement.


Rappel en ligne de commande.
Biensûr, il faut avoir copier les fichiers de AS dans votre dossier SCRIPTS :
.../SERVER/SCRIPTS/ascompiler.exe nom_fichier.fos as.dll fo.dll

==================================================

MAIN.FOS

Le fichier MAIN.FOS est le coeur du SDK.
C'est le 1er à être appelé par le serveur pour savoir ce qu'il doit faire.
C'est ici également que l'on trouvera certains des paramètres de base du serveur.

On trouve naturellement les #includes (l'intégralité du fichier inclu est accessible), et les imports (seule la fonction précisée est accessible => cf. "SCRIPTS.CFG").
Ces fonctions sont indispensables au lancement du serveur (mais n'en restent pas moins modifiables).
A toucher du bout des doigts donc...

Pour celles qui nous concernent particulièrement :

bool start
- appelez votre fonction initiale à la fin (juste au-dessus du return)
- n'oubliez pas de l'indiquer en import au préalable ^^

void get_start_time
Pas besoin de commentaire ;o)

==================================================

SCRIPT.CFG

Contient la déclaraton des "modules".

Par module, il faut comprendre un fichier FOS contenant un ensemble de fonctions touchant à un même "thème". Seules les fonctions présentes dans un module peuvent être appelées en import.

L'utilisation de module permet une gestion plus souple et une meilleure évoluvité à un projet en le découpant en parties cloisonées. L'idée étant que chaque module soit indépendant des autres.
Par exemple, attribuer à chaque feature majeure son propre module.
Prendre le temps de bien penser ses modules sur le papier est une gageure... Dommage que TLA ne l'ait pas suivie ! ^^

En effet, beaucoup de leurs modules interagissent les uns avec les autres... Donc forcément, la désactivation de l'un peut amener à une failure au lancement du serveur. Retracer les dépendances n'est pas évident fautes de commentaire lisibles dans le code ou d'un schéma les présentant.

========= Modules nécessaires pour un nouveaux projet =========

Liste non définitive, on peut sûrement épurer encore un peu plus.
Cela correspond à un écrasement total de TLA, exception faite de la partie REPLICATION, mais qui sera remplacée à terme.

Les ## sont mes commentaires personnel pour Surface Dwellers.

# Used modules @ server module main # Game main script @ server module parameters # Critter parameters @ server module scenery # Scenery generic @ server module dialog # Functions using in Npc dialogs @ server module explode # Explode functions @ server module mob # Generic mob ai ##TOCHK @ server module fix_boy # Fix boy @ server module combat # Combat @ server module trader # Generic Trader ##TOCHK @ server module repair # Items wear, repair @ server module repairer # NPC mechanic, with repairing services ##TOCHK @ server module replication # Replication ##TMP-ToModif @ server module replication_bank # Replication banks, Banker/Guard/Kepper ##TMP @ server module replication_hell # Replication hell, triggers, turret ##TMP @ server module replication_terminal # Replication terminal ##TMP @ server module replication_trader # Replication trader, can give free eqipment ##TMP @ server module casino # Casino stuff (like Onehanded) ##TOCHK @ server module poker # Poker game ##TOCHK @ server module roulette # Roulette ##TOCHK @ server module npc_planes # Npc planes @ server module wanted # Wanted sign @ server module perks # Perks @ server module books # Books reading @ server module drugs # Drugs @ server module grave # Graves & Shovel @ server module energy_barier # Forcefields ##TOCHK @ server module poison # Poison @ server module radiation # Radiation @ server module geiger # Geiger counter @ server module entire # Entires parsing @ server module lockers # Doors and keys stuff @ server module media # Music/Video @ server module effects # Flush screen, Quake effects @ server module time # Some stuff for work with time @ server module radio # Radio stuff @ server module trigger # Trigger lib @ server module stdlib # Standard lib @ server module item # Item stuff @ server module map_radiation # Generic radiation affects ##TOCHK @ server module elevator # Elevator script @ server module nukemachine # NukeCola machine common script @ server module respawn_item # Respawnable item script #@ server module ai_pattern # Npc pattern, header for mapper npc script #@ server module pattern_sniper # Npc pattern, sniper #@ server module pattern_slayer # Npc pattern, melee #@ server module pattern_medic # Npc pattern, medic #@ server module pattern_term # Npc pattern, terminator @ server module trap # Traps script @ server module sandbag # SF invasion sandbags @ server module test # Temporary script @ server module debug # Debug functions @ server module q_main_intro # Main quest intro ##TOCHK @ server module resources # Resources system @ server module traveller # NPC global movement schedule script ##TOCHK @ server module location # Common location stuff @ server module monologue # NPC text monologue ##TOCHK



























































"Le Loup maintient le Caribou en bonne santé..."

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...