El Foro

[Script] Earth Eternal

Free to Play MMORPG

Autor Respuestas
redmoon Wednesday 25 November 2009 at 13:39
redmoonAnonymous

Made by Sparkplay Media, Earth Eternal is a free to play graphical massively multiplayer online RPG currently in open beta. It is installed completely from the internet, so all you need to do is go sign up here and run this script.

Tested on

1. AMD Athlon 64 3000, 4 GB DDR RAM with nVidia FX7600GT, nVidia FX9600, nVidia GTS 250
2. Intel Core 2 Duo T6600 - 2.2ghz, 4 GB with nVidia G210M (512mb)

Also many players tested on Earth Eternal forums (see link at the bottom). Many successful.

OS

1. Ubuntu 8.10, 9.04, 9.10 and 10.4
2. Various other OS combinations have been reported to work.

Wine Version.

Patched wine. Known to work on at least wine 1.1.28 up to current 1.2-rc4. Two patches are required. These are both available on the Earth Eternal forum link below.

1. A work around for an apparent undocumented feature of Windows Socket API (hostname resolution).

2. Force the use of D3DPOOL_MANAGED, even though the game requests D3DPOOL_DEFAULT. This stops the client crashing when the window is resized by the window manager in someway. Ssomething that is pretty much essential as there is no 'proper' full screen mode no other way to set the window size.

Tested

Just about everything in the game. All works flawlessly.

Known Issues

* Game still crashes sometimes on screen resize, or switch of window manager.
* Sometimes hangs on quit
* First stage of "Updater" does not work. In practice, this is not an issue. Any problems when patches are released usually go away if you re-run the PoL script.

Links

See here for more information on how this game was made to work with wine.

There is also the AppDB entry, although this is a bit out of date.

I keep the most recent version of the script here as well.

Screenshots :-





Game Icon :-



The script :-

#!/bin/bash
# Date : (2010-06-24 11-00)
# Last revision : (2010-06-24 11-00)
# Wine version used : 1.2-rc4
# Distribution used to test : Ubuntu 10.4
# Author : redmoon (akoshka)
# Licence : 
# Depend :

# Based in part on script for Gothic 3 posted here
# http://www.playonlinux.com/en/topic-2584-script_Gothic_3.html
# 
# All other portions by akoshka (see http://www.eartheternal.com/forums/earth-eternal-chat/topics/EE-on-Linux-In-Progress)
# Based on contributions from PsyQ and others.
 
PREFIX=EE
TITLE="Earth Eternal"
WORKINGWINEVERSION="1.2-rc4"
EE_INSTALLER="http://static.beta.eartheternal.com/Release/Current/Platform/SparkPlayerInstall.exe"
EE_ICON="http://www.tanktarta.pwp.blueyonder.co.uk/ee/ee.png"
EE_BAR="http://www.tanktarta.pwp.blueyonder.co.uk/ee/polleftbar.jpg"
EE_DLLS="http://www.tanktarta.pwp.blueyonder.co.uk/ee/dlls/linux32-wine-${WORKINGWINEVERSION}"
EE_CONTENT="http://static.beta.eartheternal.com/Release/Current/EarthEternal.car"
EE_DLL_NAMES="amstream.dll.so devenum.dll.so qcap.dll.so wined3d.dll.so d3d9.dll.so dxdiagn.dll.so qedit.dll.so ws2_32.dll.so d3dx9_36.dll.so  mciqtz32.dll.so quartz.dll.so"
 
if [ "$PLAYONLINUX" = "" ]; then
   exit 0
fi
 
# Include
 
source "$PLAYONLINUX/lib/sources"
 
prepare_patched_wine() {
    POL_SetupWindow_install_wine "$1"
    pushd "$REPERTOIRE/WineVersions"
    POL_SetupWindow_wait_next_signal "Removing old patched wine" "$TYTUL"
    rm -fr "$1-$PREFIX"
    POL_SetupWindow_detect_exit
    POL_SetupWindow_wait_next_signal "Copying patched wine" "$TYTUL"
    cp -r "$1" "$1-$PREFIX"
    for i in $(echo $EE_DLL_NAMES)
    do
        POL_SetupWindow_download "Please wait while $i is downloaded" "Downloading..." "$EE_DLLS/$i"
        mv -f "$i" "$REPERTOIRE/WineVersions/$1-$PREFIX/usr/lib/wine/$i"
    done
    POL_SetupWindow_detect_exit
    popd
}
 
# Main
POL_SetupWindow_Init

# Get the left image
wget "${EE_BAR}" --output-document="$REPERTOIRE/tmp/polleftbar.jpg"
 
# Intro screen
 
POL_SetupWindow_Init "" "$REPERTOIRE/tmp/polleftbar.jpg"
POL_SetupWindow_presentation "$TITLE" "Sparkplay Media" "http://www.eartheternal.com" "Akoshka" "$TITLE"
POL_SetupWindow_prefixcreate
 
