La totalité des scripts d'Amtenaël

Section Française de l'emulateur Dawn of light.

Moderators: Support Team, Other Language Team

Re: La totalité des scripts d'Amtenaël

Postby Eudes » Wed May 27, 2015 10:30 pm

Bonsoir Graveen et DOL :)

Je suis bien de ton avis, multiplier les outils c'est apporter plus de complexité. Mais encore faut-il pouvoir faire évoluer les existants. Dataquest est un système puissant, bien qu'incomplet en terme de "petites" options et fonctionnalités pour donner plus de richesse au jeu (PvE bien entendu). Mais, son principal souci comparé à un TextNpc ou un Coffre (made in Dre) c'est son utilisation peu simple.

Je pense avoir largement dépassé les 60 heures dans la Dataquest, à bricoler des tas de quêtes différentes et je bloque encore sur certaines situations et j'en résouds d'autres au pif... pourtant il ne s'agit que de remplir des champs...

A côté de ça, les travaux de Dre sont vraiment super simples à manipuler, ils sont limités comparés à la DQ mais ils sont tellement simples et totalement utilisables IG que ça les rend particulièrement pratiques et exploitables par tout le monde, vite et bien.
Eudes
DOL Freak
 
Posts: 561
Joined: Wed Dec 05, 2007 12:27 am

Re: La totalité des scripts d'Amtenaël

Postby espoir » Thu May 28, 2015 1:19 pm

Bonsoir Graveen et DOL :)

Je suis bien de ton avis, multiplier les outils c'est apporter plus de complexité. Mais encore faut-il pouvoir faire évoluer les existants. Dataquest est un système puissant, bien qu'incomplet en terme de "petites" options et fonctionnalités pour donner plus de richesse au jeu (PvE bien entendu). Mais, son principal souci comparé à un TextNpc ou un Coffre (made in Dre) c'est son utilisation peu simple.

Je pense avoir largement dépassé les 60 heures dans la Dataquest, à bricoler des tas de quêtes différentes et je bloque encore sur certaines situations et j'en résouds d'autres au pif... pourtant il ne s'agit que de remplir des champs...

A côté de ça, les travaux de Dre sont vraiment super simples à manipuler, ils sont limités comparés à la DQ mais ils sont tellement simples et totalement utilisables IG que ça les rend particulièrement pratiques et exploitables par tout le monde, vite et bien.
Bonjour,

Je ne connais pas encore Dataquest. Parcontre il ne faut pas oublier que textnpc ne sert pas uniquement aux quêtes.
Avec ce script on peut créer des personnages d'ambiances qui racontent une histoire ou qui peuvent orienter le joueur.
On peut associer effectivement une spell / une émote ou autres aux personnages.

Exemple :
Code: Select all
/textnpc create /textnpc text "Bonjour je m'appel [espoir], je suis une [chèvre]. /textnpc add espoir "Vous qui entrez ici, perdez toute espérance" - Dante, divine comédie /textnpc emote add cry espoir (on ajoute l'émote de pleurer pour le npc si le joueur clic sur espoir) /textnpc add chèvre "Béhhhhh" /textnpc spell add 34 chèvre (on ajoute une spell du npc si le joueur clic sur chèvre)
J'avais utilisé les ncpechangeurs (même boite de dialogue/config) pour organiser un concours du temps d'Armandia.
A l'aide d'une commande proche de /textnpc guild ou /textnpc guildA, nous pouvons autoriser ou interdire à une guilde de communiquer avec un /textnpc ou tout /Npc(echange/teleport) utilisant le script /textnpc de base. On peut faire la même chose avec les classes/races de souvenir. Et pour organiser le concours, j'utilisais une commande en /info sur npcechangeur pour voir le maximum d'echange par npc dédié à une guilde.

(Mon explication est-elle claire ? :shock: )

Dataquest permet la même chose ? Ou ai-se complémentaire ?
Co-Admin - Pandemonia - Serveur en construction
User avatar
espoir
DOL Apprentice
 
Posts: 41
Joined: Sat Mar 01, 2014 1:35 pm

Re: La totalité des scripts d'Amtenaël

Postby Eudes » Thu May 28, 2015 1:36 pm

