Xbox 360 Controller Support (Contribution)

Posted By: DocJoe

Xbox 360 Controller Support (Contribution) - 04/04/06 10:50

Here a plugin for 'Xbox 360 controller' support (new interface). Download (2.9MB)

This plugin supports the new Xbox 360 controller interface. You can attach up to four Xbox 360 controllers while runtime (e.g. for a four person splitscreen game like Halo - no problem!). All features are supported. Short manual in English amd German and sample included .

Deutsch: Oben der Link für das Xbox 360 Controller Plugin (inkl. Manual in English/Deutsch und Sample). Das Plugin unterstützt das neue Xbox 360 Controller Interface, das Xbox 360 Controller während der Laufzeit erkennt und XBox Vibration unterstützt usw. Wann sehen wir das ersten Four-Person-Splitscreen A6 Game?
Posted By: ello

Re: Xbox 360 Controller Support (Contribution) - 04/04/06 10:55

cool. jetzt brauch ich nur noch so nen 360er controller. ham die usb? oder wie schliesst man die an?
Posted By: DocJoe

Re: Xbox 360 Controller Support (Contribution) - 04/04/06 10:59

Ja, der Xbox 360 controller hat USB und ist ab Windows XP Service Pack 1 verfügbar. Natürlich wird der Controller auch von A6 erkannt, aber mit anderem Interface und nur 2 Stück davon.
Posted By: Helghast

Re: Xbox 360 Controller Support (Contribution) - 04/04/06 20:24

i dont think the wireless one will work. eventhough if you use the play and charge kit...

gotta test that once, thanks for this contribution
Posted By: Samb

Re: Xbox 360 Controller Support (Contribution) - 04/04/06 23:14

coole sache
kannst auchnoch eins machen für den gamecube kontroller? hab immer probleme damit beide analogsticks anzusteuern
Posted By: DocJoe

Re: Xbox 360 Controller Support (Contribution) - 04/05/06 00:01

Quote:

i dont think the wireless one will work. eventhough if you use the play and charge kit...



I bet it works. I don't have an Xbox 360, but I bought one controller to check the plugin. So it would be nice to get info from someone who have more controllers.

PS: The render/capture guid you can use for DirectSound purposes.
Quote:

kannst auchnoch eins machen für den gamecube kontroller? hab immer probleme damit beide analogsticks anzusteuern



Ein Joystick/Gamepad Plugin ist noch in Entwicklung und folgt demnächst (uneingeschränkte Anzahl an Joysticks/Gamepads inkl. ForceFeedback, Ausschliessen von XBox 360 Controller, damit diese nicht abgezählt werden usw.).
Posted By: DocJoe

Re: Xbox 360 Controller Support (Contribution) - 04/05/06 03:56

Edit: English manual in the package included April, 5th 2006
Posted By: William

Re: Xbox 360 Controller Support (Contribution) - 04/05/06 07:46

This works for the normal Xbox360 controller that you would plug into your system? Or the PC version? Mabye i'm missing something, but if it's for the PC version, can't you already do this using the native 3DGS commands? I've had no problem with the native commands for an assortments of Logitech and Older Microsoft PC controllers. Appreciate the work though, and was wondering, do you have that old networking plugin uploaded anywhere? I started multiplayer and come across some old threads a few weeks back about your plugin. Thanks.
Posted By: Sjoerd

Re: Xbox 360 Controller Support (Contribution) - 04/05/06 08:11

You can only use the wired controller on a pc. The play and charge kit is only for charging the controller, communication will still be wireless. There is no receiver for pc's (yet).
Posted By: DocJoe

Re: Xbox 360 Controller Support (Contribution) - 04/05/06 09:34

@William: This interface is special. It controls Xbox 360 controllers (and similar controllers in the future), but no other gamepads/joysticks/wheels and so on. A6 recognize the Xbox 360 controllers without problems, but the triggers are diffrent (in A6 the triggers are recognized like a wheel) and you can't set any vibration effects with any other interface. The Xbox 360 controllers are also recognized while runtime, if they are attach/leaved. The disadvantage of the interface is that if you use A6 joystick commands and Xbox interface commands at the same time you get troubles. I'm programming a joystick/gamepad plugin that removes this problem. The Xbox plugin here was a first goody to make you hot for more . At the moment this plugin is funny, if you have one or more Xbox 360 controllers. If you have four of these controllers you'll be able to prog a four-person-splitscreen application with high performance. The first time A6 is smelling like the Xbox 360, not?!

@Sjoerd: Thanks for this info.
Posted By: Lion_Ts

