Victor Vran, un très bon Diablo-like sous Linux

J’ai récemment découvert le jeu Victor Vran, et je vous le recommande vraiment si vous aimez les Diablo-like (ARPG).

victorvranA première vue ça ressemble graphiquement à Diablo 3, mais le développeur Haemimont (qui a réalisé Tropico 3 & 4) a intégré beaucoup de bonnes idées qui changent profondément le style du jeu :

  • Il faut éviter les attaques ennemies pour survivre. Il y a un mécanisme pour faire une roulade d’esquive, les ennemis ont lancent des projectiles assez lents (à tête chercheuses) ou rapides mais avec un animation permettant de prévoir leur trajectoire. Les ennemis au corps à corps ont aussi un rythme d’attaques qui permet de prévoir quand ils vont faire une attaque lourde et ainsi l’esquiver.
  • Ajouter à cela des compétences permettant d’assommer les ennemis proches quand on manie les armes de corps à corps et cela vous donne déjà un système de jeu au corps à corps bien plus viable que celui de Diablo 3.
  • Ainsi il fut facile de retirer les pièces d’armure de l’inventaire. C’est votre niveau d’expérience qui détermine votre nombre de point de vie.
  • Vous portez 2 armes, pouvez passer de l’une à l’autre d’une touche pendant le combat. Chaque type d’arme possède des compétences propres qui dictent la manière dont vous aller tuer les ennemis.
  • Les compétences d’armes sont au nombre de 3 : attaque rapide, coup spécial avec un temps de rechargement  de 3 sec, coup spécial avec un temps de rechargement de 5 sec. Déjà, ça rend le jeu plus sympa que dans Diablo car on ne peut pas rendre l’attaque rapide surpuissante, ce qui reviendrait à rendre inutile les autres compétences. Il faut toujours jongler entre les 3 compétences pour placer ses coups spéciaux au moment le plus opportun. Par exemple, sur certaines armes, le coup spécial peut toucher plusieurs ennemis alors que l’attaque rapide ne touche qu’une seule cible. Sur d’autres armes c’est l’inverse, et le coup spécial est une attaque dévastatrice mono-cible.
  • Pour rajouter du plaisir à bien coordonner ses attaques, il existe des moyens de s’affranchir des temps de rechargement des coups spéciaux. Sur certaines armes, si le coup spécial utilisé donne le coup de grâce à l’ennemi, alors le temps de rechargement est réinitialisé. Ce qui oblige à bien jauger si on va tuer l’ennemi avec ou pas… Sur d’autres, le temps de rechargement est réinitialisé si il fait un coup critique et sur cette arme, le coup suivant la 3ème attaque rapide sera forcément critique…
  • Il n’y a pas de classe de personnage. Et donc on passe d’un style de jeu à l’autre suivant l’envie du moment, le type d’ennemi et la qualité des armes trouvées. On peut  personnaliser son personnage avec des cartes que l’on récolte comme les autres objets sur les monstres décédés. Les cartes apportent des bonus (vol de vie à chaque coup, + de chances de coup critique, etc…) et il faut réfléchir un peu pour trouver la combinaison de cartes qui convient au style de jeu que l’on veut avoir.
  • Les potions de santé ont un temps de rechargement (assez long) comme dans Diablo 3. Mais elles restaurent un pourcentage de la barre de vie maximum et non un montant fixe de point de vie. Ce qui fait que les potions ne deviennent pas obsolètes quand on monte de niveau. La potion de base restaurent 60% de la barre de vie. D’autres plus rares permettent d’en restaurer 100%.
  • La difficulté est contrôlable à tout moment par le joueur. Il y a 5 maléfices à activer. Par exemple, les ennemis peuvent gagner en armure et avoir une régénération de vie, se déplacer et attaquer plus vite, faire 50% plus de dégâts, le héros peut perdre de la vie continuellement, des ennemis champions peut remplacer les ennemis classiques. Les activer donne un bonus en gain d’XP et d’objets trouvés.
  • Le jeu fonctionne hors ligne en solo. Il est facile de faire des parties à plusieurs. On ne peut pas échanger d’objets, ce qui permet de garder intact le plaisir de l’objet trouvé.
  • Il existe un système de transmutation pour améliorer les objets (armes, cartes, etc…). En combinant des objets de moindre qualité, il y a une faible chance de créer un objet de qualité supérieure. Ainsi, même les objets pas terribles peuvent servir et comme la transmutation coûte de l’argent.
  • Chaque niveau est créé à la main et non aléatoirement.
  • On peut sauter partout et découvrir des zones secrètes dans chaque niveau grâce au double saut.