Bonjour Espoir :)

Pour moi qui utilise les trois (Dataquest, TextNpc et l'échangeur) c'est clair oui :)

Mais pas de réelle opposition entre la Dataquest et le TextNpc, la DQ permet de monter une quête de A à Z, et de manière très riche aujourd'hui (nombreux déclencheurs, nombreuses étapes variées, nombreux choix de récompenses) mais peine à gérer des textes riches contrairement au TextNpc. Avec la DQ on est plus sur un clic, un texte, un clic et on passe à une autre étape. Là où le TextNpc permet effectivement d'avoir de gros récits auprès d'un PNJ.

On ne peut pas comparer les deux, la DQ c'est un avion cargo, le TextNpc un vélo... mais parfois un vélo correspond mieux à nos besoins qu'un avion cargo :) et il est surtout très simple et facile à utiliser (pas toujours le cas de la DQ).

Et pour l'échangeur, on a pas d'équivalent dans DOL, il y a bien les marchands mais là encore c'est complet mais lourd à manipuler, alors que le script de Dre permet une mise en place en jeu en quelques minutes d'une PNJ capable d'échanger un item contre d'autres items, de l'XP ou de l'argent.

Dre a codé des fonctionnalités qui manquaient à DOL dans un contexte RP/PvE, et il a bien fait ça ! C'est juste des vélos mais ça roule bien, ça s'apprend vite, et ça fait bien le job qu'on en attend :)
Eudes
DOL Freak
 
Posts: 561
Joined: Wed Dec 05, 2007 12:27 am

Re: La totalité des scripts d'Amtenaël

Postby espoir » Fri May 29, 2015 10:57 am

Salut,

Je ne pense pas que les scripts trés personnalisés comme la prison soient la cible de ma demande.

En effet ce sont des mécanismes bien particuliers qui ne vont pas dans le core, je cible plutôt des trucs génériques comme /ngg ou /textnpc (mais même dans ce dernier cas, je pense qu'il est plus pertinent que j'améliore AmbientBehaviour et Dataquest pour proposer un système plus flexible, à voir).

Voili, voilu ! ;)
Salut Graveen,

J'ai bien avancé sur le sujet hier. Je pense être capable de faire la livraison dans la soirée. Il me reste quelques scripts a identifier (patch, command serveur). Je te propose un packaging qui te permettra d'identifier ce que tu souhaites ou non garder (a moins que tu ne préfères 15 fichiers .rar ?). Les dépendances me semblent corrects. Parcontre il faudra tester leur viabilité.
Co-Admin - Pandemonia - Serveur en construction
User avatar
espoir
DOL Apprentice
 
Posts: 41
Joined: Sat Mar 01, 2014 1:35 pm

Re: La totalité des scripts d'Amtenaël

Postby espoir » Fri May 29, 2015 3:36 pm

Ensemble des scripts organisés d'Amtenael (a tester avant intégration) :

FONCTION :
- Amtecreator : Organisation du loot
- Area : Gestion des spell area (type bind)
- Banque : Gestion de banque IG (Chèque...)
- Death log : Modification des logs de morts
- Friendlist : Ajout d'une liste d'amis ig
- GVG : Modification du GVG
- Invisible : Rendre un GM invisible
- IRC : Intégration d'un module IRC à DAOC
- Path : Je ne connais pas
- PlaceAssise : Ajout d'un module pour s'assoir sur banc/table/rocher/...
- Prison : Ajout d'une zone prison + script garde + script primes
- Reboot server : Script de reboot
- Report player to GM : Scrip pour contacter l'ensemble des GM qui répondent anonymement.
- RVR : Modification du RVR
- Starlocation : Modification du starlocation par royaumes.
ITEMS :
- Beer : Commande pour joueur - Want a pint, made ?
- Bindstone : Pierre de bindstone
- Boat : Bateau + npc palefrenier à bateau
- Book : Librairenpc + copynpc + book + encre & plume
- Coffre : Script pour faire des coffres
- Commands : Accès pour ensemble des scripts
- Feuartifice : Feu d'artifice pour events
- Regenitem : Item de regen santé/end

