Release 1.0.2

Modifications
- Sound hasn't been working on various linux distributions; that's fixed.
- The client used to crash when joining a running game; fixed as well.
- The 42 char limit for lounge messages has been removed.
- The in-game clock is now reset on every game start.
- The peer's IP is shown in the server log.
- A minimum bomb kicking distance between two players has been introduced.
- The position interpolation is now limited to the playfield dimensions.
- Button 'b0' is now working on joysticks that do not have any axes.
- Changing input fields using the tab button in the main menu has been fixed.
- A typo in one of the track names has been fixed.
- A Qt version check (>= 4.8.0 and < 5.0) has been added.


Release 1.0.1

Modifications:
- Support for optional OpenGL extentions has been added.
- A button has been added to the lounge to add local players without hotkey.
- Bombs are now initiated when they're kicked into another detonation.
- If a player joins a running game he/she is told the maximum game duration.
- All keys are released when the window focus is lost.
- Space level performance improved for slow hardware.
- Screensaver and screen dimming is disabled while the game is running.
- An initial check if render-to-texture is functional has been added.
- A skull face is now active half a second before it points perfectly upwards.
- The setting 'development/camerafollowsplayer' in game.ini is functional again.
- The space lensflare now shifts with the camera x translation.
- The animation of the invincible effect is now resolution independent.
- Pouet, facebook and web buttons have been added to the main menu.
- The server dynablaster.titan-sucks.net has been added to the history.dr file.
- Added support for SuperJoyBox9 (connects XBox1 pads to PC).
- Added support for PS3/XBox360 Adapter (connects PS1/2/3, Xbox360 pads to PC).

Thanks:
- The Competition Pro fanatics Barto and RufUsul who spotted a joystick
 initialization bug using their insane reversing skills
- Jaret Frappier of unfuddle.com for his great support
- Arvenius^titan for hosting the game files as well as the public game server
- Oerg866^titan who spent hours and hours with "testing" :)
- XXX^haujobb for public relations
- Fabian for borrowing me his gamepads for a couple of months :)
- Stefan for spreading the word!
- James Monkman from indiegames.com for his article about our game, for revising
 and publishing the multiplayer guide and granting us permission to add it to
 our documentation
- Bobic for publishing an article about our game only two hours after its
 release - that was really impressive!


Release 1.0

Initial release at Revision 2014
Running the game

  In order to run the game on Linux you must have the following libraries
  installed on your system:

     - Qt >= 4.8.0
        libqt4-core
        libqt4-gui
        libqt4-opengl
        libqt4-network

     - SDL >= 2.0.2
        libsdl2

     - ALSA >= 2.0
        libasound2

  On apt-based systems you can install all these packages as follows:

     sudo apt-get install libqt4-core libqt4-gui libqt4-opengl libqt4-network
     sudo apt-get install libsdl2
     sudo apt-get install libasound2


  In case there's no SDL 2.0.2 or greater available for your distribution, you
  can just compile your own:

     wget http://www.libsdl.org/release/SDL2-2.0.3.tar.gz
     tar xzf SDL2-2.0.3.tar.gz
     cd SDL2-2.0.3
     ./configure
     make
     sudo make install


  Moreover, you should ensure the game binaries are still executable after
  extracting them; for example by calling 'chmod +x dynablaster_linux_x64'.



Running the server

  If you like to host a server you can pick between server_linux_x86 and
  server_linux_x64.
  Moreover, you might want to use the script like the one below which
  automatically restarts whenever the server process is killed.

     #!/bin/bash
     while true
     do
        if pgrep server[y] 1>/dev/null; then
           sleep 1
        else
           ./server_linux_x64
        fi
     done

  If a window manager is detected a GUI will be shown; otherwise the server
  will run in your console.