Voila, je vous conseille la manette pour y jouer (pour l’esquive et le ciblage rapide des ennemis)

Vous pouvez l’acheter sur GoG (sans DRM) ou sur Steam pour 20€ et il marche très bien sous Linux avec les drivers libres AMD (Testé sur Debian Jessie + Mesa 10.5/6 + Radeon 280X avec les détails maximum)

J'aime(1)Ferme-la !(0)

Récupérer l’adresse IP locale sous Linux sans droits root

Voici 2 commandes pour récupérer votre adresse IP locale qui n’ont pas besoin des droits root :

$ hostname -I
192.168.0.3
$ ip addr
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0:  mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
    link/ether 70:52:04:73:48:2a brd ff:ff:ff:ff:ff:ff
3: wlan0:  mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 5d:50:4a:46:8b:27 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.3/24 brd 192.168.0.1 scope global dynamic wlan0
       valid_lft 8014sec preferred_lft 8014sec
    inet6 fe80::5d50:4aff:fe46:8b27/64 scope link 
       valid_lft forever preferred_lft forever
$ /sbin/ifconfig 
eth0      Link encap:Ethernet  HWaddr 70:52:04:73:48:2a  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interruption:20 Mémoire:f1600000-f1620000 

lo        Link encap:Boucle locale  
          inet adr:127.0.0.1  Masque:255.0.0.0
          adr inet6: ::1/128 Scope:Hôte
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:237 errors:0 dropped:0 overruns:0 frame:0
          TX packets:237 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:0 
          RX bytes:20363 (19.8 KiB)  TX bytes:20363 (19.8 KiB)

wlan0     Link encap:Ethernet  HWaddr 5d:50:4a:46:8b:27  
          inet adr:192.168.0.3  Bcast:192.168.0.1  Masque:255.255.255.0
          adr inet6: fe80::5d50:4aff:fe46:8b27/64 Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:15053 errors:0 dropped:0 overruns:0 frame:0
          TX packets:14008 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000 
          RX bytes:13286403 (12.6 MiB)  TX bytes:11979059 (11.4 MiB)
J'aime(7)Ferme-la !(6)

Créer une clé USB d’installation de Windows 8.1 depuis Linux

Vous avez un fichier ISO d’un DVD d’installation de Windows 8.1(x64), mais vous voulez l’installer depuis une clé USB (car le PC n’a pas de lecteur DVD ou pour éviter de griller un DVD par exemple…). Voyons comment faire cela avec Linux.

1 | Identifier et préparer la clé USB

Pour l’exemple qui suit, nous considérerons que la clé USB est reconnue en tant /dev/sde

Prenez garde bien démonter toutes les partitions de la clé USB qui ont pu être montées (par Gnome par exemple) lorsque vous avez banché la clé à votre ordinateur.

gnome-disks est un utilitaire graphique bien pratique.

2 | Partitionner la clé USB

Commençons. L’outil précieux est fdisk. Il se démarre en root.

# fdisk /dev/sde

« p » vous donnera la table de partition actuelle

Disque /dev/sde : 14,9 GiB, 16004415488 octets, 31258624 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0xc3072e18

Device     Boot Start      End  Sectors  Size Id Type
/dev/sde1          32 31258623 31258592 14,9G  c W95 FAT32 (LBA)

Nous allons tout formater comme il se doit, ne vous inquiétez pas si vous avez quelque chose de différent.

Vous pouvez utiliser cette commande pour vérifier à tout moment où vous en êtes.

« o » va créer un table de partition de type DOS (et oublier toutes les partitions actuelles)

« n » va créer une nouvelle partition. Répondez toujours par défaut aux questions qu’on vous pose (touche Enter)

