Jump to content

spvDuke3d [v0.4c]...with Sound/Music now!


Guest roozbeh

Recommended Posts

Guest roozbeh

And here comes the Duke Nukem 3D :

I have made some changes and i commented everything you need to know on readme.txt file included in package...

Here is the readme.txt file:

Please be patient and read it all before using this game!

==================================================

Duke Nukem3D for SmartPhones/Pocket PCs [v0.4c]

This is the port of 3D Realms Duke Nukem 3D to Smartphone/Pocket PC platforms.

I'd like to thank them for releasing these sources and make this game available on lots of platforms.

Also i'd like to thank Ryan C. Gordon for kindly answering my emails and my question about porting stuffs and helping me.

Also special thanks to Josh Anderson for answering lots of my questions.And also i have used some of his codes.

This port uses Smartphone's port of SDL which thanks go to arisme.

See http://arisme.free.fr/ and http://www.LibSDL.org for more informations.

Currently Smartphone version is almost playable and working.

PocketPc version has got some issues,and i am tring to solve them.

Use PocketGamer.org forums for asking about PocketPc version of game.

Use Modaco.com forums for asking about Smartphone version of game.

======================= Installation :: =======================

Please unpack all files into a directory.

Required Files:

spvDuke3d.exe

defs.con

Duke3d.cfg

game.con

user.con

*.dmo [optional,for playing demos at game startup]

duke3d.grp

\Storage Card\timidity\Instruments\*.pat [optional,Required for Duke music to be enabled.Default directories.]

\Storage Card\timidity\timidity.cfg [optional,Required for Duke music to be enabled.Defualt directories.]

KEXTRACT.EXE[for reducing size of grp file]

You need all of these files, plus Duke3d.GRP which you will find in shareware or full versions.

You can install PC shareware game from ftp://ftp.3drealms.com/share/3dduke13.zip

And then move duke3d.grp to your device in same folder which you have all your other files.

Simply copy all of them in a directory and run the spvDuke3d.exe.

You can also copy .dmo file to your duke directory for loading demos at startup.

For musics to be enabled you need to download required patch files.

You can use this file http://www.libsdl.org/projects/SDL_mixer/t...timidity.tar.gz and unpack it by (UNTAR or WINRAR)

Download it and unpack it on \Storage Card\timidity

So you have to find timidity.cfg file in \Storage Card\timidity.

This file is about 14mb and unpacked size is about 17mg,but i am sure lots of patches are not required for musics in this game,and also some patches seems to be missing.

Feel free to remove some files which you think are not used if you are low in space.

!! READ BELOW IF YOU WANT TO REDUCE SIZE OF DUKE3D.GRP FILE.

======================= DUKE3D.GRP ::

If you think the size of this file is big you can try to zip this file.Read below.

You can try to unpack the group file using Ken's KEXTRACT.EXE which is in your BUILD directory in full version CDs.

(You can also find some other extract tools in SHADOW WARRIOR\DUKE NUKEM fans site ,just use GOOGLE).

Run " KEXTRACT DUKE3D.GRP *.* " to extract all files from group file.

And Zip all those files again using your ZIP program(like WINRAR/WINZIP/...).

So in your result .zip file you will find all the files extracted from DUKE3D.GRP .

And then rename the zip file to DUKE3D.GRP and copy this file into your device.

If you are not intrested in SW musics you can safely remove all .MID files before packing them again,and also if you are not intrested in sound you can safely remove all .VOC files,this way you can save alots of your storage card space.

NOTE:It is obvious that using ziped group file make game slower,so do this only if you have fast devices,or you device have lots of memory.

Increasing CacheMemory option in DUKE3D.CFG file helps alot if you are using a ziped group file.

======================= Controls :: =======================

Default keys in Smartphones are :

* Fire

# Open

Call Multi1

0 AutoRun

Volume Up Jump

Vomue Down Crouch

4 Strafe Left

6 Strafe Right

Multi1+3 Next Weapon

Multi1+1 Previous Weapon

2 Aim up

8 Aim Down

Multi1+5 Inventory

Multi1+4 Inventory Left

Multi1+6 Inventory Right

Multi1+9 Turn Around

Record Map

You can customize all of your keys in Duke3d.cfg.

Also refer to Multikeys section for understanding how to use them.

Multikeys are almost useless in pocket pc devices.

Note that game keys can be diffrent in Landscape modes and Portrait mode.

Also i havent had time to set all of the keys so you MUST yourself set them to play game on those modes.

Please see below for more informations.

