You are not logged in.

Pour discuter avec les joueurs d'OGame, venez sur IRC - menu chat
Les candidatures aux postes d'opérateur sont ouvertes et celles de modérateur fermées

Les candidatures pour devenir opérateurs sont ouvertes
Pour toutes vos questions rendez vous sur ce sujet et pour les modalités de recrutement, allez sur ce sujet

1

Tuesday, February 9th 2010, 10:31am

Compteur de Rentabilité de Raide & de Deut Dépensé [ Ancien-Uni ] & [Ogame-Redesign]

Deut dépensé et Rentabilité :

Description :
C'est un script permettant pour le moment de comptabilisé le deut dépensés et le nombre de missions( lancement de flotte) durant sur différente date.
J'ai ensuite rajouté la rentabilité des raides.
Les raides et le deut dépensés et les missions on des détails qui vous permettent de voir mieux ce que vous gagné dépensés et comment. Ces détails sont visibles en passant la sourit sur les chiffres soulignés. Et bien sur aussi dans les exports pour forums.


Installation :
Pour utiliser ce script, il faut deja avoir installé greaseMonkey
Si vous n'avez pas encore installé GreaseMonkey allez voir ici ;) : https://addons.mozilla.org/fr/firefox/addon/748 (nécessite Firefox )



2) Pour les univers nouveau designe( tout univers )

Lien userscripts :Deut-Dépensé version 1.9.2 [Redesigne] .
Lien direct :Deut dépense et renta raide v1.9.2 [Redesign] lien direct.

Le script fonctionnera sans rien faire mais pour le vérifier aller dans votre menu flotte(page fleet1), vous devrez avoir un tableau affiché. Le script marche pour la version 1.2.2 et a été la derniere fois mis a jours le 25 avril 2010.

Version :
1.9.3 : Correction de bug et ajout de commentaire au script.
1.9.2 : Corretion d'un bug d'affichage
....
v1.7.0 : version redisigne http://userscripts.org/scripts/show/69226 créer a partir de la version 0.7.0.

Exporter les informations du scripts :
Vous pouvez exporter les informations du script sous 2 formes, le html pour le forum qui l'accepte il sera sous la même forme que ingame, sous forme de tableau.
Sous forme de bbcode les balises sont modifiable facilement, ainsi que les couleurs(voir personnaliser le script).

Personnaliser le script :
Si vous voulez vous pouvez facilement personnaliser le script en l'éditant. Il y a une partie au début pour personnalisés les couleurs. Les balises bbcodes peuvent aussi être modifiées car selon les forums elle ne sont pas les mêmes.

Question :
  • Quelle amélioration voulez-vous pour le futur ??


Bug connus :
  • Si vous êtes attaquant et défenseur la rentabilité se fera mal( quelle idée d'être des deux cotés :rolleyes: )
  • Si deux attaques ou deux recyclages sont a la même seconde.



En cas de bug :
Ces versions sont normalement sans bug et fonctionne correctement toute-fois des bugs peuvent apparaitre si c'est le cas expliquer moi qu'est ce qui ne vas pas, dit moi sur quelle version vous jouez et regarder de temps en temps le forum pour que je puisse vous posez des questions pour pouvoir corrigé le bug .

Amélioration futur :
Mettre les scripts sur opéra et google chrome. Il me faudra des testeurs car je n'ai aucun des deux.


Je tien a remercier vulca qui ma aider grâce a son superbe tuto Tuto a vulca et aussi grâce a ses conseil et son aide au fur et a mesure du scriptage, ainsi que ces rapports de bugs( il testait le script).
A martineli pour ses rapports de bug pour la version des nouveaux uni, ainsi que son aide pour le scriptage, ses idées. J'ai même reprit quelques idées leurs provenant (option de marti , mise a jours et autre pour vulca). Je dirai que le script même si je l'ai scripté en grande partie, il a évoluer grâce et avec eux.

Je souhaite l'amélioré encore un peu donc j'accepte toute remarque qui peut être constructive.

Bot / scripting / automatisation apprenez a faire la différence et apres parler !
[E.N.D.S] Dans l'âme

This post has been edited 27 times, last edit by "snaquekiller" (Jun 9th 2010, 1:50pm)


AlTi5

Commandant

  • "AlTi5" is male

Posts: 1,636

Date of registration: Dec 1st 2005

Location: Paris

Occupation: Développeur

  • Send private message

2

Tuesday, February 9th 2010, 11:10am

Bonjour,
le deut dépensé seul n'apporte pas de grand intérêt mal heureusement.
Excepter s'il est coupler au gain effectuer l'ors de ces missions ce qui permettrai de connaitre le cout/rentabilité de sa flotte et d'optimisé ces envoi.
de plus le deux des différents pillages/raids n'est pas non plus comptabilisé dans cet outil (ni la prod de deut elle même).

au final c'est une bonne initiative a complété pour qu'elle devienne indispensable au yeux des raideurs :)
EDIT:au final le but est de savoir ce que l'on consomme en deut par rapport a sa prod pour estimé ce qu'il nous manquera et notre moyenne par semaine!

