The forum
[Script] UFO - Enemy Unknown
Early/test version for installation of www.abandonware-france.org version
Author | Replies |
Sckizo | Wednesday 29 October 2014 at 0:08 |
Sckizo
|
Hello, This is my first try of a playOnLinux Script, I choose to try to install my personnal favorite game, the first X-com : UFO - Enemy Unknown. The installation seem to be correct, but not the execution. I'm sure that soùe expert eye could tell me the newbie error i've made :) For the record the dosbox config is a recovery #!/bin/bash # Date : (2014-10-27 15-00) # Last revision : (2014-02-16 09-37) # Wine version used : 1.6.2-dos_support_0.6 # Distribution used to test : Ubuntu 14.04 # Author : Sckizo # Script licence : GPL v.2 # Program licence : Retail # Only For : http://www.playonmac.com [ "$PLAYONLINUX" = "" ] && exit 0 source "$PLAYONLINUX/lib/sources" check_one "7za" "7za" POL_SetupWindow_missing # CONSTANTS TITLE="UFO : Enemy Unknown" PREFIX="UFO" WORKING_WINE_VERSION="1.6.2-dos_support_0.6" DEVELOPER="MicroProse" INSTALL_DIR="UFO-Enemy_Unknown" EXEC="UFO Defense.exe" ## MANUAL="" SHORTCUT_NAME=$TITLE TMP_DIR=/home/papa/.PlayOnLinux//tmp/ # IMAGES SETUP POL_GetSetupImages "http://files.playonlinux.com/resources/setups/$PREFIX/top.png" "http://files.playonlinux.com/resources/setups/$PREFIX/left.png" "$TITLE" # INSTALLATION POL_SetupWindow_Init POL_Debug_Init POL_SetupWindow_presentation "$TITLE" "$DEVELOPER" "http://www.xcomufo.com" "Sckizo" "$PREFIX" ## POL_Call POL_GoG_setup "$GOGID" "$INSTALL_FILE_HASH" POL_Wine_SelectPrefix "$PREFIX" POL_Wine_PrefixCreate "$WORKING_WINE_VERSION" GAME_FILE="ftp://ares:ares@tele500.abandonware-france.org/fichiers/jeux/1994-1995/jeu-00216-ufo_enemy_unknown-pcwin.7z" ## PATCH_FILE="ftp://ares:ares@tele500.abandonware-france.org/fichiers/codes-patches-cracks/pat-00216-ufo_enemy_unknown_windows.7z" cd "$TMP_DIR" POL_SetupWindow_download "Downloading $TITLE" "$TITLE" "$GAME_FILE" ## POL_SetupWindow_download "Downloading $TITLE Patch..." "$TITLE" "$PATCH_FILE" POL_SetupWindow_wait_next_signal "Installation in progress..." "$WINEPREFIX/drive_c/Games/$INSTALL_DIR/$TITLE" mkdir tmp_ufo 7za x "jeu-00216-ufo_enemy_unknown-pcwin.7z" -otmp_ufo ## 7za x "pat-00216-ufo_enemy_unknown_windows.7z" -otmp_ufo rm "jeu-00216-ufo_enemy_unknown-pcwin.7z" ## rm "pat-00216-ufo_enemy_unknown_windows.7z" mkdir "$WINEPREFIX/drive_c/Games" mv "tmp_ufo/UFO-W95" "$WINEPREFIX/drive_c/Games/$INSTALL_DIR" ## rm tmp_ufo cd "$WINEPREFIX/drive_c/Games/$INSTALL_DIR" POL_SetupWindow_detect_exit #----- # DOSBOX CONFIG cat <<_EOFCFG_ > "$WINEPREFIX/playonlinux_dos.cfg" # This is the configurationfile for DOSBox 0.74. (Please use the latest version of DOSBox) # Lines starting with a # are commentlines and are ignored by DOSBox. # They are used to (briefly) document the effect of each option. [sdl] # fullscreen: Start dosbox directly in fullscreen. (Press ALT-Enter to go back) # fulldouble: Use double buffering in fullscreen. It can reduce screen flickering, but it can also result in a slow DOSBox. # fullresolution: What resolution to use for fullscreen: original or fixed size (e.g. 1024x768). # Using your monitor's native resolution with aspect=true might give the best results. # If you end up with small window on a large screen, try an output different from surface. # windowresolution: Scale the window to this size IF the output device supports hardware scaling. # (output=surface does not!) # output: What video system to use for output. # Possible values: surface, overlay, opengl, openglnb, ddraw. # autolock: Mouse will automatically lock, if you click on the screen. (Press CTRL-F10 to unlock) # sensitivity: Mouse sensitivity. # waitonerror: Wait before closing the console if dosbox has an error. # priority: Priority levels for dosbox. Second entry behind the comma is for when dosbox is not focused/minimized. # pause is only valid for the second entry. # Possible values: lowest, lower, normal, higher, highest, pause. # mapperfile: File used to load/save the key/event mappings from. Resetmapper only works with the defaul value. # usescancodes: Avoid usage of symkeys, might not work on all operating systems. fullscreen=false fulldouble=false fullresolution=original windowresolution=original output=surface autolock=true sensitivity=100 waitonerror=true priority=higher,normal mapperfile=mapper-0.74.map usescancodes=true [dosbox] # language: Select another language file. # machine: The type of machine tries to emulate. # Possible values: hercules, cga, tandy, pcjr, ega, vgaonly, svga_s3, svga_et3000, svga_et4000, svga_paradise, vesa_nolfb, vesa_oldvbe. # captures: Directory where things like wave, midi, screenshot get captured. # memsize: Amount of memory DOSBox has in megabytes. # This value is best left at its default to avoid problems with some games, # though few games might require a higher value. # There is generally no speed advantage when raising this value. language= machine=svga_s3 captures=capture memsize=16 [render] # frameskip: How many frames DOSBox skips before drawing one. # aspect: Do aspect correction, if your output method doesn't support scaling this can slow things down!. # scaler: Scaler used to enlarge/enhance low resolution modes. # If 'forced' is appended, then the scaler will be used even if the result might not be desired. # Possible values: none, normal2x, normal3x, advmame2x, advmame3x, advinterp2x, advinterp3x, hq2x, hq3x, 2xsai, super2xsai, supereagle, tv2x, tv3x, rgb2x, rgb3x, scan2x, scan3x. frameskip=0 aspect=true scaler=normal2x [cpu] # core: CPU Core used in emulation. auto will switch to dynamic if available and appropriate. # Possible values: auto, dynamic, normal, simple. # cputype: CPU Type used in emulation. auto is the fastest choice. # Possible values: auto, 386, 386_slow, 486_slow, pentium_slow, 386_prefetch. # cycles: Amount of instructions DOSBox tries to emulate each millisecond. # Setting this value too high results in sound dropouts and lags. # Cycles can be set in 3 ways: # 'auto' tries to guess what a game needs. # It usually works, but can fail for certain games. # 'fixed #number' will set a fixed amount of cycles. This is what you usually need if 'auto' fails. # (Example: fixed 4000). # 'max' will allocate as much cycles as your computer is able to handle. # # Possible values: auto, fixed, max. # cycleup: Amount of cycles to decrease/increase with keycombo.(CTRL-F11/CTRL-F12) # cycledown: Setting it lower than 100 will be a percentage. core=auto cputype=486_slow cycles=2000 cycleup=100 cycledown=100 [mixer] # nosound: Enable silent mode, sound is still emulated though. # rate: Mixer sample rate, setting any device's rate higher than this will probably lower their sound quality. # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716. # blocksize: Mixer block size, larger blocks might help sound stuttering but sound will also be more lagged. # Possible values: 1024, 2048, 4096, 8192, 512, 256. # prebuffer: How many milliseconds of data to keep on top of the blocksize. nosound=false rate=44100 blocksize=1024 prebuffer=20 [midi] # mpu401: Type of MPU-401 to emulate. # Possible values: intelligent, uart, none. # mididevice: Device that will receive the MIDI data from MPU-401. # Possible values: default, win32, alsa, oss, coreaudio, coremidi, none. # midiconfig: Special configuration options for the device driver. This is usually the id of the device you want to use. # See the README/Manual for more details. mpu401=intelligent mididevice=default midiconfig= [sblaster] # sbtype: Type of Soundblaster to emulate. gb is Gameblaster. # Possible values: sb1, sb2, sbpro1, sbpro2, sb16, gb, none. # sbbase: The IO address of the soundblaster. # Possible values: 220, 240, 260, 280, 2a0, 2c0, 2e0, 300. # irq: The IRQ number of the soundblaster. # Possible values: 7, 5, 3, 9, 10, 11, 12. # dma: The DMA number of the soundblaster. # Possible values: 1, 5, 0, 3, 6, 7. # hdma: The High DMA number of the soundblaster. # Possible values: 1, 5, 0, 3, 6, 7. # sbmixer: Allow the soundblaster mixer to modify the DOSBox mixer. # oplmode: Type of OPL emulation. On 'auto' the mode is determined by sblaster type. All OPL modes are Adlib-compatible, except for 'cms'. # Possible values: auto, cms, opl2, dualopl2, opl3, none. # oplemu: Provider for the OPL emulation. compat might provide better quality (see oplrate as well). # Possible values: default, compat, fast. # oplrate: Sample rate of OPL music emulation. Use 49716 for highest quality (set the mixer rate accordingly). # Possible values: 44100, 49716, 48000, 32000, 22050, 16000, 11025, 8000. sbtype=sb16 sbbase=220 irq=7 dma=1 hdma=5 sbmixer=true oplmode=auto oplemu=default oplrate=44100 [gus] # gus: Enable the Gravis Ultrasound emulation. # gusrate: Sample rate of Ultrasound emulation. # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716. # gusbase: The IO base address of the Gravis Ultrasound. # Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300. # gusirq: The IRQ number of the Gravis Ultrasound. # Possible values: 5, 3, 7, 9, 10, 11, 12. # gusdma: The DMA channel of the Gravis Ultrasound. # Possible values: 3, 0, 1, 5, 6, 7. # ultradir: Path to Ultrasound directory. In this directory # there should be a MIDI directory that contains # the patch files for GUS playback. Patch sets used # with Timidity should work fine. gus=false gusrate=44100 gusbase=240 gusirq=5 gusdma=3 ultradir=C:\ULTRASND [speaker] # pcspeaker: Enable PC-Speaker emulation. # pcrate: Sample rate of the PC-Speaker sound generation. # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716. # tandy: Enable Tandy Sound System emulation. For 'auto', emulation is present only if machine is set to 'tandy'. # Possible values: auto, on, off. # tandyrate: Sample rate of the Tandy 3-Voice generation. # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716. # disney: Enable Disney Sound Source emulation. (Covox Voice Master and Speech Thing compatible). pcspeaker=true pcrate=44100 tandy=auto tandyrate=44100 disney=true [joystick] # joysticktype: Type of joystick to emulate: auto (default), none, # 2axis (supports two joysticks), # 4axis (supports one joystick, first joystick used), # 4axis_2 (supports one joystick, second joystick used), # fcs (Thrustmaster), ch (CH Flightstick). # none disables joystick emulation. # auto chooses emulation depending on real joystick(s). # (Remember to reset dosbox's mapperfile if you saved it earlier) # Possible values: auto, 2axis, 4axis, 4axis_2, fcs, ch, none. # timed: enable timed intervals for axis. Experiment with this option, if your joystick drifts (away). # autofire: continuously fires as long as you keep the button pressed. # swap34: swap the 3rd and the 4th axis. can be useful for certain joysticks. # buttonwrap: enable button wrapping at the number of emulated buttons. joysticktype=auto timed=true autofire=false swap34=false buttonwrap=false [serial] # serial1: set type of device connected to com port. # Can be disabled, dummy, modem, nullmodem, directserial. # Additional parameters must be in the same line in the form of # parameter:value. Parameter for all types is irq (optional). # for directserial: realport (required), rxdelay (optional). # (realport:COM1 realport:ttyS0). # for modem: listenport (optional). # for nullmodem: server, rxdelay, txdelay, telnet, usedtr, # transparent, port, inhsocket (all optional). # Example: serial1=modem listenport:5000 # Possible values: dummy, disabled, modem, nullmodem, directserial. # serial2: see serial1 # Possible values: dummy, disabled, modem, nullmodem, directserial. # serial3: see serial1 # Possible values: dummy, disabled, modem, nullmodem, directserial. # serial4: see serial1 # Possible values: dummy, disabled, modem, nullmodem, directserial. serial1=dummy serial2=dummy serial3=disabled serial4=disabled [dos] # xms: Enable XMS support. # ems: Enable EMS support. # umb: Enable UMB support. # keyboardlayout: Language code of the keyboard layout (or none). xms=true ems=true umb=true keyboardlayout=auto [ipx] # ipx: Enable ipx over UDP/IP emulation. ipx=false [autoexec] @echo off keyb fr mount C C c: cls echo.----------------------------------------------- echo UFO - Enemy Unknown echo. VERSION DISQUETTE FRANCAISE echo.----------------------------------------------- echo www.abandonware-france.org echo.----------------------------------------------- echo DOSBox v0.74 echo.----------------------------------------------- echo Commandes de base pour Dosbox : echo ALT + ENTREE - MODE PLEIN ECRAN/FENETRE echo CTRL + F5 - CAPTURE D'ECRAN echo CTRL + F10 - CAPTURER/LIBERER LE CURSEUR echo CTRL + F12/11 - AUGMENTER/REDUIRE LA VITESSE echo CTRL + F9 - QUITTER DOSBOX echo.----------------------------------------------- echo. echo. pause c: cd UFO UFO.BAT cd.. exit _EOFCFG_ Set_OS win95 # SHORTCUTS POL_Shortcut "Games/$INSTALL_DIR/$EXEC" "$SHORTCUT_NAME" "$SHORTCUT_NAME.png" "-p" "Game;RolePlaying;" POL_Shortcut_Document "$SHORTCUT_NAME" "$WINEPREFIX/drive_c/Games/$INSTALL_DIR/$MANUAL" # THE END POL_SetupWindow_Close exit 0 Edited by Sckizo Avant j'étais schizophrène ! Maintenant nous allons mieux ! "Je sais que j'plais pas à tout le monde ! Mais quand je vois à qui j'plais pas, j'me demande si ça me dérange vraiment." *Dikkenek* |
Sckizo | Wednesday 29 October 2014 at 14:13 |
Sckizo
|
Cf. French version Avant j'étais schizophrène ! Maintenant nous allons mieux ! "Je sais que j'plais pas à tout le monde ! Mais quand je vois à qui j'plais pas, j'me demande si ça me dérange vraiment." *Dikkenek* |
petch | Wednesday 29 October 2014 at 22:26 |
petch
|
check_one "7za" "7za" POL_SetupWindow_missing Both check_one and POL_SetupWindow_missing are obsolete statements since PlayOnLinux 4.1.2 (June 2012); However PlayOnLinux checks for the presence of 7z at startup, so just drop those redundant statements. TMP_DIR=/home/papa/.PlayOnLinux//tmp/ Don't hardcode PlayOnLinux/PlayOnMac state directory anywhere, use $POL_USER_ROOT instead GAME_FILE="ftp://ares:ares@tele500.abandonware-france.org/fichiers/jeux/1994-1995/jeu-00216-ufo_enemy_unknown-pcwin.7z" Don't know the legality of this, that looks complicated POL_SetupWindow_download "Downloading $TITLE" "$TITLE" "$GAME_FILE" According to comments in the code, in scripts your should use POL_Download instead POL_SetupWindow_wait_next_signal "Installation in progress..." "$WINEPREFIX/drive_c/Games/$INSTALL_DIR/$TITLE" All user-oriented messages should support localization. However for the default waiting message, just use POL_Wine_WaitBefore "$TITLE" 7za x "jeu-00216-ufo_enemy_unknown-pcwin.7z" -otmp_ufo If you use POL_System_7z instead of 7za, you'll get error management for free: if some error happens during decompression, the script will display an error message and abort (since PlayOnLinux/PlayOnMac 4.1.4) POL_SetupWindow_detect_exit This statement does not really make sense, since you didn't start Wine cat <<_EOFCFG_ > "$WINEPREFIX/playonlinux_dos.cfg" # This is the configurationfile for DOSBox 0.74. (Please use the latest version of DOSBox) # Lines starting with a # are commentlines and are ignored by DOSBox. ... playonlinux_dos.cfg syntax is not DOSBox conf file one, see http://www.playonmac.com/en/topic-8747-Ultima_123_GOGcom_Edition.html for DOSBox support HOWTO
My scripts wiki: https://github.com/petchema/playonlinux/wiki GOGmix: https://www.gog.com/en/mix/playonlinux_install_scripts |
This site allows content generated by members, and we promptly remove any content that infringes copyright according to our Terms of Service. To report copyright infringement, please send a notice to dmca-notice@playonlinux.com