======================= Duke3d.cfg :: =======================

This file carries all of your settings and you can customize the game by changing them.

*Engine Setup section

This section is totally new and carry some more general settings.

UsingGapi = 1

Set this value to 0 if you have problems in using GAPI.

Program instead try to do graphics by mean of GDI.

Platform_Timer_HZ = 100

This setting control the speed of the game.You can try all values in the range of 40-higher.

Also you might want to change them on slower or faster devices.

If you feel game speed is slow.You can try increasing this value.

See tips section.

LandscapeMode = 0

Valid values are

0:Portrait Mode

1:Right hand Landscape Mode

2:Left Hand Landscape Mode

Note that game controls differ in diffrent modes.

CacheMemory = 2600

This value indicates how much memory in Kilobyte to be reserved for cach.

Recommendation range is from 1024 to 1600Kb less than your free memory.

The very best value is 6800.If you have a phone with that much memory availble please try using this value.Also higher values are recommended for ziped group files.

(for example you must have almost 9mg of free memory to change that value to 6800)

*NOTE:very high values can cause a soft reset of your phone so be carefull.

ShowFPS = 1

Change this value to 1 and you can see a text on up-left side of window which shows the game FPS.

Read Tips if you have slow fps.

ShowKeyCodes = 0 [Test purpose]

Only for testing purposes.

By activating this you will see a text showing what keycode is detected in application and if it is a normal key or special key.

All Normal keys can be bind in KeyDefinitions section.

Special keys can work by using ScanCodeMapping.

ScanCodeMapping = 0 [Test purpose]

Only activate on ppc for making use of unknow hardware keys.

You can find out special keys by activating ShowScanCode and looking if a "Special key pressed" text is shown.

Afterwards by use of Scan Code Mapping you can configure that key

Alt_EscapeKey = "" [PPC users]

You can set another keyname here for using as Escape key.Names are like those in KeyDefinitions.

For example set it to Softkey1 for calender button(some devices).

Timidity_Dir = ""

The default location for timidity dir is \Storage Card\Timidity

But if you have installed it somewhere else,or that path does not exist on your device simply change the value here.

*Scan Code Mapping

These definitions tell application how to translate given scan codes to other codes so program can use them.

Scan codes are given as "sc_??" which ?? is the number you want to translate.

*KeyDefinitions_Landscape section

In these sections (from 0 to 2)you have your diffrent control setting for diffrent video modes.

I have only made changes to mode 0.You MUST set other values in other modes by yourself.

Also i have made some Multikeys which here you can set them too.

Newly added values for use on smartphones are:

'VolumeUp','VolumeDown','Pound','Star','Softkey1','Softkey2','Record','Call','EndCall'

======================= Sound section ::

Here you can change setting that influence how sound system works.

-FXDevice = 0

Set to 13 for no sound.

-MusicDevice = 0

Set to 13 for no music.

-NumVoices = 4

Ranges are from 8 to 1.

If you have a fast smartphone you can increase this value.

-NumChannels = 1

Ranges are from 1-2.

If you have a fast smartphone you can increase this value.

-NumBits = 16

You can set this to 8 and i dont know what then.....

-MixRate = 11000

This value indicates the mixing frequancy.Maximum value is 22000 which is very clear voices.

When music is activated this value will greatly sense in performance.

Without Music 22000 will work fine on most of devices including e100.

No minimum value but values lower than 7000 makes sounds very ugly.

If you have a fast smartphone you can increase this value.

And if you think game is too slow try decreasing this value.

======================= MuliKeys :: =======================

Multikeys are a way for having all of Duke Nukem keys working on Samrtphone platforms.

You set a value to them and by pressing them and then pressing 1-9 ,and you generate alphabet keys.

Example:

You set MultiKey1 to Softkey1 and MultiKey2 to Softkey2.like this in you duke.cfg file:

MultiKey1 = "Softkey1" ""

Multikey2 = "SoftKey2" ""

Holding Softkey1 and pressing 2 will couse button "A".And if you set A to something in your Keydefinitions setting that control activates.like this:

Enlarge_Screen = "A" ""

And if you hold Softkey2 and press 2 it will generate "B" key.

Same rules for all other numeric keys.

======================= Tips :: =======================

-If your FPS is low or you think game is slow for being played ,you can try followings:

: Quit all applications,and free as much memory as you can.This mostly only help if you are using sounds and music.

: Turn off the music.

: Reducing Sound frequency can also help.

: Turn off sounds.