This post has been edited 1 times, last edit by "AlTi5" (Feb 9th 2010, 11:11am)


vulca

Seigneur

  • "vulca" is male

Posts: 4,663

Date of registration: Jun 9th 2006

Location: france

  • Send private message

3

Tuesday, February 9th 2010, 12:34pm

Felicitation pour ton premier script :thumbsup:

Moi je trouve ça super comme idée ^^ ça m'intrigue le deut que je dépense :P

Après c'est sur que si en plus ça compte les rentabilités des raids ça serait merveilleux, mais c'est pas le même temps de travail ^^


Par contre il manque une case essentiel à mes yeux :D : C'est le nombre de mission/ deut dépnsé depuis l'installation du script ;)
Je me demande bien combien de centaines de millions de deut j'ai bien pu dépensé depuis le début ^^


edit : y'a une erreur dans ma console d'erreur: (ça me fait penser qu'il manque une partie "erreur" sur le tuto)
Erreur : document.getElementById("content") is null
Fichier Source : file:///C:/Users/Aur%C3%A9lien/AppData/Roaming/Mozilla/Firefox/Profiles/p0fpqyc5.default/gm_scripts/deut_dpens/deut_dpens.user.js
Ligne : 134

Mais ça n'a pas l'air de gêner c'est bizarre ^^

EDIT2 : Faut que t'interdise l'execution sur les nouveaux uni, on a un pop-up a chaque page disant d'aller en vue générale :p
Le plus simple c'est de mettre uni*.ogame.fr... comme page d'execution ;)
Scripteur: InfoCompte
cherche graphistes pour créer des skins de RC
([En ligne] Infocompte RC Converter)

This post has been edited 2 times, last edit by "vulca" (Feb 9th 2010, 1:08pm)


4

Tuesday, February 9th 2010, 2:09pm

Felicitation pour ton premier script :thumbsup:

Moi je trouve ça super comme idée ^^ ça m'intrigue le deut que je dépense :P

Après c'est sur que si en plus ça compte les rentabilités des raids ça serait merveilleux, mais c'est pas le même temps de travail ^^

Par contre il manque une case essentiel à mes yeux :D : C'est le nombre de mission/ deut dépnsé depuis l'installation du script ;)
Je me demande bien combien de centaines de millions de deut j'ai bien pu dépensé depuis le début ^^


Voila mit en place. Croit moi sa sert AlTi5 quand on fait un hof, entre 2 séance de script jai dépensé 6.257.820 de deut pour 190M de renta :D


edit : y'a une erreur dans ma console d'erreur: (ça me fait penser qu'il manque une partie "erreur" sur le tuto)
Erreur : document.getElementById("content") is null
Fichier Source : file:///C:/Users/Aur%C3%A9lien/AppData/Roaming/Mozilla/Firefox/Profiles/p0fpqyc5.default/gm_scripts/deut_dpens/deut_dpens.user.js
Ligne : 134

Mais ça n'a pas l'air de gêner c'est bizarre ^^

EDIT2 : Faut que t'interdise l'execution sur les nouveaux uni, on a un pop-up a chaque page disant d'aller en vue générale :p
Le plus simple c'est de mettre uni*.ogame.fr... comme page d'execution ;)


Pour l'erreur d'execution je sais pas comment la réglé sur coup jai fait plus au moin au pif pour le placé bien xD.

et Corrigé le lien d'execution .


merci et puis je voulait faire un truc qui listait les raide de la journées et les missions mais le probleme sa prendrai trop de place et je sais pas ou je pourrai le mettre :)