Re: Xbox 360 Controller Support (Contribution) - 04/05/06 21:16

Good one ! Thank you (specially for english manual).
Posted By: Doug

Re: Xbox 360 Controller Support (Contribution) - 04/05/06 22:58

Quote:

A6 recognize the Xbox 360 controllers without problems, but the triggers are diffrent (in A6 the triggers are recognized like a wheel) and you can't set any vibration effects with any other interface.




I can confirm this. I use an XBox360 controller with the new template scripts, you can work with it by just reading the raw values but a plugin can make things much nicer.

Speaking of which, for full disclosure, I'm also working on a new input interface for template6. However, it will probably be released with the update *after* 6.4x, so it is still some months away (unless things change in my priority list). This interface should include mapping and XBox360 controller support.
Posted By: William

Re: Xbox 360 Controller Support (Contribution) - 04/06/06 04:38

Thanks for the explanation DocJoe, but there is one thing I'm unsure about. Is it possible to still use the A6 joystick commands and your plugin to support both older-style joysticks(logitech) and the new xbox360 format in the same game? For example, in the script I would first determine what type of joypad is being used then go from there with all my input sections. Also, I noticed an error when starting your demo - "This application has failed to start because XINPUT9_1_0.dll was not found." I currently don't have an 360 controller installed or pluged in so mabye thats it? The demo loads up after the error.
Posted By: DocJoe

Re: Xbox 360 Controller Support (Contribution) - 04/06/06 06:53

@Doug: Can you tell me/us more about your new interface? My personal interface will support an infinite count of joysticks/gamepads/wheels with forcefeedback and so on. You can start/stop the plugin within the game and you can choose, if you wanna use the Xbox 360 controllers with DX or with the Xbox interface. You can define a msg handler that recognizes new joysticks or de-/reattached joysticks. Joystick handling is very easy like

if(Button_1(hJoystick1)== on) { Name_of_Joystick(hJoystick, strJoystickName); }

All values are between -1000 and +1000 for axis (not +/-255). You can set null and dead zones. You can load forcefeedback effects from file (Force editor to test effects and to write into a file included) and you can define forceffeedback effect by code.
and so on.... If your new interface is similar fine I stop my project (70% done), I don't wanna waste my time (didn't see anything in the forecast or anywhere else).

@William: Thanks, I'll look into this this evening!
Posted By: Doug

Re: Xbox 360 Controller Support (Contribution) - 04/06/06 20:52

Quote:

@Doug: Can you tell me/us more about your new interface?




I can't say much because it really isn't much more than some notes on a yellow "Stick-It" pad right now.

The general idea is that it will filter all input (mouse, keyboard, joystick, etc.) and, using some basic user defined rules, convert them into simple output for the template6 scripts to read.

If you take a look at the template6 input scripts (plBipedInput01 and miscInput01) you'll have a good idea at what I'm aiming at.
Posted By: Doug

Re: Xbox 360 Controller Support (Contribution) - 04/06/06 21:00

Quote:

If your new interface is similar fine I stop my project (70% done), I don't wanna waste my time (didn't see anything in the forecast or anywhere else).




Please don't stop. My interface will be designed around the template6 scripts so it might not be flexible enough for people not using template6.

Also, I have NO idea when I will get the time to do this. Maybe this weekend, maybe XMas (more likely closer to XMas).
Posted By: DocJoe

Re: Xbox 360 Controller Support (Contribution) - 04/06/06 21:44

Quote:

Please don't stop.


Naturally I don't stop !