: If you are using a ZIPed group file then increasing CacheMemory will helps a lot,

or try using normal GRP file.

: By increasing Platform_Timer_HZ you can have a faster game play.

: Increasing TickRate is also very usefull for making game faster.But you game might not get some keypresses while playing.

: Decreasing TicksPerFrame can also make game faster.But you game might not get some keypresses while playing.

-If you have problems in using GAPI ,try "nogapi" option in config file.

-Set ScreenHeight and ScreenWidth to 0 for full screen resulotion on any device.

-Try reading duke.cfg file for understanding controls and multikeys.

-I notice you can enjoy both music and sound on slow devices with Mixrates below 11000.

Try changing these setting for getting a good performance.

======================= Known Bugs :: =======================

-Maximum screen resolutions are 320x320,i dont know what will happen if you set to higher values.

-Screen flickers sometimes.

-No gapi and Landscape mode 2 result in black screen.

-Game sometimes(rarely) crashes shortly after start of level 1 after going down from roof.Try restarting the game again.

I noticed the unnormal values of Mixrate will couse this error more.

-Sometimes all animations in games,and also movements stop.

Just quit the game and start again.

======================= History:: =======================

v0.4c 2005/06/01

+Faster(Around 2-3 fps).

+More error reporting dialogs.

+Support for ziped group files.

!Fixed bug of timidity dir setting.

v0.4b

+Music support is added.

+Added alternative key for exiting menus.

+Added Alternative directory for timidity files.

+Added some new features in config file.

+Some changes in default values of config file.

+Removal of unused infos from config file.

+Slightly modified readme.txt file.

v0.33b

+Scan code mapping engine added for ppc users.

+Touch screen support added.

+Some changes to FPS showing methods.

+Added some other informational dialog boxes.

+Quiting other programs if low on memory.

!Fixed some bugs related to not using GAPI.

!Fixed bug of displaying messagebox under a black screen.

!Fixed bug in status bar which caused it to be shown incorrectly.

!Fixed problem in Status texts at the end of level.

!Fixed some problems in showing screens.

!Fixed problem in landcsape modes.

!Fixed some memory problems.

v0.32b

+Make screen compatible with Pocket PCs.

+Small changes in engine for gaining some speed improvments.

!Fixed problem with full version of duke.

!Fixed some problems in animation playback.

v0.31b

+Removal of gzip support.(becouse were very slow)

+Configuration file is saved now.Preserving all your settings.

!Fixed some bugs in file handling.

v0.3b

+Sounds added.

+Demo files can be played.

+Some changes in configurations files.

!Save/Load problem solved.Now save games are saved in game directory.

+New Multikeys.

+Icon file added.Thanks goes to AvWijk user at modaco for extracting/giving it to me.

+Support for ziped package file added.

+ShowFPS control added.

+Some error dialogs added.

+NoGapi option added.

+Engine now can be compiled with Fast compiler option.(previous builds generates error while playing game)

+Only one instance of program can exist at same time.

!MultKeys bugs fixed.

!Some bugs in rendering scenes fixed.

v0.2b

+Now having 3 diffrent video modes:Righthand Landscape,Lefthand Landscape and Portrait mode.

+All keys can no be configured via Duke3d.cfg

+Some configurations added to config file.

+Some speed optimizations.

!Fixed waiting bug at first of each level.

!Fixed color problem in 2 first logos.

!Fixed a bug in level2 of game.

v0.1b

+Load/Save funcationalities added.

+Fire and Open keys added.

!Fixed lots of bugs.

v0.0b

-First public version.

-No sound.

-No save/Load.

spvDuke3D.rar

Edited by roozbeh
Link to comment
Share on other sites

Guest Lifestream

Runs great on my 8080, no problems at all.

I don´t know if there was a jump / crouch option in the pc game but if so, it might need to be added.

Link to comment
Share on other sites

Guest phonesmarts

Wow! Another Classic! I see what you mean about waiting 10-20 "sex" before it becomes good! Its usually good the first time! :wink:

Anyway, keep this project up...but dont forget about the other ones! :)

Link to comment
Share on other sites

Guest sadistsly

God Bless You Roozbeh, God Bless ya. Im a gonna beta test its ass :lol: keep ya posted :)

Oh i know ya busy, so no rush, but any chance of a .txt or post with list of all neccessary files so we can trim the size down a little and does this work on retail / atomic versions? Ill test what i can for now :lol:

Link to comment
Share on other sites