Bot / scripting / automatisation apprenez a faire la différence et apres parler !
[E.N.D.S] Dans l'âme

DarkFire67

Homme-Clavier

  • "DarkFire67" is male

Posts: 9,321

Date of registration: Jan 6th 2008

Location: 48.569345,7.757661

  • Send private message

5

Tuesday, February 9th 2010, 2:22pm

Felicitation pour ton premier script :thumbsup:

Moi je trouve ça super comme idée ^^ ça m'intrigue le deut que je dépense :P

Après c'est sur que si en plus ça compte les rentabilités des raids ça serait merveilleux, mais c'est pas le même temps de travail ^^


Par contre il manque une case essentiel à mes yeux :D : C'est le nombre de mission/ deut dépnsé depuis l'installation du script ;)
Je me demande bien combien de centaines de millions de deut j'ai bien pu dépensé depuis le début ^^


edit : y'a une erreur dans ma console d'erreur: (ça me fait penser qu'il manque une partie "erreur" sur le tuto)
Erreur : document.getElementById("content") is null
Fichier Source : file:///C:/Users/Aur%C3%A9lien/AppData/Roaming/Mozilla/Firefox/Profiles/p0fpqyc5.default/gm_scripts/deut_dpens/deut_dpens.user.js
Ligne : 134

Mais ça n'a pas l'air de gêner c'est bizarre ^^

EDIT2 : Faut que t'interdise l'execution sur les nouveaux uni, on a un pop-up a chaque page disant d'aller en vue générale :p
Le plus simple c'est de mettre uni*.ogame.fr... comme page d'execution ;)

J'me suis déjà retrouvé avec un script qui s'executait sur fornax parce que j'étais sur "uni106.ogame".. M'enfin ça reste très anecdotique.

Mais moi aussi j'me suis toujours demandé ce que je pouvais perdre en points à cause de ma conso.. Et j'imagine que ça titille aussi les hoffeurs qui font leur compte .. Et pas qu'à la fin du mois :D
tu débloque un ecolo tout les 2 niveaux d'astro
Plus elle est grosse plus la proba qu'elle sente rien augmente.

\o/

vulca

Seigneur

  • "vulca" is male

Posts: 4,663

Date of registration: Jun 9th 2006

Location: france

  • Send private message

6

Tuesday, February 9th 2010, 2:41pm

J'me suis déjà retrouvé avec un script qui s'executait sur fornax parce que j'étais sur "uni106.ogame


On peut aussi mettre le script dans un

Source code

1
2
3
4
if ( ! document.getElementById('playerName')) 
{
// code
}


(sans le ! si on veut qu'il s'execute sur les nouveaux uniquement)
au moins on est sur :P
Scripteur: InfoCompte
cherche graphistes pour créer des skins de RC
([En ligne] Infocompte RC Converter)

7

Tuesday, February 9th 2010, 6:10pm

encore une erreur :) mais je comprend pas la :

Source code

1
2
3
	var date = new Date();
	var j_m_a = date.getDate() + '_' + date.getMonth() + '_' + date.getFullYear(); 
alert(j_m_a);


le alert m'affiche 9_1_2010

or on est en février la faudrai qu'on m'explique xD si c'est une erreur de ma part ou juste un truc bizard.


ps: j'ai rajouté la vérification de vulca et je rajoute la date de la 1ere fois du comptage :)

Bot / scripting / automatisation apprenez a faire la différence et apres parler !
[E.N.D.S] Dans l'âme

  • "Mushroorn" is male

Posts: 691

Date of registration: Dec 10th 2005

  • Send private message

8

Tuesday, February 9th 2010, 6:41pm


le alert m'affiche 9_1_2010

or on est en février la faudrai qu'on m'explique xD si c'est une erreur de ma part ou juste un truc bizard.

le comptage commence à 0
janvier=0
février=1
...

vulca

Seigneur

  • "vulca" is male

Posts: 4,663

Date of registration: Jun 9th 2006

Location: france

  • Send private message

9

Tuesday, February 9th 2010, 6:48pm

Y'a le nombre de mission total qui ne s'incrémente pas :P :

var nbmissiontotal = GM_getValue("nbmissiontotal"+ serveur + pseudo, "0");
nbmissiontotal++;
GM_setValue("nb_missiontotal" + serveur + pseudo , nbmissiontotal);


