Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
HOW TO INSTALL TO LINUX (INSTRUCTIONS) (Sphere .56c)
Author Message
slacker
Apprentice
*

Posts: 22
Likes Given: 1
Likes Received: 7 in 2 posts
Joined: Mar 2015
Reputation: 1



Post: #1
HOW TO INSTALL TO LINUX (INSTRUCTIONS) (Sphere .56c)
My System: Slackware 14.2 (32bit) Linux & Sphere .56c Pre-release


Code:
****NOTE: Sphere is 32bit so you must install on a 32bit or a multi-lib system.

1) As root, create a sphere user:
    useradd sphere
        (Answer the questions)
    chmod 700 /home/sphere


2) Log in as user sphere create these directories:
    mkdir -p spheresvr/accounts
    mkdir -p spheresvr/logs
    mkdir -p spheresvr/muls
    mkdir -p spheresvr/save
    mkdir -p spheresvr/scripts


3) Download and uncompress the sphere server files and move them into the correct directories:
    wget http://prerelease.sphere.torfo.org/build56/SphereServer-0.56c-201604102807-Linux.tgz
    tar -xvf SphereServer-0.56c-201604102807-Linux.tgz -C spheresvr/
    rm SphereServer-0.56c-201604102807-Linux.tgz (OPTIONAL)
    mv spheresvr/src/Sphere.ini spheresvr/sphere.ini
    mv spheresvr/src/sphereCrypt.ini spheresvr/sphereCrypt.ini
    mv spheresvr/src/sphere.dic spheresvr/sphere.dic