« t » va redéfinir le type de cette partition. Le code hexa à taper est 7. Il correspond au format HPFS/NTFS/exFAT

« a » va rendre la clé amorçable (bootable).

Si vous tapez « p » maintenant, vous devriez avoir ceci :

Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0x3ffca633

Device     Boot Start      End  Sectors  Size Id Type
/dev/sde1  *     2048 31258623 31256576 14,9G  7 HPFS/NTFS/exFAT

« w » va écrire réellement les changements sur la clé et quitter fdisk.

Formatons maintenant la partition NTFS avec la commande suivante:

# mkntfs -f /dev/sde1

3 | Copier l’installeur de Windows sur la clé USB

On ne peut pas copier simplement le fichier ISO. Il faut copier un par un tous les fichiers contenu dans le fichier ISO sur la clé USB.

Pour cela on va monter l’ISO et la clé USB et faire le transfert de fichiers.

Créons 2 dossiers temporaires :

# mkdir /mnt/iso /mnt/usb

Montons le fichier ISO:

# mount /chemin/vers/fichier/windows.iso -o loop
mount: /dev/loop0 est protégé en écriture, sera monté en lecture seule

Montons la clé USB:

# mount /dev/sde1 /mnt/usb -t ntfs-3g

Copions les fichiers de l’un vers l’autre:

# cp -avr /mnt/iso/* /mnt/usb

Ca va prendre un temps certain… Prenez un café.

Démontez la clé USB et l’ISO:

# umount /mnt/iso /mnt/usb

Ca peut prendre encore un peu de temps si il reste des données à synchroniser. Il faut attendre, c’est important pour l’intégrité des données !

Voila, vous pouvez débrancher la clé USB et vous en servir pour installer Windows 8.1 sur un ordinateur.

J'aime(1)Ferme-la !(0)

Vers la fin des plugins Flash et JAVA

Plusieurs failles critiques dans les plugins Flash et dans JAVA ont été révélées récemment. L’exploitation de ces failles permet de prendre le contrôle de votre ordinateur à distance.

La succession de failles découvertes sur ces logiciels depuis quelques années déjà montrent qu’ils sont des vecteurs d’attaques très faciles à exploiter. Flash Player a reçu 15 mises à jour de sécurité en 7 mois…

Aussi, il est conseillé de les désinstaller si vous n’en avez pas besoin. Aujourd’hui, très peu de sites web requièrent Flash ou JAVA. La navigateurs actuels lisent les vidéos grâce à HTML5.

Apple et Facebook partagent cet avis.

J'aime(2)Ferme-la !(0)

Hotplug SATA sous linux

Je fais mes sauvegardes avec un disque dur branché directement en SATA. C’est plus rapide qu’avec l’USB.
Pour cela j’utilise la fonctionnalité de changement à chaud (sans redémarrage) des connexions SATA.

Au branchement du disque, il n’y a rien à faire, le disque est reconnu au branchement et il n’y a plus qu’à monter les partitions.

Avant de débrancher, il faut démonter les partitions. Cela synchronise l’écriture des données (ouf!). Ensuite, j’ai trouvé sur internet plusieurs commentaires conseillant de supprimer le disque du système avant de le débrancher. C’est sensé arrêter mécaniquement le disque et empêcher toute application d’y accéder :

#echo 1 > /sys/block/sdb/device/delete

Est-ce la « bonne » méthode?

Si vous avez de l’expérience sur le hotplug SATA, ca m’intéresse.

J'aime(0)Ferme-la !(0)

Gaming on Linux : le site d’actu des jeux vidéos sur Linux

Le site web gamingonlinux.com est une source assez exhaustive sur les jeux vidéos tournant sur Linux. Du moins c’est ce que j’ai trouvé de mieux pour l’instant, donc je vous en fait profiter.

Les sites de jeux vidéos sur Linux ayant la forte tendance à mourir, ca vaut son pesant d’or :) RIP jeuxlinux.fr

La top list des jeux auxquels j’ai joué sous linux :

Je les ai appréciés sous Linux (donc passé beaucoup de temps) et ils fonctionnent très bien. J’utilise actuellement une AMD Radeon 7850 avec le driver libre (mesa 10.5.5) sur Debian Jessie.