Troubleshooting

  - On one system we noticed some performance issues which were resolved by
    disabling vsync. You can do that by editing data/game.ini; there's a
    section 'video' with an entry named 'vsync'. You may set its value
    to 'false'.

  - In case you have any dependency issues, it is always a good idea to export
    the LD_LIBRARY_PATH to "." and copy all required libs to the current
    directory.

                                            .
                                            :
                          ___      :              __:
                   _ ____ ) /      .        .     \ ( ___ _
                    \\    |                         |   //
                          |        :  ____  :       |
                   .      |       _| _)  (_ |_      |      .
       .                  !   _ __)|\)    (/|(__ _  !                  .
               .  .:..... | ...\\     _  _     //.. | .....:. . vouck
    . .:...........:      |      \    (oO)    /     |      :...........:. .
       :           :      |   _  _\      ,   /_ _   |      :           :
       :           :      !    ) \_\        /_/ (   !      :           :
       ________     _______     ____\ __   /    ___________ _________________
  _____\_    _/____(_______)_ __\_   \ /_ /__ __\____     /_\  ______       /
 _\   _       _   /_        //   _    \  /  /_     (/      /    \ (/       /
 /____/       \____\       /_____/     \ ____\     /      /      \/       /
     /           \            /         \         /      /       /       /
    /_______      \          /           \       /      /       /       /
       .  \_______________________________\ ___________________/       /_
                         _ .               \        . _       /_________\
       .              .  /_|_  .T.I.T.A.N.  \ _    _|_\
    _ _|_ ___ __ _____|_ __|                 \      |__               o
       |      \/      |  ) |                  o     | (               :
       :              :_ _ :                   . _|_:_    ________    |
             2o14     \/// .                .     | .  _ _\_ ___  \_  :
       .    _         .         _ _   +           ________    /   _/__
       :    \   _ _   :         \_________     _ _\_ ___  \_ /       /
  _____|    /\  \_____|  _ __    \       /   /\       /   _/__       \
_ _\_   |   /  \ _\    |     / ____\     ____/  \____ /       / _______\
       |__/   \\      |    /_ \    \    \          /         \
       __/   .\\\    /|    \       |\    \ (o)(.) / _ ________\ ------.
       |        \\          \ ___ _     __   -    \   __          H2o |
     : |___ __ _  \ ___ _____\ /_________\ _    ___\ /\_\ __ ---------´
_ _____|           \                       _\  /     \/_//_/\
                    \   h.A.U.J.O.B.B      \\\/    .     \_\/
     _ __ ___________\                      \    __ _
       .              .                         /\_\\\__ _  _
       :_             :                         \/_/
       \/             | - -- -------------------------------------------- -- -
       |              |    DYNABLASTER REVENGE v1.0.2 REVISION 2014 RELEASE
       |     __       | - -- -------------------------------------------- -- -
      _|_ ___\/_____ _|_ _
       :              :


About

  Dynablaster Revenge is a remake of the game Dynablaster, released by
  Hudson Soft in 1991. The goal of this remake is to keep the original
  game-play as untouched as possible while adding some new features such as
  networked multiplayer and real-time 3D rendering. In case you're not yet
  familiar with the original game goal, it's quite simple: Bomb all other
  players from the screen. Either by collecting flame extras to increase the
  bomb radius or by picking up bomb extras in order to have more bombs to
  drop you're able to surround your enemies with your bombs, or blow them
  away with clever bomb chain reactions.


Requirements

  To run the game you need a video-card with OpenGL 3.0 support and at least
  512MB of video memory.

  It works properly with the following cards:
   - Nvidia Geforce GTX 560 Ti
   - Nvidia Geforce 8800 GTS
   - Nvidia Geforce 9600 GT
   - AMD Radeon HD 6540
   - AMD Radeon HD 6850
   - AMD Radeon HD 7750
   - Intel HD Graphics 4000

  If the required OpenGL features are not available, the game will not start
  and you'll just see a message box. In this case it can help to update the
  video driver. Also make sure you're using a driver from the video card
  vendor and not, for example, Microsoft's default driver.


Credits

  Core team     mueslee (Matthias Varnholt)  Project nag & code
                hellfire (Christoph Grote)   Code
                deathstar                    Artwork

  Level design  deathstar                    Mansion concept & design
                Christopher Aldridge         Space concept & design
                Sebastian Meckelmann         Castle concept & design

  3D            xabotage (Daniel Phelps)     Character animation
                hellfire                     Character, UVs, game integration
                mueslee                      Space level lowpoly edit,
                                             UVs, game integration

  Music         daxx                         Music & SFX
                svenzzon                     Music & SFX
                cold storage                 Music
                jco                          Music
                keito                        Music
                neoj1n (c.c.catch)           Music
                netpoet                      Music
                romeo knight                 Music
                skaven                       Music
                sunspire                     Music

  We thank      alk                          Testing & feedback
                jan                          Testing & feedback
                fuxx                         Development infrastructure
                neoman                       Development infrastructure


Help

  Extras

     Bomb    Pick up the bomb extra and you'll have one more bomb to place.
             This is one of the most simple extras; with it and some practice
             you may learn tactics to drive your opponents into a corner.

     Flame   Collect the flame extra to create larger detonations. With each
             additional flame you'll be able to reach one more space with your
             bombs. Always keep track on the number of bombs your opponents
             have collected – it could save your life.

     Speedup As the name suggests, your player's speed will increase with each
             speedup collected. Speedups will make your player much more agile
             and let you reach extras before your opponents do.

     Kick    You’ll either love or hate this one – kick extras enable you to
             kick bombs away until they reach any obstacle like players, walls
             or other bombs. This extra will definitely mess up all your
             opponent's tactics.

     Skulls  This extra actually consists of six separate ones. Once the skull
             extra is revealed you’ll see a rotating cube; each side of the
             cube represents a different effect when picked up. There’s one
             that will make your player drop bombs all the time, another one
             that will flip your controls, and a third that will restrict your
             bombs to a single flame. The mushroom skull will make you quite
             dizzy, but there’s also cool stuff: invisibility and
             invincibility – yes, invincibility. By the way, the skull
             extra is predictable – you’ll soon find out how it works.


     Hotkeys

        [F1]         Open Hotkey overview
        [F2]         Mute music
        [F3]         Mute sound effects
        [F4]         Display your local IPs
        [F10]        End current game (game owner only)
        [F11]        Save game playback to disk (currently developer only)
        [PageUp]     Next track
        [PageDown]   Previews track
        [Alt+Return] Toggle full screen


     Ingame hotkeys

        [Return]     Chat
        [Escape]     Rage quit (immediately leave the game)
        [Tab]        Show player names


  Multiplayer

     Quick Guide to Local Multiplayer Setup:

        1) Connect a load of USB controllers to your PC. A joypad is required
           for each additional player - wired Xbox 360 pads work perfectly.
        2) Load the game, set the IP address as 127.0.0.1 and select 'Multi'.
           This will open a server on your PC. Create a new game and when in
           the 'Lounge', add your friends to the game by pressing the 'add
           local player' button. Alternatively you may use the hotkeys [shift]
           and [+] or [ctrl] and [=] depending on what's more convenient with
           your keyboard layout.

        Please note a 'complete' implementation is scheduled for version 1.2;
        i.e. a new menu page will be introduced for this mode.

     Quick Guide to LAN Multiplayer Setup:

        1) Set the IP address to 127.0.0.1, and select 'Multi'. This will open
           a server on your PC.
        2) The other players then just have to connect to your IP address by
           entering your IP into the hostname field. If you don't know your IP
           just press F4 in the menus.

     Quick Guide to Online Multiplayer Setup:

        The best option here is to have a dedicated server (a 'Linux shell' or
        a Windows machine connected to a fast internet connection) you can run
        the server on. If this is not an option, you can use Titan's own server
        by typing 'dynablaster.titan-sucks.net' in the IP field on the title
        screen.

        If you just want to use your own connection in order to play over the
        internet, you can still set up a port forwarding from your router
        (if you have one) to your PC (i.e. make your router forward all traffic
        on port 6300 to your PCs IP). Host your server on 127.0.0.1, as you
        would for a LAN game, then tell your friends your internet IP address
        (not the LAN one of course) so they can connect.


     FAQ

        Q: Why am I having trouble placing bombs and moving the player at
           the same time?
        A: This can be related to keyboard ghosting. Have a look at
           http://www.microsoft.com/appliedsciences/antighostingexplained.mspx
           in order to see which keys work fine for you.

        Q: Your bots could be improved in so many ways. Why don't you make
           them better?
        A: They're not perfect by intention. It makes them more amiable :)

        Q: Why isn't there a Mac port?
        A: We don't have a Mac.


