?
| Nos forums | NwN2.fr | Lyncya | Notre channel IRC |
La Bibliothéque de Neverwinter Nights
La Bibliothéque de Neverwinter Nights
 
 
 
 
 
Bienvenue, connectez vous ou créez votre compte. Changer d'interface
 
Se connecter:
Login:

Password:


 
Neverwinter Nights 2
  Compendium NWN/NWN2
Classe, Warlock
Classes de Base
Classes de Prestige
Forum Joueur NWN2
Forum Concepteur NWN2
Bestiaire (Créatures)
Races
Tests
 - Collector Chaotique Mauvais (bbnwn, 4 nov 2006)
 - Mask of the Betrayer
 - Storm of Zehir
 - Mysteries of Westgate
Mondes
 - Les Artisans du Mitan
 - Les Légendes de Luiren
 - LanceDragon
 - La Bataille pour Cormanthor
 - Man O'War
 - Sendarie Nouvel Âge
Preview
 - 29 Mars 2006 (BBNWN)
 - 2 mai 2006 (Gamespot)
 - 17 Mai 2006 (WarCry)
 - 19 Mai 2006 (NWVault)
 - Designer Diary #1 (Gamespot, 1er Juin 2006)
Interview
 - Dorian Richard (20/02/2006)
 - Ferret Baudoin (22/02/2006)
 - Feargus Urquhart (2 mai 2006)
 - La Lettre Ouverte de Papermonk
 - Chris Avellone (Total Video Games)
Logs IRC
 - Warcry (27/01/2006)
 - NWVault / NWC (3 Juin 2006)
 - NWN2News.net (30 Juin 2006)
Faciliter la diffusion et l'installation de vos créations

 
Communauté
  Forums
Channel #nwnights-fr
Guide IRC
Liens
CEP

 
Fichier
  Tileset
Module
Hakpak
Objets
Portraits
Créatures
Scripts
Tutoriaux
Autres
Wallpapers

 
Editeur
  Tutorial Editeur
Cinématiques
Musiques
Textures
Tutoriaux NWScripts
Scripts

 
Le jeu
  Solution
Sorts
Classes
Dons (feat)
Aptitudes (skill)
Bestiaire
Règles 3e Edition
Jouer en multiplayer

 
Hordes of the Underdark
  Informations Générales
Solution [forum]

 
Shadows of Undrentide
  Preview
Informations générales
Classes de Prestige
'Lisez Moi.txt' de la Démo
FAQ
Nouveaux tilesets
Solution [forum]

 
Divers
  Traductions Logs Irc
Guides divers

 
Présentation
  Généralités
Configuration minimale
Serveur Dédié
Traduction FAQ
Historique (nwn et bioware)
Contrats de Bioware (vf)

 
Site
  Copyrights
Webmasters

 
     
 
Dîtes non aux inutiles protections contre la copie dans les jeux (SecuROM, StarForce, etc) !!
HADOPI - Le Net en France : black-out

Tutoriel : Faciliter la diffusion et l'installation de vos créations

Création d'un installeur basique

Cette méthode consiste à créer un installeur basique à partir d'un zip créé au préalable. Son gros avantage est d'être réalisable sans aucune ligne de code.

Pour cela, vous devrez utiliser NSIS, un freeware permettant la création d'installeurs et de désinstalleurs.

Vous pourrez télécharger la dernier version de NSIS ici : Télécharger NSIS.

En voici les étapes détaillées : nous prendrons comme exemple la campagne 16 Cygni

Note : comme toujours, n'oubliez pas de cliquer sur les images pour voir une version agrandie et également plus lisible.

1. Créer le Zip contenant les dossiers

Dans un premier temps, vous devez créer un Zip contenant vos dossiers, pour cela :

  • Dans un répertoire dédié, créez tout les répertoires où vous aurez des fichiers à copier tels qu'ils le sont dans le répertoire de "Mes Documents/Neverwinter Nights 2" :

    [Fichier à copier]
  • Placez vos fichiers
  • Compressez ensuite vos répertoires en un seul Zip. Attention : bien compresser en Zip, sinon votre archive sera inutilisable.

    [Compression au format ZIP]