MOBs :
- AnimMob : Mob qui s'anime lors de l'approche d'un joueur
- DecorMob : Mob étrange
- FollowMob : Mob suiveur pratique pour suivre un chariot
- Mob - Lowlevelheller : Mob qui soigner les bas niveaux
- NightMob : Mob configurable pour apparaitre à certaines heures
NPCs :
-EchangeurNPC : Npc qui échange un item contre un autre
-FretNPC : Envoyer un item depuis un npcfret à un autre npcfret (de joueur à joueur).
-GuardNPC : Pour GVG ou Prison, je ne sais pas
-TeleportNPC : NPC configurable pour téléportation. On peut parler au NPC ou faire un NPC qui défini une area d'effet de téléportation.
-Textnpc : NPC qui discute avec le joueur + spell + emote
Edit :
En complément, ancien sujet de DRE sur ses scripts (uk version) :
http://www.dolserver.net/viewtopic.php? ... lit=script - textnpc UK
http://www.dolserver.net/viewtopic.php?f=63&t=19740 - Bank UK ...

Pour info :
Cette version de "répartition" à générer de nombreuses erreurs sur ma version test.
Attachments
amte.rar
Scripts Amtenael
(142.81 KiB) Downloaded 34 times
Last edited by espoir on Fri May 29, 2015 10:17 pm, edited 3 times in total.
Co-Admin - Pandemonia - Serveur en construction
User avatar
espoir
DOL Apprentice
 
Posts: 41
Joined: Sat Mar 01, 2014 1:35 pm

Re: La totalité des scripts d'Amtenaël

Postby espoir » Fri May 29, 2015 4:46 pm

Ci-joint le .dll obligatoire pour faire fonctionner les scripts amtenael.

A mettre dans le dossier [lib] de votre serveur
Attachments
Microsoft.CSharp.rar
.dll pour faire fonctionner les scripts Amtenael
(183.25 KiB) Downloaded 29 times
Co-Admin - Pandemonia - Serveur en construction
User avatar
espoir
DOL Apprentice
 
Posts: 41
Joined: Sat Mar 01, 2014 1:35 pm

Re: La totalité des scripts d'Amtenaël

Postby espoir » Fri May 29, 2015 4:54 pm

Serverconf
Fichier absent du dernier core
A mettre avec serverconfig_extraproperties.xml dans le dossier DOLCONFIG

Assemblyinfo
Modification de l'Assemblyinfo.cs de base
A mon avis, c'est ça qui est interessant :
Code: Select all
using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; // L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly // aux composants COM. Si vous devez accéder à un type dans cet assembly à partir de // COM, affectez la valeur true à l'attribut ComVisible sur ce type. [assembly: ComVisible(false)] // Le GUID suivant est pour l'ID de la typelib si ce projet est exposé à COM [assembly: Guid("d8fd70e0-a35c-48cc-9e25-12a8a762cd9a")]
alors que le code de base propose :
Code: Select all
using System.Reflection;
Attachments
Assembly & Serverconf.rar
(1.41 KiB) Downloaded 22 times
Co-Admin - Pandemonia - Serveur en construction
User avatar
espoir
DOL Apprentice
 
Posts: 41
Joined: Sat Mar 01, 2014 1:35 pm

Re: La totalité des scripts d'Amtenaël

Postby Graveen » Sun May 31, 2015 12:55 pm

Merci Espoir. Si tu peux faire une synthèse après les avoir essayé, c'est cool :) De mon côté je voudrais augmenter le core de DOL avec des scripts génériques ( donc pas trop pointus, exit Banque, Prison, Book qui sont vraiment spécifiques à Amte).
Les scripts qui me semblent évident sont Placeassise, NightMob, Coffre; les scripts qui sont déjà dans DOL par xemple (IRC, Teleport,...) n'ont pas de nécessité, et les scripts qui semblent faire doublons sont à voir suivant les ressources qu'on a et l'objectif final (TextNPC donc, qui fait des émules).