ligne 108
edit : le probleme viens du get sans l'underscore
Scripteur: InfoCompte
cherche graphistes pour créer des skins de RC
([En ligne] Infocompte RC Converter)

This post has been edited 1 times, last edit by "vulca" (Feb 9th 2010, 7:08pm)


10

Tuesday, February 9th 2010, 9:15pm


le alert m'affiche 9_1_2010

or on est en février la faudrai qu'on m'explique xD si c'est une erreur de ma part ou juste un truc bizard.

le comptage commence à 0
janvier=0
février=1
...
ok merci de la réponse j'ai donc fait +1 pour la date du total depuis l'inscription.
Y'a le nombre de mission total qui ne s'incrémente pas :P :

var nbmissiontotal = GM_getValue("nbmissiontotal"+ serveur + pseudo, "0");
nbmissiontotal++;
GM_setValue("nb_missiontotal" + serveur + pseudo , nbmissiontotal);


ligne 108
edit : le probleme viens du get sans l'underscore
Merci probleme corrigé.

Donc la v0.3 est sortis xD faut bien corrigé toute ces erreurs. Si vous avez des idées aussi faite passés.

Bot / scripting / automatisation apprenez a faire la différence et apres parler !
[E.N.D.S] Dans l'âme

vulca

Seigneur

  • "vulca" is male

Posts: 4,663

Date of registration: Jun 9th 2006

Location: france

  • Send private message

11

Wednesday, February 10th 2010, 12:43pm

7 Jours precedent 238 38.773

Probleme d'addition : 2+38 = 40 :P
Scripteur: InfoCompte
cherche graphistes pour créer des skins de RC
([En ligne] Infocompte RC Converter)

12

Wednesday, February 10th 2010, 3:25pm

corrigé encore une fois :)

et encore un probleme xD.

Source code

1
var texte_a_afficher = '</th></tr></tbody></table><a href="#" onclick=" reset(date, serveur, pseudo, j_m_a)" >Remise à zero.</a><br/><br/><br/>';