Guest roozbeh
I don´t know if there was a jump / crouch option in the pc game but if so, it might need to be added.
yes there is... keep looking at topic "key binding opinionf for ...."

i currently dont know what key is best...but meanwhile you can edit duke3d.cfg file and set that to an unused key if you like to

Wow! Another Classic! I see what you mean about waiting 10-20 "sex" before it becomes good! Its usually good the first time!  

loooooooooooooooooool....yeah you are right :)

i updated first post for file you need.

Link to comment
Share on other sites

Guest djfuego

Man I could kiss ya.. But i won't

WOOOOT!

8)

Will this run the FULL DN3d too?

Damn my E100 just resets it's self.

I did get it as far as loading the map but then it just hung.

The title screen palette is all screwed up, but is ok in the options screen.

Link to comment
Share on other sites

Guest wdehaas

Wow another fine port!! game is working...After a few seconds the game is working fine. Speed is a little bit laggy in high resolution but acceptable.

One minor graphic error is when you die. If . It seems that half of the screen turn blacks..but nothing serious though.. Again nice work and this is only the beta so it´s the beginning of another great port:P

Link to comment
Share on other sites

Guest durk1482

Extremely well done. By far the best smartphone game yet.

Ever seen the GBA duke3d? Its extremely crappy in comparison to this! Ever seen duke3d for a Nokia phone? I dont think so!

bugs I saw in the first few minutes of play:

- in the 'low' detail level, there's a problem with the amount of drawn (vertical) scanlines (/rays). It seems you draw too much, the scanlines wrap around the screen..

- in the 'high' detail level, when you die, only half the screen is drawn. Also seems to be a problem of number of scanlines. Looks like the number of scanlines stays the same as in normal straight viewing mode, while they should be increased since there's a wider viewing window.

- when descreasing screen size, the viewing window doesnt center correctly.

- wrong colors at title screen and loading screen.

- non-shareware episodes are selectable but crash

- sometimes it seems to take forever until the speed stabilizes.

Link to comment
Share on other sites

Guest sadistsly

me again, k, yup very similar experiance to the above post on SPV Classic, but i think Classic owners will be able to play this game once it is truely optimised. vey slow frame rate at the mo as you know, turning to low detail improved FPS dramaticly along with shadows turned off, i think screen tilting turned on improves performance. Also there is screen corruption to the left hand side of screen where it displays the right hand side of screen there :/ is very hard to test it further as the frame rate is real slow, and without horizontal display its hard to shoot acuratly , very hard, will definatly need the horizontal view like DOOM in a future relase and to change the crosshair to something a little bigger or infact enable it as i cant see it :lol:, but thnx for allowing us to view your work in progress, i will give it a proper test when the frame rate and stability improves in maybe next relase :) thnx roozbeh

Link to comment
Share on other sites

Guest dnavarro77

Great Port ! This port runs fast and smooth with my i600. Yes the minro bugs everybody knows about: load screen colors, dying screen etc. Also a crosshair would be nice. One other note, I tried the full version of duke (not shareware) and it would not get past the grey "initializing engine" screen...it would just crash. It would be great to get the full version working. Other than that great port man! I can't express what your work has done for the smartphone community! Thx a million!

D

Link to comment
Share on other sites

Guest roozbeh

what is the size of full version

maybe it doesnt work becouse the main sources also doesnt support it....

in anyway i'll try to make all modifications to make it btr.....

currently my main focus is sound and bug fixing as it contains millions of bugs becouse the code is really strange and so i had to make lots of hacking things which now i dont remember them!!!!

so be patient and wait for next version.....

[in any way dont expect them soon like doom and wolf as i did as currently i am really busy...and i hope today will be my last day of coming here and working on anything by comouter :)]

Link to comment
Share on other sites

Guest roozbeh
me again, k, yup very similar experiance to the above post on SPV Classic, but i think Classic owners will be able to play this game once it is truely optimised. vey slow frame rate at the mo as you know, turning to low detail improved FPS dramaticly along with shadows turned off, i think screen tilting turned on improves performance. Also there is screen corruption to the left hand side of screen where it displays the right hand side of screen there :/ is very hard to test it further as the frame rate is real slow, and without horizontal display its hard to shoot acuratly , very hard, will definatly need the horizontal view like DOOM in a future relase and to change the crosshair to something a little bigger or infact enable it as i cant see it

well very complicated text....but are you sure you are running my game..or have enough free memory?!!

becouse it isnt that slow on fps.....

also i make the fps a little bit btr.....i am also working to remove all uneccesaary stuff so i can free some memory by this way too