J'aime(1)Ferme-la !(1)

Aide à une noob par reverse SSH

Imaginons que Alice veuille se faire dépanner par Bob.

Problème, Bob ne peut pas se connecter directement à l’ordinateur d’Alice à cause d’un routeur NAT (une box ADSL, un réseau d’entreprise, un réseau wifi public, etc…).

Il existe un moyen assez simple pour Alice de se faire dépanner grâce à SSH.

Bob a un peu de travail avant

Bob va créer sur sa machine un utilisateur aux droits très restreints. Alice va utiliser celui-ci pour faire un tunnel inversé. On commence par la création du nouvel utilisateur dénommé « help » :

# adduser help

Dans /etc/ssh/sshd_config faites un règle spéciale pour cet utilisateur :

Match User help
   #AllowTcpForwarding yes
   X11Forwarding no
   PermitTunnel no
   GatewayPorts no
   AllowAgentForwarding no
   PermitOpen localhost:60000
   ForceCommand echo 'Only reverse port forwarding allowed'

En gros, l’utilisateur ne peut qu’écouter sur le port 60000 local.

Authentification par clé de chiffrement

Bob doit avoir une paire de clés de chiffrement SSH.
Ensuite il doit transmettre sa clé publique à Alice. Pour cela, Bob doit envoyer son fichier ~/.ssh/id_dsa.pub à Alice.

Alice doit vérifier avec Bob que la clé reçue est bien la bonne. Pourquoi? Parce qu’Alice va maintenant autoriser le détenteur de la clé privée correspondante (Bob logiquement) à se connecter à son compte avoir son mot de passe. Pour cela, Alice doit ajouter le contenu du fichier « id_dsa.pub » à son fichier ~/.ssh/authorized_keys:

$ echo id_dsa.pub >> ~/.ssh/authorized_keys

Note, le fichier ~/.ssh/authorized_keys doit se terminer par un ligne vide.

Alice doit ensuite copier-coller ceci en dans un terminal en remplacant l’IP de Bob:

$ ssh -N -R 60000:localhost:22 help@ip_de_bob

L’empreinte de la clé publique de la machine de Bob sera présentée. Tapez « yes ».

Le mot de passe à entrer est donné par Bob, c’est celui de l’utilisateur « help » que Bob a créé chez lui. Note pour Alice : le mot de passe ne s’affiche pas quand on le tape, c’est normal :)

Voila. c’est fini pour Alice.

Prise de contrôle

Bob peut ensuite se connecter à l’ordinateur d’Alice, sous le compte d’Alice sans connaitre le mot de passe d’Alice :

$ ssh -p 60000 alice@localhost

Critique

Cette technique est une alternative à Teamviewer pour Linux et Mac. Elle permet notamment d’avoir un accès confortable au terminal à distance et aux possibilités évoluées de SSH par la suite (partage de fichier par SFTP, redirection de port, proxy SOCKS pour naviguer sur le réseau local, VNC sécurisé, etc…).

Au début, je me suis dit que j’allais enfin tordre le cou au « man in the middle » de Teamviewer. Mais en réalité, il y a pas mal de failles de sécurité dans la mise en place de ce processus.

Premièrement, Alice doit vérifier et ajouter la clé publique de Bob. Pas facile ! Aussi, elle donne l’accès à ses fichiers pour se faire aider et n’aura aucun contrôle sur ce que fera Bob avec cet accès. Donc il faut une grande confiance dans Bob.

Ensuite, par quel canal est transmis la commande à taper? la clé publique de Bob? Comment est vérifiée l’authentification de la machine de Bob par Alice?

Il y a peut être moyen de wrapper tout ça dans un utilitaire avec une double authentification et une interface graphique qui affiche sur l’écran d’Alice un suivi en temps réel des commandes effectuées par Bob, des fichiers transférés… le tout sans nécessiter le mot de passe de session d’Alice. Mais ce sera peut être moins flexible pour Bob… (auto-complétion, sshfs, etc..)

J'aime(3)Ferme-la !(0)

SteamOS pousse les jeux à venir sous Linux

