Please upgrade your browser for the best possible experience.

Chrome Firefox Internet Explorer
×

Bug des barres d'action

First BioWare Post First BioWare Post

Dici's Avatar


Dici
01.07.2013 , 11:34 AM | #11
Quote: Originally Posted by Xhylette View Post
Je viens de subir le même bug : interface complètement disparue. Une déco-reco du perso n'a pas suffit ; il a fallu arrêter complètement Swtor et le redémarre pour retrouver l'interface. C'est la première fois que je constate ce bug ; en plus, il est apparu sur ma "bonne" machine (Win 7 64 bits).

Pas bien grave, mais agaçant ...
CTRL + U + U aurait été une bien meilleure idée et ça aurait certainement marché.

swtormanu's Avatar


swtormanu
01.07.2013 , 02:06 PM | #12
je ne sais pas pourquoi j'avais perdu la compétence sur mes personnages niveau 15 -17 coté empire , et uniquement sur ceux dont les barres avaient disparus
j'ai racheté les compétences et ça a l'air de tenir ( j'avais toujours mes véhicules mais inutilisables )

Xhylette's Avatar


Xhylette
01.07.2013 , 03:33 PM | #13
Quote: Originally Posted by Dici View Post
CTRL + U + U aurait été une bien meilleure idée et ça aurait certainement marché.
Merci du conseil, mais plus rien ne marchait, Dici. Même pas la touche Escape pour sortir du jeu proprement.

C'est probablement le pilote du clavier qui doit être mis à jour ...


NB. Plus sérieusement, laisse moi t'expliquer ce que je soupçonne qui se passe pour certains bugs de ce jeu, complètement aléatoires, farfelus et difficilement reproductibles. Certains compilateurs gèrent très bien les allocations en mémoire, mais c'est au prix d'une charge de calcul supplémentaire. Certains autres te permettent de faire n'importe quoi, mais sont beaucoup plus rapides.

C'était le cas lorsque je programmais autrefois dans le langage PL/1 d'IBM. Si par malheur, j'allouais une valeur erronée à un pointeur (une adresse mémoire), j'écrasais involontairement quelque chose ailleurs, soit une autre variable, soit même, et là c'était beaucoup plus grave, une partie du code.

Alors, rends toi bien compte ce que signifie écraser une partie du code lorsqu'un programme est en pleine exécution. Sur le moment même, rien ne se passe. Mais si cinq minutes plus tard, il a besoin de cette partie du code complètement corrompue, au lieu de trouver des instructions binaires valides, il trouve tout et n'importe quoi, et exécute tout et n'importe quoi, provoquant un chaos invraisemblable et incompréhensible. Le problème en tel cas, c'est que la cause est très éloignée de l'effet.

Certains bugs m'ont pris plusieurs jours de ma vie pour être éradiqués ...

Heureusement de nos jours, les compilateurs sont bien plus performants, et surveillent de très près les débordements en mémoire. En principe, en tous cas ...
"Qu'importe la destination, seul compte le voyage."

YANNICB's Avatar


YANNICB
01.07.2013 , 04:09 PM | #14
Quote: Originally Posted by Xhylette View Post
Certains compilateurs gèrent très bien les allocations en mémoire, mais c'est au prix d'une charge de calcul supplémentaire. Certains autres te permettent de faire n'importe quoi, mais sont beaucoup plus rapides.

C'était le cas lorsque je programmais autrefois dans le langage PL/1 d'IBM. Si par malheur, j'allouais une valeur erronée à un pointeur (une adresse mémoire), j'écrasais involontairement quelque chose ailleurs, soit une autre variable, soit même, et là c'était beaucoup plus grave, une partie du code.

Alors, rends toi bien compte ce que signifie écraser une partie du code lorsqu'un programme est en pleine exécution. Sur le moment même, rien ne se passe. Mais si cinq minutes plus tard, il a besoin de cette partie du code complètement corrompue, au lieu de trouver des instructions binaires valides, il trouve tout et n'importe quoi, et exécute tout et n'importe quoi, provoquant un chaos invraisemblable et incompréhensible. Le problème en tel cas, c'est que la cause est très éloignée de l'effet.
.
Décidément 2013 sera comique ou pas !!....

Un compilateur transcrit en langage machine (binaire) un code source écrit dans un langage de programmation.

Le code compilé est exécuté par la machine et n'écrase en aucun cas le code source dans le cas d'une erreur d'allocation mémoire. Sauf à dire que la fonction du dit programme est de supprimer un fichier qui peut être le source.

J'ai vu bien des programmes assembleurs tournés pendant des années avec une tribu d'informaticiens priant pour que les loads ne disparaissent pas par erreur.

Tu n'as de cesse de démontrer à la face du monde ton ignorance dans certains domaines.

Pour 2013, je te souhaite humilité, écoute et introspection.

Xhylette's Avatar


Xhylette
01.07.2013 , 04:20 PM | #15
Quote: Originally Posted by YANNICB View Post
Le code compilé est exécuté par la machine et n'écrase en aucun cas le code source dans le cas d'une erreur d'allocation mémoire.
Tu n'as pas compris. Un pointeur est une variable qui est en fait une adresse de la mémoire. Le pointeur ne contient pas le contenu de l'adresse, mais la valeur de l'adresse.

Si l'on alloue par erreur une valeur aléatoire à un pointeur, il va pointer vers une adresse qui peut se situer n'importe où dans la machine, y compris la où réside le code. Aujourd'hui, il y a des garde-fous qui empêchent ces débordements, mais ce ne fut pas toujours le cas. Et je ne suis pas sûr que c'est le cas avec tous les compilateurs actuels. Il est tentant de désactiver cette protection, parce qu'elle consomme des cycles machine.

Cela provoque des bugs absolument incompréhensibles et imprévisibles, bien entendu.
"Qu'importe la destination, seul compte le voyage."

YANNICB's Avatar


YANNICB
01.07.2013 , 04:32 PM | #16
Quote: Originally Posted by Xhylette View Post
Tu n'as pas compris. Un pointeur est une variable qui est en fait une adresse de la mémoire. Le pointeur ne contient pas le contenu de l'adresse, mais la valeur de l'adresse.

Si l'on alloue par erreur une valeur aléatoire à un pointeur, il va pointer vers une adresse qui peut se situer n'importe où dans la machine, y compris la où réside le code. Aujourd'hui, il y a des garde-fous qui empêchent ces débordements, mais ce ne fut pas toujours le cas. Et je ne suis pas sûr que c'est le cas avec tous les compilateurs actuels. Il est tentant de désactiver cette protection, parce qu'elle consomme des cycles machine.

Cela provoque des bugs absolument incompréhensibles et imprévisibles, bien entendu.
CQFD !!! Allez Tchao l'artiste, une résolution de prise et tenue pour 2013, Liste noire directe

Xhylette's Avatar


Xhylette
01.07.2013 , 04:59 PM | #17
Quote: Originally Posted by YANNICB View Post
CQFD !!! Allez Tchao l'artiste, une résolution de prise et tenue pour 2013, Liste noire directe
Dommage, le débat promettait d'être intéressant.

"L'utilisation des pointeurs est très puissante dans certains langages.

...

Si l'on ne fait pas attention et que l'on accède à une zone mémoire qui ne nous est pas allouée, le processeur via le système d'exploitation génèrera une erreur de segmentation qui provoquera une exception voire fera planter l'application. De plus, comme les allocations mémoire sont réalisées en partie par le développeur, il doit également se charger de la libération de la mémoire lorsqu'il n'en a plus besoin, au risque de voir une fuite mémoire apparaître.

...

Pour toutes ces raisons, les pointeurs sont regardés avec une certaine méfiance.

...

Langages utilisant les pointeurs

Les pointeurs sont, entre autres, utilisés par le C, le C++, le Pascal, Ada, FreeBASIC, Fortran, C#, D, Modula-2, Oberon et bien sûr l'Assembleur
."

Source : --> http://fr.wikipedia.org/wiki/Pointeur_(programmation)

Ce n'est pas la première fois que l'on évoque des fuites de mémoire à propos de ce jeu :

--> http://www.swtor.com/community/showthread.php?t=178257

--> http://www.jeuxvideo.com/forums/1-18...-et-effets.htm

Comme dit plus haut, les conséquences de ces erreurs sont totalement imprévisibles, et souvent difficilement reproductibles.

Au mieux, elles provoquent le plantage de l'application avec retour direct au bureau Windows ; mais parfois, l'application peut très bien survivre encore quelque temps, le désordre se manifestant alors de diverses manières, avec des bugs inexplicables comme par exemple, la perte totale de l'interface, qui est le sujet de ce topic.
"Qu'importe la destination, seul compte le voyage."

Khoreal's Avatar


Khoreal
01.07.2013 , 05:19 PM | #18
Dans les langages de plus haut niveau, l'utilisation des pointeurs est supprimée, au profit des références et des tableaux dynamiques gérés par le compilateur. Les références remplissent certaines fonctions des pointeurs en supprimant l'accès à la mémoire. Cela évite beaucoup de problèmes, en contrepartie certaines utilisations et optimisations ne sont plus possibles.
http://fr.wikipedia.org/wiki/Pointeu...ogrammation%29

Un jeu vidéo est certainement programmé avec des langages de plus haut niveau et donc sans pointeurs.

Xhylette's Avatar


Xhylette
01.07.2013 , 05:35 PM | #19
Quote: Originally Posted by Khoreal View Post
Un jeu vidéo est certainement programmé avec des langages de plus haut niveau et donc sans pointeurs.
"The game seems to install ok but when it tries to install the Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.17"

Source : --> http://www.swtor.com/community/showthread.php?t=25497

Malheureusement, j'ai bien peur d'être encore une fois obligé de te contredire, cher ami Khoreal. A mon avis, de grands pans de Swtor ont été programmés en C++, et ce langage utilise bien sûr les pointeurs.

Source : --> http://www.youtube.com/watch?v=J5-SnffQSRE

Les jeux video nécessitent des codes ultra-rapides, et ne peuvent donc pas être programmés en langage de très haut niveau.

NB. Voir aussi ce message de MJ Laevena :

"Bonjour Marplij,

MSVCR90.dll est un élément de Visual C++.

Nous vous invitons à vérifier que toutes les dernières mises à jour Windows et de votre Service Pack sont bien installées sur votre système d’exploitation, y compris celles pour Framework.NET et Vicual C++ features. Ces dernières sont en effet très importantes pour assurer la stabilité des jeux les plus récents."


Source : --> http://www.swtor.com/fr/community/sh...al#post5559094

Tu n'as vraiment pas de chance avec moi.

Je te souhaite cependant la bonne nuit !
"Qu'importe la destination, seul compte le voyage."