2. Créer l'exécutable
  • Lancer NSIS et sélectionner "Installer based on Zip file"; vous devriez arriver sur cette page :

  • Dans Source Zip File [1], sélectionnez votre archive précédemment créée.
  • Dans Installer Name [2], entrez le nom de votre création (C'est le nom qui apparaitra dans la barre des taches Windows).
  • Sélectionner L'interface [3] que vous désirez (Note de Baldurien : changer ce paramètre ne changera que le thème de l'installeur final, inutile de vous prendre la tête avec).
  • Dans Default Folder [4], entrez le chemin du répertoire Neverwinter Nights 2 par défaut.

    Dans la majorité des cas, celui-ci est situé dans "Mes Documents", entrez donc : $documents\Neverwinter Nights 2.

    $documents correspond au dossier Mes Documents quelque soit le système d'exploitation.

    Attention de bien respecter les espaces et l'orthographe de Neverwinter Nights 2.

  • Dans Output EXE File [5], entrez le chemin où vous souhaitez créer votre exe.
  • Dans Compression [6], sélectionnez votre format de compression (LZMA recommandé, voir wikipedia à ce sujet).
  • Cliquez sur Generate.

Votre installeur est prêt !!!

3. Résultat final

Création d'un installeur avancé

Après la méthode de création avec Zip21, voici la méthode de création avec le système de compilation NSIS proprement dit.

Zip2 a de l'intérêt dans la mesure ou il s'agit d'un assistant très simple et donc ... un peu basique et limité.

NSIS, lui, vous permettra avec quelques lignes de codes de créer un installeur beaucoup plus performant ou toutes les fantaisies vous seront permises (ajout de fonctions, personnalisation graphique, etc...).

Je vous présente donc ici un tutoriel qui vous permettra de découvrir quelques fonctions adaptées (à mon gout) pour Neverwinter Nights 2.

La méthode est organisée ainsi :

  • Télécharger ce fichier Zip contenant des fichiers de base (et qui sont utilisés dans le tutoriel ci-dessous)
  • Dans un dossier, placer le script installeur.nsi et deux répertoires Donnees_a_installer et Donnees_installeur.
  • Dans le dossier Donnees_a_installer, placer tout les dossiers habituellement présents dans Mes documents/Neverwinter Nights 2 qui vous sont utiles.
  • Dans Donnees_installeur, placer les éventuels fichiers nécessaires à la personnalisation de l'installeur (icone, bannière...).
  • Ecriture du script suivant le tutoriel ci dessous. Pour ce faire, un éditeur avancé type Notepad++ peut s'avérer très utile.
  • Lancement du script par un clic droit, puis Compile NSIS script.
  • Test du résultat.
1. Structure de base du fichier installeur.nsi
Name "Nom_de_votre_création"
OutFile "Install.exe"
SetCompressor 'lzma'
InstallDir "$documents\Neverwinter Nights 2"
RequestExecutionLevel user
!include "MUI.nsh"

!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES

Section "Section I"
  SetOutPath $INSTDIR
  File /r "Donnees_a_installer\*.*"
SectionEnd