Ce week end, Steam proposait une étrange promotion. En fait il s’agissait de mettre en avant les jeux qui seront disponibles cette année sur ses SteamBox.

On peut citer, parmi les jeux AAA :

  • Batman Arkham Night
  • TotalWar : Attila
  • Shadow of the Mordor
  • Borderlands 2, Borderlands Pre-Sequel
  • Company of heroes 2
  • Witcher 2, Witcher 3
  • Saint Row 4
  • Torchlight 2
  • GRID Autosport
  • Civilization 5, Beyond Earth

Mais derrière cela, il est indiqué noir sur blanc que ces jeux seront aussi disponible sur nos machines Linux sans SteamOS :-) Sur chaque page magasin des jeu il est indiqué la date de disponibilité sous Linux.

On peut noter que certains jeux ne sont pas encore sortis sous Windows actuellement. Steam essaie donc d’avoir des sorties sur sa console pas trop décalées par rapports aux plateformes concurrentes.

Ajoutez à cela, les performances pas mauvaises des drivers libres pour les Radeon 7000/R270 :-)

Le marché du jeu sous Linux bouge !

J'aime(4)Ferme-la !(0)

Installer un serveur Mumble sur Debian

Ils commencent à m’emmerder ces ploutocrates à vouloir m’espionner sans juges ! Voici comment avoir des discussions audio en toute intimité avec le logiciel libre Mumble.

Et ce sera la preuve que leurs systèmes d’écoute automatisée sur les réseau téléphone, Skype, etc… ne va renifler que les honnêtes gens, ou les terroristes de pacotille.

mumbleDonc pour discuter en toute discrétion, il vous faut:

  • un PC
  • dont vous connaissez l’IP sur Internet
    (astuce pour la connaître en ligne de commande : $ curl ifconfig.me)
  • et qui accessible depuis Internet sur les ports UDP and TCP 64738. Ca se configure dans la box/routeur de votre FAI si vous avez ça.

Une fois que vous avez ça. Il suffit d’installer le serveur libre Murmur.

Je donne l’exemple d’installation pour Linux pour la suite, mais Murmur marche aussi sous Windows et Mac OS. Donc voila la commande d’installation et configuration pour Debian :

# apt-get install mumble-server

Et voila, c’est tout! Dur hein?

Le serveur tourne, est accessible à tous les clients Mumble et les communications sont chiffrées entre le serveur et chaque client (chacun a un certificat). La classe.

Vous pouvez y accéder depuis votre Linux,Windows,Mac avec Mumble et de votre smartphone android avec Plumble, un logiciel libre disponible sur Fdroid ou Mumblefy sur iPhone.

Pour rendre le serveur privé, vous avez juste à renseigner un mot de passe derrière le paramètre serverpassword= dans le fichier /etc/mumble-server.ini.

Et cerise sur le gateau, le codec audio Opus est supporté par défaut :

J'aime(9)Ferme-la !(0)

Strife, un équivalent de League of Legends pour Linux

Strife est le nouveau MOBA gratuit développé par S2Games à qui l’on doit Heroes of Newerth et Savage 2.

Celui-ci se veut plus accessible aux débutants et moins frustrant que Dota, LoLou HoN. Cela afin que la frustration des joueurs ne se transforme pas en animosité comme c’est trop souvent le cas dans les MOBA. Il y a un tutoriel très bien fait, un mode solo et des modifications profondes par rapport aux MOBA classiques.

Comme d’habitude avec les jeux S2Games, celui-ci fonctionne nativement sous GNU/Linux. Il n’y a pas d’installation à faire, juste dé-compresser une archive que vous pouvez télécharger ici.

Le dossier bin contient des librairies embarquées qui sont parfois incompatibles avec votre distribution. Voici la liste des librairies (.so*) à garder dans le dossier bin pour faire fonctionner Strife sur Debian Jessie :

  • cgame.so
  • game.so
  • libcef.so
  • libfmodex64.so
  • libgame_shared.so
  • libgcrypt.so.11
  • libjpeg.so.8
  • libk2.so
  • libpng15.so.15
  • physx.so
  • vid_gl.so

Vous pouvez me retrouver en jeu sous le pseudo « tuxicoman »

J'aime(1)Ferme-la !(1)