Link to comment
Share on other sites

Guest xavierjohn22

Äll i cän säy för nöw is dämm i cänt döwnlöad in this sité using my phöné!

Posted from my SmartPhone!

Link to comment
Share on other sites

Guest dnavarro77

Rooz....I noticed the only necessary file for Duke 3d is the "Duke3D.GRP" and ".DMO files" (I am not sure about those). That is all i needed (from the shareware) besides what is included on your download to get it running. However, the Full version of Duke3d has a 25.2MB Duke3D.GRP (the shareware's is 10.5MB). Also, the Full version has only two demo's (Demo1.DMO - 22.3K, Demo2.DMO - 30.7K). The shareware version has three smaller (in the 5-10K range) ".DMO files". Anyways, I have tried the full versions .GRP with the shareware's .DMO files, and the Full versions .GRP with the Full versions .DMO files. Neither will get past the grey loading screen without crashing. The shareware .GRP works fine.

Again, thanks for your help and thanks for the great ports. And don't mind us if you need to get your schoolwork done.....I know how demanding engineering is...I am an EE :) Thx,

D

Link to comment
Share on other sites

Guest roozbeh

well this is simply becouse this is the source for shareware....and not full version...

the windows version also didnt work with that....

Link to comment
Share on other sites

Guest sadistsly

sorry about the text :) just the way i write :lol:

Yeh deffinatly your relase, was in a rush when i posted it.

K im using SPV classic, all of your other ports work fine with decent FPS and are higly playable on this smartphone.

K as you said at the start the FPS is very slow it gets better after 5 seconds or so, but even after then the Fps is still not too good, when i fire the animation of the gun shooting and reloading etc. cannot be seen,

all im hoping is that u have some more tricks up your sleve that you are yet to apply, a bit of memory managment maybe :lol:

the corruption i spoke about is that the right hand side of the screen can slightly be seen on the left, if u get what i mean.

Becuase of the default resolution being desinged for PC monitors when displayed Vertically on SPV screen it is alot harder to be accurate when shooting becuase its soooo squashed, especially with the SPVs control pad, that is all was ment by the above.

Enabling a big crosshair as default would help, cant rember if there is a mulitple choice of differnt crosshairs or not, but i do know that one can be enabled. **(see below)

Oh in dukeconfig.ini how do i know what PC keys are referd to by what Mobile Phone Keys?

Oh also, is there a way so that when you look up, it actually stays looking at where you where rather than returning to the centre of view again, maybe setting the look up n down so it thinks its the mouse axis instead, as it can be set to digital instead of analoug?? as it will be very hard to play properly without this.

## oh found it, in Duke3d.cfg goto the bottom and change "Crosshairs= 0" - and change the zero to a one to enable crosshair from start.

Here is a complete explanation of the duke3d.cfg file

http://www.planetduke.com/features/article...config.shtml#a2

thnx again Roozbeh your a star :lol:

Link to comment
Share on other sites

Guest meatgrinder

i get the same corruption as sadistly, its astho the screen has scrolled right a bit, pushing itself off the right side, and back on the left :)

i can also confirm the atomic edition .grp file works fine :lol: all 4 episodes :lol:

Dave

Link to comment
Share on other sites

Guest kopkings

got it working quite well on my e200, didnt get any graphics problems at all and the fps is good as well. can u set the camera button as kick as I pressed it looking for the jump button and it crashed my phone. good job any luck with the sound?

OFF TOPIC: Someone please answer my problem with media player, even on speakerphone it skips (at least once every 20 mins) during a song yesterday 3 times in 15 mins!!!!!!

Link to comment
Share on other sites

Guest dnavarro77

Rooz, I got your Duke port to work with the full version!. I don't know why I did not have luck before, but using the fullversions ".DMO" files along with the .GRP, it is now good to go. Thx for the port 8)

D

Link to comment
Share on other sites

Guest roozbeh

oops

you drove of to lots of emails asking why it doesnt work with full version

so it does!!

Posted from my SmartPhone!

Link to comment
Share on other sites

Guest yarod_g14

Many Thanx Rooz, you efforts are more than appreciated. Thanks to you I am not reading books I am playing games :)

I have noticed a small problem on loadup with most of these ports. It seems that pressing any button during loadup crashes the phone. This problem seems to effect Doom2 and Duke but not Doom1.

I was under the impression that Duke wasnt working until I moved my idle fingers away from the joystick during loading. ............

I am still dreaming about Bluetooth multiplayer FPS game on my phone..............

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.