jai sa mais le probleme c'est que ma fonction reset n'est pas appellé quand je clique sur le lien -_- :(.
J'ai tester ma fonction marche toute seul.

Bot / scripting / automatisation apprenez a faire la différence et apres parler !
[E.N.D.S] Dans l'âme

vulca

Seigneur

  • "vulca" is male

Posts: 4,663

Date of registration: Jun 9th 2006

Location: france

  • Send private message

13

Wednesday, February 10th 2010, 3:42pm

ah oui c'est normale, moi aussi jetais resté coincé longtemps avec ça :D
Je pense que quand t'écris ça, il cherche la fonction sur la page en php, et non sur le script ;)

Ajoute un id a ce que tu veux cliquer, et utilise un addEventListener



Vous avez égalements la possibilité de faire executer un bout du script lorsque l'utilisateur clique quelque part :


Source code

1
2
3
4
document.getElementById("inhalt").addEventListener("click", function(event) 
{
alert('t\'as cliqué');
}, true);


le document.getElementById("inhalt") représente la partie de la page à cliquer (voir la partie II sur la selection d'information sur la page)
Et entre les acolades, vous mettez votre code

note : à la place de "click" vous pouvez mettre "mouseover" pour que ça s'execute au passage de la souris







edit : le probleme ne venait pas de la en fait pour le 7 jours :
ligne 163:
date2mili = parseInt(date2mili.getTime()) - (i + 1)*24*60*60;

T'es en miliseconde, faut multiplier par 1000 :P
ça renvoyait a chaque fois les nombre d'hier (7*38 = 238)

Mais tu enregistres pour chaque jour a un nouvelle emplacement ?
ça serait pas mal d'ecraser les anciens enregistrement tous les 7 jours ^^
Genre si le jours est congru a X modulo 7 :D

Source code

1
2
3
4
5
6
var timestamp = (new Date()).getTime();
var nombreJoursdepuis1970 = Math.round(timestamp/1000/24/3600);  
var jour = nombreJoursdepuis1970%7;      // nbdejoursdepuis1970 congru jour modulo 7
var Mission = GM_getValue(nbmission+serveur, '0;0;0;0;0;0;0').split(';');
Mission[jour] = blabla;
GM_setValue(nbmission+serveur,Mission.join(';));
Scripteur: InfoCompte
cherche graphistes pour créer des skins de RC
([En ligne] Infocompte RC Converter)

This post has been edited 4 times, last edit by "vulca" (Feb 10th 2010, 4:20pm)


14

Wednesday, February 10th 2010, 9:48pm

ah oui c'est normale, moi aussi jetais resté coincé longtemps avec ça :D
Je pense que quand t'écris ça, il cherche la fonction sur la page en php, et non sur le script ;)

Ajoute un id a ce que tu veux cliquer, et utilise un addEventListener



Vous avez égalements la possibilité de faire executer un bout du script lorsque l'utilisateur clique quelque part :


Source code

1
2
3
4
document.getElementById("inhalt").addEventListener("click", function(event) 
{
alert('t\'as cliqué');
}, true);


le document.getElementById("inhalt") représente la partie de la page à cliquer (voir la partie II sur la selection d'information sur la page)
Et entre les acolades, vous mettez votre code

note : à la place de "click" vous pouvez mettre "mouseover" pour que ça s'execute au passage de la souris

merci j'ai corrigé :)





edit : le probleme ne venait pas de la en fait pour le 7 jours :
ligne 163:
date2mili = parseInt(date2mili.getTime()) - (i + 1)*24*60*60;

T'es en miliseconde, faut multiplier par 1000 :P
ça renvoyait a chaque fois les nombre d'hier (7*38 = 238)

sa aussi :)


Mais tu enregistres pour chaque jour a un nouvelle emplacement ?
ça serait pas mal d'ecraser les anciens enregistrement tous les 7 jours ^^
Genre si le jours est congru a X modulo 7 :D

Source code

1
2
3
4
5
6
var timestamp = (new Date()).getTime();// on a le nb de mili seconde d'aujourd'hui
var nombreJoursdepuis1970 = Math.round(timestamp/1000/24/3600);  // on le met pour savoir le nb de jours depuis 1970
var jour = nombreJoursdepuis1970%7;      // nbdejoursdepuis1970 congru jour modulo 7 ????(pas comprit) dsl pas vue encore le modulo en cours
var Mission = GM_getValue(nbmission+serveur, '0;0;0;0;0;0;0').split(';');// je décroche
Mission[jour] = blabla;
GM_setValue(nbmission+serveur,Mission.join(';));


alors sa tu lit dans mes pensé car j'y est pensser aussi . Mais jy comprend absolument rien :) au code (ps jai mit du commentaire a l'intérieur)

Bot / scripting / automatisation apprenez a faire la différence et apres parler !
[E.N.D.S] Dans l'âme

This post has been edited 1 times, last edit by "snaquekiller" (Feb 10th 2010, 10:09pm)


vulca

Seigneur

  • "vulca" is male

Posts: 4,663

Date of registration: Jun 9th 2006

Location: france

  • Send private message

15

Wednesday, February 10th 2010, 10:12pm

Le timestampt C'est le nombre de milliseconde ecoulé depuis 1970 :p
Doit tu divises par 1000*24*3600, t'as le nombre de jours depuis 1970 :D

ensuite le modulo si je te dis que c'est le reste de la division euclidieen de ton nombre par 7, ça t'aide ? :whistling:

par exemple :
8%7 = 1
10%7 = 3
10000000000%7 = 4
10000000001%7 = 5
10000000002%7 =6
10000000003%7 = 0
10000000004%7 = 1
10000000005%7 = 2
10000000006%7 = 3
10000000007%7 = 4
10000000008%7 = 5
.....


edit : var Mission = GM_getValue(nbmission+serveur, '0;0;0;0;0;0;0').split(';');// je décroche

Tu recuperes '0;0;0...;0' et tu split les ; , donc Mission est un array dont toute les cases sont nul
Mission[jour] = blabla; // tu remplit celui d'aujourd'hui
tu raccroches toute les case de Mission avec Mission.join(';') et t'enregistre
Scripteur: InfoCompte
cherche graphistes pour créer des skins de RC
([En ligne] Infocompte RC Converter)

This post has been edited 1 times, last edit by "vulca" (Feb 10th 2010, 10:16pm)


16

Wednesday, February 10th 2010, 11:15pm

apres 10min j'ai tout comprit et sinon oui je connaissait la division euclidienne :) (1ereS oblige)

et j'ai envis de dire tu la chercher mais c'est super :)

Source code

1
var Mission = GM_getValue('nbmission'+ serveur + pseudo, '0;0;0;0;0;0;0').split(';');// 

et c'est comme sa si je m'abuse pour mon cas :) si jai bien compris ton raisonnement

j'edit mon sujet dans 20min si sa marche pas :) xD

edit : sa a l'air de marché, prochaine étape je pense la mise a jours auto puis si sa intéraisse possibilité de le mettre sur les nouveau unis ( si vous le voulez dite moi ou le place, quelle page et un peu pres ou car perso j'ai pas d'idée sur ce coup)

edit 2 : enfaite ya un bug je le corrige emain matin si j'ai le temps et si je le trouve :)
edit 3 ; enfaite je croit que le bug c'est moi :) et ma fatigue

edit 4 :
mise a jours et rajout de la ligne "hier".

sinon j'ai des questions pour ceux qui sont plus ou moin intéréssé par mon script.

  1. sa vous intéraisse que les missions et le deut soit séparé entre missions atttaqué et mission transport/stationné ??
  2. Je fait une version pour news redisigne ou pas ?? si oui, ou je la place.
  3. pour le futur sa vous pourquoi pas la renta de raide ??? en plus (faut que je réfléchisse pour les variables surtous)

Bot / scripting / automatisation apprenez a faire la différence et apres parler !
[E.N.D.S] Dans l'âme

This post has been edited 4 times, last edit by "snaquekiller" (Feb 12th 2010, 12:35pm)


vulca

Seigneur

  • "vulca" is male

Posts: 4,663

Date of registration: Jun 9th 2006

Location: france

  • Send private message

17

Friday, February 12th 2010, 10:11pm

il parait que t'a fait la version avec rentabilité ? =) =)
Je la vois pas en ligne :D

pour tes 3 derneire question
1) Pourquoi pas mais perso je m'en fiche un peu ^^
2) pour ce que j'y fait ... :D
3) OUII :)
Scripteur: InfoCompte
cherche graphistes pour créer des skins de RC
([En ligne] Infocompte RC Converter)

