Duke3D
From DingooWiki
| Duke3d | |
|---|---|
| | |
| Platform(s): | Dingoo-Linux |
| Download(s): | Dingoo File Archive |
| Developer(s): | joyrider |
| Version: | unknown, uploaded 06/13/2009 |
| Status: | Released, works well |
| Homepage: | Duke 3D Linux |
Duke3D is the engine for Duke Nukem 3D. The engine has now been ported to the Dingoo, and so with the files for Duke Nukem 3D 1.4, you can play Duke Nukem 3D on your Dingoo.
Contents |
[edit] Installation Guide
Make sure wherever you're placing Duke3D is writable, and make sure you can run whatever commands necessary to open Duke3D. Reading the Post-Installation Dual Boot guide is recommended.
[edit] Needed Files
Extract the Duke3D archive. Copy the Duke3D executable to a folder where you plan on running it from. Then, from a shareware version of Duke Nukem 3D, or from your own copy of Duke Nukem 3D (available from GoodOldGames for $6), copy the following files to the same directory as the Duke3D executable:
- defs.con
- duke.rts (not sure if this file is necessary, please test)
- duke3d.grp
- game.con
- ultramid.ini (not sure if this file is necessary, please test)
- user.con
Save the following to the file "duke3d.cfg" to the same directory as all these other files (depending on the source of your files, duke3d.cfg might be in all capital letters. DO NOT save it like this. It must be in lowercase letters! If you don't save it in lowercase letters, you'll find that Duke3D will give you an error saying that it can't find the duke3d.cfg file in the /root/.duke3d directory. If you copy the DUKE3D.CFG file to that directory, it'll run, but then you'll reach a blank screen. So, make sure the cfg file is named "duke3d.cfg"):
[Setup] SetupVersion = "1.4" [Screen Setup] ScreenMode = 1 ScreenWidth = 320 ScreenHeight = 240 Shadows = 1 Password = "" Detail = 1 Tilt = 1 Messages = 1 Out = 1 ScreenSize = 8 ScreenGamma = 16 [Sound Setup] FXDevice = 0 MusicDevice = 0 FXVolume = 228 MusicVolume = 224 NumVoices = 8 NumChannels = 2 NumBits = 16 MixRate = 16000 MidiPort = 0x330 BlasterAddress = 0x220 BlasterType = 4 BlasterInterrupt = 7 BlasterDma8 = 1 BlasterDma16 = 5 BlasterEmu = 0x640 ReverseStereo = 1 SoundToggle = 1 VoiceToggle = 1 AmbienceToggle = 1 MusicToggle = 1 [KeyDefinitions] Move_Forward = "Up" "Kpad8" Move_Backward = "Down" "Kpad2" Turn_Left = "Left" "Kpad4" Turn_Right = "Right" "KPad6" Strafe = "LAlt" "RAlt" Fire = "RCtrl" "LCtrl" Open = "Space" "" Run = "/" "LShift" AutoRun = "CapLck" "" Jump = "Z" "/" Crouch = "X" "" Look_Up = "PgUp" "Kpad9" Look_Down = "PgDn" "Kpad3" Look_Left = "Insert" "Kpad0" Look_Right = "Delete" "Kpad." Strafe_Left = "," "" Strafe_Right = "." "" Aim_Up = "Home" "KPad7" Aim_Down = "End" "Kpad1" Weapon_1 = "1" "" Weapon_2 = "2" "" Weapon_3 = "3" "" Weapon_4 = "4" "" Weapon_5 = "5" "" Weapon_6 = "6" "" Weapon_7 = "7" "" Weapon_8 = "8" "" Weapon_9 = "9" "" Weapon_10 = "0" "" Inventory = "Enter" "KpdEnt" Inventory_Left = "[" "" Inventory_Right = "]" "" Holo_Duke = "H" "" Jetpack = "J" "" NightVision = "N" "" MedKit = "M" "" TurnAround = "BakSpc" "" SendMessage = "T" "" Map = "Tab" "" Shrink_Screen = "-" "Kpad-" Enlarge_Screen = "=" "Kpad+" Center_View = "KPad5" "" Holster_Weapon = "ScrLck" "" Show_Opponents_Weapon = "W" "" Map_Follow_Mode = "F" "" See_Coop_View = "K" "" Mouse_Aiming = "U" "" Toggle_Crosshair = "I" "" Steroids = "R" "" Quick_Kick = "`" "" Next_Weapon = "'" "" Previous_Weapon = ";" "" [Controls] ControllerType = 0 JoystickPort = 0 MouseSensitivity = 3072 ExternalFilename = "EXTERNAL.EXE" EnableRudder = 0 MouseAiming = 1 MouseAimingFlipped = 1 MouseButton0 = "Fire" MouseButtonClicked0 = "" MouseButton1 = "Jump" MouseButtonClicked1 = "Open" MouseButton2 = "Move_Forward" MouseButtonClicked2 = "" JoystickButton0 = "Fire" JoystickButtonClicked0 = "" JoystickButton1 = "Strafe" JoystickButtonClicked1 = "Inventory" JoystickButton2 = "Run" JoystickButtonClicked2 = "Jump" JoystickButton3 = "Open" JoystickButtonClicked3 = "Crouch" JoystickButton4 = "Aim_Down" JoystickButtonClicked4 = "" JoystickButton5 = "Look_Right" JoystickButtonClicked5 = "" JoystickButton6 = "Aim_Up" JoystickButtonClicked6 = "" JoystickButton7 = "Look_Left" JoystickButtonClicked7 = "" MouseAnalogAxes0 = "analog_turning" MouseDigitalAxes0_0 = "" MouseDigitalAxes0_1 = "" MouseAnalogScale0 = 0 MouseAnalogAxes1 = "analog_moving" MouseDigitalAxes1_0 = "" MouseDigitalAxes1_1 = "" MouseAnalogScale1 = 0 JoystickAnalogAxes0 = "analog_turning" JoystickDigitalAxes0_0 = "" JoystickDigitalAxes0_1 = "" JoystickAnalogScale0 = 0 JoystickAnalogAxes1 = "analog_moving" JoystickDigitalAxes1_0 = "" JoystickDigitalAxes1_1 = "" JoystickAnalogScale1 = 0 JoystickAnalogAxes2 = "analog_strafing" JoystickDigitalAxes2_0 = "" JoystickDigitalAxes2_1 = "" JoystickAnalogScale2 = 0 JoystickAnalogAxes3 = "" JoystickDigitalAxes3_0 = "Run" JoystickDigitalAxes3_1 = "" JoystickAnalogScale3 = 0 GamePadDigitalAxes0_0 = "Turn_Left" GamePadDigitalAxes0_1 = "Turn_Right" GamePadDigitalAxes1_0 = "Move_Forward" GamePadDigitalAxes1_1 = "Move_Backward" GameMouseAiming = 0 AimingFlag = 0 [Comm Setup] ComPort = 2 IrqNumber = 65535 UartAddress = 65535 PortSpeed = 9600 ToneDial = 1 SocketNumber = 65535 NumberPlayers = 2 ModemName = "" InitString = "ATZ" HangupString = "ATH0=0" DialoutString = "" PlayerName = "Cobra" RTSName = "DUKE.RTS" RTSPath = ".\" UserPath = ".\" PhoneNumber = "" ConnectType = 0 CommbatMacro#0 = "An inspiration for birth control." CommbatMacro#1 = "You're gonna die for that!" CommbatMacro#2 = "It hurts to be you." CommbatMacro#3 = "Lucky Son of a Bitch." CommbatMacro#4 = "Hmmm....Payback time." CommbatMacro#5 = "You bottom dwelling scum sucker." CommbatMacro#6 = "Damn, you're ugly." CommbatMacro#7 = "Ha ha ha...Wasted!" CommbatMacro#8 = "You suck!" CommbatMacro#9 = "AARRRGHHHHH!!!" PhoneName#0 = "" PhoneNumber#0 = "" PhoneName#1 = "" PhoneNumber#1 = "" PhoneName#2 = "" PhoneNumber#2 = "" PhoneName#3 = "" PhoneNumber#3 = "" PhoneName#4 = "" PhoneNumber#4 = "" PhoneName#5 = "" PhoneNumber#5 = "" PhoneName#6 = "" PhoneNumber#6 = "" PhoneName#7 = "" PhoneNumber#7 = "" PhoneName#8 = "" PhoneNumber#8 = "" PhoneName#9 = "" PhoneNumber#9 = "" PhoneName#10 = "" PhoneNumber#10 = "" PhoneName#11 = "" PhoneNumber#11 = "" PhoneName#12 = "" PhoneNumber#12 = "" PhoneName#13 = "" PhoneNumber#13 = "" PhoneName#14 = "" PhoneNumber#14 = "" PhoneName#15 = "" PhoneNumber#15 = "" [Misc] Executions = 37 RunMode = 0 Crosshairs = 1 WeaponChoice0 = 3 WeaponChoice1 = 4 WeaponChoice2 = 5 WeaponChoice3 = 7 WeaponChoice4 = 8 WeaponChoice5 = 6 WeaponChoice6 = 0 WeaponChoice7 = 2 WeaponChoice8 = 9 WeaponChoice9 = 1
[edit] Running Duke3D
Do what you must to make duke3d executable. If it's stored in your rootfs, run chmod +x on the executable. If it's stored on your fat partition, you have no worries.
Run the following command:
export SDL_NOMOUSE=1
If you don't want to have to run this command every time before playing Duke3D, or many other SDL based games, add that line to the file /etc/profile, or create the file /root/.profile in your rootfs and save that line to the file.
Then, run duke3d
./duke3d
Hit start a couple times and you should reach the menu.
[edit] Controls
[edit] Browsing menus
| | Escape |
| | Enter |
| | Space (useful for saving) |
[edit] In-Game
| | Movement |
| | Shoot |
| | Interact with doors/objects |
| | Change View |
| | 180 Degree Turn |