Contact

  All kind of bugreports, ideas and suggestions are greatly appreciated.
  In order to contact us, please send a mail to:

     matthias[dot]varnholt[at]gmail[dot]com or
     hellfire[at]untergrund[dot]net or
     deathstar[dot]gfx[at]gmail[dot]com

homer
marge
lisa
bart
maggie
flanders
burns
smithers
skinner
ralph
nelson
barney
moe
wiggum
quimby
otto
martin
milhouse
lenny
carlbstorm
cocoon
desire
fr
fnuque
fc
holon
komplex
lnx
mercury
mfx
rbs
still
vrtx
yup # Windows - DINPUT
8f0e1200000000000000504944564944,Acme,platform:Windows,x:b2,a:b0,b:b1,y:b3,back:b8,start:b9,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b5,rightshoulder:b6,righttrigger:b7,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a3,righty:a2,
341a3608000000000000504944564944,Afterglow PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
ffff0000000000000000504944564944,GameStop Gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
6d0416c2000000000000504944564944,Generic DirectInput Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
6d0419c2000000000000504944564944,Logitech F710 Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
88880803000000000000504944564944,PS3 Controller,a:b2,b:b1,back:b8,dpdown:h0.8,dpleft:h0.4,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b9,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:b7,rightx:a3,righty:a4,start:b11,x:b0,y:b3,platform:Windows,
4c056802000000000000504944564944,PS3 Controller,a:b14,b:b13,back:b0,dpdown:b6,dpleft:b7,dpright:b5,dpup:b4,guide:b16,leftshoulder:b10,leftstick:b1,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b2,righttrigger:b9,rightx:a2,righty:a3,start:b3,x:b15,y:b12,platform:Windows,
25090500000000000000504944564944,PS3 DualShock,a:b2,b:b1,back:b9,dpdown:h0.8,dpleft:h0.4,dpright:h0.2,dpup:h0.1,guide:,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b0,y:b3,platform:Windows,
4c05c405000000000000504944564944,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
xinput,X360 Controller,a:b10,b:b11,back:b5,dpdown:b1,dpleft:b2,dpright:b3,dpup:b0,guide:b14,leftshoulder:b8,leftstick:b6,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b9,rightstick:b7,righttrigger:a5,rightx:a2,righty:a3,start:b4,x:b12,y:b13,platform:Windows,
6d0418c2000000000000504944564944,Logitech RumblePad 2 USB,platform:Windows,x:b0,a:b1,b:b2,y:b3,back:b8,start:b9,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,
36280100000000000000504944564944,OUYA Controller,platform:Windows,a:b0,b:b3,y:b2,x:b1,start:b14,guide:b15,leftstick:b6,rightstick:b7,leftshoulder:b4,rightshoulder:b5,dpup:b8,dpleft:b10,dpdown:b9,dpright:b11,leftx:a0,lefty:a1,rightx:a3,righty:a4,lefttrigger:b12,righttrigger:b13,
38071645000000000000504944564944,XBox1 Gamepad at SuperJoyBox9,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b14,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b15,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
8f0e0300000000000000504944564944,PS3/Xbox360 Adapter,a:b2,b:b1,back:b8,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,