DQ est la réponse de l'équipe DOL au pb des quêtes scriptées. Il nous a semblé que le QuestDesigner était trop complexe à maintenir, que l'écriture des quêtes classiques scriptées était trop pénibles. Amté avait son système (mais n'avait rien libéré), Uthgard nous a proposé le sien (mais il était vraiment complexe), donc Tola est parti sur ce dernier.
Image
* pm me to contribute in Dawn of Light: code, database *
User avatar
Graveen
Project Leader
 
Posts: 12660
Joined: Fri Oct 19, 2007 9:22 pm
Location: France

Re: La totalité des scripts d'Amtenaël

Postby HunabKu » Mon Jun 01, 2015 9:29 am

Je pense qu'il faudrait le repenser. Je verrai ça quand j'aurai commit le patch d'apparences des forts/tours
"C'est l'ignorance qui apporte le chaos, pas la connaissance."
Scarlett Johansson dans "Lucy" de Luc Besson
-------------------------------------------------------------------------------
"Ignorance brings chaos, not knowledge."
Scarlett Johansson on "Lucy" by Luc Besson
User avatar
HunabKu
Developer
 
Posts: 1905
Joined: Sat Jun 18, 2011 4:48 am

Re: La totalité des scripts d'Amtenaël

Postby Dre » Fri Jun 05, 2015 8:18 am

Hello tout le monde,

Je vois qu'il y a pas mal d'activité par rapport à mon code ! C'est cool de voir que c'est toujours en vie ici :)

Pour info textNPC, echangeur et coffre sont des scripts totalement différents à la base : textNPC n'avait été créé que pour faire des pnj d'ambiance puis les mappeurs d'Amte de l'époque m'avait demandé de plus en plus de fonctionnalités qui ont orienté le script vers quelque chose qui pouvait gérer une quête complète.
Tout ça, c'était à une époque où Dol ne proposait rien pour gérer les quêtes (ou le système était trop complexe pour être utilisé par les mappeurs, je ne sais plus) ainsi petit à petit, un second script est arrivé "echangeur" qui permettait de gérer la plupart des cas de quêtes (échange d'item, xp, ...) celui-ci était complètement séparé du textnpc à la base, ce n'est qu'une refonte de textnpc au bout d'un moment qui m'avait fait fusionner les 2.
Pour ce qui est de "coffre", c'était aussi à part, mais si j'aurais à le refaire, ça en serait dans le même code que le textnpc par contre Dol devrait être modifié pour qu'un objet du monde (GameWorldObject je crois ?!) ait une base commune avec GameNPC de manière à pouvoir gérer de la même façon un npc qu'un objet dans le monde (en gros, un GameTargetable, ou truc dans le genre). A partir de là, il serait possible de créer un npc ou un objet qui aurait chacun toutes les fonctionnalitées d'un textnpc, échangeur ou coffre, c'est un truc qui m'avait paru assez évident quand je codais sur Amte mais malheureusement, je n'ai jamais eu le temps de m'en occuper plus que ça !
Mais si on voudrait vraiment faire bien, il faudrait refactoriser Dol pour le coder en programmation orienté composant (voir Unity3D qui est un bon exemple), c'est un peu déjà le cas avec les IA qui sont encapsulé dans un Brain mais c'est bien trop limité ! Les textnpc dans leur dernière version, sont un peu codé de cette manière aussi (tout le code d'intéraction est dans une classe à part qui n'a rien à voir avec les GameNPC, ce qui permet de réutiliser le code dans les GameNPC, GameMerchant, etc). Si on partirait sur une telle base, on aurait une entité (npc ou object, Daoc nous permettant pas de faire une base commune complète à cause du protocole) qui pourrait se voir "plugger" la fonction marchand, textnpc, échangeur, coffre, IA, etc. donc une seule entité pourrait être beaucoup de choses !

Sinon au niveau des scripts, la dernière fois que j'ai lancé le serveur d'Amte, je n'ai vraiment pas eu grand chose à modifier pour que ça marche avec la dernière version du svn (toujours pas de git ?! Dol devrait passer à github, sourceforge est en train de mourrir...). Il n'y a pas de dll à ajouter dans lib aussi, il suffit de modifier le fichier de config (un xml si je me rappelle bien) pour indiquer d'utilier la lib Microsoft.Csharp.dll à la compilation des scripts (ça devrait être par défaut sur Dol je pense ça...).

