=============================================================================== Odamex v0.5.0 for Xbox http://odamex.net/ Authored by: Michael "Hyper_Eye" Wood Revision date: September 12th, 2010 =============================================================================== Table of contents: 1. Introduction 1.1 What is Odamex? 1.2 Xbox Features at a Glance 2. Installation 2.1 Requirements 2.2 Installation - binary download 2.3 Installation - source download 3. Xbox Controls 3.1 Launcher 3.2 Game Client 4. Issues 4.1 TODO 4.2 Known Issues 4.3 Bug Reporting 5. Frequently Asked Questions 6. Acknowledgements =============================================================================== Section 1: Introduction 1.1 What is Odamex? Odamex is a modification of DOOM to allow players to compete with each other over the Internet using the client/server architecture. Odamex also provides a feature-rich single-player engine. Please see the general README provided with Odamex for a thorough description of Odamex and its features. 1.2 Xbox Features at a Glance * Supports all online game modes and features that are available on other platforms * Game launcher with server browser and solo launcher with wad selector * Multiple wad search paths can be configured * Complete analog Xbox controller support with configurable axis assignments, turn sensitivity, optional freelook, and configurable button bindings * Support for USB mouse and keyboard * Saved games and configuration files are stored in UDATA and TDATA paths so they integrate properly with the official memory manager as well as homebrew dashboards complete with icons * Saved games can be deleted using the memory manager * Saved games can be copied to and from a memory card * Vanilla 320x200 resolution, multiple SDTV resolutions including 480i, and HDTV resolutions up to 720p are supported =============================================================================== Section 2. Installation 2.1 - Requirements Odamex requires a modded Xbox in order to operate. 2.2 - Installation - binary download Binary downloads of Odamex are not available from odamex.net or any site associated with The Odamex Team. Because Odamex is built with the official XDK binary builds cannot be provided. 2.3 - Installation - source download If you are interested in the bleeding edge development of Odamex, you can access the SVN at http://odamex.net/svn/root with anonymous read access. Be warned however that it might be incompatible with current release versions, and stability is not guaranteed. The following libraries are required: * SDLx (http://svn.huntsvegas.org/wsvn/SDLx) Additionally the launcher also requires SDLx and the following libraries: * pthreads-Xbox (http://svn.huntsvegas.org/wsvn/pthreads-xbox) * Agar (http://www.libagar.org) Building the Odamex and AG-Odalaunch source for Xbox requries the use of the Microsoft Xbox Software Development kit (a.k.a XDK). You must be a Microsoft approved Xbox developer to gain access to the required software. =============================================================================== Section 3: Xbox Controls 3.1 - Launcher Left Analog Stick - Move Cursor Left/Right Trigger - Increment/Decrement list selection by 10 D-Pad Up/Down - Increment/Decrement list selection by 1 Left/Right Trigger (Held) - Scroll list selection D-Pad up/Down (Held) - Scroll list selection D-Pad Left/Right - Cycle focused widget/button A Button - Activate cursor selection B Button - Activate focused widget/button 3.2 - Game Client The D-Pad is used to navigate the game menus while A activates items within the menu and B returns to the previous menu. When the console is down the left and right triggers scroll. Default Controller Binding: Left Analog Stick X Axis - Step left/right Left Analog Stick Y Axis - Move forward/backward Right Analog Stick X Axis - Turn Left/Right Right Analog Stick Y Axis - Look Up/Down (Freelook disabled by default) D-Pad Up - Move Forward D-Pad Down - Move Backward D-Pad Left - Turn Left D-Pad Right - Turn Right Left Trigger - Walk/Run Right Trigger - Attack/Fire Weapon A Button - Activate X Button - Strafe B Button - Next Weapon Y Button - Previous Weapon White Button - Scoreboard Black Button - Toggle Automap Start Button - Menu (Not Configurable) Back Button - Toggle Console =============================================================================== Section 4: Issues 4.1 - TODO * Virtual (On-Screen) Keyboard * Configurable overscan in launcher * Rumble * Use a DVD as a wad source * Further optimization (Improve 720p performance) 4.2 - Known Issues * The game currently cannot be launched from a DVD. This is hampered by a bug that is very difficult to debug. * Controller events are not received in the launcher while the master list is being queried or a complete server list refresh is taking place. Joystick events are disabled during these tasks because of a mutex issue or race condition that results in a freeze before processing the final queried server. The cursor can be moved with a mouse during these tasks. * The "Query Master On Start" launcher option does not work. It might be that the Xbox network controller takes a little longer to initialize but I don't really know at this point. * You must hit A inside the main launcher window before you can use B to activate a focused widget. This is due to a window focus issue. * The version of SDLx used with Odamex supports 1080i but 1080i has been disabled in the library as it is not currently usable in Odamex. Selecting 1080i results in unplayable framerate and likely a crash when the system runs out of memory. * SDLx reports all 4 joystick ports as active regardless of whether or not a joystick is plugged in. If the active joystick selection is changed to a port that does not have a joystick plugged in control may be lost and a reboot is required or the selection must be changed with a keyboard. 4.3 - Bug Reporting Please report any bugs you find at http://www.odamex.net/bugs Your bug submissions help us make Odamex better. Thank you! =============================================================================== Section 5: Frequently Asked Questions Q. How do I communicate with other players? A. At this time communication requires the use of a USB keyboard. A virtual keyboard is a planned feature that will make it possible to communicate with the gamepad. Q. How do I change my player name without a keyboard? A. You will need to manually change the setting for your player name in your odamex.cfg file. To do this perform the following steps: 1) Launch the Odamex game client from the launcher (a solo game is fine) 2) Quit Odamex using the game menus (turning off the power without quitting will discard configuration changes.) 3) Quit the launcher and return to your dashboard. 4) FTP into the machine or use another method of accessing the file system. 5) Copy E:\TDATA\4f444d58\odamex.cfg to your computer. 6) Open odamex.cfg in an editor. 7) Find the "cl_name" option and change the name to your desired handle. 8) Save the file. 9) Copy odamex.cfg back to E:\TDATA\4f444d58\odamex.cfg Q. What is required to use a keyboard and/or mouse? A. A simple USB-to-Xbox adapter will work. These can be easily obtained from online stores and auction sites for little cost. A device with a cable modified to use an Xbox safety release cable will also work. Q. Is it safe to try all the resolutions listed in the resolution list? A. SDLx scales all resolutions to 640x480 except for 720x480 and 1280x720. Only resolutions that are supported by the AV pack and system settings are shown. Q. I have a widescreen television but the 720x480 options isn't available? A. In your Xbox system video settings select "Wide Screen" or "Letterbox". Q. I have an HDTV and the HDTV AV Pack but the 1280x720 (720p) option isn't available? A. In your Xbox system video settings enable the 720p HDTV resolution. =============================================================================== Section 6: Acknowledgements This port would not be possible without the contributions and assistance of many people. The following especially deserve to be mentioned. * Undead of Team Assembly - Undead donated 2 Xbox debug kits that proved to be instrumental in the development of the libraries that Odamex depends on as well as Odamex itself. HUGE thanks to him for his kind donation! * Vedge of Hypertriton, Inc. (Developer of Agar) - Agar is a critical piece that serves as the cross-platform GUI toolkit behind AG-Odalaunch. Vedge provided assistance and knowledge as well as bug fixes and feature enhancements that directly benefited the Xbox and the development of AG-Odalaunch. He also trusted me with commit access so that I could more efficiently get code changes into Agar. Thanks for not getting annoyed while I flooded the channel with my thoughts, inquiries, and general ramblings. * Sirlemonhead - Sirlemonhead helped get me set up for development and I e-mailed him with questions and ideas on many occasions. Also, he made the AvP port and nobody can thank him enough for that. * weinerschnitzel - Provided testing and feedback throughout development. * ldotsfan - Bouncing Xbox development tricks back and forth with him has been both an enjoyable and educational experience and I look forward to more of the same. * Likklebaer - Thanks for your role in Doom-X and for sharing your experience. * To all those at Xbox-Scene that have provided interest, suggestions, and great encouragement. I hope you guys love playing this port as much as I enjoy working on it - Clockface, Cheema201, guybird, ultimate509, neil222, moonmaster1, lawdawg0931, Mega Man (?), flux2k, Pulsemasta, rubarb, Koooi, Finker282, Rygrass, trrobin, |11|1VeNoM1|11|, XTecuterX73 * Special thanks to the faithful Odamex bug testers and patch contributers who put up with our crap on a daily basis because they believe in Odamex and the philosophies behind it - Spleen, Ladna, HeX9101, tm512, GhostlyDeath, and a hat tip to blzut3 * To anyone I missed and all the developers in the Xbox development scene that released source and made it possible to work on the system without being completely lost. The Xbox Linux guys, XBMC devs, Arnova and the rest of the XBMC4Xbox devs, XPort, madmab, Team Assembly, RessurectionXtras, Team Evox, MXM devs, everyone who has contributed to openxdk, and all the rest. * Finally, all the members of the Odamex development team. Working with you guys is great. I appreciate the maturity, intelligence, and dedication each of you has brought to the team. It is the level-headedness and respect that everyone working on this project maintains that will see Odamex succeed as a great open-source project and Doom source port - Manc, Russell, Ralphis, Denis, and NES =============================================================================== |