@William: I have to look tomorrow into your problem... (sorry, didn't had the time).
Posted By: DocJoe

Re: Xbox 360 Controller Support (Contribution) - 04/08/06 11:41

EDIT: The pakage download includes now (Download (5.3 MB)):

The Xbox 360 controller Plugin 'XBox360Cntr.dll'
The prototype file 'Xbox_dll.wdl'
An A6 Xbox 360 controller sample using the new Xbox 360 controller interface
The file 'xinput9_1_0.dll'
A 'readme.txt'
Manual in English
Manual in German
The application 'XBOX360Eng.exe' to install Xbox 360 Controller drivers for Windows
An End-User License Agreement for Microsoft® software for use with Xbox 360 Controller for Windows (ENG_EULA.rtf -
English)
An Xbox 360 Controller for Windows documentation (English).


@William: If you use windows before XP with service pack 1 and/or you didn't installed an Xbox 360 controller you need at least a XINPUT9_1_0.dll driver in your application or your windows system folder. Otherwise you get an error warning if you start the game application. Xbox 360 controller drivers are also available via Windows Update, or at www.windowsgaming.com. Thanks William for this important info.
Posted By: William

Re: Xbox 360 Controller Support (Contribution) - 04/09/06 09:32

Hmm, the comp had service pack 2 installed. Is there any way that if this .dll doesn't detect the file it doesn't show an error? It looks like you have to have a 360 controller, either that or download the files, and I don't think people would like that if they don't have a controller.

P.S - I hope this isn't asking too much. This .dll is great already, at least you can test your game now with the 360 controller to make possible future porting easier.
Posted By: DocJoe

Re: Xbox 360 Controller Support (Contribution) - 04/09/06 11:41

Quote:

P.S - I hope this isn't asking too much.


Absolutely not!!! This Xbox 360 controller interface is a new interface. Microsoft call this interface as a new standard for gamepads in the hope further gamepads will be built with this standard or they will support this new Xbox 360 controller interface. The advantage is that further gamepads can be used on pc (also gamecube3 controllers, ps3 controllers and so on). I don't wanna loose a lot of comments about this idea, but maybe gamepads will get more place value in further games, specially on pcs. Maybe you will spend more time for reflecting about how you'll design your player stearing by gamepads and controllers in the future. Surely older controller/gamepads/joystick/wheel interfaces on pc will be supported till the last day on earth (some great joysticks are often designed for only one game or one game genre and an Xbox 360 controller can never replace such a device. Players stearing by keyboard and mouse has a lot of advantage over gamepads! The wish to standardisize all on this earth is idiotic and maybe other game platform companies aren't very pleased to see their own controllers on Windows?).

At they moment this controller interface is so new that there's only one controller/gamepad/joystick/wheel that can be called by this standard: 'Microsoft's Xbox 360 Controller'. If you wanna see anything running in my sample you need at least one Microsoft Xbox 360 Controller! (I don't have an Xbox 360 console, so I also had to buy such a device to programm the plugin!).

Note: The Xbox 360 Controller is also supported by older interfaces!! So one problem at the moment is: you don't have the chance to distinguish this controller in wdl (I'll make a dll that can this). But in the future you'll may have to code player stearing like the following bad sample:

if(I_use_Xbox_interface)
{
player.move_x = Xbox_Button_A(1) * factor_x * time;
}
else
{
player.move_x = my joy_1 * factor_x * time;
}

And you can write with big letters onto your published game: "This game supports the new Xbox 360 controller interface!" If you publish your game tomorrow, you'll earn millions by writing onto the game: "NEW! NEW! NEW! GET THIS FIRST PC GAME SUPPORTING XBOX 360 CONTROLLERS BY THE NEW XBOX 360 CONTROLLER INTERFACE - GET THE PLEASURE - GET IT! GET IT! GET IT!!!!!"
Posted By: William

Re: Xbox 360 Controller Support (Contribution) - 04/10/06 03:13

Quote:


And you can write with big letters onto your published game: "This game supports the new Xbox 360 controller interface!" If you publish your game tomorrow, you'll earn millions by writing onto the game: "NEW! NEW! NEW! GET THIS FIRST PC GAME SUPPORTING XBOX 360 CONTROLLERS BY THE NEW XBOX 360 CONTROLLER INTERFACE - GET THE PLEASURE - GET IT! GET IT! GET IT!!!!!"




lol, now just wait till the money rolls in eh.
Posted By: Doug

Re: Xbox 360 Controller Support (Contribution) - 04/10/06 22:30

DocJoe: You're using XInput right? Can I ask why?
I know DirectX9 doesn't support a lot of the features of the XBox360 controller, but there are a couple 3rd party dlls that do (and they run on 9x,2K, and XP).

I'm not saying using XInput is wrong, I'm looking forward to using it myself , but I'm wondering if it is too soon...
Posted By: DocJoe

Re: Xbox 360 Controller Support (Contribution) - 04/13/06 07:34

Yes, I use XInput. Naturally 3rd party tools sound interesting. 14 days ago I really didn't know anything about Xbox 360 controllers and I didn't heard about 3rd party tools. I was studying DInput when I stumble over XInput.
What do you think about the concept of the dlllfunctions. Personally I like it and I like the values I can use (0 - 1000 - personally I hate the wdl joystick values -255 to +255). I think I have to add two functions for the hat: Xbox_hat_horizontal() and Xbox_hat_vertical().

Code:
define right, 1; 
define left, -1;
//...
if(Xbox_hat_horizontal(1) == right) { //turn to the right...}


This should make the list of dllfunction complete.
Posted By: FoxHound

Re: Xbox 360 Controller Support (Contribution) - 05/02/06 16:45

This is beautiful.

I don't have and have never had an xbox controller, but for reasons I needed to get Tower to work witha 360 controller. So i was making builds and sending them to a friend who had the controller and tested it out as we went. By 8 builds we had fixed the entire game and added rumble.

Thanks a lot.
Posted By: JoeMama

Re: Xbox 360 Controller Support (Contribution) - 05/07/06 15:44

Sry to ask a noobish ?, but is there a tut on how to get your char to move if you move the joystick on the controller and fire on A or such?
Posted By: TeutonicDarkness

Re: Xbox 360 Controller Support (Contribution) - 05/14/06 16:59

Hello,


I was just wondering if this is Capable of working on A5
or is it Strictly an A6 only Plugin?


I don't Have the Controller yet so I can't try it
for the moment.



Thanks,



*** Teutonic Darkness ***
Posted By: PHeMoX

Re: Xbox 360 Controller Support (Contribution) - 05/14/06 17:10

As with all dlls they need to be compiled for the appropiate Acknex engine version. An A5 plugin would need to be compiled with the A5 SDK, so I think you're out of luck on this one ...

Cheers
Posted By: TeutonicDarkness

Re: Xbox 360 Controller Support (Contribution) - 05/14/06 17:25



Ok Thanks for the info..
Posted By: Aaron

Re: Xbox 360 Controller Support (Contribution) - 05/16/06 01:30

Hi is their any plug-in's for the xbox remote control or the playstation remote control out thier that work's with 3dgamestudio? if their isn't I think someone should make one. Becuse I don't have xbox 360 or the xbox360 remote control. I have an xbox and the 1st playstation which I have the playstation remote controls and also the xbox remote control.


also I am using windows 98 second edition is it possible to use the driver with windows 98 second edition? I plan on getting a new computer next year and I am going to get windows vista.

I have a problem when I made a huge outdoor level and I ran it in the test mode in the high def option my computer crashed when I moved the plaver during play mode of the level, I guessed the level was too graphic for my computer or took too much ram, but ever since I did that at bootup with my computer booting windows 98 at startup of the os my computer keep's on crashing, after like 10 or 20 times of turning my computer on and off if would work and boot correctly.
would this mean my RAM is bad or I damage my graphic card? Would it be possible to damage your ram or graphic card if it can't handel the game.

Thanks for your time.
Posted By: Aaron

Re: Xbox 360 Controller Support (Contribution) - 06/04/06 03:09

Hi I found a xbox remote control driver, but how could I make a script plug-in for 3d gamestudio for use as a joystick? Also I want to know how I would make a script for 3dgamestudio to see a playstation remote control. I am using xbcd for an xbox and a playstation driver for the usb connections of the remote controls. thanks for your times.
Posted By: not_me

Re: Xbox 360 Controller Support (Contribution) - 04/19/07 02:47

so how would i program it for a game made with a6 comm.
Posted By: Blink

Re: Xbox 360 Controller Support (Contribution) - 06/23/07 23:59

did anyone figure out how to implement this? i added it, but my room spins when it loads.
Posted By: Marcio Esper

Re: Xbox 360 Controller Support (Contribution) - 07/02/07 11:57

Hi,
Great contribuition

I would like to know if your DDL work with any force feed back joysticky (EG Drive with pedals) or just with the xbox joysticky.

Best regards,

Marcio
Posted By: haggey

Re: Xbox 360 Controller Support (Contribution) - 07/19/08 08:10

Hello,

Can anyone help me? The example (xbox.exe) works. But I am not able to implement DocJoe's Xbox 360 Controller Support in my own code. Can somebody please explain how to do this? I'm completely new to lite-c. Even though I was able to make my first steps in lite-c, I am having problems implementing the Xbox 360 Controller Support. What I want to use is the rumble.

Thank you
haggey
Posted By: rev

Re: Xbox 360 Controller Support (Contribution) - 02/09/09 06:52

just wondering if this xbox controller plugin is compatible with the a7 version. I'm assuming it would, as a7 should work with backwards compatability, but hey you never know. If anyone could let me know that would be sweet.
Posted By: Quad

Re: Xbox 360 Controller Support (Contribution) - 02/09/09 08:01

i guess a7 has native support for 360 controller but im not sure.
Posted By: xeno2k4ever

Re: Xbox 360 Controller Support (Contribution) - 04/13/09 01:17

I cant get this to work either in my script....I want to use this for my game frown
Posted By: exile

Re: Xbox 360 Controller Support (Contribution) - 05/02/09 18:17

Got it to work in my script VERY easily. Once I learned how the functions worked, it was easily implemented into my script.
© 2024 lite-C Forums