#asking about WineVersion
POL_SetupWindow_menu "What version of wine would you like to use?" "Wine version" "(patched)$WORKINGWINEVERSION(recommended) (patched)latest-version(not-tested) unpatched" " "
 
#downloading tested Wine
if [ "$APP_ANSWER" == "(patched)$WORKINGWINEVERSION(recommended)" ]
then CHOSENWINEVERSION=$WORKINGWINEVERSION-$PREFIX
     prepare_patched_wine "$WORKINGWINEVERSION"
#downloading untested Wine
elif [ "$APP_ANSWER" == "(patched)latest-version(not-tested)" ]
then cd "${WINEPREFIX}/drive_c/windows/temp"
     #determining which Version is the latest
     wget http://mulx.playonlinux.com/wine/linux-i386/LIST
     cat LIST | sed -e 's/\\.//g' | cut -d';' -f2 | sort -n | tail -n1 >& LatestVersion.txt 
     x=`cat LatestVersion.txt | cut -c1-1`
     y=`cat LatestVersion.txt | cut -c2-2`
     z=`cat LatestVersion.txt | cut -c3-4` 
     LATESTVERSION=$x.$y.$z
     CHOSENWINEVERSION=$LATESTVERSION-$PREFIX
     prepare_patched_wine "$WORKINGWINEVERSION"
else CHOSENWINEVERSION="System"
 
fi
Use_WineVersion "$CHOSENWINEVERSION"
 
# Setup the prefix
select_prefix "$REPERTOIRE/wineprefix/$PREFIX/"
mkdir -p "$REPERTOIRE/wineprefix/$PREFIX/drive_c" 
cd "$REPERTOIRE/wineprefix/$PREFIX/drive_c"
 
# Download the client, the icon and the DLL hacks
POL_SetupWindow_download "Please wait while Earth Eternal Installer is downloaded" "Downloading..." "$EE_INSTALLER"
POL_SetupWindow_download "Please wait while winetricks are downloaded" "Downloading..." "http://www.kegel.com/wine/winetricks"
 
# Icons
POL_SetupWindow_download "Please wait while Earth Eternal icon is downloaded" "Downloading..." "$EE_ICON"
 
# Run wine tricks
POL_SetupWindow_wait_next_signal "Installing... Winetricks."
export WINETRICKS_CACHE=$(pwd)/winetrickscache
mkdir -p "${WINETRICKS_CACHE}"
bash winetricks -q sandbox d3dx9 winxp vcrun2008 vcrun2008sp1 fontfix fontsmooth-rgb corefonts tahoma 
POL_SetupWindow_detect_exit
 
# Run the installer
POL_SetupWindow_wait_next_signal "Installing...The Earth Eternal installer should now be running."
 
INSTALL_DIR="users/$LOGNAME/My Documents/Sparkplay Media/Sparkplayer (Beta)"
 
# Install the actual client
wine SparkPlayerInstall.exe
 
POL_SetupWindow_detect_exit
rm -f SparkPlayerInstall.exe
 
# Add registry stuff
mkdir -p "windows/temp/"
pushd "windows/temp/"
echo "[HKEY_CURRENT_USER\\\\Software\\\\Wine\\\\Direct3D]" > multisampling.reg
echo "\\"OffscreenRenderingMode\\"=\\"backbuffer\\"" >> multisampling.reg
regedit multisampling.reg
POL_SetupWindow_menu_list "How much memory does your graphic card have?" "$TITLE" "32-64-128-256-384-512-768-1024-2048" "-" "256"
VMS="$APP_ANSWER"
echo "[HKEY_CURRENT_USER\\\\Software\\\\Wine\\\\Direct3D]" > vms.reg
echo "\\"VideoMemorySize\\"=\\"$VMS\\"" >> vms.reg
regedit vms.reg
rm -rf *
popd
 
# Create the PlayOnLinux shortcut and assign it to the chosen Wine version
POL_SetupWindow_make_shortcut "EE" "${INSTALL_DIR}" "Spark.exe" "Earth Eternal" "$TITLE" "" "${EE_CONTENT}"
Set_WineVersion_Assign "$CHOSENWINEVERSION" "$TITLE"

# I cannot get the icons to work properly, this is a work around
mkdir -p "$REPERTOIRE/icones/full_size"
mkdir -p "$REPERTOIRE/icones/32"
cp $REPERTOIRE/wineprefix/$PREFIX/drive_c/ee.png "$REPERTOIRE/icones/full_size/Earth Eternal"
convert $REPERTOIRE/wineprefix/$PREFIX/drive_c/ee.png -resize  32x32 "$REPERTOIRE/icones/32/Earth Eternal"
 
# This is a bit naughty really, but I want the icon to show up on desktop straight away
if [ -f "$HOME/Desktop/${TITLE}.desktop" ]
then chmod a+rx "$HOME/Desktop/${TITLE}.desktop"
fi
 
# Exit
 
POL_SetupWindow_Close
exit


Editado por: redmoon

renter Sunday 20 May 2012 at 4:01
renterAnonymous

Are you playing Earth Eternal? See if you share the same points made in this latest Earth Eternal review.