4) Download and uncompress the scripts into the spheresrv/scripts directory:
    wget http://prerelease.sphere.torfo.org/build56/SphereServer-0.56c-201604102807-Scripts.zip
    unzip SphereServer-0.56c-201604102807-Scripts.zip
    mv Scripts-master/* spheresvr/scripts/
    rm -rf Scripts-master
    rm SphereServer-0.56c-201604102807-Scripts.zip (OPTIONAL)

5) Fix file permissions:
    find ./spheresvr -type d | xargs chmod 0700
    find ./spheresvr -type f | xargs chmod 0600
    chmod 700 ./spheresvr/spheresvr
    chmod 4700 ./spheresvr


6) Change into the spheresvr directory and continue:
    cd spheresvr


7) Check for library dependencies:
    ldd spheresvr
    See below- "ERROR: Missing libs"


8) Fix the broken windows naming convention:
    ln -s sphere.ini sphere.INI


9) Edit sphere.ini:
    vi sphere.ini

     In the [SPHERE] section add:
          AGREE=1

    CHANGE THE FOLLOWING TO WHATEVER IS CORRECT for you:
        ServName=MyAwesomeShard
  
        OPTIONAL:
        AdminEmail=me@MyAwesomeSphereServer.com
        URL=www.MyAwesomeSphereServer.com
        TimeZone=-4


    CHANGE THE FOLLOWING TO:
        FROM: //MulFiles=mul/    TO: MulFiles=muls/    (You're on linux, it won't auto-detect correctly)
        FROM: AccApp=0        TO: AccApp=2        (This allows you to create your first account by just logging in)
        FROM: UseNoCrypt=0        TO: UseNoCrypt=1`    (This stops the OSI encryption headaches)

        (at the very end of the ini:)
        FROM: [SERVERS]         TO: [SERVERS]
              MyShard               MyAwesomeShard


10) Copy the UO data files from your client. Copy the files from your windows client and put them in the spheresvr/muls folder.
     For Old installations (client less than 7.0.20) this need: map0.mul, statics0.mul, staidx0.mul, multi.mul, multi.idx, hues.mul, tiledata.mul.
          Optional files: verdata.mul, mapX.mul, staticsX.mul, staidxX.mul for higher maps support (Malas, etc).

     For newer installs (client 7.0.20 and higher) this need the same files in .uop format


11) Create blank save and accounts files.
     NOTE: The save files HAVE TO HAVE "[EOF]" in them.
          echo "[EOF]" > save/sphereworld.scp
          echo "[EOF]" > save/spheredata.scp
          echo "[EOF]" > save/spherechars.scp
          echo "[EOF]" > save/spheremultis.scp
          echo "[EOF]" > save/spherestatics.scp

          touch accounts/sphereaccu.scp


12) Start the server
     ./spheresrv

NOTE: To stop the server:
     shutdown 1   (This will shutdown the server after 1 minute, when you hit enter, no message will appear in your console but will appear in the game clients connected).


You should now have a BLANK world, fire off your client with RAZOR and walk around.  You will need to add all spawns and mobiles.



==================================================================
ERROR:
  Missing libs

FIX:
  As root run "locate LIB_NAME"  (e.g. locate libstdc++.so.6 )
  Install missing libs.

HINTS:
  libmysqlclient is part of MySQL, grab your distro's package and install. You don't need to setup MySQL, you just need to have the package installed for the lib.
  libboost is part of Boost C++ (http://www.boost.org/). Your distro probably has a package for it.
  libstdc++.so.6 - My machine had libstdc++.so.6.0.18 installed but sphere could not detect it so, I made a symbolic link to it and it worked fine.
    ln -s /usr/lib/libstdc++.so.6.0.18 /usr/lib/libstdc++.so.6


--------------------
ERROR:
  FATAL:The sphere.INI file is corrupt or missing
  FATAL:MUL File 'multi.idx' not found...
  FATAL:Server terminated by error -3!

FIX 1:
  ln -s sphere.ini sphere.INI

FIX 2:
1) vi sphere.ini

  Change line:
    \\MulFiles=mul/

  To:
    MulFiles=muls/

2) copy map0.mul, statics0.mul, staidx0.mul, multi.mul, multi.idx, hues.mul, tiledata.mul from your client into muls/
    Optional files: verdata.mul, mapX.mul/staticsX.mul/staidxX.mul for higher maps support (Malas, etc).


--------------------
ERROR:
  ERROR:Can't Load save/sphereworld
  FATAL:No previous backup available ?
  FATAL:Server terminated by error -8!

FIX:
  You will need to create a folder called save.
  Inside this folder you will need to create and save 5 files

    echo "[EOF]" > save/sphereworld.scp
    echo "[EOF]" > save/spheredata.scp
    echo "[EOF]" > save/spherechars.scp
    echo "[EOF]" > save/spheremultis.scp
    echo "[EOF]" > save/spherestatics.scp

  Each of these files should be empty except for the text [eof]
  These files MUST be saved as a .scp file in order to work, if saved as .txt you will receive errors from sphere saying that they were not found.


--------------------
ERROR:
  16:30:1:ERR Login NO Account 'joebob'
  16:30:WARNING:1:Bad Login 0 (Account does not exist)
  16:30:1:Client disconnected [Total:0] ('192.168.1.11')

FIX 1:
  Next you will need to create a folder called accounts and inside this folder you will need to create and save a file called sphereaccu.scp.
    mkdir accounts
    touch accounts/sphereaccu.scp

  The same rules apply as to the files you previously created, though this one does not require the [eof] text.

FIX 2:
  Edit sphere.ini and change:
    //Code for servers account application process
    //  0=Closed,       // Closed. Not accepting more.
    //  2=Free,         // Anyone can just log in and create a full account.
    //  3=GuestAuto,    // You get to be a guest and are automatically sent email with u're new password.
    //  4=GuestTrial,   // You get to be a guest til u're accepted for full by an Admin.
    //  6=Unspecified,  // Not specified.
    // To enable auto account you must set this to 2
    AccApp=2


--------------------
ERROR:
  WARNING:1:Bad Login 13 (Unencrypted client not permitted. See the USENOCRYPT setting in sphere.ini)

FIX:
  Edit sphere.ini and set:
    // Set this to 1 to allow login to unencrypted clients
    UseNoCrypt=1


--------------------
ERROR:
  16:31:FATAL:Secure Mode prevents CTRL+C

FIX 1:
  From the blank CLI, run "shutdown 1". This will cause the server to shutdown in 1 minute.

FIX 2:
  Edit sphere.ini and change the following line to:
    // Secure mode attempts to ignore errors, protect from accidently shutdowns
    Secure=0
(This post was last modified: 09-30-2016 06:01 PM by slacker.)
09-30-2016 02:11 PM
Find all posts by this user Like Post Quote this message in a reply
[+] 3 users Like slacker's post
Post Reply 


Forum Jump:


User(s) browsing this thread: 1 Guest(s)