Pour ce qui est d'une intégration rapide dans Dol, des textnpc, je pense qu'il faudrait voir les fonctionnalités de DQ, ajouter ce qu'il manque puis reprendre les commandes de textnpc pour que ça permette de créer ce qu'il faut en DQ derrière, vu que c'est surtout cette partie qui manque à Dol... Une interface simple IG pour gérer les npc. Après, je ne sais pas si les DQ pourrait gérer les conditions assez complexe des textnpc (vu qu'il y a pas mal de choses quand même).

Bon courage ! J'essayerais de passer de temps en temps, n'hésitez pas si vous avez des questions :)
Admin of Amtenael
Dre
Developer
 
Posts: 206
Joined: Fri Oct 29, 2004 6:24 pm
Website: https://amtenael.fr

Re: La totalité des scripts d'Amtenaël

Postby HunabKu » Fri Jun 05, 2015 9:31 am

Merci pour ces precisions Dre !
"C'est l'ignorance qui apporte le chaos, pas la connaissance."
Scarlett Johansson dans "Lucy" de Luc Besson
-------------------------------------------------------------------------------
"Ignorance brings chaos, not knowledge."
Scarlett Johansson on "Lucy" by Luc Besson
User avatar
HunabKu
Developer
 
Posts: 1905
Joined: Sat Jun 18, 2011 4:48 am

Re: La totalité des scripts d'Amtenaël

Postby espoir » Fri Jun 05, 2015 10:07 am

Merci pour le complément d'information Dre.
Après pour le .dll, il était absent de la version DOL récupérer. D'ou mon ajout.
Co-Admin - Pandemonia - Serveur en construction
User avatar
espoir
DOL Apprentice
 
Posts: 41
Joined: Sat Mar 01, 2014 1:35 pm

Re: La totalité des scripts d'Amtenaël

Postby Eudes » Fri Jun 05, 2015 11:48 am

Hello Dre,

Content de te voir passer ici :)

Je suis un fan de la plupart de tes scripts !
Après, je ne sais pas si les DQ pourrait gérer les conditions assez complexe des textnpc (vu qu'il y a pas mal de choses quand même).
Les DQ sont très puissantes, actuellement beaucoup plus riches en conditions que le TextNpc, comme pour déclencher une quête où l'on a 6 ou 7 situations comme interagir avec un PNJ, interagir avec un objet, donner un item à un PNJ, tuer un PNJ, entrer dans une zone, fouiller une zone...

Et surtout, ces déclenchements servent aussi pour les étapes, permettant une vaste variation dans les déroulements des quêtes puisqu'on peut prévoir des dizaines d'étapes, relativement différentes les unes des autres, où il faut chercher, creuser, tuer, collecter, échanger, looter, etc.

Le TextNpc est clairement plus simple à employer, mais il ne permet pas d'accéder à la richesse des DQs. Mais pour maîtriser les DQs, faut beaucoup tatonner, pratiquer, tester, découvrir, s'énerver, se décourager :)
Eudes
DOL Freak
 
Posts: 561
Joined: Wed Dec 05, 2007 12:27 am

Re: La totalité des scripts d'Amtenaël

Postby HunabKu » Fri Jun 05, 2015 11:57 am

Plutot ne pas se décourager. :p
"C'est l'ignorance qui apporte le chaos, pas la connaissance."
Scarlett Johansson dans "Lucy" de Luc Besson
-------------------------------------------------------------------------------
"Ignorance brings chaos, not knowledge."
Scarlett Johansson on "Lucy" by Luc Besson
User avatar
HunabKu
Developer
 
Posts: 1905
Joined: Sat Jun 18, 2011 4:48 am

Re: La totalité des scripts d'Amtenaël

Postby Dre » Fri Jun 05, 2015 12:36 pm

Après pour le .dll, il était absent de la version DOL récupérer. D'ou mon ajout.
C'est normal, ça fait partit du framework .Net, ça n'a rien à faire dans Dol.
Admin of Amtenael
Dre
Developer
 
Posts: 206
Joined: Fri Oct 29, 2004 6:24 pm
Website: https://amtenael.fr


Return to “%s” Français

Who is online

Users browsing this forum: Bing [Bot] and 1 guest