# OS X
0500000047532047616d657061640000,GameStop Gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Mac OS X,
6d0400000000000016c2000000000000,Logitech F310 Gamepad (DInput),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
6d0400000000000018c2000000000000,Logitech F510 Gamepad (DInput),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
6d040000000000001fc2000000000000,Logitech F710 Gamepad (XInput),a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
6d0400000000000019c2000000000000,Logitech Wireless Gamepad (DInput),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
4c050000000000006802000000000000,PS3 Controller,a:b14,b:b13,back:b0,dpdown:b6,dpleft:b7,dpright:b5,dpup:b4,guide:b16,leftshoulder:b10,leftstick:b1,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b2,righttrigger:b9,rightx:a2,righty:a3,start:b3,x:b15,y:b12,platform:Mac OS X,
4c05000000000000c405000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,Platform:Mac OS X,
5e040000000000008e02000000000000,X360 Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,

# Linux
0500000047532047616d657061640000,GameStop Gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
03000000ba2200002010000001010000,Jess Technology USB Game Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Linux,
030000006d04000019c2000010010000,Logitech Cordless RumblePad 2,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000006d0400001dc2000014400000,Logitech F310 Gamepad (XInput),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000006d0400001ec2000020200000,Logitech F510 Gamepad (XInput),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000006d04000019c2000011010000,Logitech F710 Gamepad (DInput),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000006d0400001fc2000005030000,Logitech F710 Gamepad (XInput),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000004c0500006802000011010000,PS3 Controller,a:b14,b:b13,back:b0,dpdown:b6,dpleft:b7,dpright:b5,dpup:b4,guide:b16,leftshoulder:b10,leftstick:b1,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b2,righttrigger:b9,rightx:a2,righty:a3,start:b3,x:b15,y:b12,platform:Linux,
030000004c050000c405000011010000,Sony DualShock 4,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a5,lefttrigger:b6,righttrigger:b7,platform:Linux,
03000000de280000ff11000001000000,Valve Streaming Gamepad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000005e0400008e02000014010000,X360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000005e0400008e02000010010000,X360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000005e0400001907000000010000,X360 Wireless Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000100800000100000010010000,Twin USB PS2 Adapter,a:b2,b:b1,y:b0,x:b3,start:b9,guide:,back:b8,leftstick:b10,rightstick:b11,leftshoulder:b6,rightshoulder:b7,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a3,righty:a2,lefttrigger:b4,righttrigger:b5,platform:Linux,
03000000a306000023f6000011010000,Saitek Cyborg V.1 Game Pad,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a4,lefttrigger:b6,righttrigger:b7,platform:Linux,
030000004f04000020b3000010010000,Thrustmaster 2 in 1 DT,a:b0,b:b2,y:b3,x:b1,start:b9,guide:,back:b8,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b6,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b5,righttrigger:b7,platform:Linux,
030000004f04000023b3000000010000,Thrustmaster Dual Trigger 3-in-1,platform:Linux,x:b0,a:b1,b:b2,y:b3,back:b8,start:b9,dpleft:h0.8,dpdown:h0.0,dpdown:h0.4,dpright:h0.0,dpright:h0.2,dpup:h0.0,dpup:h0.1,leftshoulder:h0.0,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a5,
030000008f0e00000300000010010000,GreenAsia Inc.    USB Joystick     ,platform:Linux,x:b3,a:b2,b:b1,y:b0,back:b8,start:b9,dpleft:h0.8,dpdown:h0.0,dpdown:h0.4,dpright:h0.0,dpright:h0.2,dpup:h0.0,dpup:h0.1,leftshoulder:h0.0,leftshoulder:b6,lefttrigger:b4,rightshoulder:b7,righttrigger:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a3,righty:a2,
030000008f0e00001200000010010000,GreenAsia Inc.      USB  Joystick  ,platform:Linux,x:b2,a:b0,b:b1,y:b3,back:b8,start:b9,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b5,rightshoulder:b6,righttrigger:b7,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a3,righty:a2,
030000005e0400009102000007010000,X360 Wireless Controller,a:b0,b:b1,y:b3,x:b2,start:b7,guide:b8,back:b6,leftstick:b9,rightstick:b10,leftshoulder:b4,rightshoulder:b5,dpup:b13,dpleft:b11,dpdown:b14,dpright:b12,leftx:a0,lefty:a1,rightx:a3,righty:a4,lefttrigger:a2,righttrigger:a5,platform:Linux,
030000006d04000016c2000010010000,Logitech Logitech Dual Action,platform:Linux,x:b0,a:b1,b:b2,y:b3,back:b8,start:b9,dpleft:h0.8,dpdown:h0.0,dpdown:h0.4,dpright:h0.0,dpright:h0.2,dpup:h0.0,dpup:h0.1,leftshoulder:h0.0,dpup:h0.1,leftshoulder:h0.0,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,
03000000260900008888000000010000,GameCube {WiseGroup USB box},a:b0,b:b2,y:b3,x:b1,start:b7,leftshoulder:,rightshoulder:b6,dpup:h0.1,dpleft:h0.8,rightstick:,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:a4,righttrigger:a5,platform:Linux,
030000006d04000011c2000010010000,Logitech WingMan Cordless RumblePad,a:b0,b:b1,y:b4,x:b3,start:b8,guide:b5,back:b2,leftshoulder:b6,rightshoulder:b7,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a3,righty:a4,lefttrigger:b9,righttrigger:b10,platform:Linux,
030000006d04000018c2000010010000,Logitech Logitech RumblePad 2 USB,platform:Linux,x:b0,a:b1,b:b2,y:b3,back:b8,start:b9,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,
05000000d6200000ad0d000001000000,Moga Pro,platform:Linux,a:b0,b:b1,y:b3,x:b2,start:b6,leftstick:b7,rightstick:b8,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:a5,righttrigger:a4,
030000004f04000009d0000000010000,Thrustmaster Run N Drive Wireless PS3,platform:Linux,a:b1,b:b2,x:b0,y:b3,start:b9,guide:b12,back:b8,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7,
030000004f04000008d0000000010000,Thrustmaster Run N Drive  Wireless,platform:Linux,a:b1,b:b2,x:b0,y:b3,start:b9,back:b8,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a5,lefttrigger:b6,righttrigger:b7,
030000004c050000c405000011010000,PS4 Controller,platform:Linux,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,
0300000000f000000300000000010000,RetroUSB.com RetroPad,a:b1,b:b5,x:b0,y:b4,back:b2,start:b3,leftshoulder:b6,rightshoulder:b7,leftx:a0,lefty:a1,platform:Linux,