====== Missions ====== Utiliser le logiciel [[fr:world_editor:|world_editor]] pour créer des missions. On peut créer des Rites et Tâches d'Encyclopédie avec des missions, pour créer des ensembles cohérents de missions et donner au final une brique en récompense quand toutes ces missions ont été effectuées : [[fr:primitive:mission:encyclopedie]] Cliquer sur "Project" puis "Add Landscape" puis choisir ''newbieland.land'' de votre dossier de ''ressources/continents/newbieland/newbieland.land'' Cliquer sur "Project" puis "New Primitive" puis enregistrer toutes les primitives de votre dossier de ''ressources/primitives/newbieland/''. Voir aussi [[fr:world_editor:exemple_comment_mission|Exemple commenté d'une création de mission]]. S'il n'y a pas encore de primitive de "missions", cliquer sur "Project" puis "New Primitive", puis choisir Missions_editor puis [[fr:primitive:mission:mission_tree|Mission_tree]]. Sinon, dépliez la primitive de mission avec un clic gauche (par exemple ''missions_newbieland.primitives'') faites un clic droit sur le premier arbre de missions (ici, ''missions_newbieland'' et sélectionnez ''Add mission_tree''. {{ :fr:world_editor:we_mission1.jpg |Sélection de Add_mission_tree}} La même fenêtre d'arbre de mission va s'ouvrir dans les deux cas. Pour être sûr de bien compiler la mission (dernière partie de la création), il vaut mieux commencer par créer une nouvelle primitive juste pour la mission, puis la tester. Une fois qu'elle est validée, on peut la couper/coller (ctrl-x, ctrl-v) dans la primitive mission_*.primitive. Ainsi on rassemble ensemble les missions ou, si la carte est grande et riche, un ensemble de mission. Par exemple, toutes les missions du type "Gagner des sous". Sinon, il finira par y avoir énormément de primitives pour une zone, avec le risque de s'y perdre un peu. La fenêtre de propriété de la mission s'ouvre. {{ :fr:world_editor:we_mission2.jpg | Propriété de la mission.}} Plus cette fenêtre de propriété est bien remplie, plus la suite est facile :-) Pour remplir : * **name** : donnez le nom identifiant la mission. Par exemple qabb20160603b * **audience** : "solo", cela veut dire qu'un joueur seul peut la prendre et la valider. "Group" concerne les quêtes de groupes (à tester ?), "guild" les quêtes qui seront validé au niveau de la guilde (à tester aussi). * **auto_remove_from_journal** : une fois validée, s'enlève seule du journal ? * **automatic** : ??? laisser par défaut comme c'est en attendant de savoir les détails * **fail_if_inventory_is_full** : échoue automatiquement si l'inventaire est plein? * **giver_primitive** : la .primitive où se trouve le NPC. Un PNJ déjà compilé avec ses missions se trouvent dans ''urban_*.primitive'', par exemple ''urban_newbieland.primitive'' * **global replay_timer** : le temps avant que la quête puisse être reprise après son échec ou sa réussite, pour tout le monde ? Visiblement en [[fr:rcticks|ticks]]. * **mission_category** : catégorie de mission sur Ryzom, c'était combat, artisanat, forage. Où cela est-il défini ? quels sont les options ? * **mission_descriptio**n : mettre l'ui à traduire de la description de la mission, par exemple ui_nom_mission_DESC * **mission_giver** : mettre l'identifiant du personnage donnant la quête : ''$givervar@fullname$'' * **mission_icon** : nom de l'icone dans les ds ? * **mission_titl**e : mettre l'ui à traduire du titre de la mission, par exemple ''ui_nom_mission_TITLE'' * **mono_instance** : ??? * **need_validation** : ??? coché par défaut * **non_abandonnable** : doit concerner les quêtes "invisibles" qui n'apparaissent pas dans le journal * **not_in_journal** : Les missions qui n'apparaissent pas dans le journal peuvent permettre de réaliser certains events ; ce ne sont pas des missions classiques, le joueur a fait quelque chose qui a déclenché le début de la quête mais il n'en sait rien. * **not_proposed** : sans doute aussi pour les quêtes invisibles : le pnj lance la quête, mais rien ne l'indique ? * **parent_missions** : indiquez les missions dont dépend la mission actuelle ? Il faut les avoir validé pour avoir accès à celle-ci ? * **phrase_auto_menu** : ??? * **player_replay_timer** : Le temps avant que le joueur puisse reprendre la quête. Visiblement en [[fr:rcticks|ticks]]. * **replayable** : "rejouable", à cocher si elle peut être faite plusieurs fois. * **run_only_once** : ne peut être fait qu'une fois. Dans //variables//, ajouter [[fr:primitive:mission:var_npc|Var_npc]] et le remplir. exemple: name : givevar = nom_NPC (titre_NPC) npc_function : titre_NPC npc_name : nom_NPC var_name : givevar ===== Création de mission avec step ===== Pour le début, on va faire au plus simple.\\ Choisir un //Step// puis une sorte "d'//objectives//" : *[[fr:primitive:mission:step|Step]], ils se font dans l'ordre pour valider *[[fr:primitive:mission:step_ooo|Step_ooo]], ils se font dans le désordre pour valider *[[fr:primitive:mission:step_if|Step_if]], plusieurs chemins pour valider la quête *[[fr:primitive:mission:step_any|Step_any]], un seul des objectifs pour valider * ====Objectives première==== ===add_talk_to=== Le PJ doit aller voir un PNJ pour que le PNJ lui parle pour valider l'objectif !\\ [[fr:primitive:mission:talk_to|add_talk_to]] ===add_kill=== Le PJ doit aller tuer un PNJ/mob pour valider l'objectif !\\ [[fr:primitive:mission:kill|add_kill]] ===add_cast=== Le PJ doit utilisé un sort précis pour valider l'objectif !\\ [[fr:primitive:mission:cast|add_cast]] ===add_forage=== Le PJ doit aller forer des mps pour valider l'objectif !\\ [[fr:primitive:mission:forage|add_forage]] ===add_loot=== Le PJ doit aller looter des mps sur un PNJ/mob pour valider l'objectif !\\ [[fr:primitive:mission:loot|add_loot]] ===add_craft=== Le PJ doit aller fabriquer un objet pour valider l'objectif !\\ [[fr:primitive:mission:craft|add_craft]] ===add_target=== Le PJ doit aller cibler un PNJ/mob pour valider l'objectif !\\ [[fr:primitive:mission:target|add_target]] ===add_sell=== Le PJ doit aller vendre un mps pour valider l'objectif !\\ [[fr:primitive:mission:sell|add_sell]] ===add_buy=== Le PJ doit aller acheter un mps/item pour valider l'objectif !\\ [[fr:primitive:mission:buy|add_buy]] ===add_give_item=== Le PJ doit aller donner un mps/objet à un PNJ pour valider l'objectif !\\ [[fr:primitive:mission:give_item|add_give_item]] ===add_give_money=== Le PJ doit aller donner de l'argent à un PNJ pour valider l'objectif !\\ [[fr:primitive:mission:give_money|add_give_money]] ===add_escort=== Le PJ doit aller escorter un PNJ/mob pour valider l'objectif !\\ [[fr:primitive:mission:escort|add_escort]] ===add_visit=== Le PJ doit aller visiter une place pour valider l'objectif !\\ [[fr:primitive:mission:visit|add_visit]] ===add_skill=== Le PJ doit avoir une stanza(skill) et un niveau minimum pour valider l'objectif !\\ [[fr:primitive:mission:skill|add_skill]] ===add_do_mission=== Le PJ doit aller faire une autre mission pour valider l'objectif ! (à tester)\\ [[fr:primitive:mission:do_mission|add_do_mission]] ===add_wait_ai_msg=== Le PJ doit attendre un message pour valider l'objectif ! (à tester)\\ [[fr:primitive:primitivemissiondocwait_ai_msg|add_wait_ai_msg]] ===add_queue_start=== Le PJ doit aller attendre qu'un scénario pop pour valider l'objectif ! (à tester)\\ [[fr:primitive:primitivemissiondocqueue_start|add_queue_start]] ====objectives secondaire==== Il est possible de mettre des objectives secondaire dans : *pre_actions *objectives *post_actions ===Add_recv_money=== Le PJ reçoit de l'argent.\\ [[fr:primitive:mission:recv_money|add_recv_money]] =====Création de mission avec dialogues ===== Maintenant on rajoute les dialogues .\\ Il faut absolument placer le PJ devant le PNJ avant de commencer un dialogue !!!!!!!! Choisir un //chat dynamique// : *[[fr:primitive:mission:step_dyn_chat|Step_dyn_chat]], plusieurs choix disponible *[[fr:primitive:mission:linear_dyn_chat_fail|Linear_dyn_chat_fail]], (je ne sais pas) *[[fr:primitive:mission:linear_dyn_chat_retry|Linear_dyn_chat_retry]], (je ne sais pas) *[[fr:primitive:mission:linear_dyn_chat_continue|Linear_dyn_chat_continue]], un seul choix disponible A finir =====Condition particuliere===== Les cas particuliers :\\ Pour éviter d'avoir des missions qui plantent !!!!! *[[fr:primitive:mission:step_failure|Step_failure]], (je ne sais pas) *[[fr:primitive:primitivemissiondocstep_crash|Step_crash]], (je ne sais pas) *[[fr:primitive:primitivemissiondocstep_player_reconnect|Step_player_reconnect]], (je ne sais pas) *[[fr:primitive:mission:jump_to|Jump_to]], sauter sur une autre partie de mission {{tag>world_editor mission primitives outils brouillon}}