Voici une brève description des variables présentes dans le fichier installeur.nsi :

  • Name : Entrez le nom de votre création
  • Outfile : Entrez le chemin et le nom de votre exe
  • SetCompressor : Choix du compresseur (LZMA recommandé).
  • InstallDir : Répertoire d'installation. "$documents" pour mes documents. Laissez "$documents\Neverwinter Nights 2".
  • RequestExecutionLevel user : Pour Windows Vista et Seven, évite que l'on soit obligé d'être en mode administrateur pour réaliser l'installation.
  • !include "MUI.nsh" : Charge l'interface moderne (plus sympa)
  • !insertmacro MUI_PAGE_DIRECTORY : Il s'agit de la page qui demande le répertoire d'installation.
  • !insertmacro MUI_PAGE_INSTFILES : Il s'agit de la page d'installation des fichiers.
  • SetOutPath $INSTDIR et File /r `D:\... : File /r Compresse les dossiers et fichiers se trouvant à l'adresse qui suit en vue d'être installés à l'adresse spécifiée après SetOutPath (ici le répertoire d'installation).

Voilà, vous êtes maintenant en mesure de créer un installeur basique sans passer par zip2 et la parfois longue étape de Compression/Décompression.

Maintenant que vous en êtes arrivé là, il serait dommage de ne pas ajouter quelques fonctions.

2. Personnalisation de l'interface

Choix de la langue : Pour changer la langue (en français par exemple) il suffit d'insérer avant !insertmacro MUI_PAGE_DIRECTORY le code suivant : !insertmacro MUI_LANGUAGE "French".

Choix de l'icône : pour définir l'icône, ajouter avant les directives !insertmacro le code suivant !define MUI_ICON "Donnees_installeur\icone.ico"Donnees_installeur\icone.ico est le chemin de l'icone (en adresse relative par rapport au dossier de stockage de votre script).

Insertion de textes personnalisés : pour insérer du texte personnalisé dans la page DIRECTORY, utiliser la commande DirText. Celle-ci est à placer après les directives !insertmacro.

Par exemple :

DirText "Veuillez sélectionner le répertoire de Neverwinter Nights 2"

Si vous souhaitez modifier d'autres textes. Ils sont visibles dans le fichier "...\NSIS\Contrib\Language files\french.nlf"; vous ne devez pas éditer ce fichier directement. [Note de Baldurien : vous devez copier les lignes présentes dans ce fichier pour surcharger dans votre installeur les textes affichés sur l'écran d'installation]

Insertion d'images : vous avez la possibilité d'insérer des images dans vos différentes pages. Je vais vous présenter ici la méthode pour insérer une bannière en haut de toutes les pages.

Pour cela, avant les directives !insertmacro, insérez :

!define MUI_HEADER_TRANSPARENT_TEXT
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_BITMAP_NOSTRETCH
!define MUI_HEADERIMAGE_BITMAP "Donnees_installeur\image.bmp"

Donnees_installeur\image.bmp est l'adresse relative de votre image (en 500 pixels de large pour couvrir tout la largeur de l'installeur).

  • !define MUI_HEADERIMAGE_BITMAP_NOSTRETCH : évite que votre image ne soit retaillée à environ 100 pixels de large.
  • !define MUI_HEADER_TRANSPARENT_TEXT : évite que des zones de textes inutilisées ne se retrouvent devant votre image.
3. Rajout de sections

Il peut être utile de rajouter des sections. Vous pourrez ainsi laisser à l'utilisateur le choix de n'installer (ou réinstaller en cas de problème) que les haks, que les modules, etc...

Par exemple, on peut obtenir l'affichage suivant :

[Sections]

Pour réaliser ceci, c'est très simple. Rajoutez une section comme dans le premier exemple et une page de sélection des sections.

Ce qui nous donne, à ajouter après la directive !insertmacro MUI_PAGE_DIRECTORY :

!insertmacro MUI_PAGE_COMPONENTS

Et, à mettre à la place de la Section I :

Section "hak"
  SetOutPath "$INSTDIR\hak"
  File /r "Donnees_a_installer\hak\*.*"
SectionEnd

Section "modules"
  SetOutPath "$INSTDIR\modules"
  File /r "Donnees_a_installer\modules\*.*"
SectionEnd

Section "campaigns"
  SetOutPath "$INSTDIR\campaigns"
  File /r "Donnees_a_installer\campaigns\*.*"
SectionEnd
4. Pour aller plus loin...

Vous pourrez en apprendre plus sur le système de scripts inclut avec NSIS en allant à l'adresse suivante : http://www.todae.fr/nsis/docs/.


Voilà, vous avez maintenant toutes les cartes en mains pour créer un installeur plus performant et personnalisé. N'hésitez pas à formuler des remarques et proposer de nouvelles fonctionnalités.


Tutoriel rédigé par HiPPiaS, reformatté pour la Bibliothèque de Neverwinter Nights par Baldurien.
Merci à Phelim pour ses conseils sur le packaging de contenu et ses remarques quant à ce tutoriel.
Merci à Claudius33 de m'avoir permis d'utiliser 16 Cygni pour mes tests.
Pour tout savoir sur NSIS, connectez vous sur todae.fr.


1 Zip2 est l'utilitaire présenté dans la première partie de ce tutoriel (Création d'un installeur basique).

 
 
Revenir à la page d'accueil du site Ajouter la Bibliothéque de Neverwinter dans vos favoris Afficher une version imprimable de la page
  NeverList - Liste ...
Lyncya 3 - La Gue ...
Sarmates!
Le dernier des fi ...
Bonne année
Joyeux Noël 2010
The Witcher 2 en ...

Archives
Rechercher
 
 
Le Site



NwN 2 - Support des Modules Solos


Groupes
Archives
 

:: design by ghaxir :: coding by baldurien :: la bibliothèque de neverwinter :: tous droits réservés ::