18

Friday, February 12th 2010, 10:38pm

merci pour les réponses :) et pour la version rentabilité je lai rajouté la c'est la version beta :) jai pas mit encore dans le tableau mais bon demain 5min ^^ . sa prendra les raides du jours et de hier :) en compte :). Si tu voit un bug ou une idée pour l'amélioré n'hesite pas . :D

bon je me couche demain 4h de controle :(


edit: jai rajouté le tableau et corrigé une erreur mais la celle que la console me donne je la comprend pas ligne 248. il me dit ( jai update le truc)
edit 2: erreur si grosse que je trouvait pas :) c'est bon je continue le debugage.
comment on fait pour vérifié si une variable existe avec typeof mais pas sur :). mais bon trouvé une autre solution

et je pensait tu peut rajouter dans ton tuto que tu peut mettre plusieur condition dans un if (sauf erreur de ma part, habitude du php, peut etre pareil que le javascript). si oui comment les mettres :)

Bot / scripting / automatisation apprenez a faire la différence et apres parler !
[E.N.D.S] Dans l'âme

This post has been edited 2 times, last edit by "snaquekiller" (Feb 13th 2010, 6:08pm)


vulca

Seigneur

  • "vulca" is male

Posts: 4,663

Date of registration: Jun 9th 2006

Location: france

  • Send private message

19

Saturday, February 13th 2010, 5:39pm

ton erreur ligne 248 c'est que tu met un else, sans avoir mis de if avant :D

je viens de lanceur 2 raid pour tester :P

Y'a pas encore la rentabilité totale depuis l'installation ? :enayem:
Scripteur: InfoCompte
cherche graphistes pour créer des skins de RC
([En ligne] Infocompte RC Converter)

This post has been edited 1 times, last edit by "vulca" (Feb 13th 2010, 5:43pm)


20

Saturday, February 13th 2010, 6:15pm

oui j'avait vue avant ton messages erreur conne... ^^
prend la nouvelle version jusqu'a nouvelle ordre elle a pas de bug :)

Bot / scripting / automatisation apprenez a faire la différence et apres parler !
[E.N.D.S] Dans l'âme