Guest User

Untitled

a guest
Nov 19th, 2014
1,463
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.85 KB | None | 0 0
  1. #!/bin/bash
  2. LIBS=`find libraries/ -iname \*.jar | grep -v natives | xargs echo | sed 's/ /:/g'`
  3. LAUNCHER="launcher.jar"
  4. PROFILE="launcher_profiles.json"
  5. MAIN_CLASS=net.minecraft.client.main.Main
  6. NATIVES=`find libraries/ -iname \*.jar | grep natives`
  7. MEM=3072m
  8. DIR="${PWD}"
  9.  
  10. function latest()
  11. {
  12.   VERS=`ls -v $1 | tail -n1 | sed 's/\.json//g'`;
  13.   echo ${VERS}
  14. }
  15.  
  16. VERSION=$(latest versions)
  17. ASS_VER=$(latest assets/indexes)
  18.  
  19. MAIN_JAR=versions/${VERSION}/${VERSION}.jar
  20. NAT_DIR="`find versions/${VERSION}/${VERSION}-natives-* -type d 2>/dev/null | tail -n 1`"
  21. if [ "x" == "x${NAT_DIR}" ]; then
  22.   NAT_DIR="versions/${VERSION}/${VERSION}-natives-`date +'%s'`"
  23. fi
  24.  
  25. # Set username
  26.  
  27. if [ $# = 0 ]; then
  28.   USER=`cat ${PROFILE} | grep -m 1 -i "name" | cut -d'"' -f4`;
  29.   if [ "x${USER}" = "x" ]; then
  30.     USER=Player;
  31.   fi;
  32. else
  33.   USER=$1;
  34. fi
  35.  
  36. if [ ! -d ${NAT_DIR} ]; then
  37.   mkdir -p ${NAT_DIR}
  38.   for f in ${NATIVES}; do
  39.     unzip -qq -o $f -x META-INF/* -d ${NAT_DIR};
  40.   done;
  41. fi
  42.  
  43. # If profile exists, read UUID from it
  44. if [ -f ${PROFILE} ]; then
  45.   UUID=`cat ${PROFILE} | grep userid | cut -d'"' -f4 | \
  46.     sed -e \
  47.     's/^\([[:xdigit:]]\{8\}\)\([[:xdigit:]]\{4\}\)\([[:xdigit:]]\{4\}\)\([[:xdigit:]]\{4\}\)/\1-\2-\3-\4-/g'`;
  48. fi
  49.  
  50. # In the case we don't have UUID, generate plausible one
  51. # This is not required and can simply be zeroed out, but just looks good
  52. if [ "x${UUID}" = "x" ]; then
  53.   UUID=`uuidgen -t`;
  54. fi
  55.  
  56. echo "Starting Minecraft ${VERSION}..."
  57. echo "Player ${USER}, assets ${ASS_VER}, UUID ${UUID}"
  58. java -cp ${LIBS}:${MAIN_JAR} -Xmx${MEM} -Xms${MEM} \
  59.   -Djava.library.path=${NAT_DIR} ${MAIN_CLASS} \
  60.   --version ${VERSION} \
  61.   --username ${USER} \
  62.   --gameDir ${DIR} \
  63.   --assetsDir ${DIR}/assets \
  64.   --assetIndex ${ASS_VER} \
  65.   --uuid ${UUID} \
  66.   --accessToken null \
  67.   --userProperties {} \
  68.   --userType legacy #> /dev/null
Advertisement
Add Comment
